.itemid-101 #sp-user-section, .itemid-104 #sp-position-a { color: #fff !important; background: #000 none repeat scroll 0 0; }
@media screen and (min-width: 760px) { body.site { background-position: 0 -390px !important; } }
body.site .sp-contact-info li, body.site .sp-contact-info a { color: #fff !important; }
ul, ol { padding-left: 10px; }

.sp-module.title3 .sp-module-title::before { height: 0px; }
body.itemid-101 { background-position: top center !important; }
body.itemid-101 .sp-contact-info li, body.itemid-101 .sp-contact-info a { color: #282828 !important; }

#offcanvas-toggler > i { font-size: 24px !important; }

#sp-bottom-b #sp-bottom9.col-md-3 { width: 30% !important; }
#sp-bottom-b #sp-bottom10.col-md-9 { width: 70% !important; }
#sp-footer { padding: 20px 0 !important; }
#sp-title h2 { display: none !important; }
.itemid-106 .custom h6 { display: none !important; }
.itemid-106 .custom p { font-size: 16pt; padding-bottom: 10px !important; }
.itemid-104 ul.drop-play li::before { content: none !important; }
.itemid-150 ul { padding-left: 0px !important; }
.itemid-150 ul li ul { padding-left: 30px !important; }
ul.drop-play li ul li::before { content: none !important; }

@media only screen and (max-width: 767px) {
	body.site {
		background-size: auto !important;
		background-image: url("/images/header-mobile.jpg") !important;
	}
}

/* ==========================================================================
   BP 2026-08-28 — remise en etat apres incident (bloc unique et consolide)
   Remplace cinq ajouts successifs qui se contredisaient.
   ========================================================================== */

/* --- Fond d'en-tete : une seule image, centree, jamais dupliquee ---------- */
/* background-size:auto conserve la taille naturelle -> marge blanche sur les
   ecrans plus larges que l'image, comportement demande.
   Les !important repondent aux regles de position situees plus haut. */
body.site {
    background-repeat: no-repeat !important;
    background-size: auto !important;
}
@media screen and (min-width: 760px) {
    /* recadrage vertical d'origine conserve, centrage horizontal corrige */
    body.site { background-position: center -390px !important; }
}
body.itemid-101 { background-position: center top !important; }

/* --- Titres et menu en gras ---------------------------------------------- */
body.site h2,
body.site h3,
body.site .sp-module-title,
body.site .page-header h2 { font-weight: 700 !important; }
body.site ul.sp-megamenu-parent > li > a { font-weight: 700 !important; }

/* --- En-tete mobile ------------------------------------------------------- */
/* Le template masque .sp-default-logo des que la densite d'ecran depasse 1.5
   pour lui substituer .sp-retina-logo (logo_image_2x). C'est donc le logo
   retina qui s'affiche sur telephone : on le redimensionne, sans toucher aux
   classes hidden-xs / visible-xs qui se comportent mal dans ce template. */
@media only screen and (max-width: 767px) {

    #sp-top-bar {
        background: #fff !important;
        padding: 10px 0 6px !important;
        position: relative;
        z-index: 20;
    }

    /* reseaux sociaux masques */
    #sp-top1 { display: none !important; }

    /* logo a gauche, taille mobile */
    #sp-logo { min-height: 48px !important; height: auto !important; display: flex !important; align-items: center; }
    #sp-top-bar a.logo img { max-height: 44px !important; width: auto !important; height: auto !important; }

    /* telephone centre, sous le logo */
    #sp-top2 {
        clear: both !important;
        float: none !important;
        width: 100% !important;
        min-height: 32px !important;
        padding: 0 0 4px !important;
    }
    #sp-top2, #sp-top2 .sp-column,
    #sp-top2 .sp-contact-info, #sp-top2 .sp-contact-info li { text-align: center !important; }
    #sp-top2 .sp-column { float: none !important; width: 100% !important; }
    #sp-top2 .sp-contact-info { display: block !important; margin: 0 !important; padding: 0 !important; }
    #sp-top2 .sp-contact-info li { display: block !important; width: 100% !important; margin: 0 !important; }
    #sp-top2 .sp-contact-info li, #sp-top2 .sp-contact-info a { color: #282828 !important; }

    /* hamburger a hauteur du logo : #sp-header sert d'ancre en haut de page */
    #sp-header {
        position: absolute !important;
        top: 0 !important; left: 0 !important;
        width: 100% !important; height: 0 !important;
        background: transparent !important;
        z-index: 25;
    }
    #sp-menu { height: 0 !important; min-height: 0 !important; }
    #offcanvas-toggler { position: absolute !important; top: 20px !important; right: 18px !important; }

    /* le bandeau blanc fait 96px : l'image demarre juste en dessous */
    body.site { background-position: center 96px !important; }
}
