
/* .form-label { font-weight: 700; } */


/*  --------------------------
 *	Composants
 *  -------------------------- */

.thumbnail-overlay { position: relative; display: inline-block; }
.thumbnail-overlay:focus { outline: none; }
.thumbnail-overlay .overlay { transition: all 0.2s ease-in-out; opacity: 0; position: absolute; top: 0; right: 0; bottom: 0; left: 0; background-color: rgba(0,0,0,0.3); background-color: rgba(73,190,210,0.3); }
.thumbnail-overlay:hover .overlay { opacity: 1; }

.share-icons a { display: inline-block; padding: 9px 8px; border-radius: 4px; }
.share-icons a i { font-size: 1.5em; }
.share-icons a:hover { color: #fff !important; }
.share-icons a.icon-fb:hover { background-color: #3B539A !important; }
.share-icons a.icon-tw:hover { background-color: #00ACF1 !important; }
.share-icons a.icon-gg:hover { background-color: #ED2723 !important; }
.share-icons a.icon-tb:hover { background-color: #2D4F6E !important; }
.share-icons a.icon-pt:hover { background-color: #DB0000 !important; }

.logo-container { display:block; position: relative; width: 100%; padding-bottom: 100%; }
.logo-container .logo { position:absolute; top: 5px; right: 5px; bottom: 5px; left: 5px; text-align:center; }
.logo-container .logo img { position: absolute; top: 0; bottom: 0; left: 0; right: 0; margin: auto; max-height:100%; max-width:100%; }
.logo-container .logo svg { position: absolute; top: 0; bottom: 0; left: 0; right: 0; margin: auto; max-height:100%; max-width:100%; }







/*  --------------------------
 *	Layout
 *  -------------------------- */

/* #top-bar { background-color: #222; } */
#main-nav a.nav-link { font-size: 14px; font-weight: 600; color: #fff; border-radius: 0; text-transform: uppercase; }
#main-nav a.nav-link.active,
#main-nav a.nav-link:hover,
#main-nav a.nav-link.show { background-color: #fff; color: #222; }
#main-nav .dropdown-menu { border-top: none; border-radius:0; margin-right: -1px !important; margin-top: -2px !important; }
#main-nav .dropdown-menu a.dropdown-item { font-size: 14px; font-weight: 600; text-transform: uppercase; }
#main-nav .dropdown-menu .dropdown-item.active { background-color: #0092D4; }

#switch-nav a.nav-link { font-size: 14px; font-weight: 600; color: #fff; background-color: #0092D4; border-radius: 0; text-transform: uppercase; }
#switch-nav a.nav-link.active,
#switch-nav a.nav-link:hover,
#switch-nav a.nav-link.show { background-color: #0092D4; color: #fff; }
#switch-nav .dropdown-menu { border-top: none; border-radius:0; margin-left: -1px !important; margin-top: -2px !important; }
#switch-nav .dropdown-menu a.dropdown-item { font-size: 14px; font-weight: 600; text-transform: uppercase; }
#switch-nav .dropdown-menu .dropdown-item.active { background-color: #0092D4; }

#desktop-logo img { height: 110px; }

/*
@keyframes lava {
  0%   { box-shadow: 0 0 5px #ee6622; }
  50%  { box-shadow: 0 0 15px #ee6622; }
  100% { box-shadow: 0 0 5px #ee6622; }
}
*/
/* .participate-button { animation-name: lava;  animation-duration: 1.5s; animation-iteration-count: infinite; animation-timing-function: ease-in; } */
/* #participate-button:hover { box-shadow: 0 0 15px #ee6622; } */

#footer { font-size: 12px; }
#footer a { text-decoration: none; }
#footer a:hover { text-decoration: underline; }

#toggle-nav { display: inline-block; text-decoration: none; }

#mobile-nav { position: absolute; top: 54px; left: 0; right: 0; z-index: 1001; }
#mobile-nav a { font-weight: 600; color: #fff; text-transform: uppercase; }
#mobile-nav a.active { background-color: #fff; color: #222; }


#page-header h1 { font-size: 24px; }



/*  --------------------------
 *	Accueil
 *  -------------------------- */

a.action-link  { text-decoration: none; }
a.action-link:hover { text-decoration: underline; }

#home-header h1 { font-size: 24px; }
/*#home-header strong { color: #0092D4; }*/
#home-header strong { color: var( --bs-primary-text-emphasis ) }

#home-featured { position: relative; }
#home-featured .featured-item {  position: relative; display: block; padding-bottom: 100%; border: 1px solid #fff; background-size: cover; background-repeat: no-repeat; background-position: center center; }
#home-featured .featured-item .overlay { position: absolute; top: 0; right: 0; bottom: 0; left: 0; background-color: rgba(0,0,0,0.2); opacity: 0; transition: all 0.3s ease; }
#home-featured .featured-item:hover .overlay { opacity: 1; }


#slick-photo-section .slick-item a { position: relative; display: block; padding-bottom: 100%; border: 1px solid #fff; background-size: cover; background-repeat: no-repeat; background-position: center center; }
#slick-photo-section .slick-item a .overlay { position: absolute; top: 0; right: 0; bottom: 0; left: 0; background-color: rgba(0,0,0,0.2); opacity: 0; transition: all 0.3s ease; }
#slick-photo-section .slick-item:hover a .overlay { opacity: 1; }

#slick-photo-section .slick-prev { left: -28px; top: 45%; }
#slick-photo-section .slick-next { right: -18px; top: 45%; }


/* #home-contribution .contribution-item { text-decoration: none; }
#home-contribution .contribution-item .contribution-image { width: 100px; position: relative; }
#home-contribution .contribution-item .contribution-image .overlay { position: absolute; top: 0; right: 0; bottom: 0; left: 0; background-color: rgba(0,0,0,0.2); opacity: 0; transition: all 0.3s ease; }
#home-contribution .contribution-item:hover .contribution-image .overlay { opacity: 1; } */

#last-contribution { border: none; }
#last-contribution li { background-color: transparent; border-left: none; border-right: none; border-radius: 0; }

.stat-bloc { display: block; text-decoration: none; }
.stat-bloc span { display: block; }
.stat-bloc .number { font-size: 50px; transition: all 0.3s ease; }
.stat-bloc:hover .number { background-color: #056793 }
.stat-bloc .label { font-size: 14px; }

.home-section h2 {  }

#home-news-list .news-item { border-radius: 0; }
#home-news-list .news-item h3 { font-size: 20px; font-weight: 600; }



/*  --------------------------
 *	Cartographie
 *  -------------------------- */


/* Logo  */
#map-header { position: absolute; z-index: 400; top: 0; left: 0; width: 410px; background-color: #fff; border-radius: 0 0 20px 0; }
#map-header img { width: 100%; }


#map-container { position: absolute; top: 53px; right: 0; bottom: 50px; left: 0; overflow: hidden; }
#map { position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 50; background-color: #eee; }


/* Contrôles utilisateur */
#map-control-container { position: absolute; z-index: 980; top: 117px; bottom: 0; left: -295px; width: 380px; transition: all 0.2s ease-in-out; }
#map-control-container.open { left: 0; }

#map-control-toggles { position: absolute; top: 0; right: 0; width: 85px; border-radius: 0 0 10px 0; }
#map-control-toggles a { color: #666; height: 85px; text-decoration: none; background-color: #fff; }
#map-control-toggles a:hover { background-color: #f8f9fa; color: #ee6622; }
#map-control-toggles a.active { background-color: #ee6622; color: #fff !important; border-color: #ee6622 !important; }
#map-control-toggles a:last-child { border-radius: 0 0 10px 0; }
#map-control-toggles a i.fa-xmark { display: none; }
#map-control-toggles a.active i.default-icon { display: none; }
#map-control-toggles a.active i.fa-xmark { display: inline; }

.map-control-panel { position: absolute; top: 0; right: 85px; left: 0; bottom: 0; background-color: #fff; height: 100%; }

.map-control-panel .list-group-item { font-size: 12px; border-radius: 0; border-left: 0; border-right: 0; border: none !important; margin-top: 0 !important; }
.map-control-panel label.list-group-item { cursor: pointer; }

#map-filter select,
#map-filter input[type=text],
#map-filter .btn { border-radius: 0; }

/* Switchs pour checkbox et radio */
/* .material-switch { position: relative; top: 0; } */
.material-switch > input[type="checkbox"],
.material-switch > input[type="radio"] { display: none; }
.material-switch > label { cursor: pointer; height: 0px; position: relative;  width: 40px; top: -4px; }
.material-switch > label::before { background: rgb(0, 0, 0); box-shadow: inset 0px 0px 10px rgba(0, 0, 0, 0.5); border-radius: 8px; content: ''; height: 16px; margin-top: -8px; position:absolute; opacity: 0.6; transition: all 0.3s ease-in-out; width: 40px; }
.material-switch > label::after { background: rgb(255, 255, 255); border-radius: 16px; box-shadow: 0px 0px 2px rgba(0, 0, 0, 0.5); content: ''; height: 24px; left: -4px; margin-top: -8px; position: absolute; top: -4px; transition: all 0.2s ease-in-out; width: 24px; }
.material-switch > input[type="checkbox"]:checked + label::before,
.material-switch > input[type="radio"]:checked + label::before { background: inherit; opacity: 0.6; }
.material-switch > input[type="checkbox"]:checked + label::after,
.material-switch > input[type="radio"]:checked + label::after { background: inherit; left: 20px; box-shadow: none; }

.label-blue   { background-color: #0092D4; } /* Sol */
.label-orange { background-color: #ee6622; } /* Activités */



/*  --------------------------
 *	Participer
 *  -------------------------- */

/* #form-participate .form-label { font-weight: 700; } */
#latlon-box { border: none; }
#latlon-box .nav-link { color: #0092D4; }
#latlon-box .nav-link.active { color: #333; border: none; background-color: #f8f9fa; }


.card-form label { font-weight: 600; }
.card-form input[type=text],
.card-form input[type=mail],
.card-form textarea { border-radius: 0; }


#observe-gallery { position: relative; }
#observe-gallery .featured-item {  position: relative; display: block; padding-bottom: 100%; border: 1px solid #fff; background-size: cover; background-repeat: no-repeat; background-position: center center; }
#observe-gallery .featured-item .overlay { position: absolute; top: 0; right: 0; bottom: 0; left: 0; background-color: rgba(0,0,0,0.2); opacity: 0; transition: all 0.3s ease; }
#observe-gallery .featured-item:hover .overlay { opacity: 1; }



/*  --------------------------
 *	Galerie photos
 *  -------------------------- */

#photo-filter select { border-radius: 0; }

#photo-list { 
/*  position: relative; */

  .photo-item { 
    position: relative; display: block; padding-bottom: 100%; background-size: cover; background-repeat: no-repeat; background-position: center center;
    transition: filter 0.3s ease;

    &:hover { 
      filter: brightness(80%); 
    }
  }
}




/*  --------------------------
 *	Pages de contenu
 *  -------------------------- */

#subnav a { font-weight: 600; color: #333; transition: all 0.2s ease; }
#subnav a.active { color: #0092D4; }
#subnav a:hover { color: #0092D4; padding-left: 30px !important }


.content-row h2 { font-size: 20px; text-transform: uppercase; font-weight: 600; color: #0092D4; padding-bottom: 16px; }
.content-row p { line-height: 1.8em; }
.content-row ul li { line-height: 1.8em; }
.content-row ol li { line-height: 1.8em; }



/*  --------------------------
 *	Mon compte
 *  -------------------------- */

#account-nav .nav-link { color: #0092D4; font-weight: 600; }
#account-nav .nav-link:hover { background-color: rgba(0,146,212,0.1); }
#account-nav .nav-link.active { background-color: #0092D4; color: #fff; }

#account-map { height: 0; padding-bottom: 60%; }



#account-observe-map { height: 0; padding-bottom: 60%; }
#contribution-list { border: none; }
#contribution-list li { background-color: transparent; border-left: none; border-right: none; border-radius: 0; }



/* ------------------------------------------------------------------ */
/* Spécifique LG
/* ------------------------------------------------------------------ */

@media (max-width: 1200px) and (min-width:992px) {


}



/* ------------------------------------------------------------------ */
/* Spécifique MD
/* ------------------------------------------------------------------ */

@media (max-width: 991px) and (min-width:768px) {


}



/* ------------------------------------------------------------------ */
/* Spécifique Mobile SM
/* ------------------------------------------------------------------ */

@media(max-width:767px) {

  #desktop-logo img { height: inherit; max-width: 100%; }


  #home-header p.lead { font-size: 1.1em; }

  .stat-bloc .number { font-size: 30px; }
  .stat-bloc .label { font-size: 10px; }


  #map-header { position: fixed; top: 56px; width: 100%; border-radius: 0; }
  #map-header img { width: auto; height: 50px; }
  
  #map-container { top: 56px; bottom: 50px; }
  #map { top: 82px; }
  #map .leaflet-control-attribution { display: none; }
  
  #map-control-container { position: fixed; width: 100%; left: -100%; z-index: 1000; bottom: 50px; }
  .map-control-panel { top: 21px; right: 0; left: 0; bottom: 0; border-right: none !important; }
  
  #map-control-toggles { position: fixed; z-index: 1000; top: auto; bottom: 0; right: 0; left: 0; width: 100%; }
  #map-control-toggles a:last-child { border-radius: 0; border-right: 2px solid #fff !important; }
  #map-control-toggles a.active:last-child { border-right: 2px solid #ee6622 !important; }
  #map-control-toggles a { width: 33.33%; height: 50px; float: left; }
  #map-control-toggles a i { font-size: 1.5em !important; }


}




/* ------------------------------------------------------------------ */
/* Spécifique Mobile (encore plus petit)
/* ------------------------------------------------------------------ */

@media(max-width:575px) {


}