/*

Theme Name: X &ndash; Child Theme
Theme URI: http://theme.co/x/
Author: Themeco
Author URI: http://theme.co/
Description: Make all of your modifications to X in this child theme.
Version: 1.0.0
Template: x

*/
/*
.x-breadcrumbs>span>a>span{ display:inline-block; height:30px; padding-top:10px; }
*/

.liste_villes{ padding:15px; background:#cfcfcf; }


.altcss h3 { font-weight:900; color:#007CA5; }

.altcss blockquote { background:#007CA5; color:#ffffff; padding:20px;  }
.altcss blockquote a{ color:#ffffff;  }

.wpb_text_column h2, .x-content-band h2{ margin-top:40px; margin-bottom:40px; font-weight:900; text-align:left!important; }


.x-framework-icon:only-child{ display:none!important;}
.cdroite{ float:right; width:50%; }

.pmbackground{  background-size: 100%; }

#sliderpm .pm1 { width:190px; text-transform:uppercase;

-moz-box-shadow: inset 1px 1px 10px 1px #c0c0c0;
-webkit-box-shadow: inset 1px 1px 10px 1px #c0c0c0;
-o-box-shadow: inset 1px 1px 10px 1px #c0c0c0;
box-shadow: inset 1px 1px 10px 1px #c0c0c0;
filter:progid:DXImageTransform.Microsoft.Shadow(color=#c0c0c0, Direction=134, Strength=10);


}


#sliderpm .pm1, .tp-caption{ width:190px; text-transform:uppercase;


}

#sliderpm .pm1 a{ color:#5489a7;  }
.tp-caption a, #sliderpm .pm1 a{ color:#5489a7; display:block;  text-align:center; width:100%; margin:auto; }
.tp-caption a:hover, #sliderpm .pm1 a:hover{ color:#e4b100; }

.x-breadcrumb-wrap{ background-color:rgba(245,245,245,1); }

.nomarge{ margin-top:0; padding-top:0; }

.tp-video-play-button{ display:none!important; }

.page-id-758 .heateor_sss_sharing_container, .page-id-785 .heateor_sss_sharing_container, .page-id-997  .heateor_sss_sharing_container{ display:none!important; }


.rs-background-video-layer iframe {visibility:inherit !important;}

.infosaccueil>.vc_column-inner{ background-position:bottom center!important; background-repeat:no-repeat; }

.page h2{ margin-top:15px; }

.entry-wrap{ background-color:rgba(255,255,255,0.75)!important;  }

.has-medium-font-size, p, li, .widget.widget_recent_entries li a{ font-size:17px; }
.widget.widget_recent_entries li{ padding:20px; }
h5{ font-size:22px; }
h4, .h-widget{ font-size:27px; }
h3{ font-size:31px; }
h2{ font-size:38px; }
h1{ font-size:45px; }

#rev_slider_12_1_forcefullwidth{ min-height:150px!important; }
#rev_slider_12_1_wrapper{ min-height:150px!important; }
#rev_slider_12_1{ min-height:150px!important; }

@media screen and (max-width: 1160px) {
.x-slider-scroll-bottom{ display:none!important;  }
.page-id-1460 .backstretch img{ right:-200px!important; left:auto!important; }
.page-id-1502 .backstretch img{ right:-200px!important; left:auto!important; }
}


@media screen and (max-width: 1200px) {
.vc_custom_1568798299083 .vc_col-sm-3{ width:100%;  }
}

div#recent-posts-2{     
	display:block!important;
	position: -webkit-sticky!important; /* Safari */
  position: sticky!important;
  top: 550px;
      }
		
#recent-posts-2 ul{ background:#FFF; }

.x-container .x-breadcrumbs {
    width: 100%;
}

#x-content-band-0{ background:#007CA5; }

#x-content-band-0 h1.entry-title{  color:#ffffff; padding-top:50px; padding-bottom:10px; font-size:30px;  }
/* #x-content-band-0 h1.page-normale{ font-size:50px;  } */

#x-content-band-0 h2{ font-weight:900; font-size:50px;  color:#ffffff; padding-top:30px; padding-bottom:30px; }

#x-content-band-0 .x-img {
    margin-bottom: 1.313em;
	margin-top: 1.313em;
}

.x-content-band h3{ font-size:40px; margin-top:35px; margin-bottom:35px; }

article .entry-content .bleue{ background-color:#007CA5!important; color:#ffffff; padding-top:60px!important; padding-bottom:60px!important; margin-bottom:0px; }
article .entry-content .blanche{ background-color:#ffffff!important; margin-bottom:0px; padding-top:60px!important; padding-bottom:60px!important; }
article .entry-content .noire{  background-color:#000000!important; color:#ffffff; padding-top:60px!important; padding-bottom:60px!important; margin-bottom:0px; }
article .entry-content .grise{  background-color:#CFCFCF!important; color:#000000; padding-top:60px!important; padding-bottom:60px!important; margin-bottom:0px; }

article .entry-content .bleue h3, article .entry-content .noire h3, article .entry-content .bleue h4, article .entry-content .noire h4, .noire .x-blockquote{ color:#ffffff; }

.x-blockquote{ font-style: italic; }

.entry-content .noire .x-accordion-inner{ color:#000000; }

	.ghostbuster a{ cursor:pointer; }
.ghostbuster ins{ cursor:pointer; text-decoration: inherit; text-transform: inherit;   }

nav.x-nav-wrap li ins{
    padding-left: 16px;
    padding-right: 16px;
	font-size: 11px;
    font-family: "Lato",sans-serif;
    font-style: normal;
    height: 90px;
    padding-top: 37px;
    font-weight: 700;
    letter-spacing: 0.182em;
    text-transform: uppercase;
    color: #272727;
    float: none;
    line-height: 1;
    text-decoration: none;
    transition: none;
    position: relative;
    display: block;
    cursor: pointer;
	}

.vc_color-black h5{ color:#ffffff; margin:0px; margin-bottom:10px;  }




.ccchildpages_list li a, .ccchildpages_list li ins {
    line-height: 22px;
    padding-bottom: 13px;
    display: block;
}
.ccchildpages_list>li>a, .ccchildpages_list>li>ins {
    font-size: 20px;
    font-weight: 100;
    text-transform: uppercase;
}

.ccchildpages_list li a, .ccchildpages_list li ins {
    color: #ffffff;
    text-decoration: none;
	 padding: 10px 20px!important;
}

.ccchildpages_list li a:hover, .ccchildpages_list li ins:hover {
    color: #222222;
	background-color:#E1B706;
}



@media screen and (min-width: 1240px){
.ccchildpages ul.ccchildpages_list>li {
    margin: 0.5%;
    padding:0;
}

.threecol ul.ccchildpages_list li {
    width: 29%;
}
	
}

@media screen and (min-width: 761px){
.ccchildpages ul.ccchildpages_list>li {
    margin: 1%;
    padding:0;
}

.ccchildpages ul.ccchildpages_list li {
    width: 44%;
}
.ccchildpages ul.ccchildpages_list>li {
    margin: 1%;
    padding:0;
}
.ccchildpages ul.ccchildpages_list li {
    width: 94%;
}

.threecol ul.ccchildpages_list li {
    width: 31.333%;
    float: left;
}

.twocol ul.ccchildpages_list li, .threecol ul.ccchildpages_list li, .fourcol ul.ccchildpages_list li {
    margin-left: 0;
    margin-right: 2%;
    vertical-align: top;
}
	
	
	}
.ccchildpages_list>li {
    list-style: none;
    background-color: #007CA5;
}

.x-navbar .desktop .sub-menu a:hover{ cursor: pointer; }
.wpgmza_map {z-index: 1000!important;}

.vc_btn3-container.vc_btn3-center .vc_btn3-block.vc_btn3-size-lg{ white-space: normal!important; }


.x-skill-bar .bar {
	background-color: #007CA5;
}

.ubtn-ctn-left .BoutonVideo .custom-ult-modal .overlay-show {
	margin-bottom : 20px;
}

.x-btn, .button, [type="submit"] {
	background-color: #007CA5 !important;
	border: none;
	box-shadow: none;
	transition: none;
	text-shadow: none;
	border-radius: 0rem;
}

.x-btn .x-btn-rounded {
  border-radius: 0rem;
}

.x-btn:hover, .button:hover, [type="submit"]:hover {
	box-shadow: none;
	border: none;
	background-color: #E1B706 !important;
	text-shadow: none;
	color: #222;
}


@media screen and (min-width: 960px){
ul.ccchildpages_list li{ width: 100%!important;     margin-top: 5px!important; }
}

@media screen and (min-width: 321px) and (max-width: 480px){
.twocol ul.ccchildpages_list li, .threecol ul.ccchildpages_list li, .fourcol ul.ccchildpages_list li {
    margin-top: 5px!important;
	width: 100%!important;
    float: left;
}
	}


.x-navbar .desktop .x-nav > li > a {
    padding-top: 0px!important;
}

.h3b h3{ font-size:20px; text-align:left; font-weight:900; }
.h3b .x-li-icon{ margin-top:20px; }
.h3b .x-li-icon h3{ margin-top:-30px; }

@media screen and (max-width: 960px){
.wpb_wrapper h1{ font-size:28px!important; }
.wpb_wrapper h2:not([style*="font-size"]){ font-size:22px!important; }
.wpb_wrapper h3{ font-size:18px; }
.wpb_wrapper h3{ font-size:16px; }
}

@media screen and (max-width: 978px){
#menu-menu-principal-1 .x-collapsed {
    display: block!important;
}
	
#menu-menu-principal-1 ul.x-collapsed ul.x-collapsed {
    display: none!important;
}
#menu-menu-principal-1	.menu-item-1615 ul.x-collapsed {
    display: none!important;
}
	
#menu-menu-principal-1 .menu-item-5498 ul.x-collapsed {
    display: none!important;
}
	
}

@media screen and (min-width: 978px){
#menu-menu-principal{ display:block; margin-top:35px; }
li>span.x-nav{ display:block; padding:5px 10px; font-size:14px; font-weight:100; }
li>span.x-nav ul li{ text-align:left; }
li>span.x-nav ul li span{ font-size:12px; font-weight:200; line-height:14px; }
.masthead-inline .desktop span.x-nav{ float:left; display:block; width:100%; }
}

.retour{ margin-bottom:30px!important;

    border-color: #dddddd!important;
    background-color: #dddddd!important;
    text-shadow: none!important;
    box-shadow: none!important;
    border-radius: 0.25em!important;
	font-size:14px!important;
	color:#222222!important;

}

.ult_modal-content .ult_modal-body iframe{ min-height:350px!important; }

.ult-sticky-section .ubtn-ctn-left.ghostbuster{ margin-bottom:0px;  }

.heroBlock h1{ color:#ffffff!important; margin:0px!important; margin-top:20px!important; margin-bottom:20px!important; font-size:45px!important; line-height:50px;  }
.heroBlock h1 a{ color:#4CADC9; }
.heroBlock h1 em{ font-size:30px!important; line-height:30px; }

.heroBlock p{ padding:20px!important; background:rgba(255,255,255,0.4); }

@media screen and (max-width: 978px){

	.heroBlock h1{ padding:20px!important; background:rgba(0,0,0,0.4)!important; }
	
}


.desktop .sub-menu>li>span {
    display: block;
    clear: both;
    padding: .5em 1.6em;
    line-height: 1.7;
    white-space: nowrap;
    color: #b7b7b7;
}

.x-navbar .desktop .x-nav .menu-item span:hover {
   color: #b7b7b7; }

.x-navbar .desktop .x-nav > .menu-item > span:hover {
 box-shadow: inset 0 4px 0 0 #0068a5;  }

.x-navbar .desktop .x-nav .menu-item  span {

	    color: #272727;
}

.x-navbar .desktop .x-nav > .menu-item > span {
   /* box-shadow: inset 0 4px 0 0 #0068a5; */
	 display: block;
	/*color: #b7b7b7;*/
	    color: #272727;
	font-size: 11px;
	font-family: inherit;
    font-style: normal;
    font-weight: 400;
    letter-spacing: 0.182em;
    text-transform: uppercase;
	height: 90px;
	padding-top: 0px !important;
	    float: none;
    line-height: 1;
    text-decoration: none;
	    padding-left: 16px;
    padding-right: 16px;
}

body .x-navbar .x-nav>li>span>span {
    padding-top: 40px !important;
	display:inline-block!important;
}

.x-navbar .desktop .x-nav > li > span > span {
    margin-right: -0.182em;
}

@media screen and (min-width: 978px){
.x-breadcrumb-wrap {    margin-top: 40px;
}
	}



/* ============================================================
   TEMPLATE TERRITOIRE — correctifs graphiques globaux
   Appliqué aux 54 pages du cluster annuaire
   ============================================================ */

/* 1. Tailles de titres réduites dans le contenu (hors hero #x-content-band-0) */
.page-template-template-territoire .entry-content h2 {
    font-size: 26px !important;
    line-height: 1.3 !important;
    margin-top: 12px !important;
    margin-bottom: 14px !important;
    font-weight: 700 !important;
}
.page-template-template-territoire .entry-content h3 {
    font-size: 20px !important;
    line-height: 1.35 !important;
    margin-top: 10px !important;
    margin-bottom: 10px !important;
    font-weight: 600 !important;
}

/* 2. H2 blancs sur fonds sombres */
.page-template-template-territoire article .entry-content .noire h2,
.page-template-template-territoire article .entry-content .bleue h2 {
    color: #ffffff !important;
}

/* 3. H2 bleu foncé sur fonds clairs */
.page-template-template-territoire article .entry-content .blanche h2 {
    color: #0d3d4d !important;
}

/* 4. Bouton .x-btn sur fond .bleue : blanc avec texte bleu */
.page-template-template-territoire article .entry-content .bleue a.x-btn {
    background-color: #ffffff !important;
    color: #007ca5 !important;
    border: 2px solid #ffffff !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.2) !important;
    font-size: 16px !important;
    padding: 16px 28px !important;
    display: block !important;
    text-align: center !important;
    border-radius: 4px !important;
}
.page-template-template-territoire article .entry-content .bleue a.x-btn:hover {
    background-color: #0d3d4d !important;
    color: #ffffff !important;
    border-color: #0d3d4d !important;
}

/* 5. Bouton .x-btn sur fond .blanche : bleu METAS */
.page-template-template-territoire article .entry-content .blanche a.x-btn {
    background-color: #007ca5 !important;
    color: #ffffff !important;
    border: none !important;
    box-shadow: 0 2px 6px rgba(0,124,165,0.35) !important;
    font-size: 15px !important;
    padding: 12px 22px !important;
    display: inline-block !important;
    border-radius: 4px !important;
}
.page-template-template-territoire article .entry-content .blanche a.x-btn:hover {
    background-color: #0d3d4d !important;
    color: #ffffff !important;
}

/* 6. Lien inline .metamodale (Format B) */
.page-template-template-territoire article .entry-content a.metamodale:not(.x-btn) {
    color: #007ca5 !important;
    font-weight: 700 !important;
    text-decoration: underline !important;
    cursor: pointer !important;
}
.page-template-template-territoire article .entry-content a.metamodale:not(.x-btn):hover {
    color: #0d3d4d !important;
}

/* 7. Liens sur fond .noire : bleu clair lisible */
.page-template-template-territoire article .entry-content .noire a:not(.x-btn) {
    color: #4fc3e8 !important;
}
.page-template-template-territoire article .entry-content .noire a:not(.x-btn):hover {
    color: #ffffff !important;
}

/* ============================================================
   Fin correctifs template-territoire
   ============================================================ */


/* correctifs v2 — spécificité renforcée */

/* H2 taille : écraser .wpb_text_column h2 { font-size:55px !important } */
.page-template-template-territoire article .entry-content .wpb_text_column h2,
.page-template-template-territoire article .entry-content .wpb_column h2,
.page-template-template-territoire article .entry-content .vc_column-inner h2,
.page-template-template-territoire .entry-content .x-content-band h2 {
    font-size: 26px !important;
    line-height: 1.3 !important;
    margin-top: 12px !important;
    margin-bottom: 14px !important;
    font-weight: 700 !important;
}

/* H2 et H3 blancs sur .noire — spécificité renforcée */
.page-template-template-territoire article .entry-content .noire .wpb_text_column h2,
.page-template-template-territoire article .entry-content .noire .wpb_column h2,
.page-template-template-territoire article .entry-content .noire .vc_column-inner h2,
.page-template-template-territoire article .entry-content .noire .wpb_text_column h3,
.page-template-template-territoire article .entry-content .noire .wpb_column h3 {
    color: #ffffff !important;
}

/* Bouton CTA Format A sur .bleue — ciblage renforcé */
.page-template-template-territoire article .entry-content .bleue .wpb_text_column a.x-btn,
.page-template-template-territoire article .entry-content .bleue .wpb_column a.x-btn {
    background-color: #ffffff !important;
    color: #007ca5 !important;
    border: 2px solid #ffffff !important;
}


/* correctifs v3 — hero template + h2 global */

/* Hero bleue : réduire le H2 template-territoire */
.page-template-template-territoire #x-content-band-0 h2 {
    font-size: 28px !important;
    font-weight: 700 !important;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    line-height: 1.3 !important;
}

/* H2 global dans tout le contenu template-territoire */
.page-template-template-territoire .wpb_text_column h2 {
    font-size: 26px !important;
    font-weight: 700 !important;
    margin-top: 10px !important;
    margin-bottom: 14px !important;
    line-height: 1.3 !important;
    text-align: left !important;
}

/* H3 global — idem */
.page-template-template-territoire .wpb_text_column h3 {
    font-size: 20px !important;
    font-weight: 600 !important;
    margin-top: 8px !important;
    margin-bottom: 10px !important;
    line-height: 1.35 !important;
}

/* H2 blanc sur noire via wpb */
.page-template-template-territoire .noire .wpb_text_column h2 {
    color: #ffffff !important;
}

/* H2 blanc sur bleue via wpb */
.page-template-template-territoire .bleue .wpb_text_column h2 {
    color: #ffffff !important;
}

/* H2 bleu foncé sur fond clair */
.page-template-template-territoire .blanche .wpb_text_column h2 {
    color: #0d3d4d !important;
}


/* correctifs v4 — H3 couleur sur noire */

/* H3 blancs sur .noire — double spécificité */
.page-template-template-territoire article .entry-content .noire h3,
.page-template-template-territoire article .entry-content .noire h3 a,
.page-template-template-territoire .noire .wpb_text_column h3,
.page-template-template-territoire .noire .wpb_wrapper h3,
.page-template-template-territoire .noire .vc_column-inner h3 {
    color: #ffffff !important;
}

/* H3 bleu foncé sur .blanche et fond neutre */
.page-template-template-territoire article .entry-content .blanche h3,
.page-template-template-territoire .blanche .wpb_text_column h3 {
    color: #0d3d4d !important;
}


/* correctifs v5 — règles finales haute spécificité + capitalisation contraste */

/*
   REGLE DE CONTRASTE METAS (référence permanente) :
   - Fond sombre (.noire #000, .bleue #007ca5) -> titres et textes #ffffff
   - Fond clair (.blanche #fff, neutre) -> titres #0d3d4d, textes #272727
   - Jamais couleur texte = couleur fond
   - Boutons sur fond .bleue -> toujours fond #fff + texte #007ca5
*/

/* H2 taille finale — spécificité maximale couvrant tous les wrappers WPBakery */
body.page-template-template-territoire .wpb_text_column h2,
body.page-template-template-territoire .wpb_wrapper h2,
body.page-template-template-territoire .vc_column-inner > .wpb_wrapper h2 {
    font-size: 26px !important;
    line-height: 1.3 !important;
    margin-top: 10px !important;
    margin-bottom: 14px !important;
    font-weight: 700 !important;
    text-align: left !important;
}

/* H2 couleur : TOUJOURS blanc sur sombres, toujours foncé sur clairs */
body.page-template-template-territoire .noire .wpb_text_column h2,
body.page-template-template-territoire .noire .wpb_wrapper h2,
body.page-template-template-territoire .bleue .wpb_text_column h2,
body.page-template-template-territoire .bleue .wpb_wrapper h2 {
    color: #ffffff !important;
}

body.page-template-template-territoire .blanche .wpb_text_column h2,
body.page-template-template-territoire .blanche .wpb_wrapper h2 {
    color: #0d3d4d !important;
}

/* H3 couleur finale */
body.page-template-template-territoire .noire .wpb_text_column h3,
body.page-template-template-territoire .noire .wpb_wrapper h3,
body.page-template-template-territoire .bleue .wpb_text_column h3,
body.page-template-template-territoire .bleue .wpb_wrapper h3 {
    color: #ffffff !important;
}

body.page-template-template-territoire .blanche .wpb_text_column h3,
body.page-template-template-territoire .blanche .wpb_wrapper h3 {
    color: #0d3d4d !important;
}

/* Texte de paragraphe sur .noire : toujours blanc */
body.page-template-template-territoire .noire .wpb_text_column p,
body.page-template-template-territoire .noire .wpb_wrapper p {
    color: #e8e8e8 !important;
}


/* correctifs v6 — ciblage .x-column (réel wrapper WPBakery) */

/* Taille : le H2 est dans .x-column, pas .wpb_text_column */
body.page-template-template-territoire .x-column h2,
body.page-template-template-territoire .x-column.vc h2 {
    font-size: 26px !important;
    line-height: 1.3 !important;
    margin-top: 10px !important;
    margin-bottom: 14px !important;
    font-weight: 700 !important;
    text-align: left !important;
}

/* Couleur H2 sur sombres via .x-column */
body.page-template-template-territoire .noire .x-column h2,
body.page-template-template-territoire .bleue .x-column h2 {
    color: #ffffff !important;
}

/* Couleur H2 sur clairs via .x-column */
body.page-template-template-territoire .blanche .x-column h2 {
    color: #0d3d4d !important;
}

/* H2 hors classe de fond (fond neutre gris) */
body.page-template-template-territoire .x-content-band:not(.noire):not(.bleue):not(.blanche) .x-column h2 {
    color: #0d3d4d !important;
}

/* H3 via .x-column aussi */
body.page-template-template-territoire .noire .x-column h3,
body.page-template-template-territoire .bleue .x-column h3 {
    color: #ffffff !important;
}

body.page-template-template-territoire .blanche .x-column h3 {
    color: #0d3d4d !important;
}


/* correctifs v7 — solution finale : écraser .x-content-band h2 directement */

/* La règle fautive est : .wpb_text_column h2, .x-content-band h2 { font-size:55px !important }
   On la surpasse avec un sélecteur plus spécifique sur template-territoire */
.page-template-template-territoire.page .x-content-band h2,
.page-template-template-territoire .entry-content .x-content-band h2,
.page-template-template-territoire article .x-content-band .x-column h2 {
    font-size: 26px !important;
    line-height: 1.3 !important;
    font-weight: 700 !important;
    text-align: left !important;
}

/* La règle couleur fautive est : h1,h2,...{ color:rgb(39,39,39) }
   On la surpasse avec plus de spécificité + body */
body.page-template-template-territoire .noire h2,
body.page-template-template-territoire .noire h3,
body.page-template-template-territoire article.page .noire h2,
body.page-template-template-territoire article.page .noire h3 {
    color: #ffffff !important;
}

body.page-template-template-territoire .bleue h2,
body.page-template-template-territoire .bleue h3 {
    color: #ffffff !important;
}

body.page-template-template-territoire .blanche h2,
body.page-template-template-territoire .blanche h3 {
    color: #0d3d4d !important;
}

/* Hero bleue template : garder réduit */
body.page-template-template-territoire #x-content-band-0 h2 {
    font-size: 28px !important;
}




/* =============================================
   RESPONSIVE — colonnes WPBakery 1/2 sur mobile
   Classe el_class="mobile-full" générée par WF1
   ============================================= */
@media (max-width: 767px) {
  .mobile-full {
    width: 100% !important;
    float: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}
