/* ============================================ */
/* ZENTEC - Business and Consulting HTML Template */
/* VERSION EMSI - CORRIGÉE ET COMPLÈTE         */
/* ============================================ */

/* ============================================ */
/* 1. IMPORTS                                  */
/* ============================================ */

@import url('owl.css');
@import url('fontawesome-all.css');
@import url('simple-line-icons.css');
@import url('themify-icons.css');
@import url('flaticon.css');
@import url('animate.css');
@import url('jquery-ui.css');
@import url('jquery.fancybox.min.css');
@import url('scrollbar.css');
@import url('hover.css');
@import url('custom-animate.css');

/* ============================================ */
/* 2. RESET                                    */
/* ============================================ */

* {
    margin: 0px;
    padding: 0px;
    border: none;
    outline: none;
    font-size: 100%;
    line-height: inherit;
}

/* ============================================ */
/* 3. GLOBAL SETTINGS - FORCER Arial           */
/* ============================================ */

/* ============================================ */
/* TYPOGRAPHIE - Arial (sans casser les icônes) */
/* ============================================ */

/* NE PAS mettre Arial sur * car ça casse les icônes */
/* On cible uniquement les éléments de texte */

body, p, h1, h2, h3, h4, h5, h6, 
a:not([class*="fa"]):not([class*="icon"]):not([class*="flaticon"]):not([class*="ti"]),
span:not([class*="fa"]):not([class*="icon"]):not([class*="flaticon"]):not([class*="ti"]),
li:not([class*="fa"]):not([class*="icon"]):not([class*="flaticon"]):not([class*="ti"]),
div:not([class*="fa"]):not([class*="icon"]):not([class*="flaticon"]):not([class*="ti"]),
input, textarea, button, select,
.navigation, .main-menu, .mobile-menu, .footer-widget,
.sec-title, .theme-btn, .nav-link, .btn-title,
.copyright, .text, .d-text, .upper-text, .lower-text,
.sub-title, .title-box, blockquote, .designation,
.banner-carousel .content-box .sub-title,
.banner-carousel .content-box h1,
.banner-carousel .content-box .text,
.about-section .text-column .text-content p,
.service-block .text, .service-block h3,
.team-block .title-box h3, .team-block .title-box .designation,
.footer-widget .text, .footer-widget .info,
.footer-widget .info ul li, .footer-widget .info ul li a {
    font-family: 'Arial', 'Helvetica Neue', Helvetica, sans-serif !important;
}

/* ============================================ */
/* PROTECTION DES ICÔNES - NE PAS TOUCHER      */
/* ============================================ */

.fa, .fas, .far, .fal, .fab, .fa-solid, .fa-regular,
[class*="fa-"], [class^="fa-"] {
    font-family: 'Font Awesome 5 Free' !important;
    font-weight: 900 !important;
}

.fab, .fa-brands {
    font-family: 'Font Awesome 5 Brands' !important;
    font-weight: 400 !important;
}

.far {
    font-family: 'Font Awesome 5 Free' !important;
    font-weight: 400 !important;
}

.ti, [class*="ti-"], [class^="ti-"] {
    font-family: 'themify' !important;
}

.flaticon, [class*="flaticon-"], [class^="flaticon-"] {
    font-family: 'Flaticon' !important;
}

.simple-line-icons, [class*="simple-icon-"] {
    font-family: 'simple-line-icons' !important;
}

/* ============================================ */
/* SUPPRIMER L'ITALIQUE - PROTÉGER LES ICÔNES  */
/* ============================================ */

em, i, cite, .italic, .text-italic,
.team-card-role, .designation, .video-caption,
blockquote .text, .testimonial-block .designation,
.footer-widget .text, .footer-widget .info {
    font-style: normal !important;
}

/* PROTÉGER LES ICÔNES EN ITALIQUE */
em.fa, i.fa, em.fas, i.fas, em.far, i.far, em.fal, i.fal, em.fab, i.fab {
    font-style: normal !important;
}
body {
    font-size: 15px;
    color: #666666;
    line-height: 1.7em;
    font-weight: 400;
    background: #ffffff;
    -webkit-font-smoothing: antialiased;
    -moz-font-smoothing: antialiased;
    font-family: 'Arial', sans-serif !important;
}

body, h1, h2, h3, h4, h5, h6, p, a, span, li, div,
input, textarea, button, select, .navigation, .main-menu,
.mobile-menu, .footer-widget, .sec-title, .theme-btn,
.nav-link, .btn-title, .copyright, .text, .d-text,
.upper-text, .lower-text, .sub-title, .title-box,
h1 strong, h2 strong, h3 strong, h4 strong, h5 strong, h6 strong {
    font-family: 'Arial', 'Helvetica Neue', Helvetica, sans-serif !important;
}

/* Supprimer l'italique partout */
em, i, cite, .italic, .text-italic,
.team-card-role, .designation, .testimonial-block .designation,
.video-caption, .video-caption-sidebar,
blockquote, .d-text, .text, .lower-text,
.testimonial-block .info .designation,
.team-block .title-box .designation,
.feature-block .inner-box .title,
.stat-card .stat-description,
.stat-card .stat-title,
.stat-card .stat-footer,
.phone-title, .info-text span, .info-text strong,
.about-section .text-column .text-content p,
.about-section-three .text-column p,
.service-block-three .text,
.news-block .text,
.news-block-three .text,
.case-block .content-box .text,
.footer-widget .text,
.footer-widget .info,
.footer-widget .info ul li,
.footer-widget .info ul li a,
.footer-widget .info ul li strong,
.footer-widget .info ul li span,
.sidebar-widget .text,
.sidebar-widget p,
.sidebar-widget li,
.post-details .text,
.post-details p,
.comments-area .text,
.leave-comments p,
.leave-comments label {
    font-style: normal !important;
}

/* Supprimer Arimo des titres */
h1, h2, h3, h4, h5, h6,
.sec-title h2, .sec-title .upper-text, .sec-title .lower-text,
.title-box h1, .title-box .d-text,
.banner-carousel .content-box h1, .banner-carousel .content-box .sub-title,
.case-block .content-box .title-box h4,
.news-block .lower-box h3,
.news-block-three .lower-box h3,
.team-block .title-box h3,
.testimonial-block .info .name,
.fact-counter .upper-title, .fact-counter .count-box, .fact-counter .counter-title,
.admin-topbar h1, .admin-topbar h1 small,
.stat-card .stat-number,
.stat-card .stat-title,
.admin-card-header h4,
.sidebar-title h3,
.comments-title h2,
.contact-info-block .content-box .title-box h4,
.contact-info-section h3,
.featured-block h3,
.service-block h3,
.service-block-two h3,
.service-block-three h3,
.service-block-four h3 {
    font-family: 'Arial', 'Helvetica Neue', Helvetica, sans-serif !important;
    font-style: normal !important;
}

a {
    text-decoration: none;
    cursor: pointer;
    color: #0066CC;
}

.theme_color {
    color: #0066CC;
}

a:hover,
a:focus,
a:visited,
a:active,
button:active {
    text-decoration: none;
    outline: none;
}

h1, h2, h3, h4, h5, h6 {
    position: relative;
    font-weight: normal;
    margin: 0px 0px 15px;
    background: none;
    line-height: 1.25em;
    font-family: 'Arial', sans-serif !important;
}

h1 { font-size: 60px; }
h2 { font-size: 44px; }
h3 { font-size: 22px; }
h4 { font-size: 18px; }
h5 { font-size: 14px; }
h6 { font-size: 10px; }

input, select, button {
    font-family: 'Arial', sans-serif !important;
}

textarea {
    overflow: hidden;
    resize: none;
}

button {
    outline: none !important;
    cursor: pointer;
}

p {
    font-size: 15px;
    line-height: 1.7em;
    font-weight: 400;
    margin: 0 0 15px;
}

.text {
    font-size: 15px;
    line-height: 1.7em;
    font-weight: 400;
    margin: 0 0;
}

::-webkit-input-placeholder { color: inherit; }
::-moz-input-placeholder { color: inherit; }
::-ms-input-placeholder { color: inherit; }

.page-wrapper {
    position: relative;
    margin: 0 auto;
    width: 100%;
    min-width: 300px;
    z-index: 9;
    overflow: hidden;
}

.auto-container {
    position: static;
    max-width: 1170px;
    padding: 0px 15px;
    margin: 0 auto;
}

ul, li {
    list-style: none;
    padding: 0px;
    margin: 0px;
}

figure {
    margin-bottom: 0;
}

.theme-btn {
    display: inline-block;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.theme-btn i {
    position: relative;
    display: inline-block;
    font-size: 14px;
    margin-left: 3px;
}

.centered {
    text-align: center !important;
}

/* ============================================ */
/* 4. BOUTONS - COULEUR BLEUE EMSI             */
/* ============================================ */

.btn-style-one {
    position: relative;
    display: inline-block;
    text-transform: capitalize;
    border-radius: 0px;
    overflow: hidden;
    transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
}

.btn-style-one .btn-title {
    position: relative;
    display: block;
    font-size: 16px;
    line-height: 30px;
    color: #ffffff;
    font-weight: 700;
    padding: 15px 40px;
    background: #0066CC;
    border-radius: 0px;
    z-index: 1;
    transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
}

.btn-style-one:hover .btn-title {
    background: #0055A4;
    color: #ffffff;
}

.btn-style-two {
    position: relative;
    display: inline-block;
    text-transform: capitalize;
    border-radius: 0px;
    overflow: hidden;
    transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
}

.btn-style-two .btn-title {
    position: relative;
    display: block;
    font-size: 16px;
    line-height: 30px;
    color: #ffffff;
    font-weight: 700;
    padding: 15px 40px;
    background: #0066CC;
    border-radius: 0px;
    z-index: 1;
    transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
}

.btn-style-two:hover .btn-title {
    background: #0055A4;
    color: #ffffff;
}

.pull-right { float: right; }
.pull-left { float: left; }

/* ============================================ */
/* 5. PRELOADER                                */
/* ============================================ */

.preloader {
    position: fixed;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    z-index: 999999;
    background-color: rgba(0, 0, 0, 0);
}

.preloader .icon {
    position: fixed;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    z-index: 5;
    background-color: rgba(0, 0, 0, 0);
    background-position: center center;
    background-repeat: no-repeat;
    background-image: url(../images/icons/preloader.svg);
    -webkit-transition: all 200ms ease;
    -moz-transition: all 200ms ease;
    -ms-transition: all 200ms ease;
    -o-transition: all 200ms ease;
    transition: all 200ms ease;
}

.page-loaded .preloader .icon { opacity: 0; }

.preloader:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 51%;
    height: 100%;
    background: #ffffff;
    z-index: 0;
    -webkit-transform: translateX(0%);
    -ms-transform: translateX(0%);
    transform: translateX(0%);
    -webkit-transition: all 800ms ease;
    -moz-transition: all 800ms ease;
    -ms-transition: all 800ms ease;
    -o-transition: all 800ms ease;
    transition: all 800ms ease;
}

.page-loaded .preloader:before {
    -webkit-transform: translateX(-101%);
    -ms-transform: translateX(-101%);
    transform: translateX(-101%);
}

.preloader:after {
    content: '';
    position: absolute;
    right: 0;
    top: 0;
    width: 51%;
    height: 100%;
    background: #ffffff;
    z-index: 2;
    -webkit-transform: translateX(0%);
    -ms-transform: translateX(0%);
    transform: translateX(0%);
    -webkit-transition: all 800ms ease;
    -moz-transition: all 800ms ease;
    -ms-transition: all 800ms ease;
    -o-transition: all 800ms ease;
    transition: all 800ms ease;
}

.page-loaded .preloader:after {
    -webkit-transform: translateX(101%);
    -ms-transform: translateX(101%);
    transform: translateX(101%);
}

img {
    display: inline-block;
    max-width: 100%;
    height: auto;
}

.dropdown-toggle::after { display: none; }
.fa { line-height: inherit; }

/* ============================================ */
/* 6. SCROLL TO TOP - BLEU EMSI               */
/* ============================================ */

.scroll-to-top {
    position: fixed;
    right: 20px;
    bottom: 20px;
    width: 54px;
    height: 54px;
    color: #ffffff;
    font-size: 30px;
    line-height: 54px;
    text-align: center;
    z-index: 100;
    cursor: pointer;
    background: #003366;
    border-radius: 0px;
    margin-left: -26px;
    display: none;
    -webkit-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
}

.scroll-to-top:hover {
    color: #ffffff;
    -webkit-box-shadow: 2px 2px 0px #003366;
    -ms-box-shadow: 2px 2px 0px #003366;
    box-shadow: 2px 2px 0px #003366;
}

/* ============================================ */
/* 7. MAIN HEADER                              */
/* ============================================ */

.main-header {
    position: relative;
    display: block;
    width: 100%;
    z-index: 9999;
    background: none;
}

.header-top { position: relative; }
.header-top .inner { position: relative; }

.main-header .header-top .top-left {
    position: relative;
    float: left;
}

.main-header .header-top .top-right {
    position: relative;
    float: right;
}

.header-top-one {
    background: none;
    padding: 15px 0px;
    border-bottom: 1px solid #e2eef2;
    line-height: 24px;
    background: #f9f9f9;
    background: -webkit-linear-gradient(bottom, #f9f9f9, #ffffff);
}

.header-top-one .top-text {
    position: relative;
    color: #222222;
}

.header-top-one .info {
    position: relative;
    float: left;
}

.header-top-one .info li {
    position: relative;
    float: left;
    margin-left: 30px;
}

.header-top-one .info li a {
    color: #222222;
}

.header-top-one .info li .icon {
    position: relative;
    top: -1px;
    display: inline-block;
    vertical-align: middle;
    font-size: 17px;
    color: #0066CC;
    padding-right: 8px;
}

.header-top-one .info li a:hover {
    text-decoration: underline;
    color: #0066CC;
}

.header-top-one .language {
    position: relative;
    float: left;
    margin-left: 30px;
    z-index: 5;
}

.header-top-one .language .lang-btn {
    position: relative;
    display: block;
    line-height: 24px;
    font-size: 15px;
    text-transform: uppercase;
    font-weight: 700;
    line-height: 24px;
    cursor: pointer;
}

.header-top-one .language .lang-btn .flag {
    position: relative;
    top: -1px;
    display: inline-block;
    vertical-align: middle;
    padding-right: 5px;
}

.header-top-one .language .lang-btn .txt {
    position: relative;
    display: inline-block;
    vertical-align: middle;
}

.header-top-one .language .lang-btn .arrow {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    padding-left: 4px;
    font-size: 12px;
}

.header-top-one .language .lang-btn:before {
    content: '';
    position: absolute;
    left: 0;
    top: 100%;
    width: 100%;
    height: 16px;
}

.header-top-one .language .lang-dropdown {
    position: absolute;
    right: 0;
    top: 100%;
    margin-top: 16px;
    width: 150px;
    background: #ffffff;
    border: 1px solid #f0f0f0;
    border-top: 2px solid #0066CC;
    opacity: 0;
    visibility: hidden;
    -webkit-transform: translateY(20px);
    -ms-transform: translateY(20px);
    transform: translateY(20px);
    -webkit-transition: all 300ms linear;
    -ms-transition: all 300ms linear;
    transition: all 300ms linear;
}

.header-top-one .language:hover .lang-dropdown {
    opacity: 1;
    visibility: visible;
    -webkit-transform: translateY(0px);
    -ms-transform: translateY(0px);
    transform: translateY(0px);
}

.header-top-one .language .lang-dropdown li {
    position: relative;
    display: block;
    border-bottom: 1px solid #f0f0f0;
}

.header-top-one .language .lang-dropdown li:last-child {
    border: none;
}

.header-top-one .language .lang-dropdown li a {
    position: relative;
    display: block;
    padding: 5px 15px;
    font-size: 14px;
    line-height: 24px;
    color: #222222;
}

.header-top-one .language .lang-dropdown li a:hover {
    text-decoration: underline;
    color: #0066CC;
}

/*=== Header Main Box ===*/

.main-header .header-upper {
    position: relative;
    display: block;
    z-index: 1;
}

.header-style-one .header-upper .inner-container {
    position: relative;
}

.main-header .header-upper {
    position: relative;
    background: #ffffff;
}

.main-header .header-upper .logo-box {
    position: relative;
    float: left;
    padding: 15px 0px;
    z-index: 10;
}

.main-header .header-upper .logo-box .logo {
    position: relative;
    display: block;
}

.main-header .header-upper .logo-box .logo img {
    position: relative;
    display: inline-block;
    max-width: 100%;
    max-height: 80px;
    z-index: 1;
}

.main-header .header-upper .right-nav {
    position: relative;
    float: right;
}

.main-header .search-btn {
    position: relative;
    float: left;
    margin-top: 40px;
    margin-left: 40px;
}

.main-header .search-btn button {
    position: relative;
    display: block;
    padding: 0;
    margin: 0;
    background: none;
    line-height: 30px;
    color: #222222;
    cursor: pointer;
}

.main-header .search-btn button .fa {
    vertical-align: middle;
}

.main-header .nav-outer {
    position: relative;
    float: left;
    z-index: 1;
}

.main-header .nav-outer .main-menu {
    position: relative;
}

.main-menu .navbar-collapse {
    padding: 0px;
    display: block !important;
}

.main-menu .navigation {
    position: relative;
    margin: 0px;
    font-family: 'Arial', sans-serif !important;
}

.main-menu .navigation > li {
    position: relative;
    float: left;
    padding: 25px 0px;
    margin-right: 40px;
    -webkit-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
}

.main-menu .navigation > li:last-child {
    margin-right: 0px;
}

.main-menu .navigation > li:last-child:after {
    display: none;
}

.main-menu .navigation > li > a {
    position: relative;
    display: block;
    text-align: center;
    font-size: 16px;
    line-height: 30.4px;
    font-weight: 700;
    text-transform: capitalize;
    letter-spacing: 0.03em;
    color: #222222;
    padding: 15px 0px;
    opacity: 1;
    -webkit-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
}

.main-menu .navigation > li:before {
    position: absolute;
    content: '';
    left: 0px;
    bottom: 0px;
    width: 0px;
    border-bottom: 2px solid #0066CC;
    -webkit-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
}

.sticky-header .main-menu .navigation > li:before {
    display: none;
}

.main-menu .navigation > li:hover:before,
.main-menu .navigation > li.current:before {
    width: 100%;
}

.main-menu .navigation > li:hover > a,
.main-menu .navigation > li.current > a {
    color: #0066CC;
}

.sticky-header .main-menu .navigation > li:hover > a,
.sticky-header .main-menu .navigation > li.current > a {
    color: #0066CC;
}

.sticky-header .main-menu .navigation > li.dropdown {
    padding-right: 0px;
}

.main-menu .navigation > li > ul {
    position: absolute;
    left: 0px;
    top: 100%;
    width: 240px;
    z-index: 100;
    display: none;
    background: #ffffff;
    padding: 12px 0px;
    border-top: 2px solid #0066CC;
    -ms-transform: translateY(20px);
    transform: translateY(20px);
    transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -webkit-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    -webkit-box-shadow: 2px 2px 5px 1px rgba(0, 0, 0, 0.05), -2px 0px 5px 1px rgba(0, 0, 0, 0.05);
    -ms-box-shadow: 2px 2px 5px 1px rgba(0, 0, 0, 0.05), -2px 0px 5px 1px rgba(0, 0, 0, 0.05);
    -o-box-shadow: 2px 2px 5px 1px rgba(0, 0, 0, 0.05), -2px 0px 5px 1px rgba(0, 0, 0, 0.05);
    -moz-box-shadow: 2px 2px 5px 1px rgba(0, 0, 0, 0.05), -2px 0px 5px 1px rgba(0, 0, 0, 0.05);
    box-shadow: 2px 2px 5px 1px rgba(0, 0, 0, 0.05), -2px 0px 5px 1px rgba(0, 0, 0, 0.05);
}

.main-menu .navigation > li > ul.from-right {
    left: auto;
    right: 0px;
}

.main-menu .navigation > li > ul > li {
    position: relative;
    padding: 0px 30px;
    width: 100%;
}

.main-menu .navigation > li > ul > li > a {
    position: relative;
    display: block;
    padding: 10px 0px;
    line-height: 24px;
    font-weight: 700;
    font-size: 15px;
    color: #0066CC;
    text-align: left;
    text-transform: capitalize;
    border-bottom: 1px solid rgba(0, 0, 0, 0.10);
    transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -webkit-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
}

.main-menu .navigation > li > ul > li:last-child > a {
    border-bottom: none;
}

.main-menu .navigation > li > ul > li:hover > a {
    color: #0066CC;
}

.main-menu .navigation > li > ul > li > ul {
    position: absolute;
    left: 100%;
    top: 0;
    width: 240px;
    z-index: 100;
    display: none;
    background: #ffffff;
    padding: 12px 0px;
    border-top: 2px solid #0066CC;
    -ms-transform: translateY(20px);
    transform: translateY(20px);
    transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -webkit-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    -webkit-box-shadow: 2px 2px 5px 1px rgba(0, 0, 0, 0.05), -2px 0px 5px 1px rgba(0, 0, 0, 0.05);
    -ms-box-shadow: 2px 2px 5px 1px rgba(0, 0, 0, 0.05), -2px 0px 5px 1px rgba(0, 0, 0, 0.05);
    -o-box-shadow: 2px 2px 5px 1px rgba(0, 0, 0, 0.05), -2px 0px 5px 1px rgba(0, 0, 0, 0.05);
    -moz-box-shadow: 2px 2px 5px 1px rgba(0, 0, 0, 0.05), -2px 0px 5px 1px rgba(0, 0, 0, 0.05);
    box-shadow: 2px 2px 5px 1px rgba(0, 0, 0, 0.05), -2px 0px 5px 1px rgba(0, 0, 0, 0.05);
}

.main-menu .navigation > li > ul > li > ul > li {
    position: relative;
    padding: 0px 30px;
    width: 100%;
}

.main-menu .navigation > li > ul > li > ul > li > a {
    position: relative;
    display: block;
    padding: 10px 0px;
    line-height: 24px;
    font-weight: 700;
    font-size: 15px;
    color: #0066CC;
    text-align: left;
    text-transform: capitalize;
    border-bottom: 1px solid rgba(0, 0, 0, 0.10);
    transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -webkit-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
}

.main-menu .navigation > li > ul > li > ul > li:last-child > a {
    border-bottom: none;
}

.main-menu .navigation > li > ul > li > ul > li > a:hover {
    color: #0066CC;
}

.main-menu .navigation > li > ul > li.dropdown > a:after {
    font-family: 'Font Awesome 5 Free';
    content: "\f105";
    position: absolute;
    right: 0px;
    top: 11px;
    display: block;
    line-height: 24px;
    font-size: 16px;
    font-weight: 900;
    z-index: 5;
}

.main-menu .navigation > li.dropdown:hover > ul {
    visibility: visible;
    opacity: 1;
    -ms-transform: translateY(0px);
    transform: translateY(0px);
    transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -webkit-transition: all 500ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
}

.main-menu .navigation li > ul > li.dropdown:hover > ul {
    visibility: visible;
    opacity: 1;
    -ms-transform: translateY(0px);
    transform: translateY(0px);
    transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -webkit-transition: all 500ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
}

.main-menu .navigation li.dropdown .dropdown-btn {
    position: absolute;
    right: 10px;
    top: 8px;
    width: 34px;
    height: 30px;
    border: 1px solid #ffffff;
    text-align: center;
    font-size: 16px;
    line-height: 26px;
    color: #ffffff;
    cursor: pointer;
    z-index: 5;
    display: none;
}

/* ============================================ */
/* 8. HEADER STYLE TWO                         */
/* ============================================ */

.header-style-two {
    position: relative;
}

.main-header .header-upper .right-info {
    position: relative;
    float: right;
    padding-top: 33px;
}

.main-header .header-upper .info {
    position: relative;
    float: left;
}

.main-header .header-upper .info .info-block {
    position: relative;
    float: left;
    padding-left: 50px;
    min-height: 44px;
    margin-left: 55px;
}

.main-header .header-upper .info .info-block:before {
    content: '';
    position: absolute;
    left: -28px;
    top: 0px;
    height: 44px;
    border-left: 1px solid #f0f0f0;
}

.main-header .header-upper .info .info-block:first-child {
    margin-left: 0;
}

.main-header .header-upper .info .info-block:first-child:before {
    display: none;
}

.main-header .header-upper .info .info-block .icon-box {
    position: absolute;
    left: 0;
    top: 0px;
    width: 36px;
    height: 44px;
    font-size: 36px;
    color: #0066CC;
    line-height: 44px;
}

.main-header .header-upper .info strong {
    position: relative;
    display: block;
    color: #222222;
    font-weight: 700;
}

.main-header .header-upper .info .info-text {
    position: relative;
    display: block;
    font-size: 15px;
    line-height: 22px;
}

.main-header .header-upper .info a {
    color: #222222;
}

.main-header .header-upper .info a:hover,
.main-header .header-upper .info a:hover strong {
    text-decoration: underline;
    color: #0066CC;
}

.header-style-two .header-upper .lang-block {
    position: relative;
    float: left;
    margin-left: 55px;
    padding-top: 10px;
}

.header-style-two .header-upper .lang-block:before {
    content: '';
    position: absolute;
    left: -28px;
    top: 0px;
    height: 44px;
    border-left: 1px solid #f0f0f0;
}

.header-style-two .language {
    position: relative;
}

.header-style-two .language .lang-btn {
    position: relative;
    display: block;
    line-height: 24px;
    font-size: 15px;
    text-transform: uppercase;
    font-weight: 700;
    line-height: 24px;
    cursor: pointer;
}

.header-style-two .language .lang-btn .flag {
    position: relative;
    top: -1px;
    display: inline-block;
    vertical-align: middle;
    padding-right: 5px;
}

.header-style-two .language .lang-btn .txt {
    position: relative;
    display: inline-block;
    vertical-align: middle;
}

.header-style-two .language .lang-btn .arrow {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    padding-left: 4px;
    font-size: 12px;
}

.header-style-two .language .lang-btn:before {
    content: '';
    position: absolute;
    left: 0;
    top: 100%;
    width: 100%;
    height: 16px;
}

.header-style-two .language .lang-dropdown {
    position: absolute;
    right: 0;
    top: 100%;
    margin-top: 16px;
    width: 150px;
    background: #ffffff;
    border: 1px solid #f0f0f0;
    border-top: 2px solid #0066CC;
    opacity: 0;
    visibility: hidden;
    -webkit-transform: translateY(20px);
    -ms-transform: translateY(20px);
    transform: translateY(20px);
    -webkit-transition: all 300ms linear;
    -ms-transition: all 300ms linear;
    transition: all 300ms linear;
}

.header-style-two .language:hover .lang-dropdown {
    opacity: 1;
    visibility: visible;
    -webkit-transform: translateY(0px);
    -ms-transform: translateY(0px);
    transform: translateY(0px);
}

.header-style-two .language .lang-dropdown li {
    position: relative;
    display: block;
    border-bottom: 1px solid #f0f0f0;
}

.header-style-two .language .lang-dropdown li:last-child {
    border: none;
}

.header-style-two .language .lang-dropdown li a {
    position: relative;
    display: block;
    padding: 5px 15px;
    font-size: 14px;
    line-height: 24px;
    color: #222222;
}

.header-style-two .language .lang-dropdown li a:hover {
    text-decoration: underline;
    color: #0066CC;
}

.header-style-two .header-lower {
    position: relative;
    display: block;
    background: #0066CC;
    color: #ffffff;
}

.header-style-two .header-lower .nav-box {
    position: relative;
    display: block;
}

.header-style-two .header-lower .search-btn {
    margin-top: 18px;
    float: right;
}

.header-style-two .header-lower .search-btn button {
    color: #ffffff;
}

.header-style-two .nav-box .main-menu .navigation > li {
    padding: 3px 0px;
}

.header-style-two .nav-box .main-menu .navigation > li > a {
    color: #ffffff;
}

.header-style-two .nav-box .main-menu .navigation > li:before {
    border-bottom-color: #ffffff;
}

/* ============================================ */
/* 9. INNER HEADER                             */
/* ============================================ */

.inner-page-header {
    position: relative;
}

/* ============================================ */
/* 10. STICKY HEADER                           */
/* ============================================ */

.sticky-header {
    position: fixed;
    visibility: hidden;
    opacity: 0;
    left: 0px;
    top: 0px;
    width: 100%;
    padding: 0px 0px;
    z-index: -1;
    background: #ffffff;
    border-bottom: 1px solid #f0f0f0;
    -webkit-box-shadow: 0 0 15px rgba(0, 0, 0, 0.10);
    -moz-box-shadow: 0 0 15px rgba(0, 0, 0, 0.10);
    -ms-box-shadow: 0 0 15px rgba(0, 0, 0, 0.10);
    -o-box-shadow: 0 0 15px rgba(0, 0, 0, 0.10);
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.10);
    -webkit-transition: top 300ms ease;
    -moz-transition: top 300ms ease;
    -ms-transition: top 300ms ease;
    -o-transition: top 300ms ease;
    transition: top 300ms ease;
}

.fixed-header .sticky-header {
    opacity: 1;
    z-index: 99901;
    visibility: visible;
}

.fixed-header .sticky-header .logo {
    padding: 10px 0px;
}

.sticky-header .main-menu .navigation > li {
    margin-left: 40px !important;
    padding: 0;
    margin-right: 0;
    background-color: transparent;
}

.sticky-header .main-menu .navigation > li.dropdown > a:after,
.sticky-header .main-menu .navigation > li:before {
    display: none;
}

.sticky-header .main-menu .navigation > li > a {
    padding: 21px 0px !important;
    line-height: 30px;
    font-size: 16px;
    font-weight: 600;
    color: #003366;
    text-transform: capitalize;
    -webkit-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
}

.sticky-header .main-menu .navigation > li > ul > li > ul {
    left: auto;
    right: 100%;
}

.sticky-header .main-menu .navigation > li:hover > a,
.sticky-header .main-menu .navigation > li.current > a,
.sticky-header .main-menu .navigation > li.current-menu-item > a {
    opacity: 1;
}

/* ============================================ */
/* 11. SEARCH POPUP                            */
/* ============================================ */

.search-popup {
    position: fixed;
    left: 0;
    top: 0px;
    width: 100%;
    height: 100%;
    z-index: 99999;
    visibility: hidden;
    opacity: 0;
    overflow: auto;
    background: rgba(0, 0, 0, 0.0);
    transition: all 100ms ease;
    -moz-transition: all 100ms ease;
    -webkit-transition: all 100ms ease;
    -ms-transition: all 100ms ease;
    -o-transition: all 100ms ease;
}

.search-popup:before {
    content: '';
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.70);
    -webkit-transform: translateY(101%);
    -ms-transform: translateY(101%);
    transform: translateY(101%);
}

.search-popup.popup-visible:before {
    transition: all 500ms ease 100ms;
    -moz-transition: all 500ms ease 100ms;
    -webkit-transition: all 500ms ease 100ms;
    -ms-transition: all 500ms ease 100ms;
    -o-transition: all 500ms ease 100ms;
    -webkit-transform: translateY(0%);
    -ms-transform: translateY(0%);
    transform: translateY(0%);
}

.search-popup.popup-visible {
    opacity: 1;
    visibility: visible;
}

body.search-visible {
    overflow: hidden;
}

.search-popup .overlay-layer {
    position: absolute;
    left: 0px;
    top: 0px;
    right: 0px;
    bottom: 0px;
    display: block;
}

.search-popup .close-search {
    position: absolute;
    right: 25px;
    top: 25px;
    font-size: 22px;
    color: #ffffff;
    cursor: pointer;
    z-index: 5;
}

.search-popup .close-search:hover {
    opacity: 0.70;
}

.search-popup .search-form {
    position: relative;
    padding: 0px 15px 0px;
    max-width: 1024px;
    margin: 0 auto;
    margin-top: 150px;
    margin-bottom: 100px;
    opacity: 0;
    -webkit-transform: translateY(50px);
    -ms-transform: translateY(50px);
    transform: translateY(50px);
    z-index: 10;
}

.search-popup.popup-visible .search-form {
    opacity: 1;
    -webkit-transform: translateY(0px);
    -ms-transform: translateY(0px);
    transform: translateY(0px);
    transition: all 500ms ease 500ms;
    -moz-transition: all 900ms ease 500ms;
    -webkit-transition: all 900ms ease 500ms;
    -ms-transition: all 900ms ease 500ms;
    -o-transition: all 900ms ease 500ms;
}

.search-popup .search-form fieldset {
    position: relative;
    border: 7px solid rgba(255, 255, 255, 0.50);
    border-radius: 12px;
}

.search-popup .search-form fieldset input[type="search"] {
    position: relative;
    height: 70px;
    padding: 20px 220px 20px 30px;
    background: #ffffff;
    line-height: 30px;
    font-size: 24px;
    color: #233145;
    border-radius: 7px;
}

.search-popup .search-form fieldset input[type="submit"] {
    position: absolute;
    display: block;
    right: 0px;
    top: 0px;
    text-align: center;
    width: 220px;
    height: 70px;
    padding: 20px 10px 20px 10px;
    color: #ffffff !important;
    background: #0066CC;
    line-height: 30px;
    font-size: 20px;
    cursor: pointer;
    text-transform: uppercase;
    border-radius: 0px 7px 7px 0px;
}

.search-popup .search-form fieldset input[type="submit"]:hover {
    background: #0055A4;
}

.search-popup h3 {
    text-transform: uppercase;
    font-size: 20px;
    font-weight: 600;
    color: #ffffff;
    margin-bottom: 20px;
    letter-spacing: 1px;
    text-align: center;
}

.search-popup .recent-searches {
    font-size: 16px;
    color: #ffffff;
    text-align: center;
}

.search-popup .recent-searches li {
    display: inline-block;
    margin: 0px 10px 10px 0px;
}

.search-popup .recent-searches li a {
    display: block;
    line-height: 24px;
    border: 1px solid #ffffff;
    padding: 7px 15px;
    color: #ffffff;
    border-radius: 3px;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -ms-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
}

.search-popup .recent-searches li a:hover {
    color: #0066CC;
    border-color: #0066CC;
}

/* ============================================ */
/* 12. MOBILE MENU - VERSION EMSI              */
/* ============================================ */

.nav-outer .mobile-nav-toggler {
    position: relative;
    float: right;
    font-size: 36px;
    line-height: 40px;
    cursor: pointer;
    margin-left: 0px;
    color: #222222;
    margin: 35px 0px 0px;
    display: none;
}

.mobile-menu {
    position: fixed;
    right: 0;
    top: 0;
    width: 300px;
    padding-right: 30px;
    max-width: 100%;
    height: 100%;
    opacity: 0;
    visibility: hidden;
    z-index: 999999;
}

.mobile-menu .mCSB_inside>.mCSB_container {
    margin-right: 5px;
}

.mobile-menu .navbar-collapse {
    display: block !important;
}

.mobile-menu .nav-logo {
    position: relative;
    padding: 30px 25px;
    text-align: left;
    background: #003366 !important;
}

.mobile-menu .nav-logo img {
    max-height: 40px !important;
    width: auto !important;
}

.mobile-menu-visible {
    overflow: hidden;
}

.mobile-menu-visible .mobile-menu {
    opacity: 1;
    visibility: visible;
}

.mobile-menu .menu-backdrop {
    position: fixed;
    right: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    background: rgba(0, 0, 0, 0.70);
    -webkit-transform: translateX(101%);
    -ms-transform: translateX(101%);
    transform: translateX(101%);
    transition: all 900ms ease;
    -moz-transition: all 900ms ease;
    -webkit-transition: all 900ms ease;
    -ms-transition: all 900ms ease;
    -o-transition: all 900ms ease;
}

.mobile-menu-visible .mobile-menu .menu-backdrop {
    opacity: 0.70;
    visibility: visible;
    -webkit-transition: all 0.7s ease;
    -moz-transition: all 0.7s ease;
    -ms-transition: all 0.7s ease;
    -o-transition: all 0.7s ease;
    transition: all 0.7s ease;
    -webkit-transform: translateX(0%);
    -ms-transform: translateX(0%);
    transform: translateX(0%);
}

.mobile-menu .menu-box {
    position: absolute;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    max-height: 100%;
    overflow-y: auto;
    background: #003366 !important;
    padding: 0px 0px;
    z-index: 5;
    opacity: 0;
    visibility: hidden;
    border-radius: 0px;
    -webkit-transform: translateX(101%);
    -ms-transform: translateX(101%);
    transform: translateX(101%);
}

.mobile-menu-visible .mobile-menu .menu-box {
    opacity: 1;
    visibility: visible;
    -webkit-transition: all 0.7s ease;
    -moz-transition: all 0.7s ease;
    -ms-transition: all 0.7s ease;
    -o-transition: all 0.7s ease;
    transition: all 0.7s ease;
    -webkit-transform: translateX(0%);
    -ms-transform: translateX(0%);
    transform: translateX(0%);
}

.mobile-menu .close-btn {
    position: absolute;
    right: 10px;
    top: 10px;
    line-height: 30px;
    width: 24px;
    text-align: center;
    font-size: 16px;
    color: #ffffff !important;
    cursor: pointer;
    z-index: 10;
    -webkit-transition: all 0.9s ease;
    -moz-transition: all 0.9s ease;
    -ms-transition: all 0.9s ease;
    -o-transition: all 0.9s ease;
    transition: all 0.9s ease;
}

.mobile-menu-visible .mobile-menu .close-btn {
    -webkit-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    transform: rotate(360deg);
}

.mobile-menu .close-btn:hover {
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
}

.mobile-menu .navigation {
    position: relative;
    display: block;
    width: 100%;
    float: none;
}

.mobile-menu .navigation li {
    position: relative;
    display: block;
    border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.mobile-menu .navigation:last-child {
    border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.mobile-menu .navigation li > ul > li:first-child {
    border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.mobile-menu .navigation li > a {
    position: relative;
    display: block;
    line-height: 24px;
    padding: 10px 25px;
    font-size: 15px;
    font-weight: 500;
    color: #ffffff !important;
    text-transform: uppercase;
    font-family: 'Arial', sans-serif !important;
    -webkit-transition: all 500ms ease;
    -moz-transition: all 500ms ease;
    -ms-transition: all 500ms ease;
    -o-transition: all 500ms ease;
    transition: all 500ms ease;
}

.mobile-menu .navigation li ul li > a {
    font-size: 15px;
    margin-left: 20px;
    text-transform: capitalize;
}

.mobile-menu .navigation li > a:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    height: 0;
    border-left: 3px solid #0066CC !important;
    -webkit-transition: all 500ms ease;
    -moz-transition: all 500ms ease;
    -ms-transition: all 500ms ease;
    -o-transition: all 500ms ease;
    transition: all 500ms ease;
}

.mobile-menu .navigation li.current > a:before {
    height: 100%;
}

.mobile-menu .navigation li.dropdown .dropdown-btn {
    position: absolute;
    right: 10px;
    top: 6px;
    width: 32px;
    height: 32px;
    text-align: center;
    font-size: 16px;
    line-height: 32px;
    color: #ffffff !important;
    background: rgba(255, 255, 255, 0.10);
    cursor: pointer;
    border-radius: 2px;
    -webkit-transition: all 500ms ease;
    -moz-transition: all 500ms ease;
    -ms-transition: all 500ms ease;
    -o-transition: all 500ms ease;
    transition: all 500ms ease;
    z-index: 5;
}

.mobile-menu .navigation li.dropdown .dropdown-btn:hover {
    color: #0066CC !important;
}

.mobile-menu .navigation li.dropdown > a {
    padding-right: 30px;
}

.mobile-menu .navigation li.dropdown .dropdown-btn.open {
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
}

.mobile-menu .navigation li > ul,
.mobile-menu .navigation li > ul > li > ul {
    display: none;
}

.mobile-menu .social-links {
    position: relative;
    text-align: center;
    padding: 30px 25px;
}

.mobile-menu .social-links li {
    position: relative;
    display: inline-block;
    margin: 0px 10px 10px;
}

.mobile-menu .social-links li a {
    position: relative;
    line-height: 32px;
    font-size: 16px;
    color: #ffffff !important;
    -webkit-transition: all 500ms ease;
    -moz-transition: all 500ms ease;
    -ms-transition: all 500ms ease;
    -o-transition: all 500ms ease;
    transition: all 500ms ease;
}

.mobile-menu .social-links li a:hover {
    color: #0066CC !important;
}

/* ============================================ */
/* 13. MOBILE - INFOS DANS LE MENU - EMSI      */
/* ============================================ */

.mobile-info {
    padding: 20px 25px !important;
    border-top: 1px solid rgba(255, 255, 255, 0.15) !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.15) !important;
    margin: 10px 0 !important;
    background: #002855 !important;
}

.mobile-info ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.mobile-info ul li {
    display: flex !important;
    align-items: center !important;
    padding: 12px 0 !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
    gap: 15px !important;
}

.mobile-info ul li:last-child {
    border-bottom: none !important;
}

/* Icônes en BLEU CLAIR - FORCÉES */
.mobile-info ul li .mobile-icon {
    color: #0066CC !important;
    font-size: 20px !important;
    width: 32px !important;
    height: 32px !important;
    text-align: center !important;
    line-height: 32px !important;
    flex-shrink: 0 !important;
    background: rgba(255, 255, 255, 0.12) !important;
    border-radius: 6px !important;
    display: inline-block !important;
}

.mobile-info ul li a {
    color: #ffffff !important;
    text-decoration: none !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    font-family: 'Arial', sans-serif !important;
}

.mobile-info ul li a:hover {
    color: #0066CC !important;
}

/* ============================================ */
/* 14. DESKTOP - CACHER LES INFOS SUR MOBILE   */
/* ============================================ */

@media (max-width: 991px) {
    .desktop-only {
        display: none !important;
    }
    
    .mobile-info {
        display: block !important;
    }
}

@media (min-width: 992px) {
    .mobile-info {
        display: none !important;
    }
}

/* ============================================ */
/* 15. HEADER UPPER - COULEURS DES ICÔNES      */
/* ============================================ */

.header-upper .info-block .icon-box {
    color: #0066CC !important;
}

.header-upper .info-block .icon-box span {
    color: #0066CC !important;
}

/* ============================================ */
/* 16. FOOTER - GARDER LES ICÔNES VISIBLES     */
/* ============================================ */

.icon-blue {
    color: #0066CC !important;
    margin-right: 10px !important;
}

.main-footer .links-widget .links li:before {
    color: #0066CC !important;
}

.main-footer .social-links li a {
    color: #0066CC !important;
}

.main-footer .social-links li a:hover {
    color: #0055A4 !important;
}

/* ============================================ */
/* 17. SUPPRIMER L'ITALIQUE DANS LE FOOTER     */
/* ============================================ */

.footer-widget .text,
.footer-widget .info,
.footer-widget .info ul li,
.footer-widget .info ul li a,
.footer-widget .info ul li strong,
.footer-widget .info ul li span {
    font-style: normal !important;
}

/* ============================================ */
/* 18. LAZY LOAD SETTINGS                      */
/* ============================================ */

img.lazy-image {
    background: url(../images/icons/image-bg.svg) center center no-repeat;
}

img.lazy-image.loaded {
    background-image: none;
}

.owl-theme img.lazy-image.loaded {
    height: auto;
    opacity: 1;
}

/* ============================================ */
/* 19. BANNER SECTION                          */
/* ============================================ */

.banner-section {
    position: relative;
    z-index: 1;
}

.banner-section .banner-curve {
    position: absolute;
    left: 0;
    bottom: -1px;
    width: 100%;
    height: 78px;
    background-image: url('../images/main-slider/banner-curve-two.png');
    background-repeat: no-repeat;
    background-position: center bottom;
    background-size: 100% 100%;
    z-index: 2;
}

.banner-carousel {
    position: relative;
    z-index: 1;
}

.banner-carousel .slide-item {
    position: relative;
    display: block;
    background-color: #edf5f8;
    color: #222222;
    padding: 35px 0px 50px;
    overflow: hidden;
}

.banner-two .banner-carousel .slide-item {
    background: #0066CC;
    color: #ffffff;
    padding: 25px 0px;
}

.banner-carousel .slide-item .image-layer {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    opacity: 0.50;
    background-repeat: no-repeat;
    background-position: center top;
    background-size: cover;
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
}

.banner-carousel .active .slide-item .image-layer {
    -webkit-transform: scale(1.15);
    -ms-transform: scale(1.15);
    transform: scale(1.15);
    -webkit-transition: all 7000ms linear;
    -moz-transition: all 7000ms linear;
    -ms-transition: all 7000ms linear;
    -o-transition: all 7000ms linear;
    transition: all 7000ms linear;
}

.banner-carousel .content-box {
    position: relative;
    display: table;
    vertical-align: middle;
    width: 100%;
    height: 600px;
    padding: 0 0px;
    z-index: 5;
}

.banner-carousel .round-layer {
    position: absolute;
    right: -130px;
    top: -35px;
    width: 100%;
    height: 685px;
    background: url('../images/main-slider/round-box.png') right 0 no-repeat;
    background-size: auto 100%;
    opacity: 0;
    -webkit-transform: translateX(30px);
    -moz-transform: translateX(30px);
    -ms-transform: translateX(30px);
    -o-transform: translateX(30px);
    transform: translateX(30px);
    -webkit-transition: all 700ms ease;
    -moz-transition: all 700ms ease;
    -ms-transition: all 700ms ease;
    -o-transition: all 700ms ease;
    transition: all 700ms ease;
    -webkit-transition-delay: 1500ms;
    -moz-transition-delay: 1500ms;
    -ms-transition-delay: 1500ms;
    -o-transition-delay: 1500ms;
    transition-delay: 1500ms;
}

.banner-carousel .active .content-box .round-layer {
    opacity: 1;
    -webkit-transform: translateX(0px);
    -moz-transform: translateX(0px);
    -ms-transform: translateX(0px);
    -o-transform: translateX(0px);
    transform: translateX(0px);
}

.banner-carousel .content-box .content {
    position: relative;
    display: table-cell;
    vertical-align: middle;
    padding: 50px 0px;
}

.banner-carousel .content-box .inner {
    position: relative;
    display: block;
    max-width: 550px;
}

.banner-carousel .content-box .inner.alternate {
    max-width: 650px;
}

.banner-carousel .content-box .sub-title {
    position: relative;
    display: inline-block;
    font-size: 16px;
    line-height: 1.2em;
    color: #0066CC;
    font-weight: 700;
    opacity: 0;
    text-transform: capitalize;
    margin-bottom: 20px;
    -webkit-transform: translateY(-80px);
    -moz-transform: translateY(-80px);
    -ms-transform: translateY(-80px);
    -o-transform: translateY(-80px);
    transform: translateY(-80px);
}

.banner-carousel .content-box .sub-title:before {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    border-bottom: 2px solid #0066CC;
}

.banner-two .banner-carousel .sub-title {
    color: #ffffff;
}

.banner-carousel .active .content-box .sub-title {
    opacity: 1;
    -webkit-transform: translate(0);
    -moz-transform: translate(0);
    -ms-transform: translate(0);
    -o-transform: translate(0);
    transform: translate(0);
    -webkit-transition: all 700ms ease;
    -moz-transition: all 700ms ease;
    -ms-transition: all 700ms ease;
    -o-transition: all 700ms ease;
    transition: all 700ms ease;
    -webkit-transition-delay: 300ms;
    -moz-transition-delay: 300ms;
    -ms-transition-delay: 300ms;
    -o-transition-delay: 300ms;
    transition-delay: 300ms;
}

.banner-carousel .content-box h1 {
    display: block;
    font-size: 60px;
    line-height: 1.15em;
    color: #222222;
    font-weight: 400;
    opacity: 0;
    margin-bottom: 25px;
    text-transform: capitalize;
    letter-spacing: 0;
    -webkit-transform: translateY(80px);
    -moz-transform: translateY(80px);
    -ms-transform: translateY(80px);
    -o-transform: translateY(80px);
    transform: translateY(80px);
    text-transform: capitalize;
}

.banner-two .banner-carousel h1 {
    color: #ffffff;
}

.banner-carousel .content-box h1 strong {
    font-weight: 700;
}

.banner-carousel .active .content-box h1 {
    opacity: 1;
    -webkit-transform: translate(0);
    -moz-transform: translate(0);
    -ms-transform: translate(0);
    -o-transform: translate(0);
    transform: translate(0);
    -webkit-transition: all 700ms ease;
    -moz-transition: all 700ms ease;
    -ms-transition: all 700ms ease;
    -o-transition: all 700ms ease;
    transition: all 700ms ease;
    -webkit-transition-delay: 700ms;
    -moz-transition-delay: 700ms;
    -ms-transition-delay: 700ms;
    -o-transition-delay: 700ms;
    transition-delay: 700ms;
}

.banner-carousel .content-box .text {
    display: block;
    font-size: 22px;
    line-height: 1.5em;
    color: #222222;
    font-weight: 400;
    opacity: 0;
    margin-bottom: 45px;
    -webkit-transform: translateY(50px);
    -moz-transform: translateY(50px);
    -ms-transform: translateY(50px);
    -o-transform: translateY(50px);
    transform: translateY(50px);
}

.banner-two .banner-carousel .text {
    color: #ffffff;
}

.banner-carousel .active .content-box .text {
    opacity: 1;
    -webkit-transform: translate(0);
    -moz-transform: translate(0);
    -ms-transform: translate(0);
    -o-transform: translate(0);
    transform: translate(0);
    -webkit-transition: all 700ms ease;
    -moz-transition: all 700ms ease;
    -ms-transition: all 700ms ease;
    -o-transition: all 700ms ease;
    transition: all 700ms ease;
    -webkit-transition-delay: 1100ms;
    -moz-transition-delay: 1100ms;
    -ms-transition-delay: 1100ms;
    -o-transition-delay: 1100ms;
    transition-delay: 1100ms;
}

.banner-carousel .content-box .links-box {
    position: relative;
    opacity: 0;
    z-index: 5;
    -webkit-transform: translateY(80px);
    -moz-transform: translateY(80px);
    -ms-transform: translateY(80px);
    -o-transform: translateY(80px);
    transform: translateY(80px);
}

.banner-carousel .active .content-box .links-box {
    opacity: 1;
    -webkit-transform: translate(0);
    -moz-transform: translate(0);
    -ms-transform: translate(0);
    -o-transform: translate(0);
    transform: translate(0);
    -webkit-transition: all 700ms ease;
    -moz-transition: all 700ms ease;
    -ms-transition: all 700ms ease;
    -o-transition: all 700ms ease;
    transition: all 700ms ease;
    -webkit-transition-delay: 1500ms;
    -moz-transition-delay: 1500ms;
    -ms-transition-delay: 1500ms;
    -o-transition-delay: 1500ms;
    transition-delay: 1500ms;
}

.banner-carousel .content-box .content-image {
    position: absolute;
    right: -80px;
    top: -35px;
    width: 575px;
    opacity: 0;
    -webkit-transform: translateX(50px);
    -moz-transform: translateX(50px);
    -ms-transform: translateX(50px);
    -o-transform: translateX(50px);
    transform: translateX(50px);
    -webkit-transition: all 700ms ease;
    -moz-transition: all 700ms ease;
    -ms-transition: all 700ms ease;
    -o-transition: all 700ms ease;
    transition: all 700ms ease;
    -webkit-transition-delay: 2000ms;
    -moz-transition-delay: 2000ms;
    -ms-transition-delay: 2000ms;
    -o-transition-delay: 2000ms;
    transition-delay: 2000ms;
    z-index: 5;
}

.banner-carousel .active .content-box .content-image {
    opacity: 1;
    -webkit-transform: translate(0);
    -moz-transform: translate(0);
    -ms-transform: translate(0);
    -o-transform: translate(0);
    transform: translate(0);
}

.banner-carousel .content-box .content-image img {
    width: auto !important;
    max-width: 100%;
}

.banner-carousel .links-box .theme-btn {
    vertical-align: top;
    display: inline-block;
    margin-right: 25px;
    margin-bottom: 15px;
}

.banner-carousel .alternate .links-box .theme-btn {
    margin-right: 12px;
}

.banner-carousel .links-box .theme-btn:last-child {
    margin-right: 0;
}

.banner-carousel .links-box .video-btn {
    position: relative;
    display: inline-block;
    line-height: 30px;
    color: #0066CC;
}

.banner-carousel .links-box .video-btn .btn-title {
    position: relative;
    display: block;
    padding: 15px 0px;
}

.banner-carousel .links-box .video-btn .icon {
    padding-right: 5px;
    font-size: 24px;
    vertical-align: middle;
}

.banner-carousel .links-box .call-btn {
    position: relative;
    display: inline-block;
    line-height: 30px;
    font-weight: 700;
    font-size: 18px;
    color: #ffffff;
}

.banner-carousel .links-box .call-btn .btn-title {
    position: relative;
    display: block;
    padding: 15px 0px;
}

.banner-section .owl-dots,
.banner-one .banner-carousel .owl-nav,
.banner-two .banner-carousel .owl-nav {
    display: none;
}

/* ============================================ */
/* 20. SECTION TITLE - BLEU EMSI               */
/* ============================================ */

.sec-title {
    position: relative;
    margin-bottom: 50px;
}

.sec-title.centered {
    max-width: 720px;
    margin: 0 auto;
    margin-bottom: 70px;
}

.sec-title .upper-text {
    position: relative;
    display: inline-block;
    line-height: 1.2em;
    font-size: 16px;
    color: #0066CC;
    text-transform: capitalize;
    font-weight: 700;
    margin: 0 0 15px;
}

.sec-title .upper-text:before {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    border-bottom: 2px solid #0066CC;
}

.sec-title h2 {
    position: relative;
    display: block;
    font-size: 44px;
    line-height: 1.20em;
    color: #222222;
    font-weight: 400;
    text-transform: capitalize;
    margin-bottom: 0px;
}

.sec-title h2 strong {
    font-weight: 700;
}

.sec-title .lower-text {
    position: relative;
    display: block;
    font-size: 15px;
    line-height: 1.7em;
    font-weight: 400;
    color: #666666;
    padding: 20px 0px 0px;
}

.theme-separator {
    position: relative;
    display: block;
    width: 100%;
    border-bottom: 1px solid #e2eef2;
}

.theme-separator:before {
    content: '';
    position: absolute;
    left: 50%;
    top: 50%;
    margin-top: -35.5px;
    margin-left: -35px;
    width: 70px;
    height: 70px;
    background: #ffffff url('../images/icons/theme-icon.png') center center no-repeat;
}

/* ============================================ */
/* 21. ABOUT SECTION                           */
/* ============================================ */

.about-section {
    position: relative;
    padding: 120px 0px 70px;
}

.about-section .text-column .sec-title {
    position: relative;
    margin-bottom: 20px;
}

.about-section .text-column {
    position: relative;
    margin-bottom: 20px;
}

.about-section .text-column .inner {
    position: relative;
    display: block;
    padding-top: 20px;
    padding-right: 30px;
}

.about-section .text-column .text-content {
    position: relative;
}

.about-section .text-column .text-content p {
    position: relative;
    margin-bottom: 30px;
}

.about-section .text-column .text-content ul {
    position: relative;
    margin-bottom: 25px;
}

.about-section .image-column {
    position: relative;
    margin-bottom: 30px;
}

.about-section .image-column .inner {
    position: relative;
    display: block;
    padding-left: 70px;
}

.about-section .images {
    position: relative;
}

.about-section .image-column .images:before {
    content: '';
    position: absolute;
    left: 50%;
    top: 50%;
    width: 70px;
    height: 70px;
    background: #ffffff;
    margin: -35px 0px 0px -35px;
    border-radius: 50%;
    z-index: 2;
}

.about-section .images .row {
    position: relative;
    margin: 0px -10px;
}

.about-section .images .image {
    position: relative;
    float: left;
    width: 50%;
    display: block;
    margin: 0px 0px;
    padding: 10px 10px;
}

.about-section .images .image img {
    display: block;
    width: 100%;
}

/* ============================================ */
/* 22. SERVICES SECTION                        */
/* ============================================ */

.services-section {
    position: relative;
    padding: 120px 0px 90px;
}

.services-section .gradient-layer {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 250px;
    background: -webkit-linear-gradient(bottom, #edf5f8, #ffffff);
}

.services-section .pattern-layer {
    position: absolute;
    left: 0;
    top: 50%;
    margin-top: -240px;
    width: 220px;
    height: 480px;
    background: url('../images/icons/pattern-1.png') right center no-repeat;
}

.services-section .sec-title {
    position: relative;
    margin-bottom: 50px;
}

.services-section .sec-title .lower-text {
    color: #222222;
    padding-top: 15px;
}

.services-section .row {
    margin: 0px -20px;
}

.services-section .column {
    position: relative;
    padding: 0px 20px;
}

.services-section .column:nth-child(1) {
    padding-top: 110px;
}

.services-section .column:nth-child(2) {
    padding-top: 60px;
}

.service-block {
    position: relative;
    margin-bottom: 90px;
}

.service-block .inner-box {
    position: relative;
    display: block;
    padding: 30px 35px 90px;
    text-align: center;
    background: #ffffff;
    box-shadow: 0px 0px 25px 0px rgba(0, 0, 0, 0.07);
    -webkit-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
}

.service-block .inner-box:hover {
    box-shadow: 0px 0px 40px 0px rgba(0, 0, 0, 0.10);
}

.service-block .inner-box:before {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    border-bottom: 2px solid #0055A4;
    -ms-transform: scale(0);
    transform: scale(0);
    -webkit-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
}

.service-block .inner-box:hover:before {
    -ms-transform: scale(1);
    transform: scale(1);
}

.service-block h3 {
    position: relative;
    color: #222222;
    text-transform: capitalize;
    margin: 0 0 12px;
}

.service-block h3 a {
    color: #222222;
    -webkit-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
}

.service-block h3 a:hover {
    color: #0066CC;
}

.service-block .icon-outer {
    position: relative;
    display: block;
    width: 162px;
    height: 162px;
    padding: 31px;
    margin: 0 auto 30px;
    overflow: hidden;
}

.service-block .icon-bg {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: #ffffff url('../images/icons/theme-icon-2.png') center center no-repeat;
}

.service-block .icon-outer .icon-box {
    position: relative;
    display: inline-block;
    width: 100px;
    height: 100px;
    line-height: 100px;
}

.service-block .icon-outer .icon-box img {
    max-width: 100px;
    max-height: 100px;
}

.service-block .text {
    position: relative;
    display: block;
    color: #222222;
}

.service-block .more-link {
    position: absolute;
    left: 0;
    bottom: -30px;
    width: 100%;
    display: block;
}

.service-block .more-link a {
    position: relative;
    display: inline-block;
    width: 60px;
    height: 60px;
    line-height: 60px;
    border-radius: 50%;
    background: #ffffff;
    font-size: 14px;
    color: #0066CC;
    box-shadow: 0px 0px 35px 0px rgba(0, 0, 0, 0.05), 0px 0px 35px 0px rgba(0, 0, 0, 0.05);
    -webkit-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
}

.service-block .inner-box:hover .more-link a {
    color: #ffffff;
    background: #0066CC;
}

.services-section .bottom-text {
    position: relative;
    display: block;
    font-size: 18px;
    line-height: 1.5em;
    text-align: center;
    padding-top: 30px;
}

.services-section .bottom-text .text {
    color: #222222;
    font-size: 18px;
    line-height: 1.5em;
}

.services-section .bottom-text .text a {
    color: #0066CC;
    text-decoration: underline;
    text-decoration-color: #0066CC;
}

/* ============================================ */
/* 23. LOCATIONS SECTION                       */
/* ============================================ */

.locations-section {
    position: relative;
    padding: 120px 0px;
}

.locations-section .map-box {
    position: relative;
    display: block;
    width: 100%;
}

.locations-section .map-box .map-image {
    position: relative;
    display: block;
    width: 100%;
    text-align: center;
}

.locations-section .map-box .map-image img {
    display: block;
    width: 100%;
}

.locations-section .map-box .location-point {
    position: absolute;
    left: 0%;
    top: 0%;
    width: 20px;
    height: 20px;
    border: 2px solid #0066CC;
    background: none;
    cursor: pointer;
    border-radius: 50%;
}

.locations-section .map-box .location-point:before {
    content: '';
    position: absolute;
    left: 50%;
    top: 50%;
    width: 6px;
    height: 6px;
    background: #0066CC;
    margin: -3px 0px 0px -3px;
    border-radius: 50%;
}

.locations-section .map-box .location-point .inner {
    position: absolute;
    left: 7px;
    bottom: 100%;
    margin-bottom: 25px;
    width: 200px;
    padding: 15px 20px;
    line-height: 24px;
    color: #ffffff;
    background: #0066CC;
    -ms-box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.05), 0px 20px 30px 0px rgba(0, 0, 0, 0.05);
    box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.05), 0px 20px 30px 0px rgba(0, 0, 0, 0.05);
    -ms-transform: translateY(10px);
    transform: translateY(10px);
    opacity: 0;
    visibility: hidden;
    -webkit-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
}

.locations-section .map-box .location-point .inner:before {
    content: '';
    position: absolute;
    left: 0;
    top: 100%;
    border: 7px solid transparent;
    border-top: 7px solid #0066CC;
    border-left: 7px solid #0066CC;
}

.locations-section .map-box .location-point:hover .inner {
    -ms-transform: translateY(0px);
    transform: translateY(0px);
    opacity: 1;
    visibility: visible;
    z-index: 1;
}

.locations-section .map-box .loc-one { left: 11%; top: 17%; }
.locations-section .map-box .loc-two { left: 16%; top: 23%; }
.locations-section .map-box .loc-three { left: 26%; top: 62%; }
.locations-section .map-box .loc-four { left: 23%; top: 80%; }
.locations-section .map-box .loc-five { left: 46%; top: 21%; }
.locations-section .map-box .loc-six { left: 44%; top: 40%; }
.locations-section .map-box .loc-seven { left: 56%; top: 52%; }
.locations-section .map-box .loc-eight { left: 52%; top: 70%; }
.locations-section .map-box .loc-nine { left: 60%; top: 15%; }
.locations-section .map-box .loc-ten { left: 80%; top: 16%; }
.locations-section .map-box .loc-eleven { left: 70%; top: 35%; }
.locations-section .map-box .loc-twelve { left: 90%; top: 77%; }

/* ============================================ */
/* 24. DEFAULT BACKGROUND SECTION               */
/* ============================================ */

.default-bg-section {
    position: relative;
    padding: 120px 0px;
}

.default-bg-section .image-layer {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-position: left top;
    background-repeat: no-repeat;
    background-size: cover;
}

.default-bg-section .content-box {
    position: relative;
    display: block;
    max-width: 550px;
    z-index: 1;
}

.default-bg-section .content-box h2 {
    font-size: 44px;
    color: #222222;
    font-weight: 400;
    line-height: 1.2em;
    margin-bottom: 54px;
}

/* ============================================ */
/* 25. FUN FACTS SECTION                       */
/* ============================================ */

.fun-facts-section {
    position: relative;
}

.fun-facts-section.alternate {
    background: #0066CC;
    padding: 110px 0px 70px;
}

.fun-facts-section .title-box {
    position: relative;
    text-align: center;
    margin-bottom: 60px;
}

.fun-facts-section .title-box h1 {
    position: relative;
    display: inline-block;
    font-size: 60px;
    line-height: 1.20em;
    color: #ffffff;
    font-weight: 400;
    text-transform: capitalize;
    margin-bottom: 0px;
}

.fun-facts-section .title-box h1:before {
    content: '';
    position: absolute;
    left: 0;
    bottom: 5px;
    width: 100%;
    border-bottom: 2px solid #0066CC;
}

.fun-facts-section .map-pattern-layer {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: url('../images/icons/map-pattern-two.png') center center no-repeat;
    opacity: 0.05;
}

.fact-counter {
    position: relative;
    z-index: 1;
}

.fact-counter .counter-column {
    position: relative;
    text-align: center;
}

.fun-facts-section.alternate .fact-counter .counter-column {
    margin-bottom: 50px;
}

.fact-counter .counter-column:nth-child(2) {
    border-left: 1px solid #e2eef2;
    border-right: 1px solid #e2eef2;
}

.fun-facts-section.alternate .fact-counter .counter-column:nth-child(2) {
    border: none;
}

.fact-counter .counter-column .inner {
    position: relative;
    display: block;
    padding: 110px 20px;
}

.fun-facts-section.alternate .fact-counter .counter-column .inner {
    padding: 0px;
}

.fact-counter .upper-title {
    position: relative;
    display: block;
    font-size: 20px;
    line-height: 1.5em;
    font-weight: 400;
    color: #222222;
    text-transform: capitalize;
    margin-bottom: 22px;
}

.fact-counter .count-box {
    position: relative;
    font-size: 75px;
    line-height: 1.20em;
    color: #0066CC;
    text-transform: capitalize;
    font-weight: 400;
}

.fact-counter .count-box .count-text {
    position: relative;
    display: inline-block;
}

.fact-counter .counter-title {
    position: relative;
    display: block;
    font-size: 16px;
    line-height: 24px;
    font-weight: 400;
    color: #0066CC;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.fun-facts-section.alternate .fact-counter .upper-title,
.fun-facts-section.alternate .fact-counter .count-box {
    color: #ffffff;
}

/* ============================================ */
/* 26. CASES SECTION                           */
/* ============================================ */

.cases-section {
    position: relative;
    padding: 120px 0px 90px;
}

.cases-section.cases-page {
    padding-bottom: 40px;
}

.cases-section .gradient-layer {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 250px;
    background: -webkit-linear-gradient(bottom, #edf5f8, #ffffff);
}

.cases-section .carousel-box {
    position: relative;
    display: block;
    margin-right: -30px;
}

.cases-section .bottom-text {
    position: relative;
    display: block;
    font-size: 18px;
    line-height: 1.5em;
    text-align: center;
    padding-top: 80px;
}

.cases-section .bottom-text .text {
    color: #222222;
    font-size: 18px;
    line-height: 1.5em;
}

.cases-section .bottom-text .text a {
    color: #0066CC;
    text-decoration: underline;
    text-decoration-color: #0066CC;
}

.cases-section .cases-box .row {
    margin: 0px -25px;
}

.case-block {
    position: relative;
    margin-bottom: 80px;
}

.cases-section .cases-box .row .case-block {
    padding: 0px 25px;
}

.owl-theme .case-block {
    margin-bottom: 0;
    padding-bottom: 20px;
    padding-right: 30px;
}

.case-block .inner-box {
    position: relative;
    display: block;
    padding-bottom: 20px;
}

.case-block .inner-box .image-box {
    position: relative;
    display: block;
    background: #010101;
    overflow: hidden;
    margin: 0;
    margin-right: 85px;
}

.case-block .inner-box .image-box img {
    position: relative;
    display: block;
    width: 100%;
    -webkit-transition: all 1000ms ease;
    -moz-transition: all 1000ms ease;
    -ms-transition: all 1000ms ease;
    -o-transition: all 1000ms ease;
    transition: all 1000ms ease;
}

.case-block .inner-box:hover .image-box img {
    opacity: 0.70;
    -ms-transform: scale(1.1);
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
}

.case-block .content-box {
    position: absolute;
    right: 0;
    bottom: 0px;
    width: 100%;
    max-width: 310px;
    background: #ffffff;
    box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.07);
}

.case-block .content-box .title-box {
    position: relative;
    display: block;
    line-height: 1.5em;
    padding: 25px 40px;
    color: #ffffff;
    background: #0066CC;
}

.case-block .content-box .title-box h4 {
    font-weight: 700;
    text-transform: capitalize;
    color: #ffffff;
    line-height: 1.4em;
    margin-bottom: 2px;
}

.case-block .content-box .title-box h4 a {
    color: #ffffff;
}

.case-block .content-box .title-box .sub-text {
    font-weight: 400;
    font-size: 14px;
    text-transform: capitalize;
    color: #ffffff;
    opacity: 0.50;
}

.case-block .content-box .text-content {
    position: relative;
    display: block;
    padding: 35px 40px;
    background: #ffffff;
}

.case-block .content-box .text {
    position: relative;
    margin-bottom: 20px;
}

.case-block .content-box .link-box {
    position: relative;
    display: block;
}

.case-block .content-box .link-box a {
    position: relative;
    color: #0066CC;
    font-size: 14px;
    font-weight: 700;
    text-transform: capitalize;
    line-height: 20px;
    display: inline-block;
    -webkit-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
}

.case-block .content-box .link-box a .arrow {
    padding-left: 5px;
    vertical-align: middle;
    color: #0066CC;
    font-size: 12px;
}

.case-block .content-box .link-box a:hover {
    color: #0055A4;
}

.cases-carousel .owl-dots {
    display: none;
}

.cases-carousel .owl-nav {
    position: absolute;
    left: -120px;
    right: -120px;
    margin-top: -30px;
    top: 50%;
    height: 0;
}

.cases-carousel .owl-nav .owl-prev,
.cases-carousel .owl-nav .owl-next {
    position: relative;
    top: 0;
    display: inline-block;
    width: 60px;
    height: 60px;
    line-height: 60px;
    border-radius: 50%;
    background: #ffffff;
    margin: 0;
    padding: 0;
    outline: none;
    font-size: 14px;
    color: #0066CC;
    box-shadow: 0px 0px 35px 0px rgba(0, 0, 0, 0.05), 0px 0px 35px 0px rgba(0, 0, 0, 0.05);
    -webkit-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
}

.cases-carousel .owl-nav .owl-prev {
    position: absolute;
    left: 0;
}

.cases-carousel .owl-nav .owl-next {
    position: absolute;
    right: 30px;
}

.cases-carousel .owl-nav .owl-prev:hover,
.cases-carousel .owl-nav .owl-next:hover {
    background: #0066CC;
    color: #ffffff;
}

/* ============================================ */
/* 27. APPOINTMENT SECTION                     */
/* ============================================ */

.appointment-section {
    position: relative;
    padding: 120px 0px 70px;
}

.appointment-section .pattern-layer {
    position: absolute;
    left: 0;
    top: 50%;
    margin-top: -240px;
    width: 220px;
    height: 480px;
    background: url('../images/icons/pattern-1.png') right center no-repeat;
}

.appointment-section .sec-title {
    max-width: 480px;
}

.appointment-section .sec-title .lower-text {
    color: #222222;
}

.appointment-section .text-column {
    position: relative;
    margin-bottom: 20px;
}

.appointment-section .text-column .inner {
    position: relative;
    display: block;
    padding-right: 50px;
}

.service-block-two {
    position: relative;
    margin-bottom: 30px;
}

.service-block-two .inner-box {
    position: relative;
    display: block;
    padding: 8px 0px 0px 125px;
    min-height: 101px;
}

.service-block-two h3 {
    position: relative;
    color: #222222;
    text-transform: capitalize;
    margin: 0 0 10px;
}

.service-block-two h3 a {
    color: #222222;
    -webkit-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
}

.service-block-two h3 a:hover {
    color: #0066CC;
}

.service-block-two .icon-outer {
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    width: 101px;
    height: 101px;
    padding: 20px;
    margin: 0 0;
}

.service-block-two .icon-bg {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: #ffffff url('../images/icons/theme-icon-3.png') center center no-repeat;
}

.service-block-two .icon-outer .icon-box {
    position: relative;
    display: inline-block;
    width: 60px;
    height: 60px;
    line-height: 60px;
}

.service-block-two .icon-outer .icon-box img {
    max-width: 60px;
    max-height: 60px;
}

.service-block-two .text {
    position: relative;
    display: block;
    color: #222222;
}

.appointment-section .form-column {
    position: relative;
    margin-bottom: 50px;
}

.appointment-section .form-column .inner {
    position: relative;
    display: block;
    text-align: center;
}

.appointment-section .form-column .image {
    position: relative;
    display: block;
    margin: 0;
}

.appointment-section .form-column .image img {
    position: relative;
    display: block;
    width: 100%;
}

/* ============================================ */
/* 28. DEFAULT FORM STYLE                      */
/* ============================================ */

.default-form {
    position: relative;
}

.default-form .row {
    margin: 0 -15px;
}

.default-form .form-group {
    position: relative;
    padding: 0 15px;
    margin-bottom: 25px;
}

.default-form .form-group .field-label {
    position: relative;
    display: block;
    color: #333333;
    line-height: 24px;
    text-align: left;
    text-transform: capitalize;
    margin-bottom: 10px;
}

.default-form .form-group:last-child {
    margin-bottom: 0;
}

.default-form .form-group input[type="text"],
.default-form .form-group input[type="email"],
.default-form .form-group input[type="password"],
.default-form .form-group input[type="tel"],
.default-form .form-group input[type="url"],
.default-form .form-group input[type="file"],
.default-form .form-group input[type="number"],
.default-form .form-group textarea,
.default-form .form-group select {
    position: relative;
    display: block;
    height: 52px;
    width: 100%;
    font-size: 15px;
    color: #003366;
    line-height: 30px;
    font-weight: 400;
    padding: 10px 20px;
    background-color: #ffffff;
    border: 1px solid #e2eef2;
    border-radius: 0px;
    -webkit-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    transition: all 300ms ease;
}

.default-form .form-group textarea {
    height: 120px;
    padding-top: 12px;
    resize: none;
}

.contact-form .form-group input[type="submit"],
.contact-form .form-group button {
    display: inline-block;
    margin-top: 5px;
}

.default-form .form-group input[type="text"]:focus,
.default-form .form-group input[type="email"]:focus,
.default-form .form-group input[type="password"]:focus,
.default-form .form-group input[type="tel"]:focus,
.default-form .form-group input[type="url"]:focus,
.default-form .form-group input[type="file"]:focus,
.default-form .form-group input[type="number"]:focus,
.default-form .form-group textarea:focus,
.default-form .form-group select:focus,
.form-group .ui-selectmenu-button.ui-button:focus,
.form-group .ui-selectmenu-button.ui-button:active {
    border-color: #0066CC;
}

.default-form ::-webkit-input-placeholder { color: #aaaaaa; }
.default-form ::-moz-input-placeholder { color: #aaaaaa; }
.default-form ::-ms-input-placeholder { color: #aaaaaa; }

.default-form label.error {
    color: #ff0000;
    font-size: 14px;
    text-transform: capitalize;
    text-align: left;
    display: block;
    padding-top: 5px;
}

.content-box .default-form label.error {
    color: #ffffff;
    font-size: 16px;
    padding-top: 10px;
}

.form-group .ui-selectmenu-button.ui-button {
    width: 100%;
    font-size: 15px;
    font-style: normal;
    height: 52px;
    padding: 10px 20px;
    line-height: 30px;
    font-family: 'Arial', sans-serif !important;
    color: #222222;
    border-radius: 0px;
    background-color: #ffffff;
    border: 1px solid #e0e0e0;
}

.form-group .ui-button .ui-icon {
    background: none;
    position: relative;
    top: 3px;
    text-indent: 0px;
    color: #333333;
}

.form-group .ui-button .ui-icon:before {
    font-family: 'Font Awesome 5 Free';
    content: "\f107";
    position: absolute;
    right: 0px;
    top: 2px !important;
    top: 13px;
    width: 10px;
    height: 20px;
    display: block;
    color: #666666;
    line-height: 20px;
    font-size: 16px;
    font-weight: 700;
    text-align: center;
    z-index: 5;
}

.ui-widget.ui-widget-content {
    border: 1px solid #e0e0e0;
    font-family: 'Arial', sans-serif !important;
}

.ui-menu .ui-menu-item {
    font-size: 14px;
    border-bottom: 1px solid #e0e0e0;
}

.ui-menu .ui-menu-item:last-child {
    border: none;
}

.ui-menu .ui-menu-item-wrapper {
    position: relative;
    display: block;
    padding: 9px 20px !important;
    font-size: 15px;
    line-height: 24px;
    -webkit-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    transition: all 300ms ease;
}

.ui-menu .ui-menu-item-wrapper:hover,
.ui-menu .ui-menu-item-wrapper.ui-state-active {
    background: #0066CC;
}

.appointment-section .form-box {
    position: relative;
    display: block;
    background: #edf5f8 url(../images/icons/round-pattern-1.png) 60px -350px no-repeat;
    padding: 50px 45px;
}

.appointment-section .title {
    position: relative;
    margin-bottom: 30px;
}

.appointment-section .title h3 {
    position: relative;
    display: inline-block;
    line-height: 1.2em;
    font-size: 24px;
    color: #222222;
    text-transform: capitalize;
    font-weight: 700;
    margin: 0 0 10px;
}

.appointment-section .title h3:before {
    content: '';
    position: absolute;
    left: 0;
    bottom: 3px;
    width: 100%;
    border-bottom: 2px solid #0066CC;
}

.appointment-form .row {
    margin: 0 -7px;
}

.appointment-form .form-group {
    padding: 0 7px;
    margin-bottom: 14px;
}

.appointment-form form button {
    text-transform: none;
    margin-top: 5px;
}

/* ============================================ */
/* 29. TESTIMONIALS SECTION                    */
/* ============================================ */

.testimonials-section {
    position: relative;
    padding: 120px 0px;
}

.testimonials-section .image-layer {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-position: left top;
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: fixed;
}

.testimonials-section .carousel-box {
    position: relative;
    display: block;
    max-width: 780px;
    padding: 55px 20px;
    background: rgba(255, 255, 255, 0.94);
    border-bottom: 2px solid #0066CC;
    text-align: center;
    z-index: 1;
}

.testimonials-section .slide-item {
    position: relative;
    display: block;
}

.testimonials-section .slide-item .inner {
    position: relative;
    display: block;
    max-width: 580px;
    margin: 0 auto;
}

.testimonials-section .slide-item .icon-box {
    position: relative;
    display: block;
    color: #0066CC;
    font-size: 48px;
    line-height: 1em;
    margin-bottom: 30px;
}

.testimonials-section .slide-item .title {
    position: relative;
    display: block;
    color: #0066CC;
    font-size: 16px;
    line-height: 1.5em;
    margin-bottom: 15px;
}

.testimonials-section .slide-item .text {
    position: relative;
    display: block;
    font-size: 17px;
    line-height: 1.6em;
    color: #222222;
    margin-bottom: 30px;
}

.testimonials-section .slide-item .info {
    position: relative;
    display: block;
    font-size: 13px;
    line-height: 1.5em;
    color: #666666;
}

.testimonials-section .slide-item .info .name {
    position: relative;
    display: block;
    font-size: 18px;
    line-height: 1.5em;
    color: #222222;
    font-weight: 700;
    text-transform: capitalize;
}

.testimonials-section .owl-theme .owl-nav {
    display: none;
}

.testimonials-section .owl-theme .owl-dots {
    position: relative;
    display: block;
    width: 100%;
    text-align: center;
    padding-top: 35px;
}

.testimonials-section .owl-theme .owl-dots .owl-dot {
    position: relative;
    display: inline-block;
    margin: 0px 5px;
}

.testimonials-section .owl-theme .owl-dots .owl-dot span {
    position: relative;
    display: block;
    width: 12px;
    height: 12px;
    background: #cccccc;
    border-radius: 50%;
    -ms-transform: scale(0.7);
    transform: scale(0.7);
    -webkit-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    transition: all 300ms ease;
}

.testimonials-section .owl-theme .owl-dots .owl-dot.active span {
    background: #0066CC;
    -ms-transform: scale(1);
    transform: scale(1);
}

/* ============================================ */
/* 30. NEWS SECTION                            */
/* ============================================ */

.news-section {
    position: relative;
    padding: 120px 0px 30px;
}

.news-section .upper-row {
    position: relative;
    margin-bottom: 10px;
}

.news-block {
    position: relative;
    margin-bottom: 90px;
}

.news-block .inner-box {
    position: relative;
    display: block;
    box-shadow: 0px 0px 40px 0px rgba(0, 0, 0, 0.07);
    -webkit-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
}

.news-block .image-box,
.news-block .image {
    position: relative;
    display: block;
    background: #010101;
    overflow: hidden;
}

.news-block .image-box img {
    position: relative;
    display: block;
    width: 100%;
    -webkit-transition: all 1000ms ease;
    -moz-transition: all 1000ms ease;
    -ms-transition: all 1000ms ease;
    -o-transition: all 1000ms ease;
    transition: all 1000ms ease;
}

.news-block .inner-box:hover .image-box img {
    opacity: 0.70;
    -ms-transform: scale(1.1);
    transform: scale(1.1);
}

.news-block .lower-box {
    position: relative;
    display: block;
    padding: 35px 35px 70px;
    background: #ffffff;
    box-shadow: 0px 0px 25px 0px rgba(0, 0, 0, 0.04);
    -webkit-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
}

.news-block .inner-box:hover {
    box-shadow: 0px 0px 40px 0px rgba(0, 0, 0, 0.10);
}

.news-block .lower-box:before {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    border-bottom: 2px solid #0055A4;
    -ms-transform: scale(0);
    transform: scale(0);
    -webkit-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
}

.news-block .inner-box:hover .lower-box:before {
    -ms-transform: scale(1);
    transform: scale(1);
}

.news-block .lower-box .category {
    position: relative;
    color: #0066CC;
    font-size: 14px;
    font-weight: 700;
    text-transform: capitalize;
    margin: 0 0 7px;
}

.news-block .lower-box h3 {
    position: relative;
    color: #222222;
    font-weight: 700;
    margin: 0 0 25px;
}

.news-block h3 a {
    color: #222222;
    -webkit-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
}

.news-block h3 a:hover,
.news-block .lower-box .meta-info li a:hover {
    color: #0066CC;
}

.news-block .text {
    position: relative;
    display: block;
    color: #222222;
    margin-bottom: 30px;
}

.news-block .lower-box .meta-info {
    position: relative;
    color: #999999;
}

.news-block .lower-box .meta-info li {
    position: relative;
    float: left;
    margin-right: 31px;
    line-height: 24px;
}

.news-block .lower-box .meta-info li:after {
    content: '';
    position: absolute;
    height: 14px;
    right: -16px;
    border-right: 1px solid #999999;
    top: 50%;
    margin-top: -7px;
}

.news-block .lower-box .meta-info li:last-child:after {
    display: none;
}

.news-block .lower-box .meta-info li a {
    position: relative;
    color: #999999;
}

.news-block .more-link {
    position: absolute;
    left: 0;
    bottom: -30px;
    width: 100%;
    display: block;
    text-align: center;
}

.news-block .more-link a {
    position: relative;
    display: inline-block;
    width: 60px;
    height: 60px;
    line-height: 60px;
    border-radius: 50%;
    background: #ffffff;
    font-size: 14px;
    color: #0066CC;
    box-shadow: 10px 10px 35px 0px rgba(0, 0, 0, 0.05), 0px 0px 35px 0px rgba(0, 0, 0, 0.05);
    -webkit-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
}

.news-block .inner-box:hover .more-link a {
    color: #ffffff;
    background: #0066CC;
    box-shadow: 10px 10px 35px 0px rgba(0, 0, 0, 0.10), 0px 0px 35px 0px rgba(0, 0, 0, 0.10);
}

.news-section .lower-row {
    position: relative;
    margin-bottom: 30px;
}

.news-section .lower-row .row {
    margin: 0px -40px;
}

.news-block-two {
    position: relative;
    margin-bottom: 50px;
    border-right: 1px solid #e2eef2;
}

.news-section .lower-row .news-block-two {
    padding: 0px 40px;
}

.news-section .lower-row .news-block-two:last-child {
    border: none;
}

.news-block-two .inner-box {
    position: relative;
    display: block;
    padding: 10px 0px;
}

.news-block-two .inner-box .category {
    position: relative;
    color: #0066CC;
    font-size: 14px;
    font-weight: 700;
    text-transform: capitalize;
    margin: 0 0 7px;
}

.news-block-two .inner-box h3 {
    position: relative;
    font-size: 20px;
    color: #222222;
    font-weight: 700;
    margin: 0 0 20px;
}

.news-block-two .inner-box h3 a {
    color: #222222;
    -webkit-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
}

.news-block-two .inner-box h3 a:hover,
.news-block-two .inner-box .meta-info li a:hover {
    color: #0066CC;
}

.news-block-two .inner-box .text {
    position: relative;
    display: block;
    color: #222222;
    margin-bottom: 30px;
}

.news-block-two .inner-box .meta-info {
    position: relative;
    color: #999999;
}

.news-block-two .inner-box .meta-info li {
    position: relative;
    float: left;
    margin-right: 31px;
    line-height: 24px;
}

.news-block-two .inner-box .meta-info li:after {
    content: '';
    position: absolute;
    height: 14px;
    right: -16px;
    border-right: 1px solid #999999;
    top: 50%;
    margin-top: -7px;
}

.news-block-two .inner-box .meta-info li:last-child:after {
    display: none;
}

.news-block-two .inner-box .meta-info li a {
    position: relative;
    color: #999999;
}

.news-section .load-more {
    position: relative;
    display: block;
    padding: 10px 0px 80px;
    text-align: center;
}

.news-section.blog-fullwidth {
    padding-bottom: 120px;
}

.news-section.blog-fullwidth .auto-container {
    max-width: 810px;
}

.news-block-three {
    position: relative;
    margin-bottom: 90px;
}

.news-block-three .inner-box {
    position: relative;
    display: block;
    box-shadow: 0px 0px 40px 0px rgba(0, 0, 0, 0.07);
    -webkit-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
}

.news-block-three .image-box,
.news-block-three .image {
    position: relative;
    display: block;
}

.news-block-three .image-box img {
    position: relative;
    display: block;
    width: 100%;
}

.news-block-three .lower-box {
    position: relative;
    display: block;
    padding: 40px 50px 70px;
    background: #ffffff;
    box-shadow: 0px 0px 25px 0px rgba(0, 0, 0, 0.04);
    -webkit-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
}

.news-block-three .inner-box:hover {
    box-shadow: 0px 0px 40px 0px rgba(0, 0, 0, 0.10);
}

.news-block-three .lower-box:before {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    border-bottom: 2px solid #0055A4;
    -ms-transform: scale(0);
    transform: scale(0);
    -webkit-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
}

.news-block-three .inner-box:hover .lower-box:before {
    -ms-transform: scale(1);
    transform: scale(1);
}

.news-block-three .lower-box .category {
    position: relative;
    color: #0066CC;
    font-size: 14px;
    font-weight: 700;
    text-transform: capitalize;
    margin: 0 0 7px;
}

.news-block-three .lower-box .category a {
    color: #0066CC;
}

.news-block-three .lower-box .category a:hover {
    color: #0055A4;
}

.news-block-three .lower-box h3 {
    position: relative;
    color: #222222;
    font-size: 30px;
    font-weight: 700;
    margin: 0 0 15px;
}

.news-block-three h3 a {
    color: #222222;
    -webkit-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
}

.news-block-three h3 a:hover,
.news-block-three .lower-box .meta-info li a:hover {
    color: #0066CC;
}

.news-block-three .text {
    position: relative;
    display: block;
    margin-bottom: 30px;
}

.news-block-three .lower-box .meta-info {
    position: relative;
    color: #999999;
}

.news-block-three .lower-box .meta-info li {
    position: relative;
    float: left;
    margin-right: 31px;
    line-height: 24px;
}

.news-block-three .lower-box .meta-info li:after {
    content: '';
    position: absolute;
    height: 14px;
    right: -16px;
    border-right: 1px solid #999999;
    top: 50%;
    margin-top: -7px;
}

.news-block-three .lower-box .meta-info li:last-child:after {
    display: none;
}

.news-block-three .lower-box .meta-info li a {
    position: relative;
    color: #999999;
}

.news-block-three .more-link {
    position: absolute;
    left: 0;
    bottom: -30px;
    width: 100%;
    display: block;
    text-align: right;
    padding-right: 50px;
}

.news-block-three .more-link a {
    position: relative;
    display: inline-block;
    text-align: center;
    width: 60px;
    height: 60px;
    line-height: 60px;
    border-radius: 50%;
    background: #ffffff;
    font-size: 14px;
    color: #0066CC;
    box-shadow: 10px 10px 35px 0px rgba(0, 0, 0, 0.05), 0px 0px 35px 0px rgba(0, 0, 0, 0.05);
    -webkit-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
}

.news-block-three .inner-box:hover .more-link a {
    color: #ffffff;
    background: #0066CC;
    box-shadow: 10px 10px 35px 0px rgba(0, 0, 0, 0.10), 0px 0px 35px 0px rgba(0, 0, 0, 0.10);
}

.news-image-carousel {
    text-align: center;
}

.news-image-carousel .owl-dots {
    position: absolute;
    bottom: 40px;
    display: inline-block;
    padding: 10px 10px;
    height: 30px;
    margin: 0 0;
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    text-align: center;
    background: rgba(0, 0, 0, 0.30);
    border-radius: 15px;
}

.news-image-carousel .owl-dots .owl-dot {
    position: relative;
    display: inline-block;
    vertical-align: top;
    margin: 0px 5px;
    padding: 0;
}

.news-image-carousel .owl-dots .owl-dot span {
    position: relative;
    display: block;
    width: 10px;
    height: 10px;
    padding: 0;
    margin: 0;
    background: #ffffff;
    border-radius: 50%;
    -webkit-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    transition: all 300ms ease;
}

.news-image-carousel .owl-dots .owl-dot.active span {
    background: #0066CC;
}

.news-image-carousel .owl-nav {
    display: none;
}

.news-block-three .image-box .video-play-btn {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    background: rgba(0, 0, 0, 0);
    color: #ffffff;
    font-size: 60px;
    line-height: 60px;
    -webkit-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    transition: all 300ms ease;
}

.news-block-three .image-box .video-play-btn .fa {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 60px;
    height: 60px;
    line-height: 60px;
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.news-block-three .image-box .video-play-btn:hover {
    background: rgba(0, 0, 0, 0.50);
}

.news-block-four {
    position: relative;
    margin-bottom: 50px;
}

.news-block-four .inner-box {
    position: relative;
    display: block;
}

.news-block-four blockquote {
    position: relative;
    display: block;
    padding: 60px 80px 60px 60px;
    background: #0066CC;
    color: #ffffff;
    margin: 0px 0px;
}

.news-block-four blockquote .txt {
    position: relative;
    display: block;
    font-size: 30px;
    font-weight: 700;
    line-height: 1.4em;
    margin-bottom: 20px;
}

.news-block-four blockquote .info {
    position: relative;
    display: block;
    font-size: 18px;
    font-weight: 400;
    text-transform: capitalize;
    color: #ffffff;
}

.news-block-four blockquote .icon {
    position: absolute;
    right: 40px;
    bottom: 40px;
    color: #0066CC;
    font-size: 60px;
    line-height: 1em;
    font-weight: 400;
    opacity: 1;
}

.news-block-four blockquote .icon span {
    position: relative;
    display: block;
    font-weight: 400;
    text-shadow: 0px 0px 1px #84b040;
}

/* ============================================ */
/* 31. STYLED PAGINATION                       */
/* ============================================ */

.pagination-box {
    position: relative;
}

.styled-pagination {
    position: relative;
}

.styled-pagination li {
    position: relative;
    display: inline-block;
    margin-right: 7px;
    margin-bottom: 7px;
}

.styled-pagination li:last-child {
    margin-right: 0;
}

.styled-pagination li a {
    position: relative;
    display: block;
    line-height: 24px;
    font-size: 15px;
    height: 46px;
    min-width: 46px;
    padding: 12px 5px;
    text-align: center;
    color: #666666;
    font-weight: 400;
    text-align: center;
    background: #ffffff;
    border-radius: 50%;
    border: 1px solid rgba(0, 0, 0, 0.10);
    text-transform: capitalize;
    -webkit-transition: all 500ms ease;
    -moz-transition: all 500ms ease;
    -ms-transition: all 500ms ease;
    -o-transition: all 500ms ease;
    transition: all 500ms ease;
}

.styled-pagination li a.next {
    font-size: 14px;
    color: #0066CC;
}

.styled-pagination li a:hover,
.styled-pagination li a.active {
    color: #ffffff;
    background: #0066CC;
    border-color: #0066CC;
}

/* ============================================ */
/* 32. SPONSORS SECTION                        */
/* ============================================ */

.sponsors-section {
    position: relative;
    padding: 60px 0px;
    background: #edf5f8;
}

.sponsors-section.alternate {
    position: relative;
    background: #ffffff;
}

.sponsors-outer {
    position: relative;
    text-align: center;
}

.sponsors-outer .auto-container {
    max-width: 1340px;
}

.sponsors-outer .slide-item {
    display: block;
    text-align: center;
}

.sponsors-outer .image-box {
    position: relative;
    display: inline-block;
}

.sponsors-outer .image-box img {
    max-width: 100%;
    width: auto;
    display: inline-block;
    transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    opacity: 0.20;
}

.sponsors-outer .image-box img:hover {
    opacity: 1;
}

.sponsors-section.alternate .sponsors-outer .image-box img {
    -webkit-filter: grayscale(100%);
    -ms-filter: grayscale(100%);
    -moz-filter: grayscale(100%);
}

.sponsors-section.alternate .sponsors-outer .image-box img:hover {
    -webkit-filter: grayscale(0%);
    -ms-filter: grayscale(0%);
    -moz-filter: grayscale(0%);
}

.sponsors-outer .owl-dots,
.sponsors-outer .owl-nav {
    position: relative;
    display: none;
}

/* ============================================ */
/* 33. MAIN FOOTER - EMSI                      */
/* ============================================ */

.main-footer {
    position: relative;
}

.main-footer .auto-container {
    max-width: 1340px;
}

.main-footer .widgets-section {
    position: relative;
    padding: 110px 0px 40px;
}

.main-footer .footer-widget {
    position: relative;
    margin-bottom: 40px;
}

.main-footer .widget-title {
    position: relative;
    margin-bottom: 20px;
}

.main-footer .widget-title.empty-title {
    opacity: 0;
    visibility: hidden;
}

.main-footer .widget-title h4 {
    position: relative;
    display: inline-block;
    line-height: 1.3em;
    font-size: 18px;
    color: #0066CC !important;
    text-transform: capitalize;
    font-weight: 700;
    margin: 0 0;
}

.main-footer .widget-title h4:before {
    content: '';
    position: absolute;
    left: 0;
    bottom: 2px;
    width: 100%;
    border-bottom: 2px solid #0066CC !important;
}

.main-footer .about-widget {
    position: relative;
}

.main-footer .about-widget .logo {
    position: relative;
    margin-top: -25px;
    margin-bottom: 20px;
}

.main-footer .about-widget .text {
    position: relative;
    margin-bottom: 25px;
}

.newsletter-form {
    position: relative;
}

.newsletter-form form {
    position: relative;
}

.newsletter-form .form-group {
    position: relative;
    margin: 0;
    box-shadow: 0px 0px 60px 0px rgba(0, 0, 0, 0.07);
}

.newsletter-form .form-group input[type="text"],
.newsletter-form .form-group input[type="tel"],
.newsletter-form .form-group input[type="email"],
.newsletter-form .form-group textarea {
    position: relative;
    width: 100%;
    line-height: 30px;
    padding: 11px 20px;
    height: 54px;
    display: inline-block;
    font-size: 15px;
    background: #ffffff;
    font-weight: 400;
    color: #222222;
    border-radius: 2px;
    border: 1px solid rgba(0, 0, 0, 0.04);
    -webkit-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    transition: all 300ms ease;
}

.newsletter-form .form-group input[type="text"]:focus,
.newsletter-form .form-group input[type="email"]:focus,
.newsletter-form .form-group input[type="tel"]:focus {
    border-color: #0066CC;
}

.newsletter-form .form-group input::-webkit-input-placeholder {
    color: #848484;
}

.newsletter-form .form-group .newsletter-btn {
    position: absolute;
    width: 50px;
    height: 54px;
    top: 0px;
    right: 0px;
    float: right;
    color: #ffffff;
    background: #0066CC !important;
    font-size: 20px;
    padding: 12px 0px;
    line-height: 30px;
    border-radius: 2px;
    display: block;
    text-align: center;
}

.newsletter-form .form-group .newsletter-btn:hover {
    background: #0055A4 !important;
}

.main-footer .links-widget {
    margin-bottom: 10px;
}

.main-footer .links-widget .widget-content {
    position: relative;
    padding-left: 20px;
}

.main-footer .links-widget .column {
    position: relative;
    margin-bottom: 30px;
}

.main-footer .links-widget .links li {
    position: relative !important;
    margin-bottom: 12px;
    line-height: 24px;
    font-size: 15px;
    color: #666666;
    padding-left: 20px !important;
}

.main-footer .links-widget .links li:before {
    content: "\f061" !important;
    font-family: 'Font Awesome 5 Free' !important;
    font-weight: 900 !important;
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    width: 15px !important;
    line-height: 24px !important;
    color: #0066CC !important;
    font-size: 12px !important;
    opacity: 0 !important;
    transition: all 0.3s ease !important;
}

.main-footer .links-widget .links li:hover:before {
    opacity: 1 !important;
}

.main-footer .links-widget .links li a {
    position: relative;
    display: block;
    color: #666666 !important;
    font-size: 15px;
    text-transform: capitalize;
    padding-left: 0 !important;
    transition: all 0.4s ease;
    -moz-transition: all 0.4s ease;
    -webkit-transition: all 0.4s ease;
    -ms-transition: all 0.4s ease;
    -o-transition: all 0.4s ease;
}

.main-footer .links-widget .links li a:hover {
    color: #0066CC !important;
    padding-left: 15px !important;
}

.main-footer .info ul {
    position: relative;
}

.main-footer .info ul li {
    position: relative;
    line-height: 1.6em;
    color: #222222;
    margin-bottom: 8px;
}

.main-footer .info ul li strong {
    font-weight: 700;
}

.main-footer .info ul li a {
    color: #222222;
}

.main-footer .info ul li a:hover {
    color: #0066CC !important;
    text-decoration: underline;
}

.main-footer .footer-bottom {
    position: relative;
    line-height: 24px;
}

.main-footer .footer-bottom .inner {
    position: relative;
    display: block;
    text-align: center;
    padding: 40px 0px;
    border-top: 1px solid #e2eef2;
}

.main-footer .footer-bottom .outer-container {
    position: relative;
    max-width: 1200px;
    padding: 28px 0px;
    margin: 0 auto;
    border-top: 1px solid rgba(255, 255, 255, 0.10);
}

.main-footer .footer-bottom .copyright {
    position: relative;
}

.main-footer .footer-bottom .copyright strong {
    color: #222222;
}

.main-footer .footer-bottom .copyright a {
    text-transform: capitalize;
    color: #666666;
    text-decoration: underline;
    transition: all 0.4s ease;
    -moz-transition: all 0.4s ease;
    -webkit-transition: all 0.4s ease;
    -ms-transition: all 0.4s ease;
    -o-transition: all 0.4s ease;
}

.main-footer .footer-bottom .copyright a:hover {
    color: #0066CC !important;
}

.main-footer .social-links {
    position: relative;
    padding-top: 25px;
    text-align: center;
}

.main-footer .social-links .title {
    margin-bottom: 15px;
    text-align: center;
}

.main-footer .social-links ul {
    position: relative;
}

.main-footer .social-links li {
    position: relative;
    display: inline-block;
    margin: 0px 7px;
    line-height: 24px;
}

.main-footer .social-links li a {
    color: #0066CC !important;
    font-size: 16px;
    transition: all 0.4s ease;
    -moz-transition: all 0.4s ease;
    -webkit-transition: all 0.4s ease;
    -ms-transition: all 0.4s ease;
    -o-transition: all 0.4s ease;
}

.main-footer .social-links li a:hover {
    color: #0055A4 !important;
}

/* ============================================ */
/* 34. SERVICES SECTION TWO                    */
/* ============================================ */

.services-section-two {
    position: relative;
    padding: 120px 0px 90px;
}

.services-section-two .sec-title .lower-text {
    color: #222222;
}

.services-section-two .gradient-layer {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 250px;
    background: -webkit-linear-gradient(bottom, #edf5f8, #ffffff);
}

.services-section-two .services-box {
    position: relative;
    display: block;
}

.service-block-three {
    position: relative;
    margin-bottom: 60px;
}

.service-block-three .inner-box {
    position: relative;
    display: block;
    padding: 8px 0px 0px 90px;
    min-height: 72px;
}

.service-block-three h3 {
    position: relative;
    color: #222222;
    font-size: 20px;
    font-weight: 700;
    text-transform: capitalize;
    margin: 0 0 12px;
}

.service-block-three h3 a {
    color: #222222;
    -webkit-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
}

.service-block-three h3 a:hover,
.service-block-three .inner-box:hover h3 a {
    color: #0066CC;
}

.service-block-three .icon-outer {
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    width: 71px;
    height: 71px;
    padding: 0;
    margin: 0 0;
}

.service-block-three .icon-bg {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: #ffffff url('../images/icons/theme-icon-4.png') center center no-repeat;
}

.service-block-three .icon-outer .icon-box {
    position: relative;
    display: inline-block;
    font-size: 40px;
    color: #0066CC;
    width: 71px;
    height: 71px;
    line-height: 71px;
    text-align: center;
}

.service-block-three .icon-outer .icon-box img {
    max-width: 71px;
    max-height: 71px;
}

.service-block-three .text {
    position: relative;
    display: block;
    margin-bottom: 32px;
}

.service-block-three .more-link {
    position: relative;
    display: block;
}

.service-block-three .more-link a {
    position: relative;
    display: inline-block;
    width: 60px;
    height: 60px;
    line-height: 60px;
    border-radius: 50%;
    background: #ffffff;
    font-size: 14px;
    color: #0066CC;
    text-align: center;
    box-shadow: 0px 0px 35px 0px rgba(0, 0, 0, 0.05), 0px 0px 35px 0px rgba(0, 0, 0, 0.05);
    -webkit-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
}

.service-block-three .inner-box:hover .more-link a {
    color: #ffffff;
    background: #0066CC;
}

.services-section-two .bottom-text {
    position: relative;
    display: block;
    font-size: 18px;
    line-height: 1.5em;
    text-align: center;
    padding-top: 30px;
}

.services-section-two .bottom-text .text {
    color: #222222;
    font-size: 18px;
    line-height: 1.5em;
}

.services-section-two .bottom-text .text a {
    color: #0066CC;
    text-decoration: underline;
    text-decoration-color: #0066CC;
}

/* ============================================ */
/* 35. VIDEO SECTION                           */
/* ============================================ */

.video-section {
    position: relative;
    padding: 100px 0px 90px;
    background: #0066CC;
    color: #ffffff;
    text-align: center;
}

.video-section.alternate {
    background: #0066CC;
}

.video-section .auto-container {
    position: relative;
    max-width: 720px;
}

.video-section .image-layer {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    opacity: 0.10;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: fixed;
}

.video-section .video-link {
    position: relative;
    margin-bottom: 25px;
}

.video-section .video-link a {
    color: #0066CC;
    font-size: 48px;
    line-height: 1em;
}

.video-section.alternate .video-link a {
    color: #ffffff;
}

.video-section .video-link a:hover {
    color: #ffffff;
    opacity: 0.70;
}

.video-section h2 {
    line-height: 1.30em;
    margin: 0;
}

/* ============================================ */
/* 36. ABOUT SECTION TWO                       */
/* ============================================ */

.about-section-two {
    position: relative;
    padding: 120px 0px 90px;
}

.about-section-two .sec-title {
    margin-bottom: 40px;
}

.about-section-two .pattern-layer {
    position: absolute;
    left: 0;
    top: 50%;
    margin-top: -240px;
    width: 220px;
    height: 480px;
    background: url('../images/icons/pattern-1.png') right center no-repeat;
}

.about-section-two .left-column {
    position: relative;
}

.about-section-two .left-column .inner {
    position: relative;
}

.about-section-two .left-column .image {
    position: relative;
    display: block;
    margin-bottom: 50px;
}

.about-section-two .left-column .image img {
    display: block;
    width: 100%;
}

.about-section-two .left-column .image .over-icon {
    position: absolute;
    bottom: -66px;
    right: -81px;
    width: 132px;
    height: 132px;
    background: #ffffff;
    line-height: 132px;
    border-radius: 50%;
    z-index: 1;
}

.about-section-two .left-column .image .over-icon img {
    width: 100%;
    width: 132px;
    height: 132px;
    border-radius: 50%;
}

.feature-block {
    position: relative;
    margin-bottom: 30px;
}

.feature-block .inner-box {
    position: relative;
    display: block;
    padding: 15px 10px 20px;
    text-align: center;
    color: #222222;
    text-transform: capitalize;
    box-shadow: 0px 0px 60px 0px rgba(0, 0, 0, 0.05);
}

.feature-block .inner-box:before {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    border-bottom: 2px solid #0066CC;
    -ms-transform: scale(0);
    transform: scale(0);
    -webkit-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
}

.feature-block .inner-box:hover:before {
    -ms-transform: scale(1);
    transform: scale(1);
}

.feature-block .icon-box {
    position: relative;
    display: block;
    padding: 15px 0px 0px;
    text-align: center;
    color: #222222;
    font-size: 48px;
    line-height: 1em;
    -webkit-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
}

.feature-block .inner-box:hover .icon-box {
    color: #0066CC;
}

.feature-block .inner-box .title {
    position: relative;
    display: block;
    padding: 18px 0px 0px;
    text-align: center;
    color: #222222;
    line-height: 1.4em;
}

.about-section-two .right-column {
    position: relative;
}

.about-section-two .right-column .inner {
    position: relative;
}

.about-section-two .right-column .image {
    position: relative;
    display: block;
    margin-bottom: 50px;
}

.about-section-two .right-column .image img {
    display: block;
    width: 100%;
}

.about-section-two .right-column h3 {
    color: #222222;
    margin-bottom: 20px;
    font-weight: 700;
}

.about-section-two .right-column .list-style-one {
    position: relative;
    padding-top: 15px;
}

/* ============================================ */
/* 37. CASES SECTION TWO                       */
/* ============================================ */

.cases-section-two {
    position: relative;
    padding: 120px 0px 100px;
}

.cases-section-two.cases-page {
    padding-bottom: 70px;
}

.cases-section-two .sec-title {
    margin-bottom: 30px;
}

.cases-section-two.cases-page .sec-title {
    margin-bottom: 50px;
}

.cases-section-two .carousel-box {
    position: relative;
    display: block;
    margin: 0px -30px;
}

.case-block-two {
    position: relative;
    margin-bottom: 50px;
}

.owl-theme .case-block-two {
    margin-bottom: 0;
    padding: 30px 30px;
}

.case-block-two .inner-box {
    position: relative;
    display: block;
    box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.07);
}

.case-block-two .image-column {
    position: absolute;
    float: left;
    right: 0;
    top: 0;
    width: 50%;
    height: 100%;
}

.case-block-two .image-column .image-layer {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-position: center top;
    background-repeat: no-repeat;
    background-size: cover;
}

.case-block-two .image-column .link-layer {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.case-block-two .image-column .image-box {
    position: relative;
    margin: 0;
    display: none;
}

.case-block-two .image-column .image-box img {
    display: block;
    width: 100%;
}

.case-block-two .content-column {
    position: relative;
    float: left;
    width: 50%;
}

.case-block-two .content-column .content-box {
    position: relative;
    padding: 65px 75px;
    background: #ffffff;
    min-height: 200px;
}

.case-block-two .content-box .title-box {
    position: relative;
    display: block;
    line-height: 1.5em;
    margin-bottom: 20px;
    color: #222222;
}

.case-block-two .content-box .title-box h3 {
    font-weight: 400;
    font-size: 30px;
    text-transform: capitalize;
    color: #222222;
    line-height: 1.3em;
    margin-bottom: 2px;
}

.case-block-two .content-box .title-box h3 a {
    color: #222222;
}

.case-block-two .content-box .title-box h3 a:hover {
    color: #0066CC;
}

.case-block-two .content-box .title-box .sub-text {
    font-weight: 400;
    font-size: 15px;
    text-transform: capitalize;
    color: #0066CC;
}

.case-block-two .content-box .text-content {
    position: relative;
    display: block;
}

.case-block-two .content-box .text {
    position: relative;
    margin-bottom: 30px;
}

.case-block-two .content-box .link-box {
    position: relative;
    display: block;
}

.case-block-two .content-box .link-box a {
    position: relative;
    color: #0066CC;
    font-size: 14px;
    font-weight: 700;
    text-transform: capitalize;
    line-height: 20px;
    display: inline-block;
    -webkit-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
}

.case-block-two .content-box .link-box a .arrow {
    padding-left: 5px;
    vertical-align: middle;
    color: #0066CC;
    font-size: 12px;
}

.case-block-two .content-box .link-box a:hover {
    color: #0055A4;
}

.cases-carousel-two .owl-dots {
    position: relative;
    left: 0;
    top: 0;
    width: 100%;
    padding-top: 50px;
    text-align: center;
}

.cases-carousel-two .owl-dots .owl-dot {
    position: relative;
    display: inline-block;
    margin: 0px 5px;
}

.cases-carousel-two .owl-dots .owl-dot span {
    position: relative;
    display: block;
    width: 12px;
    height: 12px;
    background: #cccccc;
    border-radius: 50%;
    -ms-transform: scale(0.7);
    transform: scale(0.7);
    -webkit-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    transition: all 300ms ease;
}

.cases-carousel-two .owl-dots .owl-dot.active span {
    background: #0066CC;
    -ms-transform: scale(1);
    transform: scale(1);
}

.cases-carousel-two .owl-nav {
    position: absolute;
    left: -120px;
    right: -120px;
    margin-top: -30px;
    top: 50%;
    height: 0;
    display: none;
}

.cases-carousel-two .owl-nav .owl-prev,
.cases-carousel-two .owl-nav .owl-next {
    position: relative;
    top: 0;
    display: inline-block;
    width: 60px;
    height: 60px;
    line-height: 60px;
    border-radius: 50%;
    background: #ffffff;
    margin: 0;
    padding: 0;
    outline: none;
    font-size: 14px;
    color: #0066CC;
    box-shadow: 0px 0px 35px 0px rgba(0, 0, 0, 0.05), 0px 0px 35px 0px rgba(0, 0, 0, 0.05);
    -webkit-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
}

.cases-carousel-two .owl-nav .owl-prev {
    position: absolute;
    left: 0;
}

.cases-carousel-two .owl-nav .owl-next {
    position: absolute;
    right: 30px;
}

.cases-carousel-two .owl-nav .owl-prev:hover,
.cases-carousel-two .owl-nav .owl-next:hover {
    background: #0066CC;
    color: #ffffff;
}

.cases-section-two .sponsors-outer {
    padding-top: 70px;
}

.cases-section-two .sponsors-outer .image-box img {
    -webkit-filter: grayscale(100%);
    -ms-filter: grayscale(100%);
    -moz-filter: grayscale(100%);
}

.cases-section-two .sponsors-outer .image-box img:hover {
    -webkit-filter: grayscale(0%);
    -ms-filter: grayscale(0%);
    -moz-filter: grayscale(0%);
}

/* ============================================ */
/* 38. TEAM SECTION                            */
/* ============================================ */

.team-section {
    position: relative;
    background: #edf5f8;
    padding: 120px 0px;
}

.team-section .pattern-layer {
    position: absolute;
    right: -150px;
    top: 50%;
    width: 654px;
    height: 702px;
    margin-top: -351px;
    display: block;
    background: #edf5f8 url(../images/icons/round-pattern-1.png) right 0px no-repeat;
    opacity: 0.80;
}

.team-section .column {
    position: relative;
}

.team-section .column .sec-title {
    margin-bottom: 25px;
    padding-top: 10px;
}

.team-section .column .text-content {
    position: relative;
    margin-bottom: 45px;
}

.team-block {
    position: relative;
    margin-bottom: 30px;
}

.team-block .inner-box {
    position: relative;
    display: block;
    margin-left: 70px;
    min-height: 210px;
    padding: 42px 40px 42px 175px;
    background: #ffffff;
}

.team-block .image-box {
    position: absolute;
    left: -70px;
    top: 15px;
    width: 200px;
    height: 180px;
    display: block;
    overflow: hidden;
}

.team-block .image-box img {
    display: block;
    width: 100%;
}

.team-block .title-box {
    position: relative;
    margin-bottom: 20px;
}

.team-block .title-box h3 {
    font-size: 24px;
    font-weight: 700;
    text-transform: capitalize;
    margin: 0 0 3px;
    color: #222222;
}

.team-block .title-box h3 a {
    color: #222222;
}

.team-block .title-box .designation {
    font-size: 14px;
    font-weight: 400;
    text-transform: capitalize;
    margin: 0;
    color: #0066CC;
}

.team-section .view-all {
    position: relative;
    display: block;
    padding-top: 40px;
    text-align: center;
}

/* ============================================ */
/* 39. TESTIMONIALS TWO                        */
/* ============================================ */

.testimonials-two {
    position: relative;
    padding: 120px 0px 100px;
}

.testimonials-two .auto-container {
    max-width: 1400px;
}

.testimonials-two .carousel-box {
    position: relative;
    display: block;
}

.testimonial-block {
    position: relative;
    display: block;
    margin-bottom: 50px;
}

.owl-theme .testimonial-block {
    margin: 0 0 25px;
}

.testimonial-block .inner {
    position: relative;
    display: block;
}

.testimonial-block .content-box {
    position: relative;
    display: block;
    margin-bottom: 45px;
}

.testimonial-block .content-box:before {
    content: '';
    position: absolute;
    left: 20px;
    bottom: -2px;
    width: 100px;
    height: 100px;
    border: 1px solid #e2eef2;
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
}

.testimonial-block .content-box:after {
    content: '';
    position: absolute;
    left: 48px;
    bottom: 0px;
    width: 45px;
    height: 10px;
    border: 5px solid #ffffff;
    z-index: 2;
}

.testimonial-block:hover .content-box:before,
.testimonial-block:hover .content-box .content {
    border-color: #0066CC;
}

.testimonial-block .content {
    position: relative;
    display: block;
    padding: 45px;
    background: #ffffff;
    border: 1px solid #e2eef2;
    -webkit-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
    z-index: 1;
}

.testimonial-block .content .text {
    position: relative;
    display: block;
    font-size: 15px;
    line-height: 1.7em;
}

.testimonial-block .info {
    position: relative;
    display: block;
    margin-left: 25px;
    padding: 10px 0px 0px 105px;
    line-height: 1.5em;
    color: #666666;
    min-height: 90px;
}

.testimonial-block .info .image {
    position: absolute;
    left: 0;
    top: 0;
    width: 90px;
    height: 90px;
    border: 5px solid #ffffff;
    border-radius: 50%;
    box-shadow: 0px 0px 35px 0px rgba(0, 0, 0, 0.05), 0px 0px 35px 0px rgba(0, 0, 0, 0.05);
}

.testimonial-block .info .image img {
    display: block;
    width: 80px;
    height: 80px;
    border-radius: 50%;
}

.testimonial-block .info .name {
    position: relative;
    display: block;
    font-size: 18px;
    line-height: 1.4em;
    color: #222222;
    font-weight: 700;
    text-transform: capitalize;
}

.testimonial-block .info .designation {
    position: relative;
    display: block;
    font-size: 14px;
    line-height: 1.5em;
    color: #0066CC;
    font-weight: 400;
    text-transform: capitalize;
}

.testimonial-block .info .rating {
    position: relative;
    padding-top: 7px;
    font-size: 12px;
    color: #f4c212;
    left: 1px;
}

.testimonials-two .owl-theme .owl-nav,
.testimonials-two .owl-theme .owl-dots {
    display: none;
}

/* ============================================ */
/* 40. CONTACT SECTION                         */
/* ============================================ */

.contact-section {
    position: relative;
    background: #0066CC;
    padding: 110px 0px 80px;
    color: #ffffff;
}

.contact-section .sec-title {
    position: relative;
    margin-bottom: 35px;
}

.contact-section .map-pattern-layer {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: url('../images/icons/map-pattern-two.png') center center no-repeat;
    opacity: 0.05;
}

.contact-section .sec-title .upper-text,
.contact-section .sec-title .lower-text,
.contact-section .sec-title h2 {
    color: #ffffff;
}

.contact-section .info {
    position: relative;
    display: block;
}

.contact-section .info .phone-title {
    display: block;
    text-transform: uppercase;
    margin-bottom: 10px;
}

.contact-section .info .phone {
    display: block;
    font-size: 30px;
    line-height: 1.4em;
    margin-bottom: 10px;
}

.contact-section .info .phone .icon {
    position: relative;
    vertical-align: middle;
    padding-right: 10px;
}

.contact-section .info .email {
    display: block;
    font-size: 18px;
    line-height: 1.4em;
}

.contact-section .info .phone a,
.contact-section .info .email a {
    position: relative;
    color: #ffffff;
}

.contact-section .text-column,
.contact-section .form-column {
    position: relative;
    margin-bottom: 30px;
}

.contact-section .text-column .inner {
    position: relative;
    display: block;
}

.contact-section .form-column .inner {
    position: relative;
    display: block;
    padding-top: 30px;
}

.contact-section .appointment-form .form-group {
    margin-bottom: 20px;
}

/* ============================================ */
/* 41. INNER BANNER SECTION                    */
/* ============================================ */

.inner-banner {
    position: relative;
    background: #0066CC;
    color: #ffffff;
    z-index: 1;
}

.inner-banner.alternate {
    text-align: center;
}

.inner-banner .image-layer {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}

.inner-banner .image-layer:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.60);
}

.inner-banner .banner-curve {
    position: absolute;
    left: 0;
    bottom: -1px;
    width: 100%;
    height: 78px;
    background-image: url('../images/main-slider/banner-curve.png');
    background-repeat: no-repeat;
    background-position: center bottom;
    background-size: 100% 100%;
    z-index: 2;
}

.inner-banner .inner {
    position: relative;
    display: block;
    padding: 100px 0px 120px;
}

.inner-banner .theme-icon {
    position: absolute;
    right: 0;
    top: 50%;
    margin-top: -255px;
    width: 510px;
    height: 510px;
    background: url('../images/icons/theme-icon-5.png') center center no-repeat;
    opacity: 0.05;
}

.inner-banner .title-box {
    position: relative;
}

.inner-banner .title-box h1 {
    position: relative;
    font-weight: 700;
    text-transform: capitalize;
    margin: 0 0 3px;
}

.inner-banner .d-text {
    position: relative;
    font-size: 18px;
    line-height: 1.5em;
    padding-bottom: 24px;
}

.inner-banner .d-text:before {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 50px;
    border-bottom: 2px solid #0066CC;
}

.inner-banner.alternate .d-text:before {
    left: 50%;
    margin-left: -25px;
}

/* ============================================ */
/* 42. ABOUT SECTION THREE                     */
/* ============================================ */

.about-section-three {
    position: relative;
    padding: 110px 0px 80px;
}

.about-section-three .upper-row {
    position: relative;
    margin-bottom: 25px;
}

.about-section-three .upper-row .text-column {
    position: relative;
    margin-bottom: 20px;
}

.about-section-three .text-column .inner {
    position: relative;
    display: block;
    padding-right: 20px;
}

.about-section-three .text-column p {
    position: relative;
    margin-bottom: 23px;
}

.about-section-three .text-column ul {
    position: relative;
    margin-bottom: 15px;
}

.about-section-three .text-column ul li {
    margin-bottom: 8px;
}

.about-section-three .lower-row {
    position: relative;
}

.featured-block {
    position: relative;
    margin-bottom: 70px;
}

.featured-block .inner-box {
    position: relative;
    display: block;
    text-align: center;
    background: #ffffff;
    box-shadow: 0px 0px 25px 0px rgba(0, 0, 0, 0.07);
    -webkit-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
}

.featured-block .inner-box:hover {
    box-shadow: 0px 0px 40px 0px rgba(0, 0, 0, 0.10);
}

.featured-block .inner-box:before {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    border-bottom: 2px solid #0055A4;
    -ms-transform: scale(0);
    transform: scale(0);
    -webkit-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
}

.featured-block .inner-box:hover:before {
    -ms-transform: scale(1);
    transform: scale(1);
}

.featured-block .image-box {
    position: relative;
    display: block;
}

.featured-block .image-box img {
    display: block;
    width: 100%;
}

.featured-block .lower-box {
    position: relative;
    display: block;
    padding: 50px 30px 75px;
}

.featured-block h3 {
    position: relative;
    color: #222222;
    text-transform: capitalize;
    margin: 0 0 12px;
    font-weight: 700;
}

.featured-block h3 a {
    color: #222222;
    -webkit-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
}

.featured-block h3 a:hover {
    color: #0066CC;
}

.featured-block .text {
    position: relative;
    display: block;
    color: #222222;
}

.featured-block .more-link {
    position: absolute;
    left: 0;
    bottom: -30px;
    width: 100%;
    display: block;
}

.featured-block .more-link a {
    position: relative;
    display: inline-block;
    width: 60px;
    height: 60px;
    line-height: 60px;
    border-radius: 50%;
    background: #ffffff;
    font-size: 14px;
    color: #0066CC;
    box-shadow: 0px 0px 35px 0px rgba(0, 0, 0, 0.05), 0px 0px 35px 0px rgba(0, 0, 0, 0.05);
    -webkit-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
}

.featured-block .inner-box:hover .more-link a {
    color: #ffffff;
    background: #0066CC;
}

/* ============================================ */
/* 43. SERVICES SECTION THREE                  */
/* ============================================ */

.services-section-three {
    position: relative;
    padding: 120px 0px 70px;
}

.services-section-three .services-box {
    position: relative;
    display: block;
}

.service-block-four {
    position: relative;
    margin-bottom: 50px;
}

.service-block-four .inner-box {
    position: relative;
    display: block;
    padding: 0px 0px 0px 90px;
    min-height: 72px;
}

.service-block-four h3 {
    position: relative;
    color: #222222;
    font-size: 20px;
    font-weight: 700;
    text-transform: capitalize;
    margin: 0 0 12px;
}

.service-block-four h3 a {
    color: #222222;
    -webkit-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
}

.service-block-four h3 a:hover,
.service-block-four .inner-box:hover h3 a {
    color: #0066CC;
}

.service-block-four .icon-outer {
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    width: 71px;
    height: 71px;
    padding: 0;
    margin: 0 0;
}

.service-block-four .icon-bg {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: #ffffff url('../images/icons/theme-icon-4.png') center center no-repeat;
}

.service-block-four .icon-outer .icon-box {
    position: relative;
    display: inline-block;
    font-size: 40px;
    color: #0066CC;
    width: 71px;
    height: 71px;
    line-height: 71px;
    text-align: center;
    -webkit-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
}

.service-block-four:hover .icon-outer .icon-box {
    color: #0055A4;
}

.service-block-four .icon-outer .icon-box img {
    max-width: 71px;
    max-height: 71px;
}

.service-block-four .text {
    position: relative;
    display: block;
    max-width: 450px;
}

/* ============================================ */
/* 44. FAQS SECTION                            */
/* ============================================ */

.faqs-section {
    position: relative;
    padding: 120px 0px 110px;
}

.accordion-box {
    position: relative;
}

.accordion-box .block {
    position: relative;
    margin-bottom: 30px;
}

.accordion-box .block .acc-btn {
    position: relative;
    font-size: 15px;
    line-height: 30px;
    font-weight: 700;
    cursor: pointer;
    padding: 15px 30px;
    padding-right: 60px;
    color: #222222;
    background-color: #ffffff;
    border: 1px solid #e2eef2;
    -webkit-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
}

.accordion-box .block .icon {
    position: absolute;
    right: 25px;
    top: 15px;
    font-size: 12px;
    font-weight: 700;
    color: #222222;
    height: 30px;
    line-height: 30px;
    -webkit-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
}

.accordion-box .block .acc-btn.active .icon {
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
    color: #ffffff;
}

.accordion-box .block .acc-btn.active {
    background-color: #0066CC;
    border-color: #0066CC;
    color: #ffffff;
}

.accordion-box .block .acc-content {
    position: relative;
    display: none;
    box-shadow: 0px 0px 25px 0px rgba(0, 0, 0, 0.07);
}

.accordion-box .block .content {
    position: relative;
    padding: 35px 30px;
    background: #ffffff;
}

.accordion-box .block.current .acc-content {
    display: block;
}

.accordion-box .block.active-block .acc-content {
    border-top-color: #0066CC;
}

.accordion-box .block .content .text {
    position: relative;
    display: block;
}

.faqs-section .load-more {
    position: relative;
    display: block;
    padding: 50px 0px 0px;
    text-align: center;
}

/* ============================================ */
/* 45. CALL TO ACTION                          */
/* ============================================ */

.call-to-action {
    position: relative;
    background: #edf5f8;
    padding: 100px 0px 70px;
}

.call-to-action .map-pattern-layer {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: url('../images/icons/map-pattern-three.png') center center no-repeat;
    opacity: 0.05;
}

.call-to-action .auto-container {
    max-width: 1270px;
}

.call-to-action .title-column {
    position: relative;
    margin-bottom: 30px;
}

.call-to-action .title-column .inner {
    position: relative;
    display: block;
}

.call-to-action .title-column h2 {
    font-size: 44px;
    margin: 0;
    color: #222222;
    line-height: 1.2em;
}

.call-to-action .links-column {
    position: relative;
    margin-bottom: 15px;
}

.call-to-action .links-column .inner {
    position: relative;
    display: block;
    padding-top: 20px;
    text-align: right;
}

.call-to-action .links-column .theme-btn {
    margin-left: 12px;
    margin-bottom: 15px;
}

/* ============================================ */
/* 46. CONTACT SECTION TWO                     */
/* ============================================ */

.contact-section-two {
    position: relative;
    padding: 120px 0px 70px;
}

.contact-section-two .sec-title {
    position: relative;
    margin-bottom: 30px;
}

.contact-section-two .social-links {
    position: relative;
    display: block;
}

.contact-section-two .social-links li {
    position: relative;
    display: inline-block;
    margin-right: 5px;
}

.contact-section-two .social-links li a {
    position: relative;
    display: block;
    width: 44px;
    height: 44px;
    text-align: center;
    line-height: 42px;
    color: #0066CC;
    font-size: 16px;
    border: 1px solid rgba(0, 0, 0, 0.10);
    border-radius: 50%;
    -webkit-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
}

.contact-section-two .social-links li a:hover {
    color: #ffffff;
    background: #0066CC;
    border-color: #0066CC;
}

.contact-section-two .text-column,
.contact-section-two .form-column {
    position: relative;
    margin-bottom: 50px;
}

.contact-section-two .text-column .inner {
    position: relative;
    display: block;
    max-width: 420px;
}

.contact-section-two .form-column .inner {
    position: relative;
    display: block;
    padding-top: 40px;
}

.contact-form .row {
    margin: 0 -10px;
}

.contact-form .form-group {
    padding: 0 10px;
    margin-bottom: 20px;
}

.contact-form form button {
    text-transform: none;
    margin-top: 5px;
}

.contact-section-two .lower-row {
    position: relative;
    padding-top: 70px;
}

.contact-info-block {
    position: relative;
    margin-bottom: 50px;
}

.contact-info-block .inner {
    position: relative;
    display: block;
}

.contact-info-block .content-box {
    position: relative;
    display: block;
    background: #ffffff;
    box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.07);
    margin-bottom: 40px;
}

.contact-info-block .content-box .title-box {
    position: relative;
    display: block;
    line-height: 1.5em;
    padding: 25px 40px;
    color: #ffffff;
    background: #0066CC;
}

.contact-info-block .content-box .title-box h4 {
    font-weight: 700;
    text-transform: capitalize;
    color: #ffffff;
    line-height: 1.4em;
    margin-bottom: 2px;
}

.contact-info-block .content-box .title-box h4 a {
    color: #ffffff;
}

.contact-info-block .content-box .title-box .sub-text {
    font-weight: 400;
    font-size: 14px;
    text-transform: capitalize;
    color: #ffffff;
    opacity: 0.50;
}

.contact-info-block .content-box .text-content {
    position: relative;
    display: block;
    padding: 42px 35px;
    background: #ffffff;
}

.contact-info-block .content-box .text {
    position: relative;
    margin-bottom: 20px;
}

.contact-info-block .content-box .info ul {
    position: relative;
}

.contact-info-block .content-box .info ul li {
    position: relative;
    line-height: 1.6em;
    color: #222222;
    margin-bottom: 8px;
}

.contact-info-block .content-box .info ul li strong {
    font-weight: 700;
}

.contact-info-block .content-box .info ul li a {
    color: #222222;
}

.contact-info-block .content-box .info ul li a:hover {
    color: #0066CC;
    text-decoration: underline;
}

/* ============================================ */
/* 47. MAP SECTION STYLE                       */
/* ============================================ */

.map-data {
    text-align: center;
    font-size: 15px;
    color: #222222;
    font-weight: 400;
    line-height: 1.7em;
}

.map-data h6 {
    font-size: 18px;
    font-weight: 700;
    text-align: center;
    margin-bottom: 10px;
    color: #222222;
}

.map-canvas {
    height: 280px;
}

/* ============================================ */
/* 48. SIDEBAR PAGE CONTAINER                  */
/* ============================================ */

.sidebar-page-container {
    position: relative;
    padding: 110px 0px 70px;
}

.sidebar-page-container.services-page {
    padding-bottom: 50px;
}

.sidebar-page-container .content-side {
    position: relative;
    margin-bottom: 30px;
}

.services-page .content-side {
    order: 12;
}

.sidebar-page-container .blog-content {
    position: relative;
    display: block;
    padding-right: 50px;
}

/* ============================================ */
/* 49. SIDEBAR                                 */
/* ============================================ */

.sidebar-page-container .sidebar-side {
    position: relative;
    margin-bottom: 30px;
}

.services-page .sidebar-side {
    order: 0;
}

.sidebar-page-container .sidebar {
    position: relative;
}

.sidebar-page-container .blog-sidebar {
    margin-left: -30px;
}

.sidebar-page-container .services-sidebar {
    padding-right: 20px;
}

.sidebar .sidebar-widget {
    position: relative;
    display: block;
    margin-bottom: 50px;
}

.sidebar .sidebar-widget:last-child {
    margin-bottom: 10px;
}

.sidebar .sidebar-widget .widget-inner {
    position: relative;
    display: block;
}

.sidebar .info-widget {
    text-align: center;
}

.sidebar .info-widget .widget-inner {
    background: #0066CC;
    color: #ffffff;
}

.sidebar .info-widget .lower {
    display: block;
    padding: 30px 20px;
}

.sidebar .info-widget .image {
    position: relative;
    display: block;
    margin: 0;
}

.sidebar .info-widget .image img {
    position: relative;
    display: block;
    width: 100%;
}

.sidebar .info-widget .subtitle {
    position: relative;
    display: block;
    font-size: 18px;
    line-height: 1.5em;
    margin-bottom: 30px;
}

.sidebar .info-widget .icon-box {
    position: relative;
    display: block;
    font-size: 52px;
    line-height: 1em;
    margin-bottom: 30px;
}

.sidebar .info-widget .phone {
    position: relative;
    display: block;
    font-size: 24px;
    line-height: 1.2em;
    font-weight: 700;
    margin-bottom: 5px;
}

.sidebar .info-widget .phone a {
    display: inline-block;
    color: #ffffff;
    border-bottom: 1px solid rgba(255, 255, 255, 0.50);
}

.sidebar .info-widget .email {
    position: relative;
    display: block;
    font-size: 16px;
    line-height: 1.5em;
}

.sidebar .info-widget .email a {
    color: #ffffff;
}

.sidebar .downloads-widget {
    position: relative;
}

.sidebar .downloads-widget .widget-inner {
    background: rgba(0, 0, 0, 0.03);
    padding: 25px 30px;
}

.sidebar .downloads-widget li {
    position: relative;
    display: block;
    border-bottom: 1px solid rgba(0, 0, 0, 0.10);
}

.sidebar .downloads-widget li:last-child {
    border-bottom: none;
}

.sidebar .downloads-widget li a {
    position: relative;
    display: block;
    padding: 12px 0px;
    line-height: 30px;
    font-weight: 500;
    color: #222222;
    text-transform: capitalize;
}

.sidebar .downloads-widget li .fa,
.sidebar .downloads-widget li .far {
    position: relative;
    padding-right: 10px;
    font-size: 20px;
    top: 2px;
}

.sidebar .downloads-widget li a:hover {
    color: #0066CC;
}

.sidebar-title {
    position: relative;
    margin-bottom: 30px;
}

.sidebar-title h3 {
    position: relative;
    display: inline-block;
    font-size: 22px;
    line-height: 1.25em;
    color: #222222;
    font-weight: 700;
    text-transform: capitalize;
    margin-bottom: 0px;
}

.sidebar-title h3:before {
    content: '';
    position: absolute;
    left: 0;
    bottom: 3px;
    width: 100%;
    border-bottom: 2px solid #0066CC;
}

.sidebar .search-box .form-group {
    position: relative;
    margin: 0px;
}

.sidebar .search-box .form-group input[type="text"],
.sidebar .search-box .form-group input[type="search"] {
    position: relative;
    line-height: 30px;
    padding: 14px 50px 14px 30px;
    border: 1px solid #f0f0f0;
    background: #ffffff;
    color: #222222;
    display: block;
    font-size: 16px;
    width: 100%;
    height: 60px;
    border-radius: 3px;
    transition: all 500ms ease;
    -moz-transition: all 500ms ease;
    -webkit-transition: all 500ms ease;
    -ms-transition: all 500ms ease;
    -o-transition: all 500ms ease;
}

.sidebar .search-box .form-group input:focus {
    border-color: #0066CC;
}

.sidebar .search-box .form-group button {
    position: absolute;
    right: 0px;
    top: 0px;
    height: 60px;
    width: 50px;
    line-height: 60px;
    display: block;
    font-size: 16px;
    color: #222222;
    background: none;
    font-weight: normal;
}

.sidebar .search-box .form-group input:focus+button,
.sidebar .search-box .form-group button:hover {
    color: #0066CC;
}

.sidebar .recent-posts .post {
    position: relative;
    font-size: 14px;
    color: #777777;
    padding: 0px 0px 25px 100px;
    min-height: 105px;
    border-bottom: 1px solid #e0e0e0;
    margin-bottom: 25px;
}

.sidebar .recent-posts .post:last-child {
    margin-bottom: 0px;
}

.sidebar .recent-posts .post-thumb {
    position: absolute;
    left: 0px;
    top: 0px;
    width: 80px;
    height: 80px;
    border-radius: 0;
}

.sidebar .recent-posts .post-thumb img {
    position: relative;
    display: block;
    width: 100%;
}

.sidebar .recent-posts .text {
    font-size: 16px;
    line-height: 1.5em;
    color: #222222;
    font-weight: 700;
    text-transform: capitalize;
    margin-bottom: 7px;
}

.sidebar .recent-posts .text a {
    color: #333333;
}

.sidebar .recent-posts .text a:hover {
    color: #0066CC;
}

.sidebar .recent-posts .meta-info {
    position: relative;
    color: #999999;
}

.sidebar .recent-posts .meta-info li {
    position: relative;
    float: left;
    margin-right: 31px;
    line-height: 24px;
}

.sidebar .recent-posts .meta-info li:last-child {
    margin-right: 0;
}

.sidebar .recent-posts .meta-info li:after {
    content: '';
    position: absolute;
    height: 14px;
    right: -16px;
    border-right: 1px solid #999999;
    top: 50%;
    margin-top: -7px;
}

.sidebar .recent-posts .meta-info li:last-child:after {
    display: none;
}

.sidebar .recent-posts .meta-info li a {
    position: relative;
    color: #999999;
}

.sidebar .recent-posts .meta-info li a:hover {
    color: #0066CC;
}

.sidebar .popular-tags .tags-list li {
    position: relative;
    display: inline-block;
    margin: 0px 6px 10px 0px;
}

.sidebar .popular-tags .tags-list li a {
    position: relative;
    display: block;
    line-height: 24px;
    padding: 8px 20px;
    background: #edf5f8;
    text-align: center;
    font-size: 13px;
    font-weight: 700;
    color: #222222;
    text-transform: capitalize;
    border-radius: 0px;
    transition: all 300ms ease;
    -webkit-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
}

.sidebar .popular-tags .tags-list li a:hover {
    background-color: #0066CC;
    border-color: #0066CC;
    color: #ffffff;
}

.sidebar .archives ul {
    position: relative;
}

.sidebar .archives ul li {
    position: relative;
    line-height: 24px;
    font-size: 15px;
    margin-bottom: 10px;
}

.sidebar .archives ul li:last-child {
    padding-bottom: 0;
    border: none;
}

.sidebar .archives ul li a {
    position: relative;
    color: #222222;
    display: block;
    padding-left: 22px;
    line-height: 24px;
    font-weight: 400;
    transition: all 300ms ease;
    -webkit-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
}

.sidebar .archives ul li a:before {
    font-family: 'Font Awesome 5 Free';
    content: "\f061";
    position: absolute;
    left: 0px;
    top: 0px;
    display: block;
    font-size: 12px;
    font-weight: 700;
    color: #666666;
    z-index: 5;
}

.sidebar .archives ul li a:hover:before,
.sidebar .archives ul li.active a:before {
    color: #0066CC;
}

.sidebar .archives ul li a:hover,
.sidebar .archives ul li.active a {
    color: #0066CC;
}

.sidebar .services-widget ul {
    position: relative;
    display: block;
}

.sidebar .services-widget ul li {
    position: relative;
    display: block;
    margin-bottom: 10px;
}

.sidebar .services-widget ul li:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 0%;
    height: 100%;
    border-left: 3px solid #0066CC;
    background: #0066CC;
    -webkit-transition: all 500ms ease;
    -moz-transition: all 500ms ease;
    -ms-transition: all 500ms ease;
    -o-transition: all 500ms ease;
    transition: all 500ms ease;
}

.sidebar .services-widget ul li:hover:before,
.sidebar .services-widget ul li.active:before {
    width: 100%;
}

.sidebar .services-widget ul li a {
    position: relative;
    display: block;
    background: rgba(0, 0, 0, 0.03);
    padding: 12px 20px;
    padding-right: 50px;
    line-height: 30px;
    color: #222222;
    font-size: 16px;
    font-weight: 500;
    text-transform: capitalize;
    z-index: 1;
    -webkit-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
}

.sidebar .services-widget ul li a:before {
    content: "\f061";
    font-family: 'Font Awesome 5 Free';
    position: absolute;
    right: 0px;
    top: 0px;
    line-height: 30px;
    padding: 12px 5px;
    width: 50px;
    text-align: center;
    border-left: 1px solid rgba(0, 0, 0, 0.07);
    font-size: 12px;
    font-weight: 700;
}

.sidebar .services-widget ul li:hover a,
.sidebar .services-widget ul li.active a,
.sidebar .services-widget ul li:hover .icon,
.sidebar .services-widget ul li.active .icon {
    color: #ffffff;
}

.sidebar .services-widget ul li:hover a:before,
.sidebar .services-widget ul li.active a:before {
    color: #ffffff;
    border-color: rgba(255, 255, 255, 0.20);
    -webkit-transition: all 300ms ease 200ms;
    -moz-transition: all 300ms ease 200ms;
    -ms-transition: all 300ms ease 200ms;
    -o-transition: all 300ms ease 200ms;
    transition: all 300ms ease 200ms;
}

/* ============================================ */
/* 50. POST DETAILS                            */
/* ============================================ */

.post-details {
    position: relative;
    display: block;
}

.post-details .news-block-three {
    margin-bottom: 70px;
    padding-bottom: 20px;
    border-bottom: 1px solid #e2eef2;
}

.post-details .news-block-three .meta-info {
    padding-top: 5px;
    padding-bottom: 15px;
    margin-bottom: 35px;
    border-bottom: 1px solid #e2eef2;
}

.post-details .news-block-three .inner-box {
    box-shadow: none;
}

.post-details .news-block-three .lower-box {
    box-shadow: none;
    padding: 40px 0px 0px;
}

.post-details .news-block-three .lower-box:before {
    display: none;
}

.post-details .text p {
    margin-bottom: 40px;
}

.post-details blockquote {
    position: relative;
    display: block;
    padding: 5px 30px;
    background: none;
    color: #222222;
    margin: 40px 0px 40px 50px;
    font-weight: 700;
    font-size: 15px;
    line-height: 1.7em;
    border-left: 3px solid #0066CC;
}

.post-details blockquote .text {
    position: relative;
    display: block;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.6em;
    margin-bottom: 20px;
}

.post-details blockquote .info {
    position: relative;
    display: block;
    font-size: 16px;
    font-weight: 700;
    text-transform: capitalize;
    color: #0066CC;
}

.post-details .image-column {
    margin-bottom: 40px;
}

.post-details .image-column img {
    display: block;
    width: 100%;
}

.post-details .lower-row {
    position: relative;
}

.post-details .lower-row .tags {
    position: relative;
    float: left;
    line-height: 24px;
}

.post-details .lower-row .tags .icon {
    position: relative;
    top: -1px;
    font-weight: 400;
    color: #0066CC;
    font-size: 18px;
    padding-right: 10px;
    vertical-align: middle;
}

.post-details .lower-row .tags a {
    color: #666666;
}

.post-details .lower-row .tags a:hover {
    text-decoration-line: underline;
    color: #0066CC;
}

.post-details .lower-row .share-it {
    position: relative;
    float: right;
}

.post-details .lower-row .share-toggler {
    position: relative;
    display: inline-block;
    line-height: 24px;
    cursor: pointer;
    color: #0066CC;
    font-weight: 700;
}

.post-details .lower-row .share-it .icon {
    position: relative;
    top: -1px;
    font-weight: 400;
    color: #222222;
    font-size: 18px;
    padding-right: 10px;
    vertical-align: middle;
}

.author-box {
    position: relative;
    display: block;
    margin-bottom: 60px;
}

.author-box .inner-box {
    position: relative;
    display: block;
    padding-top: 5px;
    padding-left: 150px;
    min-height: 120px;
}

.author-box .thumb {
    position: absolute;
    left: 0;
    top: 0;
    width: 120px;
    border-radius: 50%;
}

.author-box .thumb img {
    display: block;
    width: 100%;
    border-radius: 50%;
}

.author-box .name {
    position: relative;
    display: block;
    font-size: 16px;
    line-height: 1.25em;
    color: #222222;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 10px;
}

.author-box .text {
    margin-bottom: 25px;
}

.author-box .social-links {
    position: relative;
}

.author-box .social-links ul {
    position: relative;
}

.author-box .social-links li {
    position: relative;
    display: inline-block;
    margin-right: 15px;
    line-height: 24px;
}

.author-box .social-links li a {
    color: #0066CC;
    font-size: 16px;
    transition: all 0.4s ease;
    -moz-transition: all 0.4s ease;
    -webkit-transition: all 0.4s ease;
    -ms-transition: all 0.4s ease;
    -o-transition: all 0.4s ease;
}

.author-box .social-links li a:hover {
    color: #0055A4;
}

/* ============================================ */
/* 51. SERVICE DETAILS                         */
/* ============================================ */

.service-details {
    position: relative;
    display: block;
}

.service-details .image-box {
    position: relative;
    display: block;
    margin-bottom: 40px;
}

.service-details .image-box img {
    position: relative;
    display: block;
    width: 100%;
}

.service-details .content {
    position: relative;
    display: block;
}

.service-details .content p {
    position: relative;
    display: block;
    margin-bottom: 25px;
}

.service-details .content .text {
    position: relative;
    display: block;
    margin-bottom: 40px;
}

.service-details .content h3 {
    color: #222222;
    font-size: 30px;
    margin-bottom: 20px;
}

.service-details .two-col {
    position: relative;
    display: block;
}

.service-details .two-col .column {
    position: relative;
    margin-bottom: 30px;
}

.service-details .two-col .image {
    position: relative;
    display: block;
    margin: 0;
}

.service-details .two-col .image img {
    position: relative;
    display: block;
    width: 100%;
}

/* ============================================ */
/* 52. COMMENT AREA                            */
/* ============================================ */

.comments-title {
    position: relative;
    margin-bottom: 40px;
}

.comments-title h2 {
    font-size: 30px;
    font-weight: 700;
    text-transform: capitalize;
    color: #222222;
    margin: 0;
}

.comments-area {
    position: relative;
    margin-bottom: 70px;
}

.comments-area .comment-box {
    position: relative;
    margin-bottom: 30px;
    padding-bottom: 30px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.10);
}

.comments-area .comment {
    position: relative;
    min-height: 80px;
    padding-left: 105px;
}

.comments-area .comment-box .author-thumb {
    position: absolute;
    left: 0px;
    top: 0px;
    width: 80px;
    border-radius: 50%;
    margin-bottom: 20px;
    overflow: hidden;
}

.comments-area .comment-box .author-thumb img {
    width: 100%;
    display: block;
    border-radius: 50%;
}

.comments-area .comment-box .info {
    position: relative;
    margin-bottom: 10px;
    line-height: 24px;
}

.comments-area .comment-box .info .name {
    position: relative;
    display: inline-block;
    margin-right: 25px;
    font-size: 16px;
    line-height: 24px;
    font-weight: 700;
    color: #222222;
    text-transform: uppercase;
}

.comments-area .comment-box .info .date {
    position: relative;
    display: inline-block;
    font-size: 14px;
    line-height: 24px;
    font-weight: 400;
    color: #999999;
}

.comments-area .comment-box .text {
    font-size: 15px;
    line-height: 1.7em;
    font-weight: 400;
}

.comments-area .comment-box .reply-btn {
    position: relative;
    display: inline-block;
    margin-left: 31px;
}

.comments-area .comment-box .reply-btn:before {
    content: '|';
    position: absolute;
    left: -18px;
    top: -1px;
    line-height: 24px;
    font-size: 12px;
}

.comments-area .comment-box .reply-btn a {
    font-size: 15px;
    line-height: 1.5em;
    color: #222222;
    font-weight: 700;
}

.comments-area .comment-box .reply-btn a .fa {
    padding-right: 5px;
}

.comments-area .comment-box .reply-btn a:hover {
    color: #0066CC;
}

/* ============================================ */
/* 53. LEAVE COMMENTS FORM                     */
/* ============================================ */

.leave-comments {
    position: relative;
}

.leave-comments .instruction {
    padding-top: 15px;
    color: #666666;
    font-size: 14px;
    margin-bottom: 30px;
}

/* ============================================ */
/* 54. CASE SINGLE SECTION                     */
/* ============================================ */

.case-single-section {
    position: relative;
    padding: 90px 0px;
}

.case-single-section .case-inner {
    position: relative;
}

.case-single-section .case-inner .case-images {
    position: relative;
}

.case-single-section .case-inner .case-images .row {
    position: relative;
    margin: 0px -15px;
}

.case-single-section .case-inner .case-images .image-column {
    position: relative;
    padding: 0px 15px;
}

.case-single-section .case-inner .case-images .image {
    position: relative;
    margin-bottom: 30px;
}

.case-single-section .case-inner .case-images .image img {
    position: relative;
    width: 100%;
    display: block;
}

.case-single-section .case-inner .cases-title {
    position: relative;
    padding-bottom: 30px;
    margin-top: 20px;
    border-bottom: 1px solid #cccccc;
    margin-bottom: 30px;
}

.case-single-section .case-inner .cases-title h2 {
    position: relative;
    color: #222222;
    font-size: 30px;
    font-weight: 500;
    line-height: 1.3em;
    text-align: right;
    padding-right: 40px;
    border-right: 1px solid #cccccc;
    margin-bottom: 20px;
}

.case-single-section .case-inner .cases-title .info-column {
    position: relative;
}

.case-single-section .case-inner .cases-title .info-column .inner {
    position: relative;
    padding-top: 10px;
    margin-bottom: 20px;
}

.case-single-section .case-inner .cases-title .info-column .inner h3 {
    position: relative;
    font-weight: 700;
    color: #222222;
    font-size: 24px;
    text-transform: capitalize;
    margin-bottom: 7px;
}

.case-single-section .case-inner .cases-title .info-column .inner .text {
    color: #222222;
    font-size: 15px;
}

.case-single-section .case-inner .bold-text {
    position: relative;
    font-weight: 700;
    font-size: 15px;
    line-height: 1.7em;
    margin-bottom: 20px;
}

.case-single-section .case-inner .text {
    position: relative;
    margin-bottom: 30px;
}

.case-single-section .case-inner .text p {
    position: relative;
    color: #222222;
    font-size: 14px;
    line-height: 1.7em;
    margin-bottom: 0px;
}

.case-single-section .case-inner .text .two-column {
    position: relative;
    padding-bottom: 30px;
}

.case-single-section .two-column h3 {
    position: relative;
    color: #333333;
    font-size: 22px;
    font-weight: 700;
    margin-bottom: 20px;
}

.case-single-section .case-inner .two-column p {
    margin-bottom: 25px;
}

.case-single-section .case-inner .two-column .image-column {
    position: relative;
    margin-bottom: 10px;
}

.case-single-section .case-inner .two-column .image-column .row {
    position: relative;
    margin: 0px -5px;
}

.case-single-section .case-inner .two-column .image-column .column {
    padding: 0px 5px;
    margin-bottom: 20px;
}

.case-single-section .case-inner .two-column .image-column .image {
    position: relative;
}

.case-single-section .case-inner .two-column .image-column .image img {
    width: 100%;
    display: block;
}

/* ============================================ */
/* 55. CONTACT INFO SECTION                    */
/* ============================================ */

.contact-info-section {
    position: relative;
    padding: 90px 0px 60px;
    background-color: #3d4a66;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}

.contact-info-section h3 {
    position: relative;
    color: #ffffff;
    font-size: 30px;
    font-weight: 400;
    text-align: center;
    margin-bottom: 40px;
}

.contact-info-section .info-blocks {
    position: relative;
    max-width: 420px;
    margin: 0 auto;
}

.contact-info-section .info-blocks .info-block {
    position: relative;
    margin-bottom: 30px;
    vertical-align: top;
}

.contact-info-section .info-blocks .info-block .inner {
    position: relative;
    text-align: center;
}

.contact-info-section .info-blocks .info-block .inner .icon-box {
    position: relative;
    width: 40px;
    height: 40px;
    color: #0066CC;
    border-radius: 5px;
    line-height: 40px;
    text-align: center;
    font-size: 18px;
    margin: 0 auto;
    margin-bottom: 25px;
    background-color: #ffffff;
}

.contact-info-section .info-blocks .info-block .inner .text,
.contact-info-section .info-blocks .info-block .inner .text a {
    position: relative;
    color: #ffffff;
    font-size: 15px;
}

.contact-info-section .info-blocks .info-block .inner .text a:hover {
    text-decoration: underline;
}

/* ============================================ */
/* 56. ABOUT PAGE - CLASSES SPÉCIFIQUES        */
/* ============================================ */

.about-highlight {
    color: #0066CC;
    font-weight: 600;
    font-size: 18px;
}

.about-list {
    margin-top: 20px;
}

.about-btn-wrapper {
    margin-top: 30px;
}

.video-wrapper {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    max-width: 100%;
    background: #000;
    border-radius: 10px;
    box-shadow: 0 5px 25px rgba(0, 0, 0, 0.15);
}

.video-wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

.video-caption {
    text-align: center;
    margin-top: 15px;
    color: #666;
    font-style: normal !important;
}

.video-caption .fa-video {
    color: #0066CC;
}

/* ============================================ */
/* 57. BOOKING PAGE - CLASSES SPÉCIFIQUES      */
/* ============================================ */

.booking-toggle {
    cursor: pointer;
}

.booking-hint {
    color: #666;
    margin-top: 10px;
}

.booking-hint i {
    transition: transform 0.3s ease;
}

/* ============================================ */
/* 58. CONTACT PAGE - CLASSES SPÉCIFIQUES      */
/* ============================================ */

.contact-alert-container {
    margin-top: 20px;
}

.contact-info-list {
    list-style: none;
    padding: 0;
}

.contact-info-list li {
    margin-bottom: 10px;
}

.contact-info-list .phone-title {
    text-transform: uppercase;
}

.contact-info-list .phone {
    font-size: 30px;
    line-height: 1.4em;
    margin-bottom: 10px;
}

.contact-info-list .phone a {
    color: #ffffff;
}

.contact-info-list .email {
    font-size: 18px;
    line-height: 1.4em;
}

.contact-info-list .email a {
    color: #ffffff;
}

/* ============================================ */
/* 59. TOAST MESSAGE                           */
/* ============================================ */

@keyframes slideInRight {
    from { transform: translateX(100%); opacity: 0; }
    to { transform: translateX(0); opacity: 1; }
}

.toast-message-custom {
    animation: slideInRight 0.5s ease;
}

/* ============================================ */
/* 60. FOOTER - CLASSES PERSONNALISÉES EMSI    */
/* ============================================ */

.icon-blue {
    color: #0066CC !important;
    margin-right: 10px;
}

.theme-color-link {
    color: #0066CC !important;
}

.theme-color-link:hover {
    color: #0055A4 !important;
}

.bg-theme-blue {
    background: #0066CC !important;
}

.footer-widget .text,
.footer-widget .info,
.footer-widget .info ul li,
.footer-widget .info ul li a,
.footer-widget .info ul li strong,
.footer-widget .info ul li span {
    font-style: normal !important;
}

/* ============================================ */
/* 61. HOME PAGE - CLASSES SPÉCIFIQUES         */
/* ============================================ */

.about-image-wrapper {
    position: relative;
    display: block;
    margin-bottom: 30px;
}

.about-image-wrapper img {
    width: 100%;
    display: block;
    border-radius: 10px;
}

.about-logo-overlay {
    position: absolute;
    bottom: 20px;
    right: 20px;
    width: 80px;
    height: 80px;
    background: #ffffff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.15);
    z-index: 2;
    padding: 8px;
    overflow: hidden;
}

.about-logo-overlay img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    border-radius: 50%;
}

/* ============================================ */
/* 62. SERVICES PAGE                           */
/* ============================================ */

.services-highlight {
    color: #0066CC;
    font-weight: 600;
    font-size: 18px;
}

.services-btn-wrapper {
    margin-top: 30px;
}

/* ============================================ */
/* 63. OFFERS PAGE                             */
/* ============================================ */

.offer-card {
    background: #fff;
    border-radius: 10px;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
    overflow: hidden;
    margin-bottom: 30px;
}

.offer-card-img {
    width: 100%;
    height: 200px;
    object-fit: cover;
}

.offer-card-placeholder {
    background: #f0f0f0;
    height: 200px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.offer-card-placeholder i {
    font-size: 50px;
    color: #ccc;
}

.offer-card-body {
    padding: 20px;
}

.offer-card-body h3 {
    font-size: 20px;
    font-weight: 700;
    color: #222;
    margin-bottom: 10px;
}

.offer-discount {
    color: #0066CC;
    font-weight: bold;
    font-size: 16px;
    margin-bottom: 10px;
}

.offer-description {
    color: #666;
    font-size: 14px;
    margin-bottom: 10px;
}

.offer-valid {
    color: #999;
    font-size: 13px;
    margin-bottom: 15px;
}

.no-offers {
    font-size: 18px;
    color: #666;
}

/* ============================================ */
/* 64. TEAM PAGE                               */
/* ============================================ */

.team-card-img-top {
    height: 250px;
    object-fit: cover;
}

.team-card-placeholder-top {
    height: 250px;
    background: #6c757d;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* ============================================ */
/* 65. PARTNERS PAGE                           */
/* ============================================ */

.partners-carousel-wrapper {
    overflow: hidden;
    position: relative;
}

.partners-carousel {
    display: flex;
    gap: 30px;
    animation: scrollLeft 20s linear infinite;
}

.partner-item {
    min-width: 150px;
    text-align: center;
}

.partner-logo-scroll {
    max-height: 80px;
    width: auto;
}

@keyframes scrollLeft {
    0% { transform: translateX(0); }
    100% { transform: translateX(-50%); }
}

/* ============================================ */
/* 66. TESTIMONIALS PAGE                       */
/* ============================================ */

.testimonial-avatar {
    width: 60px;
    height: 60px;
    object-fit: cover;
}

/* ============================================ */
/* 67. NEWS PAGE                               */
/* ============================================ */

.empty-news {
    text-align: center;
    padding: 50px 0;
}

.empty-news h3 {
    color: #999;
}

.empty-news p {
    color: #bbb;
}

.archive-count {
    float: right;
    color: #999;
}

.video-wrapper-sidebar {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    border-radius: 8px;
    background: #000;
}

.video-wrapper-sidebar iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

.video-caption-sidebar {
    margin-top: 10px;
    font-size: 14px;
    color: #666;
    text-align: center;
}

.video-caption-sidebar .fa-video {
    color: #0066CC;
}

.contact-widget-blue {
    background: #0066CC;
    padding: 30px 20px;
    border-radius: 8px;
    text-align: center;
    color: #fff;
}

.contact-widget-blue h4 {
    color: #fff;
    margin-bottom: 15px;
}

.contact-widget-blue p {
    color: rgba(255, 255, 255, 0.8);
    margin-bottom: 20px;
}

/* ============================================ */
/* 68. TEAM CAROUSEL HOME                      */
/* ============================================ */

.team-carousel-wrapper {
    overflow: hidden;
    position: relative;
    margin-top: 40px;
}

.team-carousel {
    display: flex;
    gap: 30px;
    animation: scrollTeamLeft 30s linear infinite;
}

.team-carousel:hover {
    animation-play-state: paused;
}

@keyframes scrollTeamLeft {
    0% { transform: translateX(0); }
    100% { transform: translateX(-50%); }
}

.team-card {
    min-width: 250px;
    max-width: 250px;
    text-align: center;
}

.team-card-item {
    border: none;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
    border-radius: 10px;
    overflow: hidden;
}

.team-card-img {
    width: 100%;
    height: 250px;
    object-fit: cover;
}

.team-card-placeholder {
    width: 100%;
    height: 250px;
    background: #f0f0f0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.team-card-body {
    padding: 20px;
}

.team-card-name {
    font-weight: 700;
    color: #222;
    margin-bottom: 5px;
}

.team-card-role {
    color: #0066CC;
    font-size: 14px;
    margin-bottom: 0;
    font-style: normal !important;
}

/* ============================================ */
/* 69. NEWS - CLASSES SPÉCIFIQUES              */
/* ============================================ */

.post-meta {
    margin-bottom: 20px;
    padding-bottom: 15px;
    border-bottom: 1px solid #e2eef2;
}

.post-meta ul {
    list-style: none;
    padding: 0;
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
}

.post-meta ul li span {
    color: #0066CC;
    margin-right: 5px;
}

.post-meta ul li a {
    color: #666;
}

.post-meta ul li a:hover {
    color: #0066CC;
}

.featured-image-wrapper {
    margin-bottom: 30px;
    border-radius: 10px;
    overflow: hidden;
}

.featured-image-wrapper img {
    width: 100%;
    display: block;
}

.post-details h2 {
    color: #222;
    font-weight: 700;
    margin-bottom: 20px;
}

.hashtags {
    margin: 20px 0;
}

.hashtag {
    display: inline-block;
    background: #f0f0f0;
    padding: 5px 15px;
    border-radius: 20px;
    margin: 3px;
    font-size: 13px;
    color: #0066CC;
}

.back-to-news {
    margin-top: 30px;
}

.article-not-found {
    text-align: center;
    padding: 50px 0;
}

.article-not-found a {
    color: #0066CC;
}

/* ============================================ */
/* 70. SERVICE DETAIL - CLASSES SPÉCIFIQUES    */
/* ============================================ */

.service-icon-box {
    margin-bottom: 20px;
}

.service-icon-box i {
    font-size: 50px;
    color: #0066CC;
}

/* ============================================ */
/* 71. PARTNER SERVICES                        */
/* ============================================ */

.sidebar-box {
    background: #f9f9f9;
    padding: 25px;
    border-radius: 10px;
    margin-bottom: 30px;
}

.sidebar-box h3 {
    font-size: 18px;
    font-weight: 700;
    color: #222;
    margin-bottom: 15px;
}

.sidebar-links {
    list-style: none;
    padding: 0;
}

.sidebar-links li {
    padding: 8px 0;
    border-bottom: 1px solid #e2eef2;
}

.sidebar-links li:last-child {
    border-bottom: none;
}

.sidebar-links li a {
    color: #222;
    text-decoration: none;
}

.sidebar-links li a:hover {
    color: #0066CC;
    padding-left: 5px;
}

.theme-link {
    color: #0066CC !important;
}

.theme-link:hover {
    color: #0055A4 !important;
}

.cta-box {
    background: #0066CC;
    color: #fff;
    padding: 20px 30px;
    border-radius: 8px;
    margin: 30px 0;
    text-align: center;
}

.cta-box h4 {
    color: #fff;
    font-weight: 700;
}

.cta-box p {
    color: rgba(255, 255, 255, 0.9);
    margin: 10px 0 0;
}

.checkbox-group {
    margin-bottom: 15px;
}

.checkbox-group label {
    font-size: 14px;
    color: #666;
    cursor: pointer;
}

.checkbox-group input[type="checkbox"] {
    margin-right: 5px;
}

/* ============================================ */
/* 72. RESPONSIVE                              */
/* ============================================ */

@media (max-width: 768px) {
    .post-meta ul {
        gap: 10px;
        font-size: 13px;
    }
    
    .hashtag {
        font-size: 11px;
        padding: 3px 10px;
    }
    
    .sidebar-box {
        padding: 15px;
    }
    
    .cta-box {
        padding: 15px 20px;
    }
    
    .service-icon-box i {
        font-size: 35px;
    }
}
/* ============================================ */
/* FORCER LE HEADER BLEU - PRIORITÉ MAXIMALE   */
/* ============================================ */

.header-lower,
.header-style-two .header-lower,
.header-lower.bg-theme-blue,
div.header-lower {
    background: #0066CC !important;
    background-color: #0066CC !important;
}

/* MENU EN BLANC */
.main-menu .navigation > li > a {
    color: #ffffff !important;
}

.main-menu .navigation > li:hover > a,
.main-menu .navigation > li.current > a {
    color: #ffffff !important;
}

.main-menu .navigation > li:before {
    border-bottom-color: #ffffff !important;
}

/* SOUS-MENU */
.main-menu .navigation > li > ul {
    border-top-color: #0066CC !important;
}

/* RECHERCHE */
.header-lower .search-btn button {
    color: #ffffff !important;
}

/* STICKY HEADER */
.sticky-header {
    background: #0066CC !important;
    border-bottom: 1px solid rgba(255,255,255,0.2) !important;
}

.sticky-header .main-menu .navigation > li > a {
    color: #ffffff !important;
}

.sticky-header .search-btn button {
    color: #ffffff !important;
}
/* ============================================ */
/* SITE PUBLIC - COULEURS LOGO EMASI            */
/* Bleu: #0A2FBF - Rouge: #ED1C24 - Blanc: #FFF */
/* ============================================ */

:root {
    --emasi-blue: #0A2FBF;
    --emasi-blue-dark: #071F80;
    --emasi-red: #ED1C24;
    --emasi-red-dark: #C41820;
    --emasi-white: #FFFFFF;
}

/* ============================================ */
/* 1. TITRES EN ROUGE EMASI                     */
/* ============================================ */
h1, h2, h3, h4, h5, h6,
.sec-title h2,
.sec-title h2 strong,
.banner-carousel .content-box h1,
.banner-carousel .content-box h1 strong,
.title-box h1,
.inner-banner .title-box h1,
.team-block .title-box h3,
.case-block .content-box .title-box h4,
.news-block .lower-box h3,
.news-block-two .inner-box h3,
.news-block-three .lower-box h3,
.service-block h3,
.service-block-two h3,
.service-block-three h3,
.service-block-four h3,
.featured-block h3,
.feature-block .inner-box .title,
.fact-counter .count-box,
.fact-counter .counter-title,
.sidebar-title h3,
.comments-title h2,
.accordion-box .block .acc-btn,
.contact-section .info .phone,
.author-box .name,
.case-single-section .case-inner .cases-title h2,
.about-section-two .right-column h3,
.case-block-two .content-box .title-box h3,
.default-bg-section .content-box h2,
.call-to-action .title-column h2,
.video-section h2,
.contact-info-section h3 {
    color: var(--emasi-red) !important;
}

/* ============================================ */
/* 2. LIENS ET ÉLÉMENTS INTERACTIFS EN BLEU    */
/* ============================================ */
a,
.theme_color,
a:hover,
a:focus,
a:active,
.main-menu .navigation > li:hover > a,
.main-menu .navigation > li.current > a,
.news-block h3 a:hover,
.service-block h3 a:hover,
.team-block .title-box h3 a:hover,
.service-block-two h3 a:hover,
.service-block-three h3 a:hover,
.service-block-four h3 a:hover,
.featured-block h3 a:hover,
.news-block-two .inner-box h3 a:hover,
.news-block-three h3 a:hover,
.sticky-header .main-menu .navigation > li:hover > a,
.sticky-header .main-menu .navigation > li.current > a {
    color: var(--emasi-blue) !important;
}

/* ============================================ */
/* 3. BOUTONS - BLEU ET ROUGE                   */
/* ============================================ */

/* Bouton principal - Bleu */
.btn-style-one .btn-title,
.btn-style-two .btn-title,
.theme-btn.btn-style-one .btn-title,
.theme-btn.btn-style-two .btn-title {
    background: var(--emasi-blue) !important;
    color: var(--emasi-white) !important;
}

.btn-style-one:hover .btn-title,
.btn-style-two:hover .btn-title,
.theme-btn.btn-style-one:hover .btn-title,
.theme-btn.btn-style-two:hover .btn-title {
    background: var(--emasi-red) !important;
    color: var(--emasi-white) !important;
}

/* ============================================ */
/* 4. SOULIGNEMENTS ET SÉPARATEURS               */
/* ============================================ */
.sec-title .upper-text,
.sec-title .upper-text:before {
    color: var(--emasi-red) !important;
    border-bottom-color: var(--emasi-red) !important;
}

.main-menu .navigation > li:before {
    border-bottom-color: var(--emasi-red) !important;
}

.main-menu .navigation > li > ul {
    border-top-color: var(--emasi-blue) !important;
}

.main-footer .widget-title h4:before {
    border-bottom-color: var(--emasi-red) !important;
}

/* ============================================ */
/* 5. HEADER - BLEU                             */
/* ============================================ */

/* Barre du menu (header-lower) - Bleu EMASI */
.header-style-two .header-lower,
.header-lower {
    background: var(--emasi-blue) !important;
}

/* Menu navigation - Texte blanc */
.header-style-two .nav-box .main-menu .navigation > li > a,
.header-lower .main-menu .navigation > li > a {
    color: var(--emasi-white) !important;
}

/* Hover menu - Rouge */
.header-style-two .nav-box .main-menu .navigation > li:hover > a,
.header-style-two .nav-box .main-menu .navigation > li.current > a,
.header-lower .main-menu .navigation > li:hover > a,
.header-lower .main-menu .navigation > li.current > a {
    color: var(--emasi-red) !important;
}

/* Soulignement menu */
.header-style-two .nav-box .main-menu .navigation > li:before {
    border-bottom-color: var(--emasi-red) !important;
}

/* ============================================ */
/* 6. ICÔNES EN BLEU                           */
/* ============================================ */
.header-top-one .info li .icon,
.feature-block .icon-box,
.service-block-three .icon-outer .icon-box,
.fact-counter .count-box,
.cases-section .bottom-text .text a,
.services-section .bottom-text .text a,
.services-section-two .bottom-text .text a,
.team-section .view-all a,
.footer-widget .info ul li a:hover,
.author-box .social-links li a,
.contact-info-section .info-blocks .info-block .inner .icon-box {
    color: var(--emasi-blue) !important;
}

/* Hover icônes - Rouge */
.feature-block .inner-box:hover .icon-box {
    color: var(--emasi-red) !important;
}

/* ============================================ */
/* 7. FOOTER                                    */
/* ============================================ */

/* Titres footer - Rouge */
.main-footer .widget-title h4 {
    color: var(--emasi-red) !important;
}

.main-footer .widget-title h4:before {
    border-bottom-color: var(--emasi-red) !important;
}

/* Liens footer - Bleu au hover */
.main-footer .links-widget .links li a:hover {
    color: var(--emasi-blue) !important;
}

/* Icônes sociales - Bleu */
.main-footer .social-links li a {
    color: var(--emasi-blue) !important;
}

.main-footer .social-links li a:hover {
    color: var(--emasi-red) !important;
}

/* Puces des liens - Bleu */
.main-footer .links-widget .links li:before {
    color: var(--emasi-blue) !important;
}

/* Info footer */
.main-footer .info ul li a:hover {
    color: var(--emasi-blue) !important;
}

/* Bouton newsletter - Bleu */
.newsletter-form .form-group .newsletter-btn {
    background: var(--emasi-blue) !important;
}

.newsletter-form .form-group .newsletter-btn:hover {
    background: var(--emasi-red) !important;
}

/* ============================================ */
/* 8. TÉLÉPHONE ET EMAIL EN ROUGE               */
/* ============================================ */
.contact-section .info .phone,
.contact-section .info .phone a,
.contact-section .info .email,
.contact-section .info .email a,
.contact-info-list .phone a,
.contact-info-list .email a {
    color: var(--emasi-red) !important;
}

.contact-section .info .phone-title {
    color: var(--emasi-white) !important;
}

/* ============================================ */
/* 9. SECTIONS AVEC FOND BLEU                   */
/* ============================================ */
.fun-facts-section.alternate,
.video-section,
.contact-section,
.header-style-two .header-lower,
.mobile-menu .menu-box {
    background: var(--emasi-blue) !important;
}

/* Titres sur fond bleu - Blanc */
.fun-facts-section.alternate .fact-counter .upper-title,
.fun-facts-section.alternate .fact-counter .count-box,
.fun-facts-section .title-box h1,
.video-section h2,
.contact-section .sec-title .upper-text,
.contact-section .sec-title .lower-text,
.contact-section .sec-title h2 {
    color: var(--emasi-white) !important;
}

/* Bouton play - Rouge */
.video-section .video-link a {
    color: var(--emasi-red) !important;
}

/* ============================================ */
/* 10. SCROLL TO TOP - BLEU                     */
/* ============================================ */
.scroll-to-top {
    background: var(--emasi-blue) !important;
    color: var(--emasi-white) !important;
}

.scroll-to-top:hover {
    background: var(--emasi-red) !important;
    box-shadow: 2px 2px 0px var(--emasi-red) !important;
}

/* ============================================ */
/* 11. ÉLÉMENTS DIVERS                          */
/* ============================================ */

/* Cartes de services - Bordure hover bleue */
.service-block .inner-box:hover {
    border-bottom-color: var(--emasi-blue) !important;
}

/* Icônes de cartes - Bleu */
.service-block .more-link a {
    color: var(--emasi-blue) !important;
}

.service-block .inner-box:hover .more-link a {
    background: var(--emasi-blue) !important;
    color: var(--emasi-white) !important;
}

/* Catégories - Rouge */
.news-block .lower-box .category,
.news-block-two .inner-box .category,
.news-block-three .lower-box .category {
    color: var(--emasi-red) !important;
}

/* Team - Désignation rouge */
.team-block .title-box .designation,
.testimonial-block .info .designation {
    color: var(--emasi-red) !important;
}

/* Texte de présentation - Bleu léger */
.services-section .bottom-text .text,
.services-section-two .bottom-text .text,
.cases-section .bottom-text .text {
    color: var(--emasi-blue-dark) !important;
}

.services-section .bottom-text .text a,
.services-section-two .bottom-text .text a,
.cases-section .bottom-text .text a {
    color: var(--emasi-red) !important;
}

/* ============================================ */
/* 12. MENU MOBILE                              */
/* ============================================ */
.mobile-menu .menu-box {
    background: var(--emasi-blue) !important;
}

.mobile-menu .navigation li > a {
    color: var(--emasi-white) !important;
}

.mobile-menu .navigation li > a:hover {
    color: var(--emasi-red) !important;
}

.mobile-menu .navigation li > a:before {
    border-left-color: var(--emasi-red) !important;
}

.mobile-menu .navigation li.current > a:before {
    border-left-color: var(--emasi-red) !important;
}

.mobile-menu .nav-logo {
    background: var(--emasi-blue-dark) !important;
}

.mobile-menu .close-btn {
    color: var(--emasi-white) !important;
}

/* ============================================ */
/* 13. BOUTON "AJOUTER" / BOUTON ROUGE          */
/* ============================================ */
.btn-admin-danger,
.btn-style-red,
.theme-btn.red .btn-title {
    background: var(--emasi-red) !important;
    color: var(--emasi-white) !important;
}

/* ============================================ */
/* 14. TITRES SECTION - ROUGE                   */
/* ============================================ */
.sec-title h2 {
    color: var(--emasi-red) !important;
}

.sec-title h2 strong {
    color: var(--emasi-red) !important;
}

/* Sous-titres section - Bleu */
.sec-title .lower-text {
    color: var(--emasi-blue-dark) !important;
}

/* ============================================ */
/* 15. TEXTE NORMAL - COULEUR NEUTRE            */
/* ============================================ */
p,
.text {
    color: #4a5568 !important;
}

/* ============================================ */
/* 16. PAGINATION                               */
/* ============================================ */
.styled-pagination li a.active,
.styled-pagination li a:hover {
    background: var(--emasi-blue) !important;
    border-color: var(--emasi-blue) !important;
    color: var(--emasi-white) !important;
}

/* ============================================ */
/* 17. ACCORDÉON                                */
/* ============================================ */
.accordion-box .block .acc-btn.active {
    background: var(--emasi-blue) !important;
    border-color: var(--emasi-blue) !important;
    color: var(--emasi-white) !important;
}

/* ============================================ */
/* 18. SELECT / OPTION / FOCUS                  */
/* ============================================ */
.default-form .form-group input:focus,
.default-form .form-group textarea:focus,
.default-form .form-group select:focus {
    border-color: var(--emasi-blue) !important;
    box-shadow: 0 0 0 3px rgba(10, 47, 191, 0.1) !important;
}

/* ============================================ */
/* 19. RESPONSIVE - COULEURS                    */
/* ============================================ */
@media (max-width: 768px) {
    .main-menu .navigation > li > a {
        color: var(--emasi-white) !important;
    }
    
    .sec-title h2 {
        font-size: 28px !important;
    }
}
/* ============================================ */
/* SECTION À LA UNE - STYLE COMMUNE MUYINGA     */
/* ============================================ */

/* -------------------------------------------- */
/* 1. GRAND CARROUSEL PLEIN ÉCRAN                */
/* -------------------------------------------- */
.une-carousel-fullwidth {
    position: relative;
    width: 100%;
    overflow: hidden;
}

.une-slide-full {
    position: relative;
    width: 100%;
    height: 650px;
}

.une-card-full {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.une-card-full .une-image-layer {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.une-card-full .une-bg {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.une-card-full .une-image-layer:after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(
        to bottom,
        rgba(0, 0, 0, 0.25) 0%,
        rgba(0, 0, 0, 0.45) 50%,
        rgba(0, 0, 0, 0.85) 100%
    );
}

.une-content-full {
    position: absolute;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    padding: 70px 80px;
    z-index: 2;
    color: #fff;
    text-align: center;
    max-width: 1200px;
    margin: 0 auto;
}

.une-card-full .une-badge {
    display: inline-block;
    background: #ED1C24;
    color: #fff;
    padding: 6px 18px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    margin-bottom: 20px;
}

.une-card-full .une-badge i {
    margin-right: 6px;
    font-size: 11px;
}

.une-card-full .une-headline {
    font-size: 48px;
    font-weight: 900;
    line-height: 1.15;
    color: #fff;
    margin: 0 0 20px;
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.5);
    text-transform: uppercase;
}

.une-card-full .une-headline a {
    color: #fff !important;
    text-decoration: none;
    transition: color 0.3s ease;
}

.une-card-full .une-headline a:hover {
    color: #ED1C24 !important;
}

.une-card-full .une-excerpt {
    font-size: 18px;
    line-height: 1.6;
    color: rgba(255, 255, 255, 0.95);
    margin: 0 auto 30px;
    max-width: 800px;
    text-shadow: 0 1px 5px rgba(0, 0, 0, 0.4);
}

.une-card-full .une-btn {
    display: inline-block;
    background: #ED1C24;
    color: #fff !important;
    padding: 15px 45px;
    border-radius: 30px;
    font-size: 16px;
    font-weight: 700;
    text-decoration: none;
    transition: all 0.3s ease;
    box-shadow: 0 5px 20px rgba(237, 28, 36, 0.5);
    border: 2px solid #ED1C24;
}

.une-card-full .une-btn:hover {
    background: #0A2FBF;
    border-color: #0A2FBF;
    transform: translateY(-3px);
    box-shadow: 0 8px 25px rgba(10, 47, 191, 0.5);
}

.une-carousel-fullwidth .owl-nav .owl-prev,
.une-carousel-fullwidth .owl-nav .owl-next {
    position: absolute;
    top: 50%;
    margin-top: -30px;
    width: 60px;
    height: 60px;
    line-height: 60px;
    border-radius: 50%;
    background: #ED1C24 !important;
    color: #fff !important;
    font-size: 22px;
    text-align: center;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.25);
    transition: all 0.3s ease;
    z-index: 10;
    opacity: 1;
}

.une-carousel-fullwidth .owl-nav .owl-prev { left: 30px; }
.une-carousel-fullwidth .owl-nav .owl-next { right: 30px; }

.une-carousel-fullwidth .owl-nav .owl-prev:hover,
.une-carousel-fullwidth .owl-nav .owl-next:hover {
    background: #fff !important;
    color: #ED1C24 !important;
    transform: scale(1.1);
}

/* -------------------------------------------- */
/* 2. SECTION "À LA UNE" + GRILLE                */
/* -------------------------------------------- */
.a-la-une-section {
    position: relative;
    background: #fff5f5;
    padding: 70px 0 90px;
    overflow: hidden;
    z-index: 1;
}

.a-la-une-section .decorative-shape {
    position: absolute;
    left: -150px;
    top: -150px;
    width: 400px;
    height: 400px;
    background: rgba(237, 28, 36, 0.06);
    border-radius: 50%;
    z-index: 0;
}

.a-la-une-section .une-header {
    text-align: center;
    margin-bottom: 40px;
    position: relative;
    z-index: 1;
}

.a-la-une-section .une-title {
    font-size: 64px;
    font-weight: 900;
    color: #ED1C24;
    text-transform: uppercase;
    letter-spacing: 3px;
    margin: 0 0 15px;
    font-family: 'Arial', sans-serif;
    line-height: 1;
}

.a-la-une-section .une-line {
    width: 80px;
    height: 5px;
    background: #ED1C24;
    margin: 0 auto 20px;
    border-radius: 3px;
}

.a-la-une-section .une-subtitle {
    font-size: 18px;
    color: #666;
    margin: 0;
    font-weight: 400;
}

.latest-news-header {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 30px;
    margin-top: 40px;
    position: relative;
    z-index: 1;
}

.latest-news-header .header-icon {
    width: 50px;
    height: 50px;
    background: #ED1C24;
    color: #fff;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
}

.latest-news-title {
    font-size: 38px;
    font-weight: 900;
    color: #1a1a1a;
    margin: 0;
    font-family: 'Arial', sans-serif;
}

.latest-news-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: repeat(2, 220px);
    gap: 20px;
    position: relative;
    z-index: 1;
}

.news-card-large {
    grid-column: span 2;
    grid-row: span 2;
}

.news-card {
    position: relative;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
    transition: all 0.3s ease;
    background: #fff;
    height: 100%;
}

.news-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.15);
}

.news-card-link {
    display: block;
    height: 100%;
    text-decoration: none;
    color: inherit;
    position: relative;
}

.news-card-image {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.news-card-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.news-card:hover .news-card-image img {
    transform: scale(1.08);
}

.news-card-badge {
    position: absolute;
    top: 15px;
    left: 15px;
    background: #ED1C24;
    color: #fff;
    padding: 5px 14px;
    border-radius: 20px;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    z-index: 2;
}

.news-card-content {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 20px;
    background: linear-gradient(
        to top,
        rgba(0, 0, 0, 0.85) 0%,
        rgba(0, 0, 0, 0.6) 50%,
        rgba(0, 0, 0, 0) 100%
    );
    color: #fff;
    z-index: 1;
}

.news-card-title {
    font-size: 16px;
    font-weight: 700;
    color: #fff;
    margin: 0 0 8px;
    line-height: 1.3;
    text-shadow: 0 2px 5px rgba(0, 0, 0, 0.4);
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.news-card-large .news-card-title {
    font-size: 24px;
    -webkit-line-clamp: 3;
}

.news-card-date {
    font-size: 12px;
    color: rgba(255, 255, 255, 0.85);
}

.news-card-date i {
    margin-right: 5px;
    color: #ED1C24;
}

/* -------------------------------------------- */
/* 3. LISTE DES ACTUALITÉS (news_list.php)       */
/* -------------------------------------------- */
.news-list-item {
    display: flex;
    gap: 25px;
    margin-bottom: 35px;
    padding-bottom: 35px;
    border-bottom: 1px solid #eee;
}

.news-list-item:last-child {
    border-bottom: none;
    padding-bottom: 0;
}

.news-list-image {
    flex: 0 0 280px;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 5px 20px rgba(0,0,0,0.08);
}

.news-list-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease;
}

.news-list-item:hover .news-list-image img {
    transform: scale(1.05);
}

.news-list-content { flex: 1; }

.news-list-badge {
    display: inline-block;
    background: #ED1C24;
    color: #fff;
    padding: 4px 14px;
    border-radius: 20px;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 12px;
}

.news-list-content h3 {
    font-size: 24px;
    font-weight: 800;
    margin: 0 0 12px;
    line-height: 1.3;
}

.news-list-content h3 a {
    color: #1a1a1a;
    text-decoration: none;
    transition: color 0.3s ease;
}

.news-list-content h3 a:hover { color: #ED1C24; }

.news-list-meta {
    display: flex;
    gap: 20px;
    font-size: 13px;
    color: #888;
    margin-bottom: 15px;
    flex-wrap: wrap;
}

.news-list-meta i { color: #ED1C24; margin-right: 5px; }

.news-list-excerpt {
    font-size: 15px;
    line-height: 1.6;
    color: #666;
    margin-bottom: 18px;
}

.no-news { text-align: center; padding: 60px 20px; }
.no-news h3 { font-size: 28px; color: #ED1C24; margin-bottom: 15px; }
.no-news p { color: #666; margin-bottom: 25px; }

/* -------------------------------------------- */
/* 4. PAGE DÉTAIL ACTUALITÉ                      */
/* -------------------------------------------- */
.news-detail-section {
    padding: 60px 0 80px;
    background: #fff;
}

.breadcrumb-box {
    font-size: 14px;
    color: #666;
    margin-bottom: 30px;
    padding-bottom: 15px;
    border-bottom: 1px solid #eee;
}

.breadcrumb-box a {
    color: #ED1C24;
    text-decoration: none;
}

.breadcrumb-box a:hover { color: #0A2FBF; }

.breadcrumb-box .sep { margin: 0 10px; color: #ccc; }
.breadcrumb-box .current { color: #333; font-weight: 600; }

.news-detail-article {
    max-width: 900px;
    margin: 0 auto;
}

.news-detail-badge {
    display: inline-block;
    background: #ED1C24;
    color: #fff;
    padding: 6px 18px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    margin-bottom: 20px;
}

.news-detail-badge i { margin-right: 6px; }

.news-detail-title {
    font-size: 42px;
    font-weight: 900;
    color: #1a1a1a;
    line-height: 1.2;
    margin: 0 0 20px;
    font-family: 'Arial', sans-serif;
}

.news-detail-meta {
    display: flex;
    gap: 30px;
    font-size: 14px;
    color: #666;
    margin-bottom: 30px;
    flex-wrap: wrap;
}

.news-detail-meta i { color: #ED1C24; margin-right: 6px; }

.news-detail-image {
    width: 100%;
    margin-bottom: 30px;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
}

.news-detail-image img { width: 100%; height: auto; display: block; }

.news-detail-content {
    font-size: 17px;
    line-height: 1.8;
    color: #333;
    margin-bottom: 40px;
}

.news-detail-content p { margin-bottom: 20px; }
.news-detail-content img { max-width: 100%; height: auto; border-radius: 8px; margin: 20px 0; }

.news-detail-content h2,
.news-detail-content h3 {
    color: #ED1C24;
    margin: 30px 0 15px;
    font-weight: 800;
}

.news-detail-content ul,
.news-detail-content ol { margin: 15px 0 20px 25px; }
.news-detail-content li { margin-bottom: 8px; }

.news-detail-share {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 25px 0;
    border-top: 1px solid #eee;
    border-bottom: 1px solid #eee;
    margin-bottom: 50px;
    flex-wrap: wrap;
}

.news-detail-share span { font-weight: 700; color: #333; margin-right: 10px; }

.share-btn {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    text-decoration: none;
    transition: all 0.3s ease;
    font-size: 16px;
}

.share-btn.fb { background: #1877f2; }
.share-btn.tw { background: #1da1f2; }
.share-btn.wa { background: #25d366; }

.share-btn:hover {
    transform: translateY(-3px);
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2);
    color: #fff;
}

.related-news-section h2 {
    font-size: 28px;
    font-weight: 900;
    color: #ED1C24;
    margin-bottom: 25px;
    text-align: center;
}

.related-news-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.related-news-card {
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
    transition: all 0.3s ease;
    background: #fff;
}

.related-news-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.15);
}

.related-news-card img { width: 100%; height: 180px; object-fit: cover; }

.related-news-content { padding: 18px; }

.related-news-content h3 {
    font-size: 16px;
    font-weight: 700;
    color: #1a1a1a;
    margin: 0 0 8px;
    line-height: 1.3;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.related-news-content .date { font-size: 13px; color: #666; }
.related-news-content .date i { color: #ED1C24; margin-right: 5px; }

/* -------------------------------------------- */
/* 5. CORRECTION LOGO OVERLAY - ABOUT           */
/* -------------------------------------------- */
.about-section-two .about-image-wrapper {
    position: relative;
}

.about-section-two .about-logo-overlay {
    position: absolute !important;
    bottom: -30px !important;
    right: -30px !important;
    left: auto !important;
    top: auto !important;
    width: 100px !important;
    height: 100px !important;
    min-width: 0 !important;
    min-height: 0 !important;
    border-radius: 50% !important;
    background: #fff !important;
    padding: 10px !important;
    box-shadow: 0 5px 20px rgba(0,0,0,0.15) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    z-index: 5 !important;
    overflow: hidden !important;
}

.about-section-two .about-logo-overlay img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    border-radius: 50% !important;
}

/* -------------------------------------------- */
/* 6. MASQUER COLONNES FOOTER SUR MOBILE        */
/* -------------------------------------------- */
@media (max-width: 767px) {
    .hide-on-mobile {
        display: none !important;
    }
}

/* ============================================ */
/* 7. RESPONSIVE GLOBAL                         */
/* ============================================ */

@media (max-width: 991px) {
    .une-slide-full { height: 520px; }
    .une-content-full { padding: 40px; }
    .une-card-full .une-headline { font-size: 34px; }
    .une-card-full .une-excerpt { font-size: 16px; }
    
    .a-la-une-section .une-title { font-size: 48px; }
    .latest-news-grid {
        grid-template-columns: repeat(2, 1fr);
        grid-template-rows: auto;
    }
    .news-card-large {
        grid-column: span 2;
        grid-row: span 1;
        min-height: 280px;
    }
    .news-card { min-height: 200px; }
    .latest-news-title { font-size: 28px; }
}

@media (max-width: 767px) {
    .une-slide-full { height: 450px; }
    .une-content-full { padding: 30px 20px; }
    .une-card-full .une-headline { font-size: 24px; }
    .une-card-full .une-excerpt { font-size: 14px; }
    .une-card-full .une-btn { padding: 12px 30px; font-size: 14px; }
    .une-carousel-fullwidth .owl-nav .owl-prev,
    .une-carousel-fullwidth .owl-nav .owl-next {
        width: 45px; height: 45px; line-height: 45px; font-size: 18px;
    }
    .une-carousel-fullwidth .owl-nav .owl-prev { left: 10px; }
    .une-carousel-fullwidth .owl-nav .owl-next { right: 10px; }
    
    .a-la-une-section { padding: 50px 0 60px; }
    .a-la-une-section .une-title { font-size: 36px; }
    .latest-news-header .header-icon { width: 40px; height: 40px; font-size: 18px; }
    .latest-news-title { font-size: 22px; }
    .latest-news-grid { grid-template-columns: 1fr; }
    .news-card-large { grid-column: span 1; }
    .news-card { min-height: 180px; }

    .news-detail-title { font-size: 26px; }
    .related-news-grid { grid-template-columns: 1fr; }

    .news-list-item { flex-direction: column; }
    .news-list-image { flex: 0 0 auto; width: 100%; max-height: 220px; }
    .news-list-content h3 { font-size: 20px; }

    .about-section-two .about-logo-overlay {
        width: 70px !important;
        height: 70px !important;
        bottom: -20px !important;
        right: -20px !important;
        padding: 6px !important;
    }
}
/* ============================================ */
/* FULL-WIDTH CAROUSEL - EMASI 3-COLOR BACKGROUND */
/* 🔵 Blue #0A2FBF → 🔴 Red #ED1C24 → ⚪ White    */
/* ============================================ */

.une-card-full .une-bg-emasi {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(
        135deg,
        #0A2FBF 0%,
        #0A2FBF 30%,
        #ED1C24 70%,
        #ED1C24 100%
    );
    opacity: 0.75;
    z-index: 2;
}

.une-card-full .une-image-layer {
    opacity: 0.35;
}

.une-card-full .une-image-layer:after {
    background: linear-gradient(
        to bottom,
        rgba(10, 47, 191, 0.4) 0%,
        rgba(0, 0, 0, 0.5) 50%,
        rgba(237, 28, 36, 0.6) 100%
    ) !important;
}

.une-content-full {
    z-index: 3;
}

/* White titles on carousel */
.une-card-full .une-headline,
.une-card-full .une-headline a {
    color: #FFFFFF !important;
    text-shadow: 0 3px 15px rgba(0, 0, 0, 0.7) !important;
}

.une-card-full .une-headline a:hover {
    color: #FFFFFF !important;
    text-decoration: underline;
}

.une-card-full .une-excerpt {
    color: #FFFFFF !important;
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.6) !important;
}

/* Badge - white bg + red text */
.une-card-full .une-badge {
    background: #FFFFFF !important;
    color: #ED1C24 !important;
    font-weight: 800 !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);
}

.une-card-full .une-badge i {
    color: #ED1C24 !important;
}

/* Button - white bg + blue text */
.une-card-full .une-btn {
    background: #FFFFFF !important;
    color: #0A2FBF !important;
    border: 2px solid #FFFFFF !important;
    box-shadow: 0 5px 25px rgba(255, 255, 255, 0.4);
}

.une-card-full .une-btn:hover {
    background: #ED1C24 !important;
    color: #FFFFFF !important;
    border-color: #ED1C24 !important;
    transform: translateY(-3px);
    box-shadow: 0 8px 30px rgba(237, 28, 36, 0.6);
}

/* Arrows */
.une-carousel-fullwidth .owl-nav .owl-prev,
.une-carousel-fullwidth .owl-nav .owl-next {
    background: #FFFFFF !important;
    color: #ED1C24 !important;
    border: 2px solid #FFFFFF !important;
}

.une-carousel-fullwidth .owl-nav .owl-prev:hover,
.une-carousel-fullwidth .owl-nav .owl-next:hover {
    background: #ED1C24 !important;
    color: #FFFFFF !important;
    border-color: #ED1C24 !important;
    transform: scale(1.1);
}

@media (max-width: 767px) {
    .une-card-full .une-headline {
        font-size: 22px !important;
    }
    .une-card-full .une-excerpt {
        font-size: 13px !important;
    }
}
/* ============================================ */
/* SECTION "HEADLINES" - TITRES EN ROUGE         */
/* (Ne pas toucher - reste rouge comme avant)    */
/* ============================================ */

.a-la-une-section .une-title {
    color: #ED1C24 !important;   /* Rouge EMASI */
}

.a-la-une-section .une-line {
    background: #ED1C24 !important;
}

.a-la-une-section .une-subtitle {
    color: #666 !important;
}

.latest-news-title {
    color: #ED1C24 !important;   /* Rouge EMASI */
}

.latest-news-header .header-icon {
    background: #ED1C24 !important;   /* Rouge EMASI */
    color: #fff !important;
}

/* ============================================ */
/* GRAND CARROUSEL PLEIN ÉCRAN - 3 COULEURS      */
/* Image NETTE + Dégradé léger par-dessus        */
/* ============================================ */

/* Image de fond - NETTE, pas d'opacité */
.une-card-full .une-image-layer {
    opacity: 1 !important;   /* ✅ Image nette à 100% */
    z-index: 1;
}

/* Dégradé bleu → rouge en OVERLAY léger */
.une-card-full .une-bg-emasi {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(
        135deg,
        rgba(10, 47, 191, 0.65) 0%,
        rgba(10, 47, 191, 0.45) 40%,
        rgba(237, 28, 36, 0.55) 75%,
        rgba(237, 28, 36, 0.75) 100%
    );
    z-index: 2;   /* Au-dessus de l'image */
    pointer-events: none;
}

/* Dégradé sombre pour la lisibilité du texte */
.une-card-full .une-image-layer:after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(
        to bottom,
        rgba(0, 0, 0, 0.15) 0%,
        rgba(0, 0, 0, 0.35) 50%,
        rgba(0, 0, 0, 0.75) 100%
    );
    z-index: 2;
}

/* Contenu au-dessus de tout */
.une-content-full {
    z-index: 3;
}
/* ============================================ */
/* SECTION "HEADLINES" - FOND BLANC NEUTRE       */
/* (au lieu du rose pâle)                        */
/* ============================================ */

.a-la-une-section {
    position: relative;
    background: #FFFFFF !important;      /* ✅ Fond blanc EMASI */
    padding: 70px 0 90px;
    overflow: hidden;
    z-index: 1;
    border-top: 4px solid #0A2FBF;        /* Ligne bleue EMASI en haut */
    border-bottom: 4px solid #ED1C24;     /* Ligne rouge EMASI en bas */
}

/* Forme décorative en haut à gauche - BLEU EMASI */
.a-la-une-section .decorative-shape {
    position: absolute;
    left: -150px;
    top: -150px;
    width: 400px;
    height: 400px;
    background: rgba(10, 47, 191, 0.06) !important;   /* Bleu EMASI */
    border-radius: 50%;
    z-index: 0;
}

/* Titre HEADLINES - reste ROUGE */
.a-la-une-section .une-title {
    color: #ED1C24 !important;
}

.a-la-une-section .une-line {
    background: #ED1C24 !important;
}

.a-la-une-section .une-subtitle {
    color: #666 !important;
}

/* Titre "Latest News" - reste ROUGE */
.latest-news-title {
    color: #ED1C24 !important;
}

.latest-news-header .header-icon {
    background: #ED1C24 !important;
    color: #fff !important;
}

/* ============================================ */
/* HEADER STICKY - CHANGEMENT DE FORME AU SCROLL */
/* ============================================ */

/* Header sticky par défaut - caché */
.sticky-header {
    position: fixed;
    visibility: hidden;
    opacity: 0;
    left: 0;
    top: 0;
    width: 100%;
    padding: 0;
    z-index: -1;
    background: #FFFFFF !important;
    border-bottom: 3px solid #ED1C24 !important;    /* Ligne rouge EMASI */
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    transition: all 0.3s ease;
}

/* Quand on scrolle → header sticky visible */
.fixed-header .sticky-header {
    opacity: 1;
    visibility: visible;
    z-index: 99901;
    /* Fond blanc avec légère ombre bleue */
    background: #FFFFFF !important;
    border-bottom: 3px solid #0A2FBF !important;    /* Ligne bleue EMASI */
    box-shadow: 0 4px 25px rgba(10, 47, 191, 0.15);
}

/* Logo du header sticky */
.fixed-header .sticky-header .logo {
    padding: 12px 0;
}

.fixed-header .sticky-header .logo img {
    max-height: 45px;
    width: auto;
    transition: all 0.3s ease;
}

/* Menu du header sticky - texte BLEU EMASI */
.fixed-header .sticky-header .main-menu .navigation > li > a {
    color: #0A2FBF !important;
    font-weight: 700 !important;
    padding: 20px 0 !important;
    transition: all 0.3s ease;
}

/* Menu sticky - hover/actif en ROUGE */
.fixed-header .sticky-header .main-menu .navigation > li:hover > a,
.fixed-header .sticky-header .main-menu .navigation > li.current > a {
    color: #ED1C24 !important;
}

/* Soulignement au hover du menu sticky - ROUGE */
.fixed-header .sticky-header .main-menu .navigation > li:before {
    border-bottom-color: #ED1C24 !important;
}

/* Animation d'apparition du header sticky */
.fixed-header .sticky-header {
    animation: slideDownHeader 0.4s ease forwards;
}

@keyframes slideDownHeader {
    from {
        transform: translateY(-100%);
        opacity: 0;
    }
    to {
        transform: translateY(0);
        opacity: 1;
    }
}

/* ============================================ */
/* RESPONSIVE                                    */
/* ============================================ */

@media (max-width: 991px) {
    .a-la-une-section {
        padding: 50px 0 60px;
    }
    
    .fixed-header .sticky-header .main-menu .navigation > li > a {
        color: #0A2FBF !important;
        font-size: 14px;
    }
}

@media (max-width: 767px) {
    .a-la-une-section {
        padding: 40px 0 50px;
    }
    
    .a-la-une-section .une-title {
        font-size: 32px !important;
    }
    
    .latest-news-title {
        font-size: 22px !important;
    }
    
    /* Header sticky plus compact sur mobile */
    .fixed-header .sticky-header .logo img {
        max-height: 35px;
    }
    
    .fixed-header .sticky-header .main-menu .navigation > li > a {
        padding: 15px 0 !important;
        font-size: 13px;
    }
}
/* ============================================ */
/* SUPPRIMER LES LIGNES DE SÉPARATION COLORÉES   */
/* ============================================ */

/* Section HEADLINES - retirer les bordures haut/bas */
.a-la-une-section {
    border-top: none !important;
    border-bottom: none !important;
}

/* Section HEADLINES - retirer la bordure de la ligne décorative sous le titre */
.a-la-une-section .une-line {
    border: none !important;
    outline: none !important;
}

/* Retirer toute bordure indésirable sur la section carrousel */
.une-carousel-fullwidth {
    border: none !important;
}

.une-carousel-fullwidth .une-card-full {
    border: none !important;
}

/* Retirer les bordures de la bannière HERO */
.banner-section,
.banner-section.banner-two {
    border: none !important;
}

.banner-carousel .slide-item {
    border: none !important;
}

/* Retirer tout soulignement/bordure sous les titres */
.une-title,
.latest-news-title,
.sec-title h2,
.sec-title .upper-text {
    border-bottom: none !important;
}

/* Retirer la petite ligne rouge sous "HEADLINES" (la ligne décorative) */
.a-la-une-section .une-line {
    display: block !important;
    width: 80px !important;
    height: 5px !important;
    background: #ED1C24 !important;
    margin: 0 auto 20px !important;
    border-radius: 3px !important;
    border: none !important;
}

/* ============================================ */
/* BANNIÈRE HERO - TEXTES EN BLANC               */
/* ============================================ */

/* Titre H1 de la bannière hero - EN BLANC */
.banner-section .banner-carousel h1,
.banner-section .banner-carousel h1 strong,
.banner-two .banner-carousel h1,
.banner-two .banner-carousel h1 strong {
    color: #FFFFFF !important;
    text-shadow: 0 2px 15px rgba(0, 0, 0, 0.6) !important;
}

/* Sous-titre de la bannière hero - EN BLANC */
.banner-section .banner-carousel .sub-title,
.banner-two .banner-carousel .sub-title {
    color: #FFFFFF !important;
    text-shadow: 0 1px 8px rgba(0, 0, 0, 0.5) !important;
}

/* Texte descriptif de la bannière hero - EN BLANC */
.banner-section .banner-carousel .text,
.banner-two .banner-carousel .text {
    color: #FFFFFF !important;
    text-shadow: 0 1px 8px rgba(0, 0, 0, 0.5) !important;
}

/* Bouton "Call us at" - EN BLANC */
.banner-section .banner-carousel .call-btn .btn-title,
.banner-two .banner-carousel .call-btn .btn-title {
    color: #FFFFFF !important;
}

.banner-section .banner-carousel .call-btn:hover .btn-title,
.banner-two .banner-carousel .call-btn:hover .btn-title {
    color: #ED1C24 !important;
}

/* Sous-titre décoratif de la bannière hero (la petite ligne avant le texte) */
.banner-section .banner-carousel .sub-title:before,
.banner-two .banner-carousel .sub-title:before {
    border-bottom-color: #FFFFFF !important;
}
/* ============================================ */
/* HEADER PRINCIPAL STICKY - TOUJOURS VISIBLE    */
/* Le header reste en haut, identique à lui-même  */
/* ============================================ */

/* 1. Forcer le header principal en position sticky */
.main-header,
.main-header.header-style-two {
    position: sticky !important;
    top: 0 !important;
    z-index: 9999 !important;
    width: 100% !important;
    background: #FFFFFF !important;
    box-shadow: 0 2px 15px rgba(0, 0, 0, 0.08) !important;
}

/* 2. Le header-upper (blanc avec logo + infos) reste toujours visible */
.main-header .header-upper {
    background: #FFFFFF !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* 3. Le header-lower (barre bleue avec menu) reste toujours visible */
.main-header .header-lower {
    background: #0A2FBF !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* 4. Cacher le sticky header dupliqué (celui qui cause les soucis) */
.sticky-header,
.main-header .sticky-header {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
    position: absolute !important;
}

/* 5. Supprimer tout effet visuel au scroll */
.main-header.fixed-header,
.main-header.fixed-header .header-upper,
.main-header.fixed-header .header-lower {
    transform: none !important;
    transition: none !important;
    animation: none !important;
}

/* 6. Éviter le décalage de contenu */
.page-wrapper {
    overflow: visible !important;
}

/* ============================================ */
/* RESPONSIVE                                    */
/* ============================================ */

@media (max-width: 767px) {
    .banner-section .banner-carousel h1,
    .banner-two .banner-carousel h1 {
        font-size: 26px !important;
    }
    
    .banner-section .banner-carousel .text,
    .banner-two .banner-carousel .text {
        font-size: 15px !important;
    }
}
/* ============================================ */
/* SECTION TEAM - FOND 3 COULEURS EMASI          */
/* 🔵 Bleu #0A2FBF + 🔴 Rouge #ED1C24 + ⚪ Blanc */
/* ============================================ */

/* Section principale - fond blanc propre */
.team-section {
    position: relative;
    background: #FFFFFF !important;    /* ✅ Blanc EMASI */
    padding: 100px 0 80px;
    overflow: hidden;
    z-index: 1;
}

/* ✅ SUPPRIMER le motif rond pâle en arrière-plan */
.team-section .pattern-layer {
    display: none !important;
    background: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
}

/* ============================================ */
/* DÉCORATION : 2 cercles subtils bleu + rouge   */
/* ============================================ */

/* Cercle bleu en haut à gauche */
.team-section::before {
    content: '';
    position: absolute;
    left: -200px;
    top: -200px;
    width: 500px;
    height: 500px;
    background: radial-gradient(
        circle,
        rgba(10, 47, 191, 0.10) 0%,
        rgba(10, 47, 191, 0.04) 40%,
        rgba(10, 47, 191, 0) 70%
    );
    border-radius: 50%;
    z-index: 0;
    pointer-events: none;
}

/* Cercle rouge en bas à droite */
.team-section::after {
    content: '';
    position: absolute;
    right: -200px;
    bottom: -200px;
    width: 500px;
    height: 500px;
    background: radial-gradient(
        circle,
        rgba(237, 28, 36, 0.10) 0%,
        rgba(237, 28, 36, 0.04) 40%,
        rgba(237, 28, 36, 0) 70%
    );
    border-radius: 50%;
    z-index: 0;
    pointer-events: none;
}

/* Conteneur au-dessus des cercles */
.team-section .auto-container {
    position: relative;
    z-index: 2;
}

/* ============================================ */
/* TITRES DE LA SECTION TEAM                     */
/* ============================================ */

/* "Notre Équipe Dévouée" (upper-text) - ROUGE EMASI */
.team-section .sec-title .upper-text {
    color: #ED1C24 !important;
    font-weight: 700 !important;
    text-transform: uppercase;
    letter-spacing: 2px;
    display: inline-block;
    position: relative;
    padding-bottom: 5px;
    margin-bottom: 15px;
}

.team-section .sec-title .upper-text:before {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    border-bottom: 2px solid #ED1C24 !important;
}

/* "Experts EMSI Burundi" - ROUGE EMASI */
.team-section .sec-title h2 {
    color: #ED1C24 !important;
    font-weight: 900;
    font-size: 44px;
    margin-bottom: 20px;
}

.team-section .sec-title h2 strong {
    color: #ED1C24 !important;
    font-weight: 900;
}

/* Texte descriptif - BLEU EMASI */
.team-section .sec-title .text,
.team-section .sec-title .lower-text {
    color: #0A2FBF !important;
    font-size: 16px;
    font-weight: 500;
    max-width: 700px;
    margin: 0 auto;
}

/* ============================================ */
/* CARTES MEMBRES DE L'ÉQUIPE                   */
/* ============================================ */

.team-card-item {
    border: none !important;
    border-radius: 12px !important;
    overflow: hidden;
    background: #FFFFFF;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.08) !important;
    transition: all 0.3s ease;
    border-top: 3px solid #0A2FBF;    /* ✅ Ligne bleue EMASI */
}

.team-card-item:hover {
    transform: translateY(-6px);
    box-shadow: 0 15px 40px rgba(237, 28, 36, 0.15) !important;
    border-top-color: #ED1C24 !important;    /* ✅ Rouge au hover */
}

.team-card-name {
    color: #0A2FBF !important;    /* Bleu EMASI */
    font-weight: 800;
    font-size: 17px;
}

.team-card-role {
    color: #ED1C24 !important;    /* Rouge EMASI */
    font-weight: 600;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.team-card-img {
    width: 100%;
    height: 250px;
    object-fit: cover;
}

.team-card-placeholder {
    width: 100%;
    height: 250px;
    background: linear-gradient(
        135deg,
        #0A2FBF 0%,
        #ED1C24 100%
    ) !important;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #FFFFFF !important;
}

.team-card-placeholder i {
    color: #FFFFFF !important;
    font-size: 60px;
}

/* ============================================ */
/* BOUTON "VOIR TOUTE L'ÉQUIPE"                  */
/* ============================================ */

.team-section .view-all a {
    display: inline-block;
    background: #0A2FBF !important;    /* Bleu EMASI */
    color: #FFFFFF !important;
    padding: 14px 40px;
    border-radius: 30px;
    font-weight: 700;
    font-size: 15px;
    text-transform: uppercase;
    letter-spacing: 1px;
    text-decoration: none;
    transition: all 0.3s ease;
    box-shadow: 0 5px 20px rgba(10, 47, 191, 0.3);
}

.team-section .view-all a:hover {
    background: #ED1C24 !important;    /* Rouge EMASI */
    transform: translateY(-3px);
    box-shadow: 0 8px 25px rgba(237, 28, 36, 0.4);
}

/* ============================================ */
/* RESPONSIVE                                    */
/* ============================================ */

@media (max-width: 767px) {
    .team-section {
        padding: 60px 0 50px;
    }
    
    .team-section .sec-title h2 {
        font-size: 28px !important;
    }
    
    .team-section .sec-title .upper-text {
        font-size: 12px !important;
    }
    
    .team-section::before,
    .team-section::after {
        width: 300px;
        height: 300px;
    }
}
/* ============================================ */
/* PETITS TITRES (upper-text) EN BLEU EMASI      */
/* 🔵 #0A2FBF - Bleu du logo EMASI               */
/* ============================================ */

/* 1. "OUR DEDICATED TEAM" - Section Team */
.team-section .sec-title .upper-text {
    color: #0A2FBF !important;      /* ✅ Bleu EMASI */
    font-weight: 700 !important;
    text-transform: uppercase;
    letter-spacing: 2px;
    display: inline-block;
    position: relative;
    padding-bottom: 5px;
    margin-bottom: 15px;
}

/* Soulignement en bleu EMASI (au lieu du rouge) */
.team-section .sec-title .upper-text:before {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    border-bottom: 2px solid #0A2FBF !important;   /* ✅ Bleu EMASI */
}

/* 2. "What Our Clients Say" - Section Testimonials */
.testimonials-two .sec-title .upper-text {
    color: #0A2FBF !important;      /* ✅ Bleu EMASI */
    font-weight: 700 !important;
    text-transform: uppercase;
    letter-spacing: 2px;
    display: inline-block;
    position: relative;
    padding-bottom: 5px;
    margin-bottom: 15px;
}

/* Soulignement en bleu EMASI */
.testimonials-two .sec-title .upper-text:before {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    border-bottom: 2px solid #0A2FBF !important;   /* ✅ Bleu EMASI */
}

/* ============================================ */
/* VARIANTE : Si vous voulez changer TOUS les     */
/* upper-text du site en bleu EMASI (global)     */
/* ============================================ */
.sec-title .upper-text {
    color: #0A2FBF !important;
}

.sec-title .upper-text:before {
    border-bottom-color: #0A2FBF !important;
}

/* ============================================ */
/* MAIS ON GARDE LE ROUGE POUR LES AUTRES SECTIONS */
/* (Services, About, News, etc.)                  */
/* ============================================ */

/* Section Services - reste rouge */
.services-section-two .sec-title .upper-text {
    color: #ED1C24 !important;
}

.services-section-two .sec-title .upper-text:before {
    border-bottom-color: #ED1C24 !important;
}

/* Section About - reste rouge */
.about-section-two .sec-title .upper-text {
    color: #ED1C24 !important;
}

.about-section-two .sec-title .upper-text:before {
    border-bottom-color: #ED1C24 !important;
}

/* Section Contact - reste blanc (car fond bleu) */
.contact-section .sec-title .upper-text {
    color: #FFFFFF !important;
}

.contact-section .sec-title .upper-text:before {
    border-bottom-color: #FFFFFF !important;
}
/* ============================================ */
/* SECTION CONTACT - TEXTE EN BLANC              */
/* (car le fond est bleu EMASI)                   */
/* ============================================ */

/* Titre "Get In Touch With Us Today!" - BLANC */
.contact-section .sec-title .upper-text {
    color: #FFFFFF !important;
    border-bottom-color: #FFFFFF !important;
    font-weight: 700 !important;
    text-transform: uppercase;
    letter-spacing: 2px;
}

.contact-section .sec-title .upper-text:before {
    border-bottom-color: #FFFFFF !important;
}

/* Titre "Need Our Services? Book Your Appointment" - BLANC */
.contact-section .sec-title h2,
.contact-section .sec-title h2 strong {
    color: #FFFFFF !important;
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}

/* Texte descriptif - BLANC */
.contact-section .sec-title .lower-text,
.contact-section .sec-title .text {
    color: rgba(255, 255, 255, 0.95) !important;
}

/* "CALL US FOR ANY QUESTIONS" - BLANC */
.contact-section .info .phone-title {
    color: #FFFFFF !important;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.5px;
}

/* Numéro de téléphone "+257 79 842 414" - BLANC */
.contact-section .info .phone a,
.contact-section .info .phone a strong,
.contact-section .info .phone a span {
    color: #FFFFFF !important;
    transition: all 0.3s ease;
}

.contact-section .info .phone a:hover,
.contact-section .info .phone a:hover strong {
    color: #ED1C24 !important;   /* Rouge au hover */
    text-decoration: underline;
}

/* Icône téléphone - BLANC */
.contact-section .info .phone .fas,
.contact-section .info .phone .fa {
    color: #FFFFFF !important;
}

/* Email "info@emsi.bi" - BLANC */
.contact-section .info .email a,
.contact-section .info .email a strong,
.contact-section .info .email a span {
    color: #FFFFFF !important;
    transition: all 0.3s ease;
}

.contact-section .info .email a:hover,
.contact-section .info .email a:hover strong {
    color: #ED1C24 !important;   /* Rouge au hover */
    text-decoration: underline;
}

/* Icône email - BLANC */
.contact-section .info .email .fas,
.contact-section .info .email .fa {
    color: #FFFFFF !important;
}

/* ============================================ */
/* BOUTON DU FORMULAIRE - BLANC + TEXTE BLEU     */
/* ============================================ */

.contact-section .theme-btn.btn-style-one .btn-title {
    background: #FFFFFF !important;
    color: #0A2FBF !important;
    border: 2px solid #FFFFFF !important;
    font-weight: 700;
}

.contact-section .theme-btn.btn-style-one:hover .btn-title {
    background: #ED1C24 !important;
    color: #FFFFFF !important;
    border-color: #ED1C24 !important;
    transform: translateY(-2px);
    box-shadow: 0 5px 20px rgba(237, 28, 36, 0.4);
}

/* ============================================ */
/* CHAMPS DU FORMULAIRE - FOND BLANC              */
/* ============================================ */

.contact-section .default-form .form-group input,
.contact-section .default-form .form-group textarea,
.contact-section .default-form .form-group select {
    background: #FFFFFF !important;
    color: #333333 !important;
    border: 1px solid rgba(255, 255, 255, 0.3) !important;
}

.contact-section .default-form .form-group input::placeholder,
.contact-section .default-form .form-group textarea::placeholder {
    color: #999999 !important;
}

.contact-section .default-form .form-group input:focus,
.contact-section .default-form .form-group textarea:focus {
    border-color: #FFFFFF !important;
    box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.2) !important;
}

/* ============================================ */
/* RESPONSIVE                                    */
/* ============================================ */

@media (max-width: 767px) {
    .contact-section .sec-title h2 {
        font-size: 28px !important;
    }
    
    .contact-section .info .phone {
        font-size: 22px !important;
    }
    
    .contact-section .info .email {
        font-size: 15px !important;
    }
}
/* ============================================ */
/* CARROUSEL - IMAGE NETTE SANS VOILE COLORÉ     */
/* ============================================ */

/* 1. Supprimer complètement le voile dégradé EMASI */
.une-card-full .une-bg-emasi {
    display: none !important;
    background: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
}

/* 2. Image de fond bien NETTE à 100% */
.une-card-full .une-image-layer {
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    width: 100% !important;
    height: 100% !important;
    opacity: 1 !important;
    z-index: 1 !important;
}

.une-card-full .une-bg {
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    opacity: 1 !important;
    filter: none !important;
}

/* 3. Petit dégradé noir en BAS uniquement pour lisibilité du texte */
.une-card-full .une-image-layer:after {
    content: '' !important;
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background: linear-gradient(
        to bottom,
        rgba(0, 0, 0, 0) 0%,
        rgba(0, 0, 0, 0) 40%,
        rgba(0, 0, 0, 0.5) 75%,
        rgba(0, 0, 0, 0.75) 100%
    ) !important;
    z-index: 2 !important;
    pointer-events: none;
}

/* 4. Contenu au-dessus de l'image */
.une-content-full {
    z-index: 3 !important;
    position: relative;
}

/* 5. Titres en blanc avec ombre pour rester lisibles */
.une-card-full .une-headline,
.une-card-full .une-headline a {
    color: #FFFFFF !important;
    text-shadow: 0 3px 15px rgba(0, 0, 0, 0.8) !important;
}

/* 6. Extrait en blanc */
.une-card-full .une-excerpt {
    color: #FFFFFF !important;
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.7) !important;
}

/* 7. Badge, bouton, flèches - inchangés (déjà propres) */
.une-card-full .une-badge {
    background: #FFFFFF !important;
    color: #ED1C24 !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.4);
}

.une-card-full .une-btn {
    background: #FFFFFF !important;
    color: #0A2FBF !important;
    border: 2px solid #FFFFFF !important;
}

.une-card-full .une-btn:hover {
    background: #ED1C24 !important;
    color: #FFFFFF !important;
    border-color: #ED1C24 !important;
}

/* ============================================ */
/* WELCOME SECTION - EMSI BURUNDI                */
/* ============================================ */
.emasi-welcome-section {
    position: relative;
    background: #FFFFFF;
    padding: 70px 0;
    overflow: hidden;
}

.emasi-welcome-section .sec-title h2 {
    color: #0A2FBF !important;
    font-size: 42px;
    font-weight: 900;
    margin-bottom: 40px;
    text-align: center;
}

.emasi-welcome-section .sec-title h2 strong {
    color: #ED1C24 !important;
    font-weight: 900;
}

.emasi-welcome-section .welcome-text p {
    color: #4a5568;
    font-size: 16px;
    line-height: 1.8;
    text-align: justify;
}

.emasi-welcome-section .welcome-logo {
    padding: 20px;
}

.emasi-welcome-section .welcome-logo img {
    max-width: 220px;
    height: auto;
    display: block;
    margin: 0 auto;
}

.emasi-welcome-section .welcome-location {
    color: #0A2FBF;
    font-weight: 700;
    margin-top: 15px;
    font-size: 15px;
    text-transform: uppercase;
    letter-spacing: 1px;
}

/* ============================================ */
/* VIDEO PRESENTATION                             */
/* ============================================ */
.emasi-video-section {
    background: #f7faff;
    padding: 70px 0 90px;
}

.emasi-video-section .sec-title h2 {
    color: #0A2FBF !important;
    font-size: 40px;
    font-weight: 900;
    margin-bottom: 40px;
    text-align: center;
}

.emasi-video-section .sec-title h2 strong {
    color: #ED1C24 !important;
}

.emasi-video-wrapper {
    position: relative;
    max-width: 900px;
    margin: 0 auto;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    border-radius: 12px;
    box-shadow: 0 15px 40px rgba(10, 47, 191, 0.15);
    background: #000;
}

.emasi-video-wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

/* ============================================ */
/* SPECIAL SERVICES                               */
/* ============================================ */
.special-services-section {
    background: #FFFFFF;
    padding: 80px 0 60px;
}

.special-services-section .sec-title h2 {
    color: #ED1C24 !important;
    font-size: 42px;
    font-weight: 900;
    margin-bottom: 50px;
    text-align: center;
}

.special-services-section .sec-title h2 strong {
    color: #ED1C24 !important;
}

.special-service-block {
    margin-bottom: 40px;
}

.special-service-block .inner-box {
    text-align: center;
    padding: 20px 15px;
    transition: all 0.3s ease;
}

.special-service-block .icon-box {
    width: 80px;
    height: 80px;
    margin: 0 auto 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 42px;
    color: #0A2FBF;
    background: rgba(10, 47, 191, 0.08);
    border-radius: 15px;
    transition: all 0.3s ease;
}

.special-service-block .inner-box:hover .icon-box {
    background: #0A2FBF;
    color: #FFFFFF;
    transform: translateY(-5px);
}

.special-service-block h3 {
    font-size: 18px;
    margin-bottom: 15px;
}

.special-service-block h3 a {
    color: #ED1C24 !important;
    text-decoration: underline;
    font-weight: 700;
    transition: color 0.3s ease;
}

.special-service-block h3 a:hover {
    color: #0A2FBF !important;
}

.special-service-block p {
    color: #4a5568;
    font-size: 14px;
    line-height: 1.7;
    margin: 0;
}

/* ============================================ */
/* BUY VEHICLES SECTION                           */
/* ============================================ */
.emasi-vehicles-section {
    background: #f7faff;
    padding: 70px 0 90px;
}

.emasi-vehicles-section .sec-title h2 {
    color: #0A2FBF !important;
    font-size: 40px;
    font-weight: 900;
    margin-bottom: 40px;
    text-align: center;
}

.emasi-vehicles-section .sec-title h2 strong {
    color: #ED1C24 !important;
}

.emasi-vehicles-wrapper {
    position: relative;
    max-width: 900px;
    margin: 0 auto;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    border-radius: 12px;
    box-shadow: 0 15px 40px rgba(237, 28, 36, 0.15);
    background: #000;
}

.emasi-vehicles-wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

/* ============================================ */
/* RESPONSIVE                                     */
/* ============================================ */
@media (max-width: 991px) {
    .emasi-welcome-section .sec-title h2,
    .emasi-video-section .sec-title h2,
    .special-services-section .sec-title h2,
    .emasi-vehicles-section .sec-title h2 {
        font-size: 30px !important;
    }
    
    .emasi-welcome-section .welcome-logo {
        margin-top: 30px;
    }
}

@media (max-width: 767px) {
    .emasi-welcome-section,
    .emasi-video-section,
    .special-services-section,
    .emasi-vehicles-section {
        padding: 50px 0;
    }
    
    .emasi-welcome-section .sec-title h2,
    .emasi-video-section .sec-title h2,
    .special-services-section .sec-title h2,
    .emasi-vehicles-section .sec-title h2 {
        font-size: 24px !important;
    }
    
    .special-service-block .icon-box {
        width: 60px;
        height: 60px;
        font-size: 30px;
    }
}
/* ============================================ */
/* VIDÉOS PLEINE LARGEUR - SANS VIDE LATÉRAL     */
/* ============================================ */

/* 1. Conteneur général - pleine largeur */
.emasi-video-section,
.emasi-vehicles-section {
    padding: 70px 0 90px;
    width: 100%;
    overflow: hidden;
}

/* Conteneur interne SANS max-width */
.emasi-video-section .auto-container,
.emasi-vehicles-section .auto-container {
    max-width: 100% !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 auto;
}

/* Le titre garde un conteneur centré */
.emasi-video-section .sec-title,
.emasi-vehicles-section .sec-title {
    max-width: 900px;
    margin: 0 auto 40px;
    padding: 0 15px;
}

/* 2. Wrapper vidéo - pleine largeur */
.emasi-video-wrapper,
.emasi-vehicles-wrapper {
    position: relative;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding-bottom: 56.25% !important;   /* Ratio 16:9 plein écran */
    height: 0;
    overflow: hidden;
    border-radius: 0 !important;         /* Supprimer les coins arrondis */
    box-shadow: none !important;          /* Pas d'ombre pour épouser les bords */
    background: #000;
}

/* 3. Iframe - pleine largeur */
.emasi-video-wrapper iframe,
.emasi-vehicles-wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    border: 0;
    display: block;
}

/* 4. Petite bordure haut/bas pour l'intégration EMASI */
.emasi-video-section {
    border-top: 3px solid #0A2FBF;
    border-bottom: 3px solid #ED1C24;
}

.emasi-vehicles-section {
    border-top: 3px solid #ED1C24;
    border-bottom: 3px solid #0A2FBF;
}

/* ============================================ */
/* RESPONSIVE - Pleine largeur aussi sur mobile  */
/* ============================================ */
@media (max-width: 991px) {
    .emasi-video-section,
    .emasi-vehicles-section {
        padding: 50px 0 60px;
    }
    
    .emasi-video-section .sec-title,
    .emasi-vehicles-section .sec-title {
        margin-bottom: 30px;
    }
}

@media (max-width: 767px) {
    .emasi-video-section,
    .emasi-vehicles-section {
        padding: 40px 0 50px;
    }
    
    /* Sur mobile, garder un ratio un peu moins large */
    .emasi-video-wrapper,
    .emasi-vehicles-wrapper {
        padding-bottom: 75% !important;   /* Ratio 4:3 sur mobile */
    }
}
/* ============================================ */
/* SUPPRIMER LES BORDURES DES SECTIONS VIDÉO     */
/* ============================================ */

.emasi-video-section,
.emasi-vehicles-section {
    border-top: none !important;
    border-bottom: none !important;
    border-left: none !important;
    border-right: none !important;
}

/* Supprimer aussi toute bordure via ::before et ::after */
.emasi-video-section::before,
.emasi-video-section::after,
.emasi-vehicles-section::before,
.emasi-vehicles-section::after {
    display: none !important;
    content: none !important;
    border: none !important;
}
/* ============================================ */
/* SERVICE DETAIL - STYLE EMASI                  */
/* ============================================ */

.service-details {
    position: relative;
}

.service-details .image-box {
    width: 100%;
    margin-bottom: 30px;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
}

.service-details .image-box img {
    width: 100%;
    height: auto;
    display: block;
}

.service-details .emasi-blue-title {
    color: #0A2FBF !important;
    font-size: 32px;
    font-weight: 900;
    margin-bottom: 25px;
    padding-bottom: 15px;
    border-bottom: 3px solid #ED1C24;
}

.service-details .content {
    font-size: 16px;
    line-height: 1.8;
    color: #4a5568;
    margin-bottom: 30px;
}

.service-details .content p {
    margin-bottom: 20px;
}

.service-details .content h2,
.service-details .content h3 {
    color: #0A2FBF;
    font-weight: 800;
    margin: 25px 0 15px;
}

.service-details .content ul,
.service-details .content ol {
    margin: 15px 0 20px 25px;
}

.service-details .content li {
    margin-bottom: 8px;
    color: #4a5568;
}

/* CTA Box */
.service-details .cta-box {
    background: linear-gradient(135deg, #0A2FBF 0%, #ED1C24 100%);
    color: #FFFFFF;
    padding: 30px 35px;
    border-radius: 12px;
    margin: 30px 0;
}

.service-details .cta-box h4 {
    color: #FFFFFF;
    font-weight: 800;
    font-size: 22px;
    margin-bottom: 10px;
}

.service-details .cta-box p {
    color: rgba(255, 255, 255, 0.95);
    margin-bottom: 20px;
}

.service-details .cta-box .theme-btn .btn-title {
    background: #FFFFFF !important;
    color: #0A2FBF !important;
    font-weight: 700;
}

.service-details .cta-box .theme-btn:hover .btn-title {
    background: #FFFFFF !important;
    color: #ED1C24 !important;
    transform: translateY(-2px);
    box-shadow: 0 5px 20px rgba(255, 255, 255, 0.3);
}

/* Sidebar Services */
.sidebar-links {
    list-style: none;
    padding: 0;
    margin: 0;
}

.sidebar-links li {
    margin-bottom: 8px;
    padding: 10px 15px;
    background: #f7faff;
    border-left: 3px solid #0A2FBF;
    border-radius: 5px;
    transition: all 0.3s ease;
}

.sidebar-links li:hover {
    background: #0A2FBF;
    border-left-color: #ED1C24;
}

.sidebar-links li a {
    color: #0A2FBF !important;
    text-decoration: none !important;
    font-weight: 600;
    font-size: 14px;
    display: block;
    transition: color 0.3s ease;
}

.sidebar-links li:hover a {
    color: #FFFFFF !important;
}

/* ============================================ */
/* INNER BANNER (pour les services)              */
/* ============================================ */
.inner-banner {
    position: relative;
    background: #0A2FBF;
    color: #FFFFFF;
    padding: 80px 0 90px;
    overflow: hidden;
}

.inner-banner .image-layer {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    opacity: 0.35;
    z-index: 0;
}

.inner-banner .image-layer:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, rgba(10, 47, 191, 0.85) 0%, rgba(237, 28, 36, 0.75) 100%);
    z-index: 1;
}

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

.inner-banner .title-box h1 {
    color: #FFFFFF !important;
    font-size: 42px;
    font-weight: 900;
    margin-bottom: 10px;
    text-shadow: 0 2px 15px rgba(0, 0, 0, 0.4);
}

.inner-banner .d-text {
    color: #FFFFFF !important;
    font-size: 16px;
    opacity: 0.95;
    display: inline-block;
    padding-bottom: 8px;
    border-bottom: 2px solid #FFFFFF;
}

/* Responsive */
@media (max-width: 767px) {
    .service-details .emasi-blue-title {
        font-size: 24px;
    }
    
    .inner-banner .title-box h1 {
        font-size: 28px;
    }
    
    .inner-banner {
        padding: 60px 0 70px;
    }
}
/* ============================================ */
/* CTA BOX "Need this service?" - VISIBILITÉ     */
/* ============================================ */

.service-detail-section .cta-box {
    background: linear-gradient(135deg, #0A2FBF 0%, #ED1C24 100%) !important;
    color: #FFFFFF !important;
    padding: 35px 40px !important;
    border-radius: 12px !important;
    margin: 40px 0 20px !important;
    text-align: center !important;
    box-shadow: 0 10px 30px rgba(10, 47, 191, 0.25) !important;
}

/* Titre "Need this service?" - BLANC */
.service-detail-section .cta-box h4 {
    color: #FFFFFF !important;
    font-weight: 900 !important;
    font-size: 24px !important;
    margin-bottom: 15px !important;
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.3) !important;
}

/* Texte descriptif - BLANC */
.service-detail-section .cta-box p {
    color: #FFFFFF !important;
    font-size: 16px !important;
    line-height: 1.6 !important;
    margin-bottom: 25px !important;
    opacity: 1 !important;
    text-shadow: 0 1px 4px rgba(0, 0, 0, 0.2) !important;
}

/* Le <strong> dans le texte - reste BLANC */
.service-detail-section .cta-box p strong {
    color: #FFFFFF !important;
    font-weight: 700 !important;
}

/* Bouton "Contact Us" - fond BLANC + texte BLEU */
.service-detail-section .cta-box .theme-btn.btn-style-one {
    display: inline-block !important;
    margin: 0 !important;
}

.service-detail-section .cta-box .theme-btn.btn-style-one .btn-title {
    background: #FFFFFF !important;
    color: #0A2FBF !important;
    padding: 14px 45px !important;
    border-radius: 30px !important;
    font-weight: 800 !important;
    font-size: 15px !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.2) !important;
    transition: all 0.3s ease !important;
    border: none !important;
}

/* Hover - fond ROUGE + texte BLANC */
.service-detail-section .cta-box .theme-btn.btn-style-one:hover .btn-title {
    background: #FFFFFF !important;
    color: #ED1C24 !important;
    transform: translateY(-3px) !important;
    box-shadow: 0 8px 25px rgba(255, 255, 255, 0.4) !important;
}

/* Responsive */
@media (max-width: 767px) {
    .service-detail-section .cta-box {
        padding: 25px 20px !important;
    }
    
    .service-detail-section .cta-box h4 {
        font-size: 20px !important;
    }
    
    .service-detail-section .cta-box p {
        font-size: 14px !important;
    }
    
    .service-detail-section .cta-box .theme-btn.btn-style-one .btn-title {
        padding: 12px 30px !important;
        font-size: 13px !important;
    }
}/* ============================================ */
/* EMSI BURUNDI - CUSTOM STYLES                  */
/* À ajouter à la fin de style.css               */
/* 🔵 Bleu #0A2FBF - 🔴 Rouge #ED1C24 - ⚪ Blanc */
/* ============================================ */

/* ============================================ */
/* 1. FULL-WIDTH NEWS CAROUSEL                    */
/* ============================================ */
.une-carousel-fullwidth {
    position: relative;
    width: 100%;
    overflow: hidden;
}

.une-slide-full {
    position: relative;
    width: 100%;
    height: 650px;
}

.une-card-full {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.une-card-full .une-image-layer {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    opacity: 1 !important;
    z-index: 1;
}

.une-card-full .une-bg {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.une-card-full .une-image-layer:after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(
        to bottom,
        rgba(0, 0, 0, 0) 0%,
        rgba(0, 0, 0, 0) 40%,
        rgba(0, 0, 0, 0.5) 75%,
        rgba(0, 0, 0, 0.75) 100%
    );
    z-index: 2;
    pointer-events: none;
}

.une-content-full {
    position: absolute;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    padding: 70px 80px;
    z-index: 3;
    color: #fff;
    text-align: center;
    max-width: 1200px;
    margin: 0 auto;
}

.une-card-full .une-badge {
    display: inline-block;
    background: #FFFFFF !important;
    color: #ED1C24 !important;
    padding: 6px 18px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    margin-bottom: 20px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);
}

.une-card-full .une-badge i {
    margin-right: 6px;
    font-size: 11px;
    color: #ED1C24 !important;
}

.une-card-full .une-headline {
    font-size: 48px;
    font-weight: 900;
    line-height: 1.15;
    color: #fff !important;
    margin: 0 0 20px;
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
    text-shadow: 0 3px 15px rgba(0, 0, 0, 0.8) !important;
    text-transform: uppercase;
}

.une-card-full .une-headline a {
    color: #fff !important;
    text-decoration: none;
}

.une-card-full .une-headline a:hover {
    color: #FFFFFF !important;
    text-decoration: underline;
}

.une-card-full .une-excerpt {
    font-size: 18px;
    line-height: 1.6;
    color: #FFFFFF !important;
    margin: 0 auto 30px;
    max-width: 800px;
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.7) !important;
}

.une-meta {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 25px;
    margin-bottom: 25px;
    flex-wrap: wrap;
}

.une-author, .une-date {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 14px;
    color: rgba(255, 255, 255, 0.9);
    font-weight: 500;
}

.une-author i, .une-date i {
    color: #FFFFFF;
    font-size: 13px;
}

.une-card-full .une-btn {
    display: inline-block;
    background: #FFFFFF !important;
    color: #0A2FBF !important;
    padding: 15px 45px;
    border-radius: 30px;
    font-size: 16px;
    font-weight: 700;
    text-decoration: none;
    box-shadow: 0 5px 25px rgba(255, 255, 255, 0.4);
    border: 2px solid #FFFFFF !important;
}

.une-card-full .une-btn:hover {
    background: #ED1C24 !important;
    color: #FFFFFF !important;
    border-color: #ED1C24 !important;
    transform: translateY(-3px);
    box-shadow: 0 8px 30px rgba(237, 28, 36, 0.6);
}

.une-carousel-fullwidth .owl-nav .owl-prev,
.une-carousel-fullwidth .owl-nav .owl-next {
    position: absolute;
    top: 50%;
    margin-top: -30px;
    width: 60px;
    height: 60px;
    line-height: 60px;
    border-radius: 50%;
    background: #FFFFFF !important;
    color: #ED1C24 !important;
    font-size: 22px;
    text-align: center;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.25);
    z-index: 10;
    border: 2px solid #FFFFFF;
}

.une-carousel-fullwidth .owl-nav .owl-prev { left: 30px; }
.une-carousel-fullwidth .owl-nav .owl-next { right: 30px; }

.une-carousel-fullwidth .owl-nav .owl-prev:hover,
.une-carousel-fullwidth .owl-nav .owl-next:hover {
    background: #ED1C24 !important;
    color: #FFFFFF !important;
    border-color: #ED1C24 !important;
    transform: scale(1.1);
}

/* ============================================ */
/* 2. HEADLINES SECTION + GRID                    */
/* ============================================ */
.a-la-une-section {
    position: relative;
    background: #FFFFFF !important;
    padding: 70px 0 90px;
    overflow: hidden;
    z-index: 1;
}

.a-la-une-section .une-header {
    text-align: center;
    margin-bottom: 40px;
}

.a-la-une-section .une-title {
    font-size: 64px;
    font-weight: 900;
    color: #ED1C24 !important;
    text-transform: uppercase;
    letter-spacing: 3px;
    margin: 0 0 15px;
    line-height: 1;
}

.a-la-une-section .une-line {
    width: 80px;
    height: 5px;
    background: #ED1C24 !important;
    margin: 0 auto 20px;
    border-radius: 3px;
}

.a-la-une-section .une-subtitle {
    font-size: 18px;
    color: #666 !important;
    margin: 0;
}

.latest-news-header {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 30px;
    margin-top: 40px;
}

.latest-news-header .header-icon {
    width: 50px;
    height: 50px;
    background: #ED1C24 !important;
    color: #fff !important;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
}

.latest-news-title {
    font-size: 38px;
    font-weight: 900;
    color: #ED1C24 !important;
    margin: 0;
}

.latest-news-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: repeat(2, 220px);
    gap: 20px;
}

.news-card-large {
    grid-column: span 2;
    grid-row: span 2;
}

.news-card {
    position: relative;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
    background: #fff;
    height: 100%;
}

.news-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.15);
}

.news-card-link {
    display: block;
    height: 100%;
    text-decoration: none;
    position: relative;
}

.news-card-image {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.news-card-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.news-card-badge {
    position: absolute;
    top: 15px;
    left: 15px;
    background: #ED1C24;
    color: #fff;
    padding: 5px 14px;
    border-radius: 20px;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    z-index: 2;
}

.news-card-content {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 15px 18px !important;
    background: linear-gradient(
        to top,
        rgba(0, 0, 0, 0.55) 0%,
        rgba(0, 0, 0, 0.30) 40%,
        rgba(0, 0, 0, 0) 100%
    ) !important;
    color: #fff;
}

.news-card-title {
    font-size: 15px !important;
    font-weight: 700;
    color: #fff;
    margin: 0 0 6px !important;
    line-height: 1.3;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.5) !important;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.news-card-large .news-card-title {
    font-size: 22px !important;
    -webkit-line-clamp: 3;
}

.news-card-meta {
    display: flex;
    align-items: center;
    gap: 15px;
    flex-wrap: wrap;
}

.news-card-author,
.news-card-date {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 12px;
    color: rgba(255, 255, 255, 0.9);
    font-weight: 500;
}

.news-card-author i,
.news-card-date i {
    color: #ED1C24;
    font-size: 11px;
}

/* ============================================ */
/* 3. WELCOME SECTION                             */
/* ============================================ */
.emasi-welcome-section {
    background: #FFFFFF;
    padding: 70px 0;
}

.emasi-welcome-section .sec-title h2 {
    color: #0A2FBF !important;
    font-size: 42px;
    font-weight: 900;
    margin-bottom: 40px;
    text-align: center;
}

.emasi-welcome-section .sec-title h2 strong {
    color: #ED1C24 !important;
}

.emasi-welcome-section .welcome-text p {
    color: #4a5568;
    font-size: 16px;
    line-height: 1.8;
    text-align: justify;
}

.emasi-welcome-section .welcome-logo img {
    max-width: 220px;
    height: auto;
    display: block;
    margin: 0 auto;
}

.emasi-welcome-section .welcome-location {
    color: #0A2FBF;
    font-weight: 700;
    margin-top: 15px;
    font-size: 15px;
    text-transform: uppercase;
    letter-spacing: 1px;
}

/* ============================================ */
/* 4. VIDEO SECTIONS (FULL WIDTH)                 */
/* ============================================ */
.emasi-video-section,
.emasi-vehicles-section {
    padding: 70px 0 90px;
    width: 100%;
    overflow: hidden;
    border: none !important;
}

.emasi-video-section .auto-container,
.emasi-vehicles-section .auto-container {
    max-width: 100% !important;
    width: 100% !important;
    padding: 0 !important;
}

.emasi-video-section .sec-title,
.emasi-vehicles-section .sec-title {
    max-width: 900px;
    margin: 0 auto 40px;
    padding: 0 15px;
}

.emasi-video-section .sec-title h2,
.emasi-vehicles-section .sec-title h2 {
    color: #0A2FBF !important;
    font-size: 40px;
    font-weight: 900;
    text-align: center;
}

.emasi-video-section .sec-title h2 strong,
.emasi-vehicles-section .sec-title h2 strong {
    color: #ED1C24 !important;
}

.emasi-video-wrapper,
.emasi-vehicles-wrapper {
    position: relative;
    width: 100% !important;
    margin: 0 !important;
    padding-bottom: 56.25% !important;
    height: 0;
    overflow: hidden;
    background: #000;
}

.emasi-video-wrapper iframe,
.emasi-vehicles-wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    border: 0;
}

/* ============================================ */
/* 5. SPECIAL SERVICES                            */
/* ============================================ */
.special-services-section {
    background: #FFFFFF;
    padding: 80px 0 60px;
}

.special-services-section .sec-title h2 {
    color: #ED1C24 !important;
    font-size: 42px;
    font-weight: 900;
    margin-bottom: 50px;
    text-align: center;
}

.special-services-section .sec-title h2 strong {
    color: #ED1C24 !important;
}

.special-service-block {
    margin-bottom: 40px;
}

.special-service-block .inner-box {
    text-align: center;
    padding: 20px 15px;
}

.special-service-block .icon-box {
    width: 80px;
    height: 80px;
    margin: 0 auto 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 42px;
    color: #0A2FBF;
    background: rgba(10, 47, 191, 0.08);
    border-radius: 15px;
    transition: all 0.3s ease;
}

.special-service-block .inner-box:hover .icon-box {
    background: #0A2FBF;
    color: #FFFFFF;
    transform: translateY(-5px);
}

.special-service-block h3 {
    font-size: 18px;
    margin-bottom: 15px;
}

.special-service-block h3 a {
    color: #ED1C24 !important;
    text-decoration: underline;
    font-weight: 700;
}

.special-service-block h3 a:hover {
    color: #0A2FBF !important;
}

.special-service-block p {
    color: #4a5568;
    font-size: 14px;
    line-height: 1.7;
    margin: 0;
}

/* ============================================ */
/* 6. TEAM SECTION                                */
/* ============================================ */
.team-section {
    position: relative;
    background: #FFFFFF !important;
    padding: 100px 0 80px;
    overflow: hidden;
}

.team-section .pattern-layer {
    display: none !important;
}

.team-section::before {
    content: '';
    position: absolute;
    left: -200px;
    top: -200px;
    width: 500px;
    height: 500px;
    background: radial-gradient(circle, rgba(10, 47, 191, 0.10) 0%, rgba(10, 47, 191, 0) 70%);
    border-radius: 50%;
    z-index: 0;
}

.team-section::after {
    content: '';
    position: absolute;
    right: -200px;
    bottom: -200px;
    width: 500px;
    height: 500px;
    background: radial-gradient(circle, rgba(237, 28, 36, 0.10) 0%, rgba(237, 28, 36, 0) 70%);
    border-radius: 50%;
    z-index: 0;
}

.team-section .auto-container { position: relative; z-index: 2; }

.team-section .sec-title .upper-text {
    color: #0A2FBF !important;
    font-weight: 700 !important;
    text-transform: uppercase;
    letter-spacing: 2px;
    display: inline-block;
    position: relative;
    padding-bottom: 5px;
    margin-bottom: 15px;
}

.team-section .sec-title .upper-text:before {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    border-bottom: 2px solid #0A2FBF !important;
}

.team-section .sec-title h2,
.team-section .sec-title h2 strong {
    color: #ED1C24 !important;
    font-weight: 900;
    font-size: 44px;
    margin-bottom: 20px;
}

.team-section .sec-title .text,
.team-section .sec-title .lower-text {
    color: #0A2FBF !important;
}

.team-card-item {
    border: none !important;
    border-radius: 12px !important;
    overflow: hidden;
    background: #FFFFFF;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.08) !important;
    border-top: 3px solid #0A2FBF;
}

.team-card-item:hover {
    transform: translateY(-6px);
    box-shadow: 0 15px 40px rgba(237, 28, 36, 0.15) !important;
    border-top-color: #ED1C24 !important;
}

.team-card-name { color: #0A2FBF !important; font-weight: 800; }
.team-card-role { color: #ED1C24 !important; font-weight: 600; font-size: 13px; text-transform: uppercase; }

.team-card-img {
    width: 100%;
    height: 250px;
    object-fit: cover;
}

.team-card-placeholder {
    width: 100%;
    height: 250px;
    background: linear-gradient(135deg, #0A2FBF 0%, #ED1C24 100%) !important;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #FFFFFF !important;
}

.team-card-placeholder i { color: #FFFFFF !important; font-size: 60px; }

/* ============================================ */
/* 7. TESTIMONIALS SECTION                        */
/* ============================================ */
.testimonials-two .sec-title .upper-text {
    color: #0A2FBF !important;
    font-weight: 700 !important;
    text-transform: uppercase;
    letter-spacing: 2px;
    display: inline-block;
    position: relative;
    padding-bottom: 5px;
    margin-bottom: 15px;
}

.testimonials-two .sec-title .upper-text:before {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    border-bottom: 2px solid #0A2FBF !important;
}

/* ============================================ */
/* 8. CONTACT SECTION                             */
/* ============================================ */
.contact-section .sec-title .upper-text {
    color: #FFFFFF !important;
    border-bottom-color: #FFFFFF !important;
}

.contact-section .sec-title .upper-text:before {
    border-bottom-color: #FFFFFF !important;
}

.contact-section .sec-title h2,
.contact-section .sec-title h2 strong {
    color: #FFFFFF !important;
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}

.contact-section .sec-title .lower-text,
.contact-section .sec-title .text {
    color: rgba(255, 255, 255, 0.95) !important;
}

.contact-section .info .phone-title {
    color: #FFFFFF !important;
    font-weight: 700;
    text-transform: uppercase;
}

.contact-section .info .phone a,
.contact-section .info .phone a strong,
.contact-section .info .email a,
.contact-section .info .email a strong {
    color: #FFFFFF !important;
}

.contact-section .info .phone a:hover,
.contact-section .info .phone a:hover strong,
.contact-section .info .email a:hover,
.contact-section .info .email a:hover strong {
    color: #ED1C24 !important;
    text-decoration: underline;
}

.contact-section .info .phone .fas,
.contact-section .info .email .fas {
    color: #FFFFFF !important;
}

.contact-section .theme-btn.btn-style-one .btn-title {
    background: #FFFFFF !important;
    color: #0A2FBF !important;
    font-weight: 700;
}

.contact-section .theme-btn.btn-style-one:hover .btn-title {
    background: #ED1C24 !important;
    color: #FFFFFF !important;
    border-color: #ED1C24 !important;
}

.contact-section .default-form .form-group input,
.contact-section .default-form .form-group textarea,
.contact-section .default-form .form-group select {
    background: #FFFFFF !important;
    color: #333333 !important;
}

/* ============================================ */
/* 9. ABOUT LOGO OVERLAY                          */
/* ============================================ */
.about-section-two .about-image-wrapper { position: relative; }

.about-section-two .about-logo-overlay {
    position: absolute !important;
    bottom: -30px !important;
    right: -30px !important;
    left: auto !important;
    top: auto !important;
    width: 100px !important;
    height: 100px !important;
    border-radius: 50% !important;
    background: #fff !important;
    padding: 10px !important;
    box-shadow: 0 5px 20px rgba(0,0,0,0.15) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    z-index: 5 !important;
}

.about-section-two .about-logo-overlay img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    border-radius: 50% !important;
}

/* ============================================ */
/* 10. FOOTER MOBILE                              */
/* ============================================ */
@media (max-width: 767px) {
    .hide-on-mobile { display: none !important; }
}

/* ============================================ */
/* 11. RESPONSIVE                                 */
/* ============================================ */
@media (max-width: 991px) {
    .une-slide-full { height: 520px; }
    .une-content-full { padding: 40px; }
    .une-card-full .une-headline { font-size: 34px; }
    .une-card-full .une-excerpt { font-size: 16px; }
    
    .a-la-une-section .une-title { font-size: 48px; }
    .latest-news-grid {
        grid-template-columns: repeat(2, 1fr);
        grid-template-rows: auto;
    }
    .news-card-large { grid-column: span 2; grid-row: span 1; min-height: 280px; }
    .news-card { min-height: 200px; }
    .latest-news-title { font-size: 28px; }

    .emasi-welcome-section .sec-title h2,
    .emasi-video-section .sec-title h2,
    .special-services-section .sec-title h2,
    .emasi-vehicles-section .sec-title h2 { font-size: 30px !important; }
}

@media (max-width: 767px) {
    .une-slide-full { height: 450px; }
    .une-content-full { padding: 30px 20px; }
    .une-card-full .une-headline { font-size: 22px !important; }
    .une-card-full .une-excerpt { font-size: 13px !important; }
    .une-card-full .une-btn { padding: 12px 30px; font-size: 14px; }
    .une-carousel-fullwidth .owl-nav .owl-prev,
    .une-carousel-fullwidth .owl-nav .owl-next {
        width: 45px; height: 45px; line-height: 45px; font-size: 18px;
    }
    .une-carousel-fullwidth .owl-nav .owl-prev { left: 10px; }
    .une-carousel-fullwidth .owl-nav .owl-next { right: 10px; }
    
    .a-la-une-section { padding: 50px 0 60px; }
    .a-la-une-section .une-title { font-size: 32px !important; }
    .latest-news-header .header-icon { width: 40px; height: 40px; font-size: 18px; }
    .latest-news-title { font-size: 22px !important; }
    .latest-news-grid { grid-template-columns: 1fr; }
    .news-card-large { grid-column: span 1; }
    .news-card { min-height: 180px; }
    .news-card-author { display: none; }

    .emasi-welcome-section,
    .emasi-video-section,
    .special-services-section,
    .emasi-vehicles-section { padding: 50px 0; }

    .emasi-welcome-section .sec-title h2,
    .emasi-video-section .sec-title h2,
    .special-services-section .sec-title h2,
    .emasi-vehicles-section .sec-title h2 { font-size: 24px !important; }

    .special-service-block .icon-box { width: 60px; height: 60px; font-size: 30px; }

    .team-section { padding: 60px 0 50px; }
    .team-section .sec-title h2 { font-size: 28px !important; }

    .about-section-two .about-logo-overlay {
        width: 70px !important;
        height: 70px !important;
        bottom: -20px !important;
        right: -20px !important;
        padding: 6px !important;
    }
}
.emasi-video-wrapper,
.emasi-vehicles-wrapper {
    position: relative;
    width: 100% !important;
    margin: 0 !important;
    padding-bottom: 56.25% !important;
    height: 0;
    overflow: hidden;
    background: #000;
}
/* ============================================ */
/* PARTIE 4 - INNER BANNER PROPRE (Style Testimonials) */
/* Sans ligne rouge + Sans titres en doublon      */
/* 🔵 Bleu #0A2FBF - 🔴 Rouge #ED1C24 - ⚪ Blanc */
/* ============================================ */

/* ============================================ */
/* ✅ INNER BANNER - VERSION FINALE UNIQUE        */
/* Photo visible + voile sombre léger             */
/* ============================================ */

.inner-banner {
    position: relative !important;
    background: #1a1a1a !important;
    padding: 90px 0 !important;
    overflow: hidden;
    z-index: 1;
    min-height: 260px;
    display: flex;
    align-items: center;
    border: none !important;
    box-shadow: none !important;
}

/* Image de fond - PLEINEMENT VISIBLE */
.inner-banner .image-layer {
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    opacity: 1 !important;
    z-index: 1 !important;
    display: block !important;
    visibility: visible !important;
}

/* Voile sombre LÉGER uniquement (pas de couleur) */
.inner-banner .image-layer:before {
    content: '' !important;
    position: absolute !important;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.45) !important;
    z-index: 2 !important;
    display: block !important;
}

/* Pas de pseudo-élément après */
.inner-banner .image-layer:after {
    display: none !important;
}

/* Contenu au-dessus */
.inner-banner .inner {
    position: relative !important;
    z-index: 3 !important;
    width: 100%;
    padding: 0 !important;
}

.inner-banner .auto-container {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px;
    z-index: 3;
}

/* Titre à gauche */
.inner-banner .title-box {
    text-align: left !important;
    max-width: 60%;
}

.inner-banner .title-box h1,
.inner-banner h1 {
    color: #FFFFFF !important;
    font-size: 42px !important;
    font-weight: 900 !important;
    text-transform: capitalize;
    letter-spacing: 0.5px;
    margin: 0 0 8px !important;
    line-height: 1.2;
    text-shadow: 0 2px 12px rgba(0, 0, 0, 0.8) !important;
}

.inner-banner .title-box h1 strong,
.inner-banner h1 strong {
    color: #FFFFFF !important;
    font-weight: 900 !important;
}

/* Sous-titre */
.inner-banner .d-text {
    color: rgba(255, 255, 255, 0.95) !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    display: inline-block;
    padding-bottom: 5px;
    border-bottom: 2px solid rgba(255, 255, 255, 0.7) !important;
    text-shadow: 0 1px 5px rgba(0, 0, 0, 0.6);
    max-width: 500px;
}

.inner-banner .d-text:before {
    display: none !important;
}

/* Breadcrumb (Home / Page) */
.inner-banner .breadcrumb-box {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 20px;
    background: rgba(255, 255, 255, 0.15);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border-radius: 30px;
    font-size: 14px;
    color: #FFFFFF !important;
    border: 1px solid rgba(255, 255, 255, 0.25);
    z-index: 3;
}

.inner-banner .breadcrumb-box a {
    color: #FFFFFF !important;
    text-decoration: none !important;
    font-weight: 500;
    transition: all 0.3s ease;
}

.inner-banner .breadcrumb-box a:hover {
    color: #ED1C24 !important;
}

.inner-banner .breadcrumb-box .sep,
.inner-banner .breadcrumb-box .current {
    color: #FFFFFF !important;
    font-weight: 600;
}

/* ============================================ */
/* RESPONSIVE                                     */
/* ============================================ */
@media (max-width: 991px) {
    .inner-banner {
        padding: 70px 0 !important;
        min-height: 220px;
    }
    .inner-banner .title-box {
        max-width: 100%;
    }
    .inner-banner .title-box h1 {
        font-size: 32px !important;
    }
}

@media (max-width: 767px) {
    .inner-banner {
        padding: 50px 0 !important;
        min-height: 180px;
        text-align: center;
    }
    .inner-banner .auto-container {
        flex-direction: column;
        text-align: center;
    }
    .inner-banner .title-box {
        text-align: center !important;
        max-width: 100%;
    }
    .inner-banner .title-box h1 {
        font-size: 26px !important;
    }
    .inner-banner .d-text {
        font-size: 13px !important;
    }
    .inner-banner .breadcrumb-box {
        font-size: 12px;
        padding: 8px 16px;
    }
}

/* ============================================ */
/* ALTERNATIVE : Vidéo intégrée directement        */
/* Si vous voulez remplacer par une iframe YouTube */
/* Décommentez les lignes ci-dessous :             */
/* ============================================ */
/*
.video-section .auto-container {
    max-width: 900px !important;
}

.video-section .video-link,
.video-section h2 {
    display: none !important;
}

.video-section .auto-container::after {
    content: '';
    display: block;
    width: 100%;
    max-width: 800px;
    margin: 0 auto;
    padding-bottom: 450px;
    background: #000;
    border-radius: 12px;
}
*/

/* ============================================ */
/* RESPONSIVE                                     */
/* ============================================ */
@media (max-width: 767px) {
    .video-section {
        padding: 40px 0 !important;
    }
    .video-section .video-link a {
        width: 60px !important;
        height: 60px !important;
        line-height: 60px !important;
        font-size: 42px !important;
    }
    .video-section h2 {
        font-size: 16px !important;
    }
}
/* ============================================ */
/* 🔥 FORCE FINALE - ÉCRASE TOUS LES DOUBLONS      */
/* À GARDER EN DERNIER DANS style.css             */
/* ============================================ */

/* ============================================ */
/* 1. VIDÉOS - TAILLE RÉDUITE + SANS BLEU         */
/* ============================================ */

body .emasi-video-section,
body .emasi-vehicles-section {
    background: #FFFFFF !important;
    background-color: #FFFFFF !important;
    background-image: none !important;
    padding: 50px 0 60px !important;
    border: none !important;
}

body .emasi-video-section .auto-container,
body .emasi-vehicles-section .auto-container {
    max-width: 900px !important;
    width: 100% !important;
    padding: 0 15px !important;
    margin: 0 auto !important;
}

body .emasi-video-section .sec-title,
body .emasi-vehicles-section .sec-title {
    margin: 0 auto 25px !important;
    max-width: 700px !important;
}

body .emasi-video-section .sec-title h2,
body .emasi-vehicles-section .sec-title h2 {
    font-size: 24px !important;
    color: #0A2FBF !important;
    margin-bottom: 10px !important;
}

body .emasi-video-section .sec-title h2 strong,
body .emasi-vehicles-section .sec-title h2 strong {
    color: #ED1C24 !important;
}

body .emasi-video-wrapper,
body .emasi-vehicles-wrapper {
    position: relative !important;
    width: 100% !important;
    max-width: 750px !important;
    margin: 0 auto !important;
    padding-bottom: 420px !important;
    height: 0 !important;
    overflow: hidden !important;
    background: #000 !important;
    border-radius: 10px !important;
    box-shadow: 0 8px 25px rgba(10, 47, 191, 0.12) !important;
}

body .emasi-video-wrapper iframe,
body .emasi-vehicles-wrapper iframe {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    border: 0 !important;
}

/* ============================================ */
/* 2. VIDEO SECTION (lightbox) - SANS BLEU         */
/* ============================================ */

body .video-section {
    background: #FFFFFF !important;
    background-color: #FFFFFF !important;
    background-image: none !important;
    padding: 50px 0 !important;
    color: #222222 !important;
}

body .video-section .image-layer {
    opacity: 0.25 !important;
    z-index: 0 !important;
}

body .video-section .auto-container {
    position: relative !important;
    z-index: 2 !important;
    max-width: 720px !important;
}

body .video-section .video-link a {
    color: #ED1C24 !important;
    background: #FFFFFF !important;
    width: 70px !important;
    height: 70px !important;
    line-height: 70px !important;
    border-radius: 50% !important;
    font-size: 50px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-bottom: 20px !important;
    box-shadow: 0 5px 20px rgba(0,0,0,0.15) !important;
}

body .video-section h2 {
    color: #0A2FBF !important;
    font-size: 18px !important;
    text-shadow: none !important;
    max-width: 700px !important;
    margin: 0 auto !important;
}

/* ============================================ */
/* 3. TITRES DES CARTES ACTUALITÉS EN BLANC       */
/* ============================================ */

body .a-la-une-section .news-card .news-card-content .news-card-title,
body .a-la-une-section .news-card .news-card-content .news-card-title a,
body .a-la-une-section .news-card .news-card-content h3,
body .a-la-une-section .news-card .news-card-content h3 a,
body .news-card .news-card-content .news-card-title,
body .news-card .news-card-content .news-card-title a,
body .news-card .news-card-content h3,
body .news-card .news-card-content h3 a {
    color: #FFFFFF !important;
    text-decoration: none !important;
    border-bottom: none !important;
    text-shadow: 0 2px 6px rgba(0, 0, 0, 0.8) !important;
}

body .news-card .news-card-content .news-card-title a:hover,
body .news-card .news-card-content h3 a:hover {
    color: #FFFFFF !important;
    text-decoration: none !important;
}

/* ============================================ */
/* 4. AUCUN SOULIGNEMENT SUR LES ACTUALITÉS       */
/* ============================================ */

body .news-card a,
body .news-card a:hover,
body .news-card a:focus,
body .news-list-item a,
body .news-list-item a:hover,
body .news-list-content h3 a,
body .news-list-content h3 a:hover,
body .news-list-item:hover .news-list-content h3 a {
    text-decoration: none !important;
    border-bottom: none !important;
}

/* ============================================ */
/* 5. CTA "Need this service?" - SANS DÉGRADÉ      */
/* ============================================ */

body .service-detail-section .cta-box,
body .service-details .cta-box,
body .cta-box {
    background: #0A2FBF !important;
    background-image: none !important;
    background-color: #0A2FBF !important;
    color: #FFFFFF !important;
    padding: 30px 35px !important;
    border-radius: 12px !important;
    margin: 30px 0 !important;
    text-align: center !important;
    box-shadow: 0 5px 20px rgba(10, 47, 191, 0.2) !important;
    border: none !important;
}

body .cta-box h4 {
    color: #FFFFFF !important;
    font-size: 22px !important;
    margin-bottom: 12px !important;
    text-shadow: none !important;
}

body .cta-box p {
    color: #FFFFFF !important;
    font-size: 15px !important;
    margin-bottom: 20px !important;
    text-shadow: none !important;
}

body .cta-box .theme-btn .btn-title,
body .cta-box .theme-btn.btn-style-one .btn-title {
    background: #FFFFFF !important;
    color: #0A2FBF !important;
    padding: 12px 40px !important;
    border-radius: 30px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
}

body .cta-box .theme-btn:hover .btn-title {
    background: #ED1C24 !important;
    color: #FFFFFF !important;
}

/* ============================================ */
/* 6. SIDEBAR "Besoin d'informations ?" - BLANC   */
/* ============================================ */

body .sidebar-box.contact-widget-blue,
body .contact-widget-blue,
body .sidebar-widget.contact-widget-blue {
    background: #FFFFFF !important;
    background-color: #FFFFFF !important;
    background-image: none !important;
    color: #222222 !important;
    padding: 30px 25px !important;
    border-radius: 12px !important;
    text-align: center !important;
    border: 2px solid #0A2FBF !important;
    box-shadow: 0 5px 20px rgba(10, 47, 191, 0.08) !important;
}

body .sidebar-box.contact-widget-blue h4,
body .sidebar-box.contact-widget-blue h3,
body .contact-widget-blue h4,
body .contact-widget-blue h3 {
    color: #0A2FBF !important;
    font-size: 18px !important;
    font-weight: 800 !important;
    margin-bottom: 15px !important;
    padding-bottom: 10px !important;
    border-bottom: 3px solid #ED1C24 !important;
    display: inline-block !important;
    background: transparent !important;
    text-shadow: none !important;
}

body .sidebar-box.contact-widget-blue p,
body .contact-widget-blue p {
    color: #4a5568 !important;
    font-size: 14px !important;
    margin-bottom: 20px !important;
    background: transparent !important;
    text-shadow: none !important;
}

body .sidebar-box.contact-widget-blue .theme-btn .btn-title,
body .contact-widget-blue .theme-btn .btn-title {
    background: #0A2FBF !important;
    color: #FFFFFF !important;
    padding: 12px 30px !important;
    border-radius: 30px !important;
    font-weight: 700 !important;
    font-size: 13px !important;
    text-transform: uppercase !important;
    box-shadow: 0 5px 20px rgba(10, 47, 191, 0.2) !important;
}

body .sidebar-box.contact-widget-blue .theme-btn:hover .btn-title,
body .contact-widget-blue .theme-btn:hover .btn-title {
    background: #ED1C24 !important;
    color: #FFFFFF !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 20px rgba(237, 28, 36, 0.3) !important;
}

/* ============================================ */
/* 7. SIDEBAR "Other Services" - SANS CROCHETS    */
/* ============================================ */

body .sidebar-box,
body .sidebar-box:not(.contact-widget-blue) {
    background: #f9f9f9 !important;
    border: 1px solid #eef2f8 !important;
    border-radius: 12px !important;
    padding: 25px !important;
    margin-bottom: 25px !important;
    box-shadow: none !important;
}

body .sidebar-box::before,
body .sidebar-box::after,
body .sidebar-links li::before,
body .sidebar-links li::after {
    display: none !important;
    content: none !important;
    border: none !important;
    background: none !important;
}

body .sidebar-box h3 {
    color: #0A2FBF !important;
    font-weight: 800 !important;
    font-size: 18px !important;
    margin-bottom: 15px !important;
    padding-bottom: 8px !important;
    border-bottom: 3px solid #ED1C24 !important;
    display: inline-block !important;
}

body .sidebar-links li {
    padding: 10px 15px !important;
    background: #FFFFFF !important;
    border: none !important;
    border-left: none !important;
    border-radius: 8px !important;
    margin-bottom: 8px !important;
    list-style: none !important;
}

body .sidebar-links li:hover {
    background: #0A2FBF !important;
}

body .sidebar-links li a {
    color: #0A2FBF !important;
    text-decoration: none !important;
    border-bottom: none !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    display: block !important;
}

body .sidebar-links li:hover a {
    color: #FFFFFF !important;
}

/* ============================================ */
/* 8. CONTACT SECTION - SANS BLEU                 */
/* ============================================ */

body .contact-section {
    background: #FFFFFF !important;
    background-color: #FFFFFF !important;
    background-image: none !important;
    padding: 60px 0 !important;
    color: #222222 !important;
    border: none !important;
}

body .contact-section .map-pattern-layer {
    display: none !important;
}

body .contact-section .sec-title h2,
body .contact-section .sec-title h2 strong {
    color: #ED1C24 !important;
    text-shadow: none !important;
}

body .contact-section .sec-title .upper-text {
    color: #0A2FBF !important;
    border-bottom-color: #0A2FBF !important;
}

body .contact-section .sec-title .lower-text {
    color: #4a5568 !important;
}

body .contact-section .info .phone a,
body .contact-section .info .phone a strong {
    color: #ED1C24 !important;
}

body .contact-section .info .email a,
body .contact-section .info .email a strong {
    color: #0A2FBF !important;
}

body .contact-section .info .phone-title {
    color: #0A2FBF !important;
}

/* ============================================ */
/* 9. ENLEVER TOUS LES SOULIGNEMENTS GLOBAUX      */
/* ============================================ */

body a,
body a:hover,
body a:focus,
body a:active {
    text-decoration: none !important;
}

body h1 a, body h2 a, body h3 a, body h4 a,
body h1 a:hover, body h2 a:hover, body h3 a:hover, body h4 a:hover {
    text-decoration: none !important;
    border-bottom: none !important;
}

/* ============================================ */
/* 10. RÉDUIRE L'ESPACE GÉNÉRAL                   */
/* ============================================ */

body .emasi-welcome-section,
body .special-services-section,
body .team-section,
body .testimonials-two,
body .contact-section {
    padding-top: 50px !important;
    padding-bottom: 50px !important;
}

/* ============================================ */
/* RESPONSIVE                                     */
/* ============================================ */

@media (max-width: 991px) {
    body .emasi-video-wrapper,
    body .emasi-vehicles-wrapper {
        max-width: 600px !important;
        padding-bottom: 337px !important;
    }
}

@media (max-width: 767px) {
    body .emasi-video-wrapper,
    body .emasi-vehicles-wrapper {
        max-width: 100% !important;
        padding-bottom: 56.25% !important;
    }
    
    body .emasi-video-section .sec-title h2,
    body .emasi-vehicles-section .sec-title h2 {
        font-size: 18px !important;
    }
}
/* ============================================ */
/* 🔥 PARTAGE - STYLE "SUIVEZ-NOUS"               */
/* Icônes simples bleues sans fond coloré         */
/* ============================================ */

/* Conteneur du partage */
body .news-detail-share,
body .post-details .share-it,
body .share-it {
    display: flex !important;
    align-items: center !important;
    gap: 20px !important;
    padding: 20px 0 !important;
    border-top: 1px solid #e2e8f0 !important;
    border-bottom: 1px solid #e2e8f0 !important;
    margin: 30px 0 !important;
    flex-wrap: wrap !important;
    background: transparent !important;
    box-shadow: none !important;
}

/* Label "Partager :" en BLEU EMASI */
body .news-detail-share span,
body .share-it span,
body .share-toggler {
    color: #0A2FBF !important;
    font-weight: 700 !important;
    font-size: 16px !important;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-right: 10px !important;
    background: transparent !important;
}

/* Boutons - TOUS SANS FOND COLORÉ */
body .news-detail-share .share-btn,
body .news-detail-share .share-btn.fb,
body .news-detail-share .share-btn.tw,
body .news-detail-share .share-btn.wa,
body .share-btn,
body .share-btn.fb,
body .share-btn.tw,
body .share-btn.wa,
body .share-it a,
body .share-it a.fb,
body .share-it a.tw,
body .share-it a.wa {
    width: auto !important;
    height: auto !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.3s ease !important;
    text-decoration: none !important;
}

/* Icônes - BLEU EMASI comme "Suivez-nous" */
body .news-detail-share .share-btn i,
body .news-detail-share .share-btn .fa,
body .news-detail-share .share-btn .fab,
body .news-detail-share .share-btn .fas,
body .share-btn i,
body .share-btn .fa,
body .share-btn .fab,
body .share-btn .fas,
body .share-it a i,
body .share-it a .fa,
body .share-it a .fab,
body .share-it a .fas {
    color: #0A2FBF !important;
    font-size: 22px !important;
    transition: all 0.3s ease !important;
    background: transparent !important;
}

/* Hover - icônes passent en ROUGE EMASI */
body .news-detail-share .share-btn:hover i,
body .news-detail-share .share-btn:hover .fa,
body .news-detail-share .share-btn:hover .fab,
body .news-detail-share .share-btn:hover .fas,
body .share-btn:hover i,
body .share-btn:hover .fa,
body .share-btn:hover .fab,
body .share-btn:hover .fas,
body .share-it a:hover i,
body .share-it a:hover .fa,
body .share-it a:hover .fab,
body .share-it a:hover .fas {
    color: #ED1C24 !important;
    transform: translateY(-3px) !important;
}

/* ============================================ */
/* GARDER LE FOOTER "SUIVEZ-NOUS" TEL QUEL        */
/* ============================================ */

body .main-footer .social-links {
    text-align: center !important;
    padding-top: 15px !important;
}

body .main-footer .social-links .title {
    color: #0A2FBF !important;
    font-weight: 700 !important;
    font-size: 16px !important;
    margin-bottom: 15px !important;
    text-align: center !important;
    text-transform: uppercase;
    letter-spacing: 1px;
}

body .main-footer .social-links ul {
    display: flex !important;
    justify-content: center !important;
    gap: 20px !important;
    flex-wrap: wrap !important;
    list-style: none !important;
    padding: 0 !important;
}

body .main-footer .social-links li {
    display: inline-block !important;
    margin: 0 !important;
}

body .main-footer .social-links li a {
    background: transparent !important;
    color: #0A2FBF !important;
    font-size: 22px !important;
    transition: all 0.3s ease !important;
    display: inline-block !important;
    text-decoration: none !important;
    border: none !important;
    box-shadow: none !important;
}

body .main-footer .social-links li a:hover {
    color: #ED1C24 !important;
    transform: translateY(-3px) !important;
    background: transparent !important;
}

body .main-footer .social-links li a i,
body .main-footer .social-links li a .fa,
body .main-footer .social-links li a .fab {
    color: inherit !important;
}

/* ============================================ */
/* GARDER LES INPUTS CONTACT TELS QUELS           */
/* (ne pas toucher)                                */
/* ============================================ */

body .contact-section .default-form .form-group input,
body .contact-section .default-form .form-group textarea,
body .contact-section .default-form .form-group select {
    background: #FFFFFF !important;
    color: #222222 !important;
    border: 1px solid #dce1e8 !important;
    border-radius: 6px !important;
    padding: 12px 18px !important;
    font-size: 14px !important;
    transition: all 0.3s ease !important;
}

body .contact-section .default-form .form-group input::placeholder,
body .contact-section .default-form .form-group textarea::placeholder {
    color: #a0aec0 !important;
}

body .contact-section .default-form .form-group input:focus,
body .contact-section .default-form .form-group textarea:focus,
body .contact-section .default-form .form-group select:focus {
    border-color: #0A2FBF !important;
    box-shadow: 0 0 0 3px rgba(10, 47, 191, 0.1) !important;
    outline: none !important;
}

/* ============================================ */
/* RESPONSIVE                                     */
/* ============================================ */

@media (max-width: 767px) {
    body .news-detail-share,
    body .share-it {
        gap: 15px !important;
        justify-content: center !important;
    }
    
    body .news-detail-share .share-btn i,
    body .news-detail-share .share-btn .fab,
    body .share-btn i,
    body .share-btn .fab {
        font-size: 20px !important;
    }
}
/* ============================================ */
/* 🔥 CORRECTIONS FINALES - BOUTON + HEADER       */
/* ============================================ */

/* ============================================ */
/* 1. BOUTON "Make a Request" - FOND BLEU          */
/* ============================================ */

body .contact-section .theme-btn.btn-style-one,
body .contact-section button.theme-btn.btn-style-one,
body button.theme-btn.btn-style-one {
    background: #0A2FBF !important;
    background-color: #0A2FBF !important;
    background-image: none !important;
    color: #FFFFFF !important;
    border: 2px solid #0A2FBF !important;
    padding: 14px 45px !important;
    border-radius: 30px !important;
    font-weight: 700 !important;
    font-size: 15px !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    box-shadow: 0 5px 20px rgba(10, 47, 191, 0.25) !important;
    transition: all 0.3s ease !important;
    display: inline-block !important;
    cursor: pointer !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    text-align: center !important;
    line-height: 1.4 !important;
}

/* Le span interne doit être transparent (le bouton a déjà le fond bleu) */
body .contact-section .theme-btn.btn-style-one .btn-title,
body button.theme-btn.btn-style-one .btn-title {
    background: transparent !important;
    background-image: none !important;
    color: #FFFFFF !important;
    padding: 0 !important;
    border: none !important;
    box-shadow: none !important;
    display: inline !important;
    font-weight: inherit !important;
    font-size: inherit !important;
}

/* Hover - fond rouge */
body .contact-section .theme-btn.btn-style-one:hover,
body button.theme-btn.btn-style-one:hover {
    background: #ED1C24 !important;
    background-image: none !important;
    border-color: #ED1C24 !important;
    color: #FFFFFF !important;
    transform: translateY(-3px) !important;
    box-shadow: 0 8px 25px rgba(237, 28, 36, 0.4) !important;
}

body .contact-section .theme-btn.btn-style-one:hover .btn-title,
body button.theme-btn.btn-style-one:hover .btn-title {
    color: #FFFFFF !important;
}

/* ============================================ */
/* 2. HEADER - LIEN ACTIF EN ROUGE + SOULIGNÉ     */
/* ============================================ */

/* Lien actif (page actuelle) - ROUGE EMASI */
body .main-menu .navigation > li.current > a,
body .main-menu .navigation > li.current-menu-item > a,
body .main-menu .navigation > li.active > a,
body .header-lower .main-menu .navigation > li.current > a,
body .header-style-two .nav-box .main-menu .navigation > li.current > a {
    color: #ED1C24 !important;
    font-weight: 700 !important;
    position: relative !important;
}

/* Soulignement ROUGE sous le lien actif */
body .main-menu .navigation > li.current > a::after,
body .main-menu .navigation > li.current-menu-item > a::after,
body .main-menu .navigation > li.active > a::after,
body .header-lower .main-menu .navigation > li.current > a::after {
    content: '' !important;
    position: absolute !important;
    left: 0 !important;
    bottom: -2px !important;
    width: 100% !important;
    height: 3px !important;
    background: #ED1C24 !important;
    border-radius: 2px !important;
    display: block !important;
}

/* Hover - reste en rouge */
body .main-menu .navigation > li:hover > a {
    color: #ED1C24 !important;
}

body .main-menu .navigation > li:hover > a::after {
    content: '' !important;
    position: absolute !important;
    left: 0 !important;
    bottom: -2px !important;
    width: 100% !important;
    height: 3px !important;
    background: #ED1C24 !important;
    border-radius: 2px !important;
    display: block !important;
}

/* Retirer tout autre pseudo-élément ou border pré-existant */
body .main-menu .navigation > li:before {
    border-bottom: none !important;
}

body .main-menu .navigation > li.current:before,
body .main-menu .navigation > li:hover:before {
    border-bottom: none !important;
}

/* Taille de la police - garder le style existant */
body .main-menu .navigation > li > a {
    padding: 15px 0 !important;
    text-decoration: none !important;
    position: relative !important;
}

/* ============================================ */
/* RESPONSIVE                                     */
/* ============================================ */

@media (max-width: 767px) {
    body .contact-section .theme-btn.btn-style-one,
    body button.theme-btn.btn-style-one {
        padding: 12px 32px !important;
        font-size: 13px !important;
    }
    
    body .main-menu .navigation > li.current > a::after,
    body .main-menu .navigation > li:hover > a::after {
        height: 2px !important;
    }
}
/* ============================================ */
/* 🔥 COMPACTAGE GLOBAL - RÉDUIRE LES ESPACES     */
/* Site serré et moderne                          */
/* ============================================ */

/* ============================================ */
/* 1. SECTIONS PRINCIPALES - PADDING RÉDUIT       */
/* ============================================ */
body .a-la-une-section,
body .emasi-welcome-section,
body .emasi-video-section,
body .special-services-section,
body .emasi-vehicles-section,
body .video-section,
body .about-section,
body .about-section-two,
body .about-section-three,
body .services-section,
body .services-section-two,
body .services-section-three,
body .team-section,
body .testimonials-two,
body .contact-section,
body .news-section,
body .faqs-section,
body .call-to-action,
body .default-bg-section,
body .locations-section,
body .appointment-section,
body .cases-section,
body .cases-section-two,
body .sidebar-page-container {
    padding-top: 40px !important;
    padding-bottom: 40px !important;
}

/* ============================================ */
/* 2. TITRES DE SECTIONS - MARGES RÉDUITES        */
/* ============================================ */
body .sec-title {
    margin-bottom: 25px !important;
}

body .sec-title.centered {
    margin-bottom: 30px !important;
    max-width: 700px !important;
}

body .sec-title h2 {
    margin-bottom: 8px !important;
    line-height: 1.25 !important;
}

body .sec-title .upper-text {
    margin-bottom: 8px !important;
    padding-bottom: 4px !important;
}

body .sec-title .lower-text {
    padding-top: 8px !important;
    font-size: 14px !important;
}

/* ============================================ */
/* 3. WELCOME SECTION - TRÈS COMPACT              */
/* ============================================ */
body .emasi-welcome-section {
    padding: 30px 0 30px !important;
}

body .emasi-welcome-section .sec-title h2 {
    margin-bottom: 15px !important;
    font-size: 28px !important;
}

body .emasi-welcome-section .welcome-text p {
    font-size: 14px !important;
    line-height: 1.6 !important;
    margin-bottom: 10px !important;
}

body .emasi-welcome-section .welcome-logo img {
    max-width: 160px !important;
}

body .emasi-welcome-section .welcome-location {
    margin-top: 8px !important;
    font-size: 13px !important;
}

/* ============================================ */
/* 4. HEADLINES SECTION - COMPACT                 */
/* ============================================ */
body .a-la-une-section {
    padding: 40px 0 50px !important;
}

body .a-la-une-section .une-header {
    margin-bottom: 20px !important;
}

body .a-la-une-section .une-title {
    font-size: 42px !important;
    margin-bottom: 8px !important;
}

body .a-la-une-section .une-line {
    margin: 0 auto 10px !important;
    height: 4px !important;
    width: 60px !important;
}

body .a-la-une-section .une-subtitle {
    font-size: 15px !important;
}

body .latest-news-header {
    margin-top: 15px !important;
    margin-bottom: 15px !important;
}

body .latest-news-header .header-icon {
    width: 42px !important;
    height: 42px !important;
    font-size: 18px !important;
}

body .latest-news-title {
    font-size: 28px !important;
}

body .latest-news-grid {
    gap: 12px !important;
    grid-template-rows: repeat(2, 180px) !important;
}

body .news-card-large {
    grid-column: span 2 !important;
    grid-row: span 2 !important;
}

/* ============================================ */
/* 5. VIDÉOS - COMPACT                            */
/* ============================================ */
body .emasi-video-section,
body .emasi-vehicles-section {
    padding: 30px 0 40px !important;
}

body .emasi-video-section .sec-title,
body .emasi-vehicles-section .sec-title {
    margin-bottom: 15px !important;
}

body .emasi-video-section .sec-title h2,
body .emasi-vehicles-section .sec-title h2 {
    font-size: 24px !important;
    margin-bottom: 10px !important;
}

body .emasi-video-wrapper,
body .emasi-vehicles-wrapper {
    max-width: 700px !important;
    padding-bottom: 394px !important;
    margin: 0 auto !important;
}

/* ============================================ */
/* 6. SPECIAL SERVICES - COMPACT                  */
/* ============================================ */
body .special-services-section {
    padding: 40px 0 30px !important;
}

body .special-services-section .sec-title h2 {
    font-size: 30px !important;
    margin-bottom: 25px !important;
}

body .special-service-block {
    margin-bottom: 20px !important;
}

body .special-service-block .inner-box {
    padding: 15px 12px !important;
}

body .special-service-block .icon-box {
    width: 60px !important;
    height: 60px !important;
    font-size: 30px !important;
    margin-bottom: 12px !important;
}

body .special-service-block h3 {
    font-size: 16px !important;
    margin-bottom: 8px !important;
}

body .special-service-block p {
    font-size: 13px !important;
    line-height: 1.5 !important;
}

/* ============================================ */
/* 7. TEAM SECTION - COMPACT                      */
/* ============================================ */
body .team-section {
    padding: 40px 0 !important;
}

body .team-section .sec-title h2 {
    font-size: 28px !important;
    margin-bottom: 10px !important;
}

body .team-carousel-wrapper {
    margin-top: 20px !important;
}

/* ============================================ */
/* 8. TESTIMONIALS - COMPACT                      */
/* ============================================ */
body .testimonials-two {
    padding: 40px 0 40px !important;
}

body .testimonials-two .sec-title {
    margin-bottom: 20px !important;
}

body .testimonials-two .sec-title h2 {
    font-size: 28px !important;
}

body .testimonial-block {
    margin-bottom: 20px !important;
}

body .testimonial-block .content {
    padding: 25px !important;
}

body .testimonial-block .content .text {
    font-size: 14px !important;
}

/* ============================================ */
/* 9. CONTACT SECTION - COMPACT                   */
/* ============================================ */
body .contact-section {
    padding: 50px 0 !important;
}

body .contact-section .sec-title {
    margin-bottom: 20px !important;
}

body .contact-section .sec-title h2 {
    font-size: 26px !important;
    margin-bottom: 10px !important;
}

body .contact-section .sec-title .lower-text {
    font-size: 14px !important;
}

body .contact-section .info {
    margin-top: 15px !important;
}

body .contact-section .info .phone {
    font-size: 22px !important;
    margin-bottom: 5px !important;
}

body .contact-section .info .email {
    font-size: 15px !important;
}

body .contact-section .default-form .form-group {
    margin-bottom: 15px !important;
}

body .contact-section .default-form .form-group input,
body .contact-section .default-form .form-group textarea {
    padding: 10px 15px !important;
    font-size: 14px !important;
}

body .contact-section .default-form .form-group textarea {
    height: 100px !important;
}

/* ============================================ */
/* 10. ABOUT SECTION - COMPACT                    */
/* ============================================ */
body .about-section-two {
    padding: 40px 0 !important;
}

body .about-section-two .sec-title {
    margin-bottom: 20px !important;
}

body .about-section-two .sec-title h2 {
    font-size: 24px !important;
    margin-bottom: 8px !important;
}

body .about-section-two .sec-title .lower-text {
    font-size: 14px !important;
}

body .about-section-two .left-column .image {
    margin-bottom: 25px !important;
}

body .about-section-two .features {
    margin-top: 15px !important;
}

body .feature-block .inner-box {
    padding: 10px 8px 12px !important;
}

body .feature-block .icon-box {
    font-size: 32px !important;
    padding: 8px 0 0 !important;
}

body .feature-block .inner-box .title {
    padding: 10px 0 0 !important;
    font-size: 13px !important;
}

body .about-section-two .right-column .image {
    margin-bottom: 25px !important;
}

body .about-section-two .right-column h3 {
    font-size: 20px !important;
    margin-bottom: 10px !important;
}

body .about-section-two .list-style-one li {
    font-size: 14px !important;
    margin-bottom: 5px !important;
}

/* ============================================ */
/* 11. INNER BANNER - COMPACT                     */
/* ============================================ */
body .inner-banner {
    padding: 50px 0 !important;
    min-height: 200px !important;
}

body .inner-banner .title-box h1 {
    font-size: 32px !important;
    margin-bottom: 5px !important;
}

body .inner-banner .d-text {
    font-size: 14px !important;
    padding-bottom: 4px !important;
}

body .inner-banner .breadcrumb-box {
    padding: 8px 16px !important;
    font-size: 13px !important;
}

/* ============================================ */
/* 12. CARROUSEL FULLWIDTH - RÉDUIRE HAUTEUR     */
/* ============================================ */
body .une-slide-full {
    height: 520px !important;
}

body .une-content-full {
    padding: 50px 60px !important;
}

body .une-card-full .une-headline {
    font-size: 38px !important;
    margin-bottom: 15px !important;
}

body .une-card-full .une-excerpt {
    font-size: 16px !important;
    margin-bottom: 20px !important;
}

/* ============================================ */
/* 13. BANNIÈRE HERO - COMPACT                    */
/* ============================================ */
body .banner-carousel .content-box {
    height: 480px !important;
}

body .banner-carousel .content-box h1 {
    font-size: 46px !important;
    margin-bottom: 15px !important;
}

body .banner-carousel .content-box .text {
    font-size: 18px !important;
    margin-bottom: 25px !important;
}

/* ============================================ */
/* 14. SUPPRIMER LES MARGES INUTILES              */
/* ============================================ */
body .row.clearfix {
    margin-bottom: 0 !important;
}

body .row {
    margin-bottom: 0 !important;
}

body section {
    margin-bottom: 0 !important;
}

/* ============================================ */
/* 15. RESPONSIVE                                 */
/* ============================================ */
@media (max-width: 991px) {
    body .emasi-video-wrapper,
    body .emasi-vehicles-wrapper {
        max-width: 550px !important;
        padding-bottom: 309px !important;
    }
    
    body .a-la-une-section .une-title {
        font-size: 34px !important;
    }
    
    body .latest-news-title {
        font-size: 24px !important;
    }
    
    body .latest-news-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        grid-template-rows: auto !important;
    }
}

@media (max-width: 767px) {
    /* Sections - Padding très réduit sur mobile */
    body .a-la-une-section,
    body .emasi-welcome-section,
    body .emasi-video-section,
    body .special-services-section,
    body .emasi-vehicles-section,
    body .video-section,
    body .about-section-two,
    body .team-section,
    body .testimonials-two,
    body .contact-section {
        padding-top: 30px !important;
        padding-bottom: 30px !important;
    }
    
    body .emasi-video-wrapper,
    body .emasi-vehicles-wrapper {
        max-width: 100% !important;
        padding-bottom: 56.25% !important;
    }
    
    body .a-la-une-section .une-title {
        font-size: 26px !important;
    }
    
    body .latest-news-title {
        font-size: 20px !important;
    }
    
    body .latest-news-grid {
        grid-template-columns: 1fr !important;
    }
    
    body .news-card-large {
        grid-column: span 1 !important;
    }
    
    body .inner-banner {
        padding: 35px 0 !important;
        min-height: 160px !important;
    }
    
    body .inner-banner .title-box h1 {
        font-size: 22px !important;
    }
    
    body .une-slide-full {
        height: 400px !important;
    }
    
    body .une-content-full {
        padding: 30px 20px !important;
    }
    
    body .une-card-full .une-headline {
        font-size: 22px !important;
    }
}
/* ============================================ */
/* 🔥🔥 COMPACTAGE MAXIMAL - SITE TRÈS SERRÉ      */
/* À garder en DERNIER dans style.css              */
/* ============================================ */

/* ============================================ */
/* 1. SECTIONS - PADDING ULTRA RÉDUIT             */
/* ============================================ */
body .a-la-une-section,
body .emasi-welcome-section,
body .emasi-video-section,
body .special-services-section,
body .emasi-vehicles-section,
body .video-section,
body .about-section,
body .about-section-two,
body .about-section-three,
body .services-section,
body .services-section-two,
body .services-section-three,
body .team-section,
body .testimonials-two,
body .contact-section,
body .news-section,
body .faqs-section,
body .call-to-action,
body .default-bg-section,
body .locations-section,
body .appointment-section,
body .cases-section,
body .cases-section-two,
body .sidebar-page-container {
    padding-top: 20px !important;
    padding-bottom: 20px !important;
}

/* ============================================ */
/* 2. TITRES DE SECTIONS - TRÈS COMPACT           */
/* ============================================ */
body .sec-title {
    margin-bottom: 12px !important;
}

body .sec-title.centered {
    margin-bottom: 15px !important;
}

body .sec-title h2 {
    margin-bottom: 4px !important;
    line-height: 1.15 !important;
    font-size: 22px !important;
}

body .sec-title .upper-text {
    margin-bottom: 3px !important;
    padding-bottom: 2px !important;
    font-size: 11px !important;
}

body .sec-title .lower-text {
    padding-top: 3px !important;
    font-size: 13px !important;
    line-height: 1.5 !important;
}

/* ============================================ */
/* 3. WELCOME - ULTRA COMPACT                     */
/* ============================================ */
body .emasi-welcome-section {
    padding: 15px 0 15px !important;
}

body .emasi-welcome-section .sec-title h2 {
    margin-bottom: 8px !important;
    font-size: 22px !important;
}

body .emasi-welcome-section .welcome-text p {
    font-size: 13px !important;
    line-height: 1.5 !important;
    margin-bottom: 5px !important;
}

body .emasi-welcome-section .welcome-logo img {
    max-width: 130px !important;
}

body .emasi-welcome-section .welcome-location {
    margin-top: 5px !important;
    font-size: 12px !important;
}

/* ============================================ */
/* 4. HEADLINES - TRÈS COMPACT                    */
/* ============================================ */
body .a-la-une-section {
    padding: 20px 0 25px !important;
}

body .a-la-une-section .une-header {
    margin-bottom: 10px !important;
}

body .a-la-une-section .une-title {
    font-size: 32px !important;
    margin-bottom: 5px !important;
}

body .a-la-une-section .une-line {
    margin: 0 auto 5px !important;
    height: 3px !important;
    width: 50px !important;
}

body .a-la-une-section .une-subtitle {
    font-size: 13px !important;
}

body .latest-news-header {
    margin-top: 8px !important;
    margin-bottom: 8px !important;
}

body .latest-news-header .header-icon {
    width: 34px !important;
    height: 34px !important;
    font-size: 15px !important;
}

body .latest-news-title {
    font-size: 22px !important;
}

body .latest-news-grid {
    gap: 8px !important;
    grid-template-rows: repeat(2, 150px) !important;
}

/* Cartes news - réduites */
body .news-card-content {
    padding: 10px 12px !important;
}

body .news-card-title {
    font-size: 13px !important;
    margin-bottom: 3px !important;
}

body .news-card-large .news-card-title {
    font-size: 16px !important;
}

body .news-card-author,
body .news-card-date {
    font-size: 11px !important;
}

body .news-card-badge {
    padding: 3px 10px !important;
    font-size: 10px !important;
    top: 10px !important;
    left: 10px !important;
}

/* ============================================ */
/* 5. VIDÉOS - TRÈS COMPACT                       */
/* ============================================ */
body .emasi-video-section,
body .emasi-vehicles-section {
    padding: 15px 0 20px !important;
}

body .emasi-video-section .sec-title,
body .emasi-vehicles-section .sec-title {
    margin-bottom: 10px !important;
}

body .emasi-video-section .sec-title h2,
body .emasi-vehicles-section .sec-title h2 {
    font-size: 20px !important;
    margin-bottom: 5px !important;
}

body .emasi-video-wrapper,
body .emasi-vehicles-wrapper {
    max-width: 600px !important;
    padding-bottom: 337px !important;
    margin: 0 auto !important;
    border-radius: 8px !important;
}

/* ============================================ */
/* 6. SPECIAL SERVICES - ULTRA COMPACT            */
/* ============================================ */
body .special-services-section {
    padding: 20px 0 15px !important;
}

body .special-services-section .sec-title h2 {
    font-size: 24px !important;
    margin-bottom: 15px !important;
}

body .special-service-block {
    margin-bottom: 12px !important;
}

body .special-service-block .inner-box {
    padding: 10px 8px !important;
}

body .special-service-block .icon-box {
    width: 50px !important;
    height: 50px !important;
    font-size: 24px !important;
    margin-bottom: 8px !important;
}

body .special-service-block h3 {
    font-size: 14px !important;
    margin-bottom: 5px !important;
}

body .special-service-block p {
    font-size: 12px !important;
    line-height: 1.4 !important;
}

/* ============================================ */
/* 7. TEAM - TRÈS COMPACT                         */
/* ============================================ */
body .team-section {
    padding: 20px 0 !important;
}

body .team-section .sec-title h2 {
    font-size: 22px !important;
    margin-bottom: 6px !important;
}

body .team-section .sec-title .text {
    font-size: 13px !important;
}

body .team-carousel-wrapper {
    margin-top: 12px !important;
}

body .team-card-body {
    padding: 12px !important;
}

body .team-card-name {
    font-size: 14px !important;
    margin-bottom: 3px !important;
}

body .team-card-role {
    font-size: 12px !important;
}

/* ============================================ */
/* 8. TESTIMONIALS - COMPACT                      */
/* ============================================ */
body .testimonials-two {
    padding: 20px 0 !important;
}

body .testimonials-two .sec-title {
    margin-bottom: 12px !important;
}

body .testimonials-two .sec-title h2 {
    font-size: 22px !important;
}

body .testimonial-block {
    margin-bottom: 12px !important;
}

body .testimonial-block .content {
    padding: 18px !important;
}

body .testimonial-block .content .text {
    font-size: 13px !important;
    line-height: 1.5 !important;
}

body .testimonial-block .info {
    padding: 8px 0 0 85px !important;
    min-height: 75px !important;
}

body .testimonial-block .info .image {
    width: 70px !important;
    height: 70px !important;
}

body .testimonial-block .info .image img {
    width: 60px !important;
    height: 60px !important;
}

body .testimonial-block .info .name {
    font-size: 15px !important;
}

body .testimonial-block .info .designation {
    font-size: 12px !important;
}

/* ============================================ */
/* 9. CONTACT - TRÈS COMPACT                      */
/* ============================================ */
body .contact-section {
    padding: 25px 0 !important;
}

body .contact-section .sec-title {
    margin-bottom: 10px !important;
}

body .contact-section .sec-title h2 {
    font-size: 22px !important;
    margin-bottom: 5px !important;
}

body .contact-section .sec-title .lower-text {
    font-size: 13px !important;
}

body .contact-section .info {
    margin-top: 8px !important;
}

body .contact-section .info .phone {
    font-size: 20px !important;
    margin-bottom: 3px !important;
}

body .contact-section .info .email {
    font-size: 14px !important;
}

body .contact-section .default-form .form-group {
    margin-bottom: 10px !important;
}

body .contact-section .default-form .form-group input,
body .contact-section .default-form .form-group textarea {
    padding: 8px 12px !important;
    font-size: 13px !important;
    height: 42px !important;
}

body .contact-section .default-form .form-group textarea {
    height: 80px !important;
}

body .contact-section .theme-btn.btn-style-one,
body button.theme-btn.btn-style-one {
    padding: 10px 30px !important;
    font-size: 13px !important;
}

/* ============================================ */
/* 10. ABOUT - TRÈS COMPACT                       */
/* ============================================ */
body .about-section-two {
    padding: 25px 0 !important;
}

body .about-section-two .sec-title {
    margin-bottom: 10px !important;
}

body .about-section-two .sec-title h2 {
    font-size: 20px !important;
    margin-bottom: 5px !important;
}

body .about-section-two .sec-title .lower-text {
    font-size: 13px !important;
}

body .about-section-two .left-column .image {
    margin-bottom: 15px !important;
}

body .about-section-two .features {
    margin-top: 10px !important;
}

body .feature-block {
    margin-bottom: 15px !important;
}

body .feature-block .inner-box {
    padding: 8px 5px 10px !important;
}

body .feature-block .icon-box {
    font-size: 26px !important;
    padding: 5px 0 0 !important;
}

body .feature-block .inner-box .title {
    padding: 6px 0 0 !important;
    font-size: 12px !important;
}

body .about-section-two .right-column .image {
    margin-bottom: 15px !important;
}

body .about-section-two .right-column h3 {
    font-size: 17px !important;
    margin-bottom: 6px !important;
}

body .about-section-two .list-style-one li {
    font-size: 13px !important;
    margin-bottom: 3px !important;
}

/* ============================================ */
/* 11. INNER BANNER - COMPACT                     */
/* ============================================ */
body .inner-banner {
    padding: 30px 0 !important;
    min-height: 150px !important;
}

body .inner-banner .title-box h1 {
    font-size: 26px !important;
    margin-bottom: 3px !important;
}

body .inner-banner .d-text {
    font-size: 13px !important;
    padding-bottom: 3px !important;
}

body .inner-banner .breadcrumb-box {
    padding: 6px 12px !important;
    font-size: 12px !important;
}

/* ============================================ */
/* 12. CARROUSEL - RÉDUIRE HAUTEUR                */
/* ============================================ */
body .une-slide-full {
    height: 440px !important;
}

body .une-content-full {
    padding: 35px 40px !important;
}

body .une-card-full .une-headline {
    font-size: 30px !important;
    margin-bottom: 10px !important;
}

body .une-card-full .une-excerpt {
    font-size: 14px !important;
    margin-bottom: 15px !important;
}

body .une-card-full .une-btn {
    padding: 10px 30px !important;
    font-size: 14px !important;
}

/* ============================================ */
/* 13. BANNIÈRE HERO - TRÈS COMPACT               */
/* ============================================ */
body .banner-carousel .content-box {
    height: 400px !important;
}

body .banner-carousel .content-box h1 {
    font-size: 36px !important;
    margin-bottom: 10px !important;
}

body .banner-carousel .content-box .text {
    font-size: 15px !important;
    margin-bottom: 15px !important;
}

body .banner-carousel .content-box .sub-title {
    font-size: 13px !important;
    margin-bottom: 10px !important;
}

/* ============================================ */
/* 14. FOOTER - COMPACT                           */
/* ============================================ */
body .main-footer .widgets-section {
    padding: 30px 0 20px !important;
}

body .main-footer .footer-widget {
    margin-bottom: 20px !important;
}

body .main-footer .widget-title {
    margin-bottom: 10px !important;
}

body .main-footer .widget-title h4 {
    font-size: 15px !important;
}

body .main-footer .links-widget .links li {
    margin-bottom: 6px !important;
    font-size: 13px !important;
}

body .main-footer .links-widget .links li a {
    font-size: 13px !important;
}

body .main-footer .footer-bottom .inner {
    padding: 20px 0 !important;
}

/* ============================================ */
/* 15. RESPONSIVE - ENCORE PLUS SERRÉ             */
/* ============================================ */
@media (max-width: 991px) {
    body .a-la-une-section,
    body .emasi-welcome-section,
    body .emasi-video-section,
    body .special-services-section,
    body .emasi-vehicles-section,
    body .video-section,
    body .about-section-two,
    body .team-section,
    body .testimonials-two,
    body .contact-section {
        padding-top: 15px !important;
        padding-bottom: 15px !important;
    }
    
    body .emasi-video-wrapper,
    body .emasi-vehicles-wrapper {
        max-width: 500px !important;
        padding-bottom: 281px !important;
    }
    
    body .a-la-une-section .une-title {
        font-size: 26px !important;
    }
    
    body .latest-news-title {
        font-size: 20px !important;
    }
    
    body .latest-news-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        grid-template-rows: auto !important;
    }
    
    body .une-slide-full {
        height: 380px !important;
    }
    
    body .banner-carousel .content-box {
        height: 350px !important;
    }
    
    body .banner-carousel .content-box h1 {
        font-size: 28px !important;
    }
}

@media (max-width: 767px) {
    body .a-la-une-section,
    body .emasi-welcome-section,
    body .emasi-video-section,
    body .special-services-section,
    body .emasi-vehicles-section,
    body .video-section,
    body .about-section-two,
    body .team-section,
    body .testimonials-two,
    body .contact-section {
        padding-top: 15px !important;
        padding-bottom: 15px !important;
    }
    
    body .emasi-video-wrapper,
    body .emasi-vehicles-wrapper {
        max-width: 100% !important;
        padding-bottom: 56.25% !important;
    }
    
    body .a-la-une-section .une-title {
        font-size: 22px !important;
    }
    
    body .latest-news-title {
        font-size: 18px !important;
    }
    
    body .latest-news-grid {
        grid-template-columns: 1fr !important;
    }
    
    body .news-card-large {
        grid-column: span 1 !important;
    }
    
    body .inner-banner {
        padding: 20px 0 !important;
        min-height: 120px !important;
    }
    
    body .inner-banner .title-box h1 {
        font-size: 18px !important;
    }
    
    body .une-slide-full {
        height: 320px !important;
    }
    
    body .une-content-full {
        padding: 20px 15px !important;
    }
    
    body .une-card-full .une-headline {
        font-size: 18px !important;
    }
    
    body .banner-carousel .content-box {
        height: 300px !important;
    }
    
    body .banner-carousel .content-box h1 {
        font-size: 22px !important;
    }
    
    body .sec-title h2 {
        font-size: 18px !important;
    }
}
/* ============================================ */
/* 🔥🔥🔥 PARTAGE - STYLE "SUIVEZ-NOUS" (FORCE)    */
/* Écrase TOUT, y compris les styles inline        */
/* ============================================ */

/* Le conteneur du partage */
body .news-detail-share,
body .post-details .share-it,
body .share-it,
body .news-detail-article .news-detail-share {
    display: flex !important;
    align-items: center !important;
    gap: 25px !important;
    padding: 20px 0 !important;
    background: transparent !important;
    background-image: none !important;
    border-top: 1px solid #e2e8f0 !important;
    border-bottom: 1px solid #e2e8f0 !important;
    margin: 25px 0 !important;
    flex-wrap: wrap !important;
    box-shadow: none !important;
}

/* Label "PARTAGER :" en BLEU */
body .news-detail-share > span,
body .share-it > span,
body .share-toggler,
body .news-detail-share .share-label {
    color: #0A2FBF !important;
    font-weight: 700 !important;
    font-size: 15px !important;
    text-transform: uppercase !important;
    letter-spacing: 2px !important;
    background: transparent !important;
    margin-right: 10px !important;
    text-decoration: none !important;
}

/* BOUTONS DE PARTAGE - TOUS SANS FOND ! */
body .news-detail-share a,
body .news-detail-share a:link,
body .news-detail-share a:visited,
body .news-detail-share a:active,
body .news-detail-share a.share-btn,
body .news-detail-share a.share-btn.fb,
body .news-detail-share a.share-btn.tw,
body .news-detail-share a.share-btn.wa,
body .share-btn,
body .share-btn.fb,
body .share-btn.tw,
body .share-btn.wa,
body a[href*="facebook.com/sharer"],
body a[href*="twitter.com/intent"],
body a[href*="wa.me"],
body .share-it a,
body .share-it a.fb,
body .share-it a.tw,
body .share-it a.wa {
    width: auto !important;
    height: auto !important;
    min-width: 0 !important;
    min-height: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    background-position: initial !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-decoration: none !important;
    text-shadow: none !important;
    outline: none !important;
    transition: all 0.3s ease !important;
}

/* ICÔNES - BLEU EMASI comme "Suivez-nous" */
body .news-detail-share a i,
body .news-detail-share a .fa,
body .news-detail-share a .fab,
body .news-detail-share a .fas,
body .news-detail-share a svg,
body .share-btn i,
body .share-btn .fa,
body .share-btn .fab,
body .share-btn .fas,
body .share-btn svg {
    color: #0A2FBF !important;
    fill: #0A2FBF !important;
    font-size: 22px !important;
    width: auto !important;
    height: auto !important;
    background: transparent !important;
    text-shadow: none !important;
    transition: all 0.3s ease !important;
}

/* Hover - ROUGE EMASI */
body .news-detail-share a:hover,
body .share-btn:hover {
    background: transparent !important;
    transform: translateY(-3px) !important;
}

body .news-detail-share a:hover i,
body .news-detail-share a:hover .fa,
body .news-detail-share a:hover .fab,
body .news-detail-share a:hover .fas,
body .share-btn:hover i,
body .share-btn:hover .fa,
body .share-btn:hover .fab,
body .share-btn:hover .fas {
    color: #ED1C24 !important;
    fill: #ED1C24 !important;
}

/* ✅ Écraser TOUT style inline possible */
body .news-detail-share [style*="background"],
body .share-btn [style*="background"],
body .news-detail-share [style*="background-color"],
body .share-btn [style*="background-color"] {
    background: transparent !important;
    background-color: transparent !important;
}

/* ============================================ */
/* RESPONSIVE                                     */
/* ============================================ */
@media (max-width: 767px) {
    body .news-detail-share,
    body .share-it {
        gap: 15px !important;
        justify-content: center !important;
    }
    
    body .news-detail-share a i,
    body .news-detail-share a .fab,
    body .share-btn i {
        font-size: 20px !important;
    }
}
/* ============================================ */
/* 🔥 CORRECTIONS - BANNER PLUS GRAND + PARTAGE   */
/* ============================================ */

/* ============================================ */
/* 1. INNER BANNER - PLUS GRAND                    */
/* ============================================ */

body .inner-banner {
    position: relative !important;
    background: #1a1a1a !important;
    padding: 120px 0 !important;      /* ✅ Plus grand qu'avant */
    overflow: hidden !important;
    min-height: 380px !important;      /* ✅ Hauteur minimum garantie */
    display: flex !important;
    align-items: center !important;
    border: none !important;
}

/* Image de fond bien visible */
body .inner-banner .image-layer {
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    opacity: 1 !important;
    z-index: 1 !important;
    display: block !important;
    visibility: visible !important;
}

/* Voile sombre pour lisibilité */
body .inner-banner .image-layer:before {
    content: '' !important;
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background: linear-gradient(
        90deg,
        rgba(0, 0, 0, 0.65) 0%,
        rgba(0, 0, 0, 0.40) 50%,
        rgba(0, 0, 0, 0.55) 100%
    ) !important;
    z-index: 2 !important;
}

/* Contenu au-dessus */
body .inner-banner .inner {
    position: relative !important;
    z-index: 3 !important;
    padding: 0 !important;
    width: 100% !important;
}

body .inner-banner .auto-container {
    position: relative !important;
    z-index: 3 !important;
}

/* Titre */
body .inner-banner .title-box h1,
body .inner-banner h1 {
    color: #FFFFFF !important;
    font-size: 48px !important;      /* ✅ Plus grand */
    font-weight: 900 !important;
    margin-bottom: 12px !important;
    text-shadow: 0 3px 15px rgba(0, 0, 0, 0.8) !important;
    line-height: 1.15 !important;
}

/* Sous-titre */
body .inner-banner .d-text {
    color: #FFFFFF !important;
    font-size: 16px !important;
    font-weight: 500 !important;
    padding-bottom: 6px !important;
    border-bottom: 2px solid rgba(255, 255, 255, 0.7) !important;
    text-shadow: 0 1px 5px rgba(0, 0, 0, 0.5) !important;
}

/* ============================================ */
/* 2. PARTAGE - FOND BLEU DERRIIÈRE LES ICÔNES    */
/* ============================================ */

/* Conteneur du partage */
body .news-detail-share,
body .post-details .share-it,
body .share-it {
    display: flex !important;
    align-items: center !important;
    gap: 15px !important;
    padding: 25px 0 !important;
    background: transparent !important;
    border-top: 1px solid #e2e8f0 !important;
    border-bottom: 1px solid #e2e8f0 !important;
    margin: 30px 0 !important;
    flex-wrap: wrap !important;
}

/* Label "PARTAGER :" */
body .news-detail-share > span,
body .news-detail-share .share-label,
body .share-it > span {
    color: #0A2FBF !important;
    font-weight: 700 !important;
    font-size: 15px !important;
    text-transform: uppercase !important;
    letter-spacing: 2px !important;
    margin-right: 15px !important;
}

/* ✅ BOUTONS DE PARTAGE - FOND BLEU ROND */
body .news-detail-share a,
body .news-detail-share a.share-btn,
body .news-detail-share a.share-btn.fb,
body .news-detail-share a.share-btn.tw,
body .news-detail-share a.share-btn.wa,
body .news-detail-share a[href*="facebook"],
body .news-detail-share a[href*="twitter"],
body .news-detail-share a[href*="wa.me"],
body .share-btn,
body .share-btn.fb,
body .share-btn.tw,
body .share-btn.wa,
body .share-it a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    min-height: 44px !important;
    background: #0A2FBF !important;
    background-color: #0A2FBF !important;
    background-image: none !important;
    border: none !important;
    border-radius: 50% !important;
    box-shadow: 0 4px 12px rgba(10, 47, 191, 0.25) !important;
    padding: 0 !important;
    margin: 0 !important;
    text-decoration: none !important;
    transition: all 0.3s ease !important;
    cursor: pointer !important;
}

/* ✅ ICÔNES EN BLANC */
body .news-detail-share a i,
body .news-detail-share a .fa,
body .news-detail-share a .fab,
body .news-detail-share a .fas,
body .share-btn i,
body .share-btn .fa,
body .share-btn .fab,
body .share-btn .fas,
body .share-it a i {
    color: #FFFFFF !important;
    fill: #FFFFFF !important;
    font-size: 18px !important;
    background: transparent !important;
    line-height: 1 !important;
}

/* Hover - Rouge */
body .news-detail-share a:hover,
body .news-detail-share a.share-btn:hover,
body .share-btn:hover,
body .share-it a:hover {
    background: #ED1C24 !important;
    background-color: #ED1C24 !important;
    transform: translateY(-3px) !important;
    box-shadow: 0 8px 20px rgba(237, 28, 36, 0.4) !important;
}

body .news-detail-share a:hover i,
body .news-detail-share a:hover .fab,
body .share-btn:hover i,
body .share-btn:hover .fab {
    color: #FFFFFF !important;
    fill: #FFFFFF !important;
}

/* ============================================ */
/* 3. RESPONSIVE                                   */
/* ============================================ */

@media (max-width: 991px) {
    body .inner-banner {
        padding: 80px 0 !important;
        min-height: 280px !important;
    }
    body .inner-banner .title-box h1 {
        font-size: 36px !important;
    }
}

@media (max-width: 767px) {
    body .inner-banner {
        padding: 60px 0 !important;
        min-height: 220px !important;
    }
    body .inner-banner .title-box h1 {
        font-size: 26px !important;
    }
    body .inner-banner .d-text {
        font-size: 14px !important;
    }
    
    body .news-detail-share,
    body .share-it {
        gap: 12px !important;
        justify-content: center !important;
    }
    
    body .news-detail-share a,
    body .share-btn {
        width: 38px !important;
        height: 38px !important;
        min-width: 38px !important;
        min-height: 38px !important;
    }
    
    body .news-detail-share a i,
    body .share-btn i {
        font-size: 15px !important;
    }
}
/* ============================================ */
/* ACTUALITÉS RÉCENTES - SIDEBAR STYLE            */
/* ============================================ */

/* Conteneur de la liste */
body .sidebar .recent-posts ul,
body .sidebar-widget .widget-inner ul,
body .blog-sidebar .widget-inner ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Chaque item - style carte */
body .sidebar .recent-posts ul li,
body .sidebar-widget .widget-inner ul li,
body .blog-sidebar .widget-inner ul li {
    position: relative !important;
    padding: 14px 18px 14px 42px !important;
    margin-bottom: 10px !important;
    background: #f8faff !important;
    border-left: 4px solid #0A2FBF !important;
    border-radius: 8px !important;
    transition: all 0.3s ease !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
    color: #333 !important;
}

/* Icône flèche (à gauche) */
body .sidebar .recent-posts ul li:before,
body .sidebar-widget .widget-inner ul li:before,
body .blog-sidebar .widget-inner ul li:before {
    content: '\f054' !important;
    font-family: 'Font Awesome 5 Free' !important;
    font-weight: 900 !important;
    position: absolute !important;
    left: 15px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    color: #ED1C24 !important;
    font-size: 12px !important;
    transition: all 0.3s ease !important;
}

/* Lien à l'intérieur */
body .sidebar .recent-posts ul li a,
body .sidebar-widget .widget-inner ul li a,
body .blog-sidebar .widget-inner ul li a {
    color: #0A2FBF !important;
    text-decoration: none !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
    display: block !important;
    transition: all 0.3s ease !important;
    border: none !important;
}

/* Hover - fond bleu, texte blanc */
body .sidebar .recent-posts ul li:hover,
body .sidebar-widget .widget-inner ul li:hover,
body .blog-sidebar .widget-inner ul li:hover {
    background: #0A2FBF !important;
    border-left-color: #ED1C24 !important;
    transform: translateX(5px) !important;
    box-shadow: 0 5px 15px rgba(10, 47, 191, 0.15) !important;
}

body .sidebar .recent-posts ul li:hover:before,
body .sidebar-widget .widget-inner ul li:hover:before,
body .blog-sidebar .widget-inner ul li:hover:before {
    color: #FFFFFF !important;
    left: 18px !important;
}

body .sidebar .recent-posts ul li:hover a,
body .sidebar-widget .widget-inner ul li:hover a,
body .blog-sidebar .widget-inner ul li:hover a {
    color: #FFFFFF !important;
}
/* ============================================ */
/* 🔥 SUPPRIMER LES ACCOLADES / CROCHETS          */
/* Actualités Récentes - sidebar                  */
/* ============================================ */

/* 1. SUPPRIMER TOUTES les pseudo-accolades/crochets */
body .sidebar .recent-posts ul li::before,
body .sidebar .recent-posts ul li::after,
body .sidebar-widget .widget-inner ul li::before,
body .sidebar-widget .widget-inner ul li::after,
body .blog-sidebar .widget-inner ul li::before,
body .blog-sidebar .widget-inner ul li::after,
body .sidebar .widget-inner ul li::before,
body .sidebar .widget-inner ul li::after {
    display: none !important;
    content: none !important;
    border: none !important;
    background: none !important;
    width: 0 !important;
    height: 0 !important;
    opacity: 0 !important;
    visibility: hidden !important;
}

/* 2. Nettoyer les styles des li - Style carte simple */
body .sidebar .recent-posts ul li,
body .sidebar-widget .widget-inner ul li,
body .blog-sidebar .widget-inner ul li,
body .sidebar .widget-inner ul li {
    position: relative !important;
    padding: 14px 18px !important;
    margin-bottom: 10px !important;
    background: #f8faff !important;
    border: none !important;
    border-left: 4px solid #0A2FBF !important;
    border-radius: 8px !important;
    transition: all 0.3s ease !important;
    list-style: none !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
    box-shadow: 0 2px 8px rgba(10, 47, 191, 0.04) !important;
    overflow: hidden !important;
}

/* 3. Lien dans le li */
body .sidebar .recent-posts ul li a,
body .sidebar-widget .widget-inner ul li a,
body .blog-sidebar .widget-inner ul li a,
body .sidebar .widget-inner ul li a {
    color: #0A2FBF !important;
    text-decoration: none !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
    display: block !important;
    border-bottom: none !important;
    transition: all 0.3s ease !important;
    background: transparent !important;
}

body .sidebar .recent-posts ul li a:hover,
body .sidebar-widget .widget-inner ul li a:hover,
body .blog-sidebar .widget-inner ul li a:hover {
    color: #FFFFFF !important;
    text-decoration: none !important;
}

/* 4. Hover - fond bleu, texte blanc */
body .sidebar .recent-posts ul li:hover,
body .sidebar-widget .widget-inner ul li:hover,
body .blog-sidebar .widget-inner ul li:hover,
body .sidebar .widget-inner ul li:hover {
    background: #0A2FBF !important;
    border-left-color: #ED1C24 !important;
    transform: translateX(5px) !important;
    box-shadow: 0 5px 15px rgba(10, 47, 191, 0.15) !important;
}

/* 5. Enlever tout pseudo-élément résiduel sur les UL et widget-inner */
body .sidebar .recent-posts ul::before,
body .sidebar .recent-posts ul::after,
body .sidebar .widget-inner::before,
body .sidebar .widget-inner::after,
body .sidebar-widget .widget-inner::before,
body .sidebar-widget .widget-inner::after {
    display: none !important;
    content: none !important;
    border: none !important;
    background: none !important;
}

/* 6. Corriger le titre "Actualités Récentes" */
body .sidebar .sidebar-title h3,
body .sidebar-widget .sidebar-title h3,
body .blog-sidebar .sidebar-title h3 {
    color: #ED1C24 !important;
    font-weight: 800 !important;
    font-size: 18px !important;
    margin-bottom: 15px !important;
    padding-bottom: 8px !important;
    border-bottom: 3px solid #ED1C24 !important;
    display: inline-block !important;
    text-transform: none !important;
    background: transparent !important;
    text-decoration: none !important;
}

body .sidebar .sidebar-title h3::before,
body .sidebar .sidebar-title h3::after {
    display: none !important;
    content: none !important;
}

/* 7. RESPONSIVE */
@media (max-width: 767px) {
    body .sidebar .recent-posts ul li,
    body .sidebar-widget .widget-inner ul li {
        padding: 12px 15px !important;
        font-size: 13px !important;
    }
    
    body .sidebar .sidebar-title h3 {
        font-size: 16px !important;
    }
}
/* ============================================ */
/* ACTUALITÉS RÉCENTES - REMPLACER ACCOLADES PAR PUCE */
/* 🔵 Bleu #0A2FBF - 🔴 Rouge #ED1C24              */
/* ============================================ */

/* 1. SUPPRIMER les accolades (pseudo-éléments) */
body .sidebar .recent-posts ul li::before,
body .sidebar .recent-posts ul li::after,
body .sidebar-widget .widget-inner ul li::before,
body .sidebar-widget .widget-inner ul li::after,
body .blog-sidebar .widget-inner ul li::before,
body .blog-sidebar .widget-inner ul li::after,
body .sidebar .widget-inner ul li::before,
body .sidebar .widget-inner ul li::after {
    display: none !important;
    content: none !important;
    border: none !important;
    background: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
}

/* 2. Reset des li - structure propre */
body .sidebar .recent-posts ul li,
body .sidebar-widget .widget-inner ul li,
body .blog-sidebar .widget-inner ul li,
body .sidebar .widget-inner ul li {
    position: relative !important;
    padding: 14px 18px 14px 38px !important;   /* ✅ Espace à gauche pour la puce */
    margin-bottom: 10px !important;
    background: #f8faff !important;
    border: none !important;
    border-radius: 8px !important;
    transition: all 0.3s ease !important;
    list-style: none !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
    box-shadow: 0 2px 8px rgba(10, 47, 191, 0.04) !important;
    overflow: visible !important;
}

/* 3. ✅ AJOUTER la puce rouge */
body .sidebar .recent-posts ul li::before,
body .sidebar-widget .widget-inner ul li::before,
body .blog-sidebar .widget-inner ul li::before,
body .sidebar .widget-inner ul li::before {
    content: '' !important;
    display: block !important;
    position: absolute !important;
    left: 16px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 10px !important;
    height: 10px !important;
    background: #ED1C24 !important;   /* ✅ Rouge EMASI */
    border-radius: 50% !important;      /* ✅ Cercle */
    box-shadow: 0 0 0 4px rgba(237, 28, 36, 0.12) !important;
    opacity: 1 !important;
    visibility: visible !important;
    transition: all 0.3s ease !important;
}

/* 4. Lien */
body .sidebar .recent-posts ul li a,
body .sidebar-widget .widget-inner ul li a,
body .blog-sidebar .widget-inner ul li a,
body .sidebar .widget-inner ul li a {
    color: #0A2FBF !important;
    text-decoration: none !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
    display: block !important;
    border: none !important;
    background: transparent !important;
    transition: all 0.3s ease !important;
}

/* 5. Hover - fond bleu + puce blanche */
body .sidebar .recent-posts ul li:hover,
body .sidebar-widget .widget-inner ul li:hover,
body .blog-sidebar .widget-inner ul li:hover,
body .sidebar .widget-inner ul li:hover {
    background: #0A2FBF !important;
    transform: translateX(5px) !important;
    box-shadow: 0 5px 15px rgba(10, 47, 191, 0.15) !important;
}

body .sidebar .recent-posts ul li:hover::before,
body .sidebar-widget .widget-inner ul li:hover::before,
body .blog-sidebar .widget-inner ul li:hover::before,
body .sidebar .widget-inner ul li:hover::before {
    background: #FFFFFF !important;
    box-shadow: 0 0 0 4px rgba(255, 255, 255, 0.3) !important;
    left: 20px !important;
}

body .sidebar .recent-posts ul li:hover a,
body .sidebar-widget .widget-inner ul li:hover a,
body .blog-sidebar .widget-inner ul li:hover a,
body .sidebar .widget-inner ul li:hover a {
    color: #FFFFFF !important;
}

/* 6. Nettoyer le titre */
body .sidebar .sidebar-title h3,
body .sidebar-widget .sidebar-title h3 {
    color: #ED1C24 !important;
    font-weight: 800 !important;
    font-size: 18px !important;
    margin-bottom: 15px !important;
    padding-bottom: 8px !important;
    border-bottom: 3px solid #ED1C24 !important;
    display: inline-block !important;
}

/* 7. RESPONSIVE */
@media (max-width: 767px) {
    body .sidebar .recent-posts ul li {
        padding: 12px 15px 12px 35px !important;
        font-size: 13px !important;
    }
    body .sidebar .recent-posts ul li::before {
        left: 14px !important;
        width: 8px !important;
        height: 8px !important;
    }
}
/* ============================================ */
/* BOUTON "VOIR PLUS" - ACTUALITÉS               */
/* 🔵 Bleu #0A2FBF - 🔴 Rouge #ED1C24 - ⚪ Blanc */
/* ============================================ */

.news-load-more-wrapper {
    text-align: center !important;
    margin: 35px 0 20px !important;
    padding: 20px 0 !important;
}

/* Bouton principal */
.load-more-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    padding: 14px 45px !important;
    background: #0A2FBF !important;
    color: #FFFFFF !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 1.5px !important;
    border: 2px solid #0A2FBF !important;
    border-radius: 50px !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    box-shadow: 0 8px 25px rgba(10, 47, 191, 0.25) !important;
    font-family: 'Arial', sans-serif !important;
    outline: none !important;
}

.load-more-btn:hover:not(:disabled) {
    background: #ED1C24 !important;
    border-color: #ED1C24 !important;
    transform: translateY(-3px) !important;
    box-shadow: 0 12px 35px rgba(237, 28, 36, 0.4) !important;
}

.load-more-btn:active:not(:disabled) {
    transform: translateY(-1px) !important;
}

.load-more-btn:disabled {
    opacity: 0.7 !important;
    cursor: not-allowed !important;
}

/* Flèche */
.load-more-btn .btn-icon {
    display: inline-flex !important;
    align-items: center !important;
    font-size: 14px !important;
    transition: transform 0.3s ease !important;
}

.load-more-btn:hover .btn-icon {
    transform: translateY(3px) !important;
}

/* Loader */
.load-more-btn .btn-loader {
    font-size: 14px !important;
}

/* Message "plus d'actualités" */
.no-more-news {
    text-align: center !important;
    color: #4a5568 !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    padding: 25px !important;
    background: #f8faff !important;
    border-radius: 12px !important;
    border: 2px dashed #cbd5e0 !important;
    margin: 30px auto !important;
    max-width: 400px !important;
}

/* Animation d'apparition des nouveaux articles */
.news-list-item {
    animation: fadeInUp 0.5s ease !important;
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ============================================ */
/* RESPONSIVE                                     */
/* ============================================ */

@media (max-width: 767px) {
    .load-more-btn {
        padding: 12px 30px !important;
        font-size: 13px !important;
        letter-spacing: 1px !important;
    }
    
    .news-load-more-wrapper {
        margin: 25px 0 15px !important;
    }
}
/* ============================================ */
/* BOUTON "VOIR PLUS" - ACTUALITÉS               */
/* ============================================ */

.news-load-more-wrapper {
    text-align: center !important;
    margin: 35px 0 20px !important;
    padding: 20px 0 !important;
}

.load-more-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    padding: 14px 45px !important;
    background: #0A2FBF !important;
    color: #FFFFFF !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 1.5px !important;
    border: 2px solid #0A2FBF !important;
    border-radius: 50px !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    box-shadow: 0 8px 25px rgba(10, 47, 191, 0.25) !important;
    font-family: 'Arial', sans-serif !important;
    outline: none !important;
}

.load-more-btn:hover:not(:disabled) {
    background: #ED1C24 !important;
    border-color: #ED1C24 !important;
    transform: translateY(-3px) !important;
    box-shadow: 0 12px 35px rgba(237, 28, 36, 0.4) !important;
}

.load-more-btn:disabled {
    opacity: 0.7 !important;
    cursor: not-allowed !important;
}

.load-more-btn .btn-icon {
    display: inline-flex !important;
    align-items: center !important;
    font-size: 14px !important;
    transition: transform 0.3s ease !important;
}

.load-more-btn:hover .btn-icon {
    transform: translateY(3px) !important;
}

.no-more-news {
    text-align: center !important;
    color: #4a5568 !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    padding: 25px !important;
    background: #f8faff !important;
    border-radius: 12px !important;
    border: 2px dashed #cbd5e0 !important;
    margin: 30px auto !important;
    max-width: 400px !important;
}

.news-list-item {
    animation: fadeInUp 0.5s ease !important;
}

@keyframes fadeInUp {
    from { opacity: 0; transform: translateY(20px); }
    to   { opacity: 1; transform: translateY(0); }
}

@media (max-width: 767px) {
    .load-more-btn {
        padding: 12px 30px !important;
        font-size: 13px !important;
    }
}
/* ============================================ */
/* SEND VIA - BOUTONS DIRECTS                    */
/* ============================================ */
:root {
    --emasi-blue: #0A2FBF;
    --emasi-red: #ED1C24;
    --emasi-white: #FFFFFF;
}

.send-via-wrapper {
    margin-top: 10px;
    margin-bottom: 20px;
    padding: 0 15px;
}

.send-via-label {
    font-size: 13px;
    color: #666;
    margin-bottom: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.send-via-options {
    display: flex;
    gap: 12px;
}

.send-option-btn {
    flex: 1;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 16px 15px;
    border: 2px solid #e2eef2;
    border-radius: 10px;
    cursor: pointer;
    transition: all 0.3s ease;
    background: #fff;
    font-size: 14px;
    font-weight: 700;
    font-family: inherit;
    outline: none;
}

.send-option-btn i {
    font-size: 22px;
    line-height: 1;
}

/* WhatsApp button */
.whatsapp-btn {
    color: #25D366;
    border-color: #25D366;
    background: #f0fdf4;
}

.whatsapp-btn:hover {
    background: #25D366;
    color: #ffffff;
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(37, 211, 102, 0.3);
}

.whatsapp-btn:hover i {
    color: #ffffff;
}

.whatsapp-btn.loading {
    pointer-events: none;
    opacity: 0.7;
}

.whatsapp-btn.loading::before {
    content: "";
    width: 16px;
    height: 16px;
    border: 2px solid rgba(37, 211, 102, 0.3);
    border-top-color: #25D366;
    border-radius: 50%;
    animation: sendSpin 0.8s linear infinite;
    margin-right: 8px;
}

/* Email button */
.email-btn {
    color: #0A2FBF;
    border-color: #0A2FBF;
    background: #eff6ff;
}

.email-btn:hover {
    background: #0A2FBF;
    color: #ffffff;
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(10, 47, 191, 0.3);
}

.email-btn:hover i {
    color: #ffffff;
}

.email-btn.loading {
    pointer-events: none;
    opacity: 0.7;
}

.email-btn.loading::before {
    content: "";
    width: 16px;
    height: 16px;
    border: 2px solid rgba(10, 47, 191, 0.3);
    border-top-color: #0A2FBF;
    border-radius: 50%;
    animation: sendSpin 0.8s linear infinite;
    margin-right: 8px;
}

@keyframes sendSpin {
    to { transform: rotate(360deg); }
}

/* ============================================ */
/* TOAST                                         */
/* ============================================ */
.custom-toast {
    position: fixed;
    top: 20px;
    right: 20px;
    z-index: 99999;
    min-width: 300px;
    max-width: 400px;
    background: #fff;
    border-radius: 10px;
    box-shadow: 0 10px 40px rgba(0,0,0,0.15);
    padding: 16px 20px;
    display: flex;
    align-items: center;
    gap: 12px;
    font-family: Arial, sans-serif;
    font-size: 14px;
    animation: slideInRight 0.4s ease;
    border: none;               /* ✅ Pas de bordure */
}

.custom-toast .toast-icon {
    font-size: 24px;
    color: #27ae60;
}

.custom-toast.error .toast-icon {
    color: #ED1C24;
}

.custom-toast .toast-message {
    color: #333;
    font-weight: 500;
}
.custom-toast .toast-icon {
    font-size: 24px;
    color: #27ae60;
}

.custom-toast.error .toast-icon {
    color: #ED1C24;
}

.custom-toast .toast-message {
    color: #333;
    font-weight: 500;
}

@keyframes sendSlideInRight {
    from { transform: translateX(120%); opacity: 0; }
    to { transform: translateX(0); opacity: 1; }
}

/* ============================================ */
/* RESPONSIVE                                    */
/* ============================================ */
@media (max-width: 576px) {
    .send-via-options {
        flex-direction: column;
    }
    .send-via-label {
        text-align: center;
    }
}
/* ============================================ */
/* CTA BOX - HOME CONTACT SECTION               */
/* ============================================ */
.cta-box {
    background: linear-gradient(135deg, #0A2FBF 0%, #071F80 100%);
    border-radius: 20px;
    padding: 50px 40px;
    text-align: center;
    box-shadow: 0 20px 60px rgba(10, 47, 191, 0.35);
    position: relative;
    overflow: hidden;
    transition: all 0.3s ease;
}

/* Effet décoratif */
.cta-box::before {
    content: "";
    position: absolute;
    top: -50%;
    right: -50%;
    width: 200%;
    height: 200%;
    background: radial-gradient(circle, rgba(237, 28, 36, 0.15) 0%, transparent 70%);
    animation: ctaRotate 20s linear infinite;
    pointer-events: none;
}

@keyframes ctaRotate {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

/* Icône */
.cta-box .cta-icon {
    width: 90px;
    height: 90px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.15);
    border: 3px solid rgba(255, 255, 255, 0.3);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 25px;
    position: relative;
    z-index: 2;
    animation: ctaPulse 2s ease-in-out infinite;
}

@keyframes ctaPulse {
    0%, 100% { transform: scale(1); }
    50% { transform: scale(1.08); }
}

.cta-box .cta-icon i {
    font-size: 38px;
    color: #ffffff;
}

/* Titre */
.cta-box .cta-title {
    font-size: 26px;
    font-weight: 700;
    color: #ffffff;
    margin: 0 0 15px;
    font-family: 'Arial', sans-serif;
    position: relative;
    z-index: 2;
}

/* Texte */
.cta-box .cta-text {
    font-size: 15px;
    color: rgba(255, 255, 255, 0.85);
    line-height: 1.7;
    margin-bottom: 30px;
    font-family: 'Arial', sans-serif;
    position: relative;
    z-index: 2;
}

.cta-box .cta-text strong {
    color: #ffffff;
}

/* ============================================ */
/* GROS BOUTON BLANC - TRÈS VISIBLE              */
/* ============================================ */
.cta-big-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    background: #ffffff;
    color: #0A2FBF;
    padding: 20px 45px;
    border-radius: 50px;
    font-size: 16px;
    font-weight: 800;
    letter-spacing: 1.5px;
    text-decoration: none;
    text-transform: uppercase;
    font-family: 'Arial', sans-serif;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.25);
    transition: all 0.3s ease;
    position: relative;
    z-index: 2;
    border: 3px solid #ffffff;
    animation: ctaButtonGlow 2.5s ease-in-out infinite;
    cursor: pointer;
}

@keyframes ctaButtonGlow {
    0%, 100% {
        box-shadow: 0 10px 30px rgba(0, 0, 0, 0.25), 0 0 0 0 rgba(255, 255, 255, 0.4);
    }
    50% {
        box-shadow: 0 10px 30px rgba(0, 0, 0, 0.25), 0 0 0 15px rgba(255, 255, 255, 0);
    }
}

.cta-big-btn .cta-btn-icon {
    font-size: 20px;
    color: #ED1C24;
    transition: transform 0.3s ease;
}

.cta-big-btn .cta-btn-arrow {
    font-size: 18px;
    color: #0A2FBF;
    transition: transform 0.3s ease;
}

.cta-big-btn:hover {
    background: #ED1C24;
    color: #ffffff;
    border-color: #ED1C24;
    transform: translateY(-3px) scale(1.03);
    box-shadow: 0 15px 40px rgba(237, 28, 36, 0.5);
}

.cta-big-btn:hover .cta-btn-icon {
    color: #ffffff;
    transform: rotate(-15deg) scale(1.1);
}

.cta-big-btn:hover .cta-btn-arrow {
    color: #ffffff;
    transform: translateX(8px);
}

/* Petit indice sous le bouton */
.cta-box .cta-hint {
    margin-top: 20px;
    font-size: 12px;
    color: rgba(255, 255, 255, 0.6);
    font-family: 'Arial', sans-serif;
    position: relative;
    z-index: 2;
}

.cta-box .cta-hint i {
    margin-right: 5px;
    animation: ctaHint 1.5s ease-in-out infinite;
}

@keyframes ctaHint {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-3px); }
}

/* ============================================ */
/* RESPONSIVE                                    */
/* ============================================ */
@media (max-width: 991px) {
    .cta-box {
        margin-top: 30px;
        padding: 40px 30px;
    }
}

@media (max-width: 576px) {
    .cta-box {
        padding: 35px 20px;
        border-radius: 15px;
    }
    
    .cta-box .cta-title {
        font-size: 20px;
    }
    
    .cta-box .cta-text {
        font-size: 14px;
    }
    
    .cta-box .cta-icon {
        width: 70px;
        height: 70px;
    }
    
    .cta-box .cta-icon i {
        font-size: 28px;
    }
    
    .cta-big-btn {
        width: 100%;
        padding: 18px 25px;
        font-size: 14px;
        flex-wrap: wrap;
        gap: 8px;
    }
    
    .cta-big-btn .cta-btn-icon,
    .cta-big-btn .cta-btn-arrow {
        font-size: 16px;
    }
}
/* ============================================ */
/* NEWSLETTER SECTION                            */
/* ============================================ */
.newsletter-section {
    padding: 60px 0;
    background: linear-gradient(135deg, #0A2FBF 0%, #071F80 100%);
    position: relative;
    overflow: hidden;
}

.newsletter-section::before {
    content: "";
    position: absolute;
    top: -50%;
    right: -20%;
    width: 500px;
    height: 500px;
    background: radial-gradient(circle, rgba(237, 28, 36, 0.15) 0%, transparent 70%);
    pointer-events: none;
}

.newsletter-box {
    max-width: 700px;
    margin: 0 auto;
    text-align: center;
    position: relative;
    z-index: 2;
}

.newsletter-icon {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.15);
    border: 3px solid rgba(255, 255, 255, 0.3);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 20px;
    animation: newsletterPulse 2s ease-in-out infinite;
}

@keyframes newsletterPulse {
    0%, 100% { transform: scale(1); }
    50% { transform: scale(1.08); }
}

.newsletter-icon i {
    font-size: 34px;
    color: #ffffff;
}

.newsletter-title {
    font-size: 28px;
    font-weight: 700;
    color: #ffffff;
    margin: 0 0 15px;
    font-family: 'Arial', sans-serif;
}

.newsletter-text {
    font-size: 15px;
    color: rgba(255, 255, 255, 0.85);
    line-height: 1.7;
    margin-bottom: 30px;
    font-family: 'Arial', sans-serif;
}

.newsletter-text strong {
    color: #ED1C24;
}

/* Form */
.newsletter-form {
    max-width: 550px;
    margin: 0 auto;
}

.newsletter-input-group {
    display: flex;
    background: #ffffff;
    border-radius: 50px;
    padding: 6px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.2);
    overflow: hidden;
}

.newsletter-input-group input {
    flex: 1;
    border: none;
    background: transparent;
    padding: 15px 25px;
    font-size: 14px;
    font-family: Arial, sans-serif;
    color: #333;
    outline: none;
    min-width: 0;
}

.newsletter-input-group input::placeholder {
    color: #999;
}

.newsletter-input-group button {
    background: #0A2FBF;
    color: #ffffff;
    border: none;
    padding: 15px 30px;
    border-radius: 50px;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1px;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    gap: 8px;
    font-family: Arial, sans-serif;
    white-space: nowrap;
}

.newsletter-input-group button:hover {
    background: #ED1C24;
    transform: scale(1.02);
}

.newsletter-input-group button:disabled {
    opacity: 0.7;
    cursor: not-allowed;
}

.newsletter-input-group button i {
    font-size: 14px;
}

.newsletter-hint {
    font-size: 12px;
    color: rgba(255, 255, 255, 0.6);
    margin-top: 15px;
    font-family: Arial, sans-serif;
}

.newsletter-hint i {
    margin-right: 5px;
}

/* Toast */
.newsletter-toast {
    position: fixed;
    top: 20px;
    right: 20px;
    z-index: 99999;
    min-width: 300px;
    max-width: 400px;
    background: #fff;
    border-radius: 10px;
    box-shadow: 0 10px 40px rgba(0,0,0,0.15);
    padding: 16px 20px;
    display: flex;
    align-items: center;
    gap: 12px;
    font-family: Arial, sans-serif;
    font-size: 14px;
    animation: newsletterSlideIn 0.4s ease;
    border-left: 4px solid #27ae60;
}

.newsletter-toast i {
    font-size: 22px;
    color: #27ae60;
}

.newsletter-toast.error {
    border-left-color: #ED1C24;
}

.newsletter-toast.error i {
    color: #ED1C24;
}

@keyframes newsletterSlideIn {
    from { transform: translateX(120%); opacity: 0; }
    to { transform: translateX(0); opacity: 1; }
}

/* Responsive */
@media (max-width: 768px) {
    .newsletter-section {
        padding: 45px 15px;
    }
    
    .newsletter-title {
        font-size: 22px;
    }
    
    .newsletter-text {
        font-size: 14px;
    }
    
    .newsletter-input-group {
        flex-direction: column;
        border-radius: 15px;
        padding: 10px;
        gap: 8px;
    }
    
    .newsletter-input-group input {
        padding: 12px 15px;
        text-align: center;
    }
    
    .newsletter-input-group button {
        justify-content: center;
        padding: 14px 20px;
        width: 100%;
    }
}