body {
  font-family: 'Montserrat', 'Sans Serif';
}

header, section, article, aside, footer {
}

/*------------------*/
/* Polices			*/
/*------------------*/

/* pour récuperer les font google en local :  google-webfonts-helper (https://google-webfonts-helper.herokuapp.com/) */
/* anton-regular - latin */
@font-face {
  font-family: 'Anton';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/anton-v9-latin-regular.eot'); /* IE9 Compat Modes */
  src: local('Anton Regular'), local('Anton-Regular'),
       url('../fonts/anton-v9-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/anton-v9-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/anton-v9-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/anton-v9-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/anton-v9-latin-regular.svg#Anton') format('svg'); /* Legacy iOS */
}

/* roboto-regular - latin */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/roboto-v18-latin-regular.eot'); /* IE9 Compat Modes */
  src: local('Roboto'), local('Roboto-Regular'),
       url('../fonts/roboto-v18-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/roboto-v18-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/roboto-v18-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/roboto-v18-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/roboto-v18-latin-regular.svg#Roboto') format('svg'); /* Legacy iOS */
}

/* open-sans-800 - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 800;
  src: url('../fonts/open-sans-v15-latin-800.eot'); /* IE9 Compat Modes */
  src: local('Open Sans ExtraBold'), local('OpenSans-ExtraBold'),
       url('../fonts/open-sans-v15-latin-800.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v15-latin-800.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v15-latin-800.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v15-latin-800.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v15-latin-800.svg#OpenSans') format('svg'); /* Legacy iOS */
}

/* montserrat-regular - latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/montserrat-v12-latin-regular.eot'); /* IE9 Compat Modes */
  src: local('Montserrat Regular'), local('Montserrat-Regular'),
       url('../fonts/montserrat-v12-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/montserrat-v12-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/montserrat-v12-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/montserrat-v12-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/montserrat-v12-latin-regular.svg#Montserrat') format('svg'); /* Legacy iOS */
}

.tamtam {
	font-family: 'Anton';
}

h0 {
	display: block;
	font-size: 3.4rem;
}

.smaller {
	font-size: 0.7rem;
}

.fs0 {
	font-size: 1.2rem;
}
.fs1 {
	font-size: 1.1rem;
}
.fs2 {
	font-size: 1rem;
}
.fs3 {
	font-size: 0.9rem;
}
.fs4 {
	font-size: 0.8rem;
}
.fs5 {
	font-size: 0.7rem;
}
.fs6 {
	font-size: 0.6rem;
}

.editorial {
	font-family: 'Montserrat';
}

/* pour reperer les colonnes boostrap */
div[class^="col"] {
/*	border: 1px dotted silver;*/
}

/* utilisé par le megadropdown */
.top-auto {
	top:auto
}

/*------------------*/
/* pagination		*/
/*------------------*/
.page-navigator a.btn.btn-secondary:hover {
	color: white;
	background: #0275d8;
}

/*------------------*/
/* liens			*/
/*------------------*/
a {
	color: #007bff;
	text-decoration: none;
	background-color: transparent;
}

a:hover {
	color: #0056b3;
	text-decoration: none; 
}

a.infohoverblanc {
	color:#81beef;
}
a.infohoverblanc:hover {
	color: white;
}

/*--------------------*/
/* zone de recherche  */
/*--------------------*/

@media screen and (max-width: 992px) {
  #idRecherche {
    background-color: #81beef!important;
	color: black;
  }
}

@media screen and (min-width: 992px) {
  #idRecherche {
	background-color:transparent!important;
	color: white;
  }
}

#idRecherche::-webkit-input-placeholder {
	font-style: italic;
	color: #eee;
}

#idRecherche::-moz-placeholder {
	font-style: italic;
	color: #eee;
}

#idRecherche::-ms-input-placeholder {
	font-style: italic;
	color: #eee;
}

#idRecherche::-ms-input-placeholder {
	font-style: italic;
	color: #eee;
}

#idRecherche::placeholder {
	font-style: italic;
	color: #eee;
}

/*
*::-webkit-input-placeholder {
	font-style: italic;
	color: white;
}
*::-moz-placeholder {
	font-style: italic;
	color: white;
}
*::-moz-placeholder {
	font-style: italic;
	color: white;
}
*:-ms-input-placeholder {
	font-style: italic;
	color: white;
}
*/

/*------------------*/
/* autres			*/
/*------------------*/
/* classe qui permet de réliser un zoom sur une image */
.zoom {    
/*transform-origin: 0 0; */ /* Point d'origine en haut à gauche (centré par défaut 50% 50%)*/
-webkit-transition: all 0.35s ease-in-out;    
-moz-transition: all 0.35s ease-in-out;    
transition: all 0.35s ease-in-out;     
cursor: -webkit-zoom-in;      
cursor: -moz-zoom-in;      
cursor: zoom-in;
}     

.zoom:hover,  
.zoom:active,   
.zoom:focus {
/**adjust scale to desired size, 
add browser prefixes**/
-ms-transform: scale(6) translate(15px, 0px);   
-moz-transform: scale(6) translate(15px, 0px);
-webkit-transform: scale(6) translate(15px, 0px);  
-o-transform: scale(6) translate(15px, 0px); 
transform: scale(6) translate(15px, 0px);
position:relative;      
z-index:100;
}

/* fait disparaitre le panel de signature au survol de la souris */
#pannel-signature:hover {
	visibility: hidden;
	opacity: 0;
	transition: visibility 0s 1s, opacity 1s linear;
}

ul.list-level {
	padding-left: 1rem;
}

/*------------------*/
/* couleurs			*/
/*------------------*/

.text-cgc {
	color: darkblue;
}
.text-cftc, .cftc-color, .ccftc {
	color: #0f70b7!important;
}
.text-fae, .fae-color, .cfae {
	color: #2f2c75!important;
}

.bg-cftc {
	background-color: #0f70b7!important;
}

.bg-fae {
	background-color: #0199fe;
}

.bg-bleu {
  background-color: #094fa7;
}
.bg-bleu-clair {
    background-color: #d4e7f6;
}
.bg-lien {
  background-color: #0085A1;
}
.bg-beige {
  background-color: SlateGrey; /*WhiteSmoke;  Gainsboro; */
}

/*--- Stabilos ----*/

.stabilo-noir {
	color: white;
	background-color:black;
}
.stabilo-cftc {
	color: white;
	background-color:#0f70b7;
}
.stabilo-jaune {
	color: black;
	background-color: yellow;
}
.stabilo-vert {
	color: black;
	background-color: lime;
}
.stabilo-bleu {
	color: black;
	background-color: aqua;
}
.stabilo-rose {
	color: white;
	background-color: hotpink;
}

/*-------------------*/
/* Marges et Padding */
/*-------------------*/
.mb0 {
	margin-bottom: 0!important;
}

.ps-6 {padding-left: 2rem!important;}
.ps-9 {padding-left: 3rem!important;}
.ps-12 {padding-left: 4rem!important;}

/*------------------*/
/* Overlay			*/
/*------------------*/
.masthead {
	margin-bottom: 0;
	background: no-repeat center center;
	background-color: #868e96;
	background-attachment: scroll;
	position: relative; 
	background-size: cover;
}

.masthead .overlay {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	background-color: #212529;
	opacity: 0.5;
}
.overlay {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	background-color: #212529;
	opacity: 0.5;
}

.masthead .overlay-logo {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
}

.masthead .site-heading {
	position: relative;
	padding: 10rem 0 3rem 0;
	color: white;
	text-align: center;
}

/*----------------------------------*/
/* Badge élections professionnelles */
/*----------------------------------*/

.masthead > img.badge-elections {
    position: absolute;
    top: 65px;
    left: 20px;
    width: 550px;
    max-width: 35%;
    height: auto;
    z-index: 10;
    pointer-events: none;
}

/* Tablettes */
@media (max-width: 991px) {
    .masthead > img.badge-elections {
        width: 250px;
        max-width: 40%;
        top: 75px;
        left: 10px;
    }
}

/* Smartphones */
@media (max-width: 575px) {
    .masthead > img.badge-elections {
        width: 220px;
        max-width: 60%;
        top: 70px;
        left: 5px;
    }
}

/*----- FIN Badge Elections Pro 2026 ------*/

.masthead h1 {
	font-family: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

.navbar-brand {
	font-family: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-size: 1.2rem;
}

#mainNav {
	position: absolute;
	background-color: white;
	font-family: 'roboto', 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-size: 1.2rem;
}

@media only screen and (min-width: 992px) {
  #mainNav {
    background: transparent;
    transition: background-color 0.2s;
  }
  #mainNav .navbar-brand {
    color: #fff;
	font-size: 1.5rem;
  }
  #mainNav .navbar-brand:focus, #mainNav .navbar-brand:hover {
    color: rgba(255, 255, 255, 0.8);
  }
  #mainNav .navbar-nav > li.nav-item > a {
    color: #fff;
  }
  #mainNav .navbar-nav > li.nav-item > a:focus, #mainNav .navbar-nav > li.nav-item > a:hover {
    color: rgba(255, 255, 255, 0.8);
  }
}

.card-organigramme {
	min-height: 25em;
	padding-top: 1.5rem;
}

/*---------------------------*/
/* Cartes de la page d'index */
/*---------------------------*/

.card-index {
}

.card-index h3 {
	min-height: 5em;
	font-weight: 800;
}

.card-index .resume {
	font-size: 1.2rem;
	height: 6em;
	overflow: hidden;
	text-overflow: ellipsis;
}

.card-index .source {
	font-size: 0.8rem;
}

.card-index a:link, .card-index a:visited {
	color: black;
}

.card-index a:focus, .card-index a:hover {
  color: #0085A1;
}