.elementor-3992 .elementor-element.elementor-element-19c94b2{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-3992 .elementor-element.elementor-element-19c94b2:not(.elementor-motion-effects-element-type-background), .elementor-3992 .elementor-element.elementor-element-19c94b2 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://www.addchateauroux.com/wp-content/uploads/2026/03/banniere-bibliotheque-message1.png");background-repeat:no-repeat;background-size:cover;}.elementor-3992 .elementor-element.elementor-element-eca6b56{--display:flex;}.elementor-3992 .elementor-element.elementor-element-eca6b56:not(.elementor-motion-effects-element-type-background), .elementor-3992 .elementor-element.elementor-element-eca6b56 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-3992 .elementor-element.elementor-element-42a688b{--spacer-size:67px;}.elementor-3992 .elementor-element.elementor-element-8b5e001{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-3992 .elementor-element.elementor-element-87dfb45{--display:flex;--min-height:306px;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-3992 .elementor-element.elementor-element-87dfb45:not(.elementor-motion-effects-element-type-background), .elementor-3992 .elementor-element.elementor-element-87dfb45 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(180deg, #1A1B25 0%, #000000 100%);}.elementor-3992 .elementor-element.elementor-element-0c003c5{--display:flex;--min-height:306px;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-3992 .elementor-element.elementor-element-0c003c5:not(.elementor-motion-effects-element-type-background), .elementor-3992 .elementor-element.elementor-element-0c003c5 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(180deg, #1A1B25 0%, #000000 100%);}.elementor-3992 .elementor-element.elementor-element-7194cb8{--divider-border-style:solid;--divider-color:#00000000;--divider-border-width:1px;}.elementor-3992 .elementor-element.elementor-element-7194cb8 .elementor-divider-separator{width:100%;}.elementor-3992 .elementor-element.elementor-element-7194cb8 .elementor-divider{padding-block-start:2px;padding-block-end:2px;}.elementor-3992 .elementor-element.elementor-element-9b578a9{--grid-template-columns:repeat(0, auto);text-align:center;--grid-column-gap:5px;--grid-row-gap:0px;}.elementor-3992 .elementor-element.elementor-element-9b578a9.elementor-element{--align-self:center;}.elementor-3992 .elementor-element.elementor-element-73ee3dc{--divider-border-style:solid;--divider-color:#00000000;--divider-border-width:1px;}.elementor-3992 .elementor-element.elementor-element-73ee3dc .elementor-divider-separator{width:5%;}.elementor-3992 .elementor-element.elementor-element-73ee3dc .elementor-divider{padding-block-start:35px;padding-block-end:35px;}.elementor-3992 .elementor-element.elementor-element-2496f87{text-align:center;}.elementor-3992 .elementor-element.elementor-element-1e8429a.elementor-element{--align-self:center;--order:99999 /* order end hack */;}/* Start custom CSS for html, class: .elementor-element-064860c *//* --- HEADER --- */
.main-header { width: 100%; position: relative; z-index: 1000; }
.header-container { 
    display: flex; 
    justify-content: space-between; 
    align-items: center; 
    padding: 15px 5%; 
    max-width: 2600px; 
    margin: 0 auto; 
}
.site-logo { height: 80px; width: auto; }

/* --- MENU PC : SURLIGNAGE #159AFF --- */
.nav-list { display: flex; gap: 20px; list-style: none; align-items: center; padding: 0; }
.nav-list li a { 
    color: #FFFFFF !important; 
    text-decoration: none; 
    font-weight: 600; 
    font-size: 14px; 
    position: relative; 
    padding-bottom: 5px;
    transition: 0.3s;
}

/* Effet de surlignage dynamique */
.nav-list li a::after {
    content: '';
    position: absolute;
    width: 0;
    height: 2px;
    bottom: 0;
    left: 50%;
    background-color: #159AFF;
    transition: all 0.3s ease;
    transform: translateX(-50%);
}

.nav-list li a:hover { color: #159AFF !important; }
.nav-list li a:hover::after { width: 100%; }

/* --- IMAGE CONTACT --- */
.title-banner { width: 100%; display: flex; justify-content: center; z-index: 1; position: relative; }
.contact-image-header { max-width: 100%; height: auto; }

/* --- MOBILE & TABLETTE --- */
.menu-icon-mobile, .close-menu-btn { display: none; }

@media (max-width: 1100px) {
    .header-container { flex-direction: column; align-items: center; gap: 15px; }
    
    .menu-icon-mobile { 
        display: flex; flex-direction: column; gap: 5px; cursor: pointer; 
    }
    .menu-icon-mobile span { width: 30px; height: 3px; background: #fff; border-radius: 2px; }

    .nav-list {
        display: none;
        position: absolute;
        top: 20px;
        left: 50%;
        transform: translateX(-50%);
        flex-direction: column;
        background-color: rgba(26, 47, 77, 0.95) !important;
        z-index: 99999 !important; /* Par-dessus l'image contact */
        width: 90%;
        max-width: 400px;
        padding: 50px 20px 30px 20px !important;
        border-radius: 25px;
    }

    .nav-list.active { display: flex; } /* Classe activée par le clic JS */

    .close-menu-btn {
        display: block; position: absolute; top: 15px; right: 20px;
        color: rgba(255, 255, 255, 0.5); font-size: 20px; cursor: pointer;
    }
    
    .nav-list li { width: 100%; text-align: center; padding: 12px 0; }
    .nav-list li a::after { display: none; } /* Pas de ligne sur mobile */
}/* End custom CSS */