/*!
Theme Name: Monnay Electricité Theme
Author: Gilston Digital SA
Author URI: https://gilston.digital/
Description: Theme pour le site www.monelec.ch
Version: 1.0.2
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: monelec
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready
-----------------------------------------------------*/

/* NORMALIZED
--------------------------------------------- */
html {
	
	-webkit-text-size-adjust: 100%;
  font-size: 18px;
} 
body {
	margin: 0;  
}
main {
	display: block;
}
hr {
	box-sizing: content-box;
	height: 0;
	overflow: visible;
}
pre {
	font-family: monospace, monospace;
	font-size: 1em;
}
a {
	background-color: transparent;
}
abbr[title] {
	border-bottom: none;
	text-decoration: underline;
	text-decoration: underline dotted;
}
b,
strong {
	font-weight: 600;
}
code,
kbd,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}
small {
	font-size: 80%;
}
sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}
sub {
	bottom: -0.25em;
}
sup {
	top: -0.5em;
}
img {
	border-style: none;
}

/*--------------------------------------------------------------
# Base
--------------------------------------------------------------*/

body{
	background-color: #313131;
}
#content{
	background-color: #fff;
  line-height: 1.2;
}
a,img,header#masthead,#left-logo,#content,.nav-item,.nav-link,a::before{
  transition: all ease-in 0.2s;
  -webkit-transition: all ease-in 0.2s;
  -ms-transition: all ease-in 0.2s;
  -o-transition: all ease-in 0.2s;
}

@media (min-width: 1200px) {
  .container, .container-lg, .container-md, .container-sm, .container-xl {
    max-width: 1320px;
  }
}
@media (min-width: 992px) {
  .container, .container-lg, .container-md, .container-sm, .container-xl {
    max-width: 1320px;
  }
}
/* Pour tous les breakpoints (par défaut) */
.p-6 {
  padding: 5rem !important;
}

.pt-6 {
  padding-top: 5rem !important;
}

.pb-6 {
  padding-bottom: 5rem !important;
}

.pl-6 {
  padding-left: 5rem !important;
}

.pr-6 {
  padding-right: 5rem !important;
}

.px-6 {
  padding-left: 5rem !important;
  padding-right: 5rem !important;
}

.py-6 {
  padding-top: 5rem !important;
  padding-bottom: 5rem !important;
}

/* Breakpoint Small (sm >= 576px) */
@media (min-width: 576px) {
  .p-sm-6 {
      padding: 5rem !important;
  }

  .pt-sm-6 {
      padding-top: 5rem !important;
  }

  .pb-sm-6 {
      padding-bottom: 5rem !important;
  }

  .pl-sm-6 {
      padding-left: 5rem !important;
  }

  .pr-sm-6 {
      padding-right: 5rem !important;
  }

  .px-sm-6 {
      padding-left: 5rem !important;
      padding-right: 5rem !important;
  }

  .py-sm-6 {
      padding-top: 5rem !important;
      padding-bottom: 5rem !important;
  }
}

/* Breakpoint Medium (md >= 768px) */
@media (min-width: 768px) {
  .p-md-6 {
      padding: 5rem !important;
  }

  .pt-md-6 {
      padding-top: 5rem !important;
  }

  .pb-md-6 {
      padding-bottom: 5rem !important;
  }

  .pl-md-6 {
      padding-left: 5rem !important;
  }

  .pr-md-6 {
      padding-right: 5rem !important;
  }

  .px-md-6 {
      padding-left: 5rem !important;
      padding-right: 5rem !important;
  }

  .py-md-6 {
      padding-top: 5rem !important;
      padding-bottom: 5rem !important;
  }
}

/* Breakpoint Large (lg >= 992px) */
@media (min-width: 992px) {
  .p-lg-6 {
      padding: 5rem !important;
  }

  .pt-lg-6 {
      padding-top: 5rem !important;
  }

  .pb-lg-6 {
      padding-bottom: 5rem !important;
  }

  .pl-lg-6 {
      padding-left: 5rem !important;
  }

  .pr-lg-6 {
      padding-right: 5rem !important;
  }

  .px-lg-6 {
      padding-left: 5rem !important;
      padding-right: 5rem !important;
  }

  .py-lg-6 {
      padding-top: 5rem !important;
      padding-bottom: 5rem !important;
  }
}

/* Breakpoint Extra Large (xl >= 1200px) */
@media (min-width: 1200px) {
  .p-xl-6 {
      padding: 5rem !important;
  }

  .pt-xl-6 {
      padding-top: 5rem !important;
  }

  .pb-xl-6 {
      padding-bottom: 5rem !important;
  }

  .pl-xl-6 {
      padding-left: 5rem !important;
  }

  .pr-xl-6 {
      padding-right: 5rem !important;
  }

  .px-xl-6 {
      padding-left: 5rem !important;
      padding-right: 5rem !important;
  }

  .py-xl-6 {
      padding-top: 5rem !important;
      padding-bottom: 5rem !important;
  }
}

/* Breakpoint XXL (xxl >= 1400px) */
@media (min-width: 1400px) {
  .p-xxl-6 {
      padding: 5rem !important;
  }

  .pt-xxl-6 {
      padding-top: 5rem !important;
  }

  .pb-xxl-6 {
      padding-bottom: 5rem !important;
  }

  .pl-xxl-6 {
      padding-left: 5rem !important;
  }

  .pr-xxl-6 {
      padding-right: 5rem !important;
  }

  .px-xxl-6 {
      padding-left: 5rem !important;
      padding-right: 5rem !important;
  }

  .py-xxl-6 {
      padding-top: 5rem !important;
      padding-bottom: 5rem !important;
  }
}

/* Typography
--------------------------------------------- */
body,
button,
input,
select,
optgroup,
textarea {
	color: #121212;
	font-family:'Roboto', Helvetica, sans-serif;
	font-size: 1rem;
	line-height: 1.3rem;
  font-weight: 300;
}
p {
	margin-bottom: 1rem;
}
h1,h2,h3,h4,h5,h6{
  font-weight: 500;
}

.monelec-subtitle{
  font-size: 2rem;
  line-height: 2.3rem;
  text-transform: uppercase;
}
.monelec-subtitle::after{
    content: "";
    height: 6px;
    width: 100%;
    background-image: url(img/bar.svg);    
    background-repeat: no-repeat;
    background-size: auto 6px;
    background-position: center;
    display: block;
    margin-top: .5rem;
}
/* Links 
---------------------------------------------- */
a{
  text-decoration: none;
  color: #3167AF;
}
a:hover{
  color: #163d70;
}
a:focus {
	outline: none;
}
a:hover,
a:active {
	outline: 0;
}

.btn{
  border-radius: 0;
}
/* CONTENT
--------------------------------------------- */
#content.site-content{
  padding-top: 100px;
}

section.bg-light-gray{
  background-color: #DDD;
}
.depannage-btn{
  background-color: #ED6605;
  padding: .8rem 1rem;
  font-size: 1.3rem;
  line-height: 1.3rem;
  display: inline-block;
  color: #FFF;
  font-weight: 500;
}
.depannage-btn .btn-legend{
  margin-right: 1rem;
  border-right:1px solid #FFF;
  padding-right: 1rem;
  line-height:1.4;
}
.depannage-btn .btn-icon img{
  height: 30px;  
}
.depannage-btn:hover{
  background-color: #ae4a03;
  color: #FFF;
}
/* NAV
--------------------------------------------- */

#section-top {	
	position: relative;
  padding-top: 100px;
  overflow: hidden;
  background-color: #FFF;
}
@media only screen and (max-width: 991px) {
  #section-top{
    padding-top: 60px;   
  }
}

#section-top .slider-arrow {
	display: none;
}
#section-top h3.slider-title {
  color: #FFF !important;
  font-size: 4rem;
  text-align: center;
  text-shadow: 0 0 10px #000, 2px 2px 2px rgba(0, 0, 0, 0);
}
@media only screen and (max-width: 991px) {
  #section-top h3.slider-title {    
    font-size: 2rem;    
  }
}
header#masthead {
  margin-bottom: 0;
  background-color: #FFF;
  box-shadow: 1px 3px 5px rgba(27, 28, 33, 0.1);
  padding:0;
  height: 100px;
  width: 100%;
  position: fixed;
  display: flex;
  align-items: center;
  z-index: 1000;
}
header#masthead .container,
header#masthead .container-fluid{
  height: 100%;
}
header#masthead #left-logo{
  position: absolute;
  left:0;
  top:0;
}
header#masthead #left-logo img{
  height: 80px;
}
#left-logo:hover img{
  opacity: 0.7;
}
#masthead nav {
  padding: 0;
  height: 100%;
  flex-direction: row-reverse;
  flex-wrap: nowrap;
  justify-content: flex-start;
}
#masthead .navbar-nav{
  flex-direction: row;
  justify-content: flex-end;
  height: 100%;
}
#masthead #mobile-navbar-toggler{
  display: none;
  position: relative;
  z-index: 2001;
	border: 0;
  padding: 0;
}
#masthead #mobile-navbar-toggler,
#masthead #mobile-navbar-toggler:focus,
#masthead #mobile-navbar-toggler:hover,
#masthead #mobile-navbar-toggler:active{
	outline: none;
	border: 0!important;
	border-style: none!important;
	box-shadow: none;
}
#masthead #mobile-navbar-toggler img{
	height: 18px;
}
#masthead #main-nav-flex-container{
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
.navbar-nav .nav-item {
  position: relative;
}

.navbar-nav .dropdown-menu {
  position: absolute;
  left: -1rem;
  border-radius: 0;
  padding: 0;
  background-color: rgba(255, 255, 255, 1);
  border: 0;
  padding: 1rem 0;
  min-width:300px;
}

.navbar-nav .dropdown-menu .nav-item {
  text-align: start;
  padding: 0 1rem;
  font-weight: 400;
  align-self: flex-end;
}

.navbar-nav .dropdown-menu .nav-item .nav-link { 
  position: relative;
  text-transform: uppercase;
}

.navbar-nav .dropdown-menu .nav-item .nav-link:hover,
.navbar-nav .dropdown-menu .nav-item.current_page_item .nav-link {
  color: #fa7429;
}
#masthead .navbar-nav > li > a {
  color: #121212;
  font-size: 1.2rem;
  line-height: 1.1;
  text-transform: uppercase;
  font-weight: 400;
  position: relative;
  padding: 0 1.5rem 0 0;
}

#masthead #menu-menu-principal .nav-item{
  display: flex;
  align-items: end;  
  width: 220px;  
}
#masthead #menu-menu-principal .nav-item a{
  border-bottom: .5rem solid #121212;
  padding-left: .8rem;
  padding-bottom: .5rem;
  font-weight: 500;
  width: 100%;
  height: 100%;
  text-align: start;
  align-content: end;
}
#masthead #menu-menu-principal .nav-item.energies-renouvelables a{
  border-bottom: .5rem solid #F1E400;
}
#masthead #menu-menu-principal .nav-item.energies-renouvelables:hover,
#masthead #menu-menu-principal .nav-item.energies-renouvelables.current_page_item{
  background-color: #F1E400;  
}
#masthead #menu-menu-principal .nav-item.electricite-generale a{
  border-bottom: .5rem solid #269B38;
}
#masthead #menu-menu-principal .nav-item.electricite-generale:hover,
#masthead #menu-menu-principal .nav-item.electricite-generale.current_page_item{
  background-color:  #269B38;

}
#masthead #menu-menu-principal .nav-item.electricite-generale:hover a,
#masthead #menu-menu-principal .nav-item.electricite-generale.current_page_item a{
  color: #FFF;
}
#masthead #menu-menu-principal .nav-item.courant-faible-domotique a{
  border-bottom: .5rem solid #3167AF;
}
#masthead #menu-menu-principal .nav-item.courant-faible-domotique:hover,
#masthead #menu-menu-principal .nav-item.courant-faible-domotique.current_page_item{
 background-color: #3167AF;
}
#masthead #menu-menu-principal .nav-item.courant-faible-domotique:hover a,
#masthead #menu-menu-principal .nav-item.courant-faible-domotique.current_page_item a{
  color: #FFF;
}
#masthead #menu-menu-principal .nav-item.conseils-services a{
  border-bottom: .5rem solid #96621C;
}
#masthead #menu-menu-principal .nav-item.conseils-services:hover,
#masthead #menu-menu-principal .nav-item.conseils-services.current_page_item{
  background-color: #96621C;  
}
#masthead #menu-menu-principal .nav-item.conseils-services:hover a,
#masthead #menu-menu-principal .nav-item.conseils-services.current_page_item a{
  color: #FFF;
}
#masthead #menu-menu-secondaire{
  margin-left: 3rem;
  justify-content: center;
}
#masthead #menu-menu-secondaire > li > a{
  text-align: end;
  font-size: .9rem;
  color: #818181;
}
#masthead #menu-menu-secondaire.navbar-nav > li > a:hover,
#masthead #menu-menu-secondaire.navbar-nav > li.current_page_item > a{
  color: #313131;
}



@media only screen and (max-width: 1400px) { /** before large **/
  #masthead #menu-menu-principal .nav-item{
    width:174px;
  }
  #masthead #menu-menu-principal > li > a{
    font-size: .9rem;
    line-height: 1.1rem;
  }
  #masthead #menu-menu-secondaire{
    margin-left: .8rem;
  }
  #masthead #menu-menu-secondaire > li > a{
    font-size: .8rem;
    line-height: 1rem;
  }
}

@media only screen and (max-width: 1100px) { /** before large **/
  #masthead #menu-menu-principal .nav-item{
    width:164px;
  }
  #masthead #menu-menu-principal > li > a{
    font-size: .8rem;
    line-height: 1rem;
  }
}
@media only screen and (max-width: 991px) { /** before large **/
  #content.site-content{
    padding-top: 60px;
  }
  header#masthead{
    height: 60px;
  }
  header#masthead #left-logo{
    opacity: 1;    
  }
  header#masthead #left-logo img{
    height: 50px;
  }
  #masthead #mobile-navbar-toggler{
    display: block;
  }
  
  #masthead #main-nav-flex-container{
    height: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    position: fixed;
    overflow: hidden;
    top:0;
    bottom:0;
    left:0;
    right:0;
    background-color: rgba(255, 255, 255, 0.9);
  }
  #masthead .navbar-nav{
    flex-direction: column;
    justify-content: center;
    width: 100%;
    padding: 0 2rem;
  }
  #masthead #menu-menu-principal{
    padding-left: 0;
  }
  #masthead #menu-menu-principal .nav-item{
    width: 100%;
  }
  #masthead #menu-menu-principal .nav-item a{
    padding-top: 1rem;
    margin-bottom: 0;
  }
  #masthead #menu-menu-secondaire{
    flex:150px;
    margin-left: 0;
    padding-left: 0;
    padding-right: 13.5px;
  }
  #masthead #menu-menu-secondaire .nav-item{
    text-align: end;
  }
  #masthead #menu-menu-secondaire .nav-item a{
    margin-bottom: .5rem;
    padding: 0;
  }
  #masthead .dropdown-menu{
    padding-top: 0!important;
    width: 100%!important;
  }
  #masthead .navbar-nav .dropdown-menu .nav-item  {
    text-align: center;
  }

  #masthead .navbar-nav > li > a {
    font-size: 1.5rem;    
    line-height: 1.5rem;
    margin-bottom:1.3rem;
    text-align: center;
  }
}

#site-footer{
	position: relative;
  color: #FFF;
}

#site-footer #gd_credit-inline img{
	height: 18px;
}

#site-footer #credits{
	position: absolute;
	top:10px;
	right: 6px;
	display: flex;
	flex-direction: column;
}

#site-footer #gd_credit img{		
	width: 14px;	
}

#site-footer #gd_credit-inline img {
  height: 18px;
}
#site-footer #footer-content{
  width: 300px;
  max-width: 90%;
  margin: 0 auto;
}
#site-footer #footer-logo{  
  width:100%;
  display: block;
}
#site-footer #footer-address{
  font-size: 1.3rem;
  line-height: 1.2;
}
#site-footer #footer-address .fw-bold{
  font-weight: 500!important;
}
#site-footer .depannage-btn{
  width: 100%;  
  justify-content: space-between;
}
#site-footer .depannage-btn .btn-legend{
  flex:1;
}

 #site-footer .footer-rs {
  background-color: #bbb;
  border-radius: 50px;
  flex: 50px 0 0;
  height: 50px;
  display: block;
}
#site-footer .footer-rs:hover{
  background-color: #fff;
}
#site-footer .footer-rs  img{
  height: 26px;
  position: relative;
  top:10px;
  left: 0;
}
/*** HOMEPAGE ***/
#top-banner{
  height: 450px;
  background-color: #818181;
  position: relative;
  overflow: hidden;
}
#top-banner #top-banner-slideshow{
  height: 450px;
}
#top-banner .slideshow-item{
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  height: 450px;
}
#top-banner #top-punchlines{  
  position:absolute;
  z-index: 100;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

#top-banner #top-punchlines #main-punchline{
  font-size: 5rem;
  line-height: 5.3rem;
  font-weight: 600;
  color: #FFF;
  text-shadow:rgba(0, 0, 0, 0.6) 0 0 8px,rgba(0, 0, 0, 0.9) 0 0 10px;
  text-transform: uppercase;
}
#top-banner #top-punchlines #small-punchline{
  font-size: 2.5rem;
  line-height: 2.5rem;
  font-weight: 400;
  color: #FFF;
  text-shadow:rgba(0, 0, 0, 0.6) 0 0 3px,rgba(0, 0, 0, 0.9) 0 0 10px;
}
@media only screen and (max-width: 991px) { /** before large **/
  #top-banner{
    height: 300px;
  }
  #top-banner #top-banner-slideshow{
    height: 300px;
  }
  #top-banner #top-punchlines #main-punchline{
    font-size: 3.5rem;
    line-height: 4rem;    
  }
  #top-banner #top-punchlines #small-punchline{
    font-size: 2rem;
    line-height:2rem;
  }
}
@media only screen and (max-width: 576px) { /** before large **/
  #top-banner #top-punchlines #main-punchline{
    font-size: 3rem;
    line-height: 3.5rem;    
  }

}
.depannage-item{
  font-size: 1rem;
  line-height: 1.3rem;
  display: flex;
  position: relative;
}
.depannage-item .separator{
  width: 1px;
  background-color: #CCC;
  display: block;
  margin-right: 1rem;
  position: relative;
  left: 0;
}
.depannage-item .item-description{
   padding-left: 1rem;
}

.cta-bloc-link{
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: default;
  padding: 1rem;
  text-align: center;
  font-size: 1rem;
  color: #FFF;
  
}

.cta-bloc-link .title{
  font-size: 2rem;
  line-height: 1.1;
  font-weight: 500;
  color: #FFF;
  text-shadow: 0 0 3px #000,0 0 8px #000;
}
.cta-bloc-link .subtitle{
  text-shadow: 0 0 3px #000,0 0 8px #000;
}
.cta-bloc-link *{
  position: relative;
  z-index: 2;
}
.cta-bloc-link::before{
  z-index: 1;
 content: "";
 position: absolute;
 background-color: rgba(0, 0, 0, 0.7);
 top:0;
 left:0;
 right: 0;
 bottom: 0;
}
.cta-bloc-link:hover::before{
  background-color: rgba(0, 0, 0, 0);
}
@media only screen and (max-width: 991px) { /** before large **/
  .cta-bloc-link .title{
    font-size: 1.6rem;
 
  }
}

.reference-item{
  display: flex;
  min-height: 100px;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.3);
}
.reference-item .reference-content{
  flex: 1;
  padding: 1rem;
}
.reference-item .reference-image{
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  flex: 0 0 30%;
}


.emploi-item{
  display: flex;
  min-height: 100px;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.3);
  justify-content: center;
  align-items: center;
  color: #121212;
  cursor: pointer;
  
}
.emploi-item:hover{
  box-shadow: 0 0 12px rgba(0, 0, 0, 0.6);
  color: #121212;
}
.bloc-image{
  background-position: top;
  background-repeat: no-repeat;
  background-size: cover;  
  
}
.wpforms-container .wpforms-field, .wp-core-ui div.wpforms-container .wpforms-field{
  padding-top: 0;
}
div.wpforms-container-full{
  margin-top: 0!important;
}
section.section-with-bg{
  background-color: #ddd;
}

.bloc-content h1::after{
  content: "";
  display: block;
  width: 35%;  
  height: 6px;
  background-color: #bbb;
  margin-top: .3rem;
  margin-bottom: 1.5rem;
}

.page-theme-courant-faible-domotique .bloc-content h1::after{
  background-color: #3167AF;
}
.page-theme-courant-faible-domotique .btn-primary{
  background-color: #3167AF;
  border-color: #3167AF;
}
.page-theme-courant-faible-domotique .btn-primary:hover{
  background-color: #11386c;
  border-color: #11386c;
}
.page-theme-courant-faible-domotique section.section-with-bg{
  background-color: #c5deff;
}

.page-theme-energies-renouvelables .bloc-content h1::after{
  background-color: #F1E400;
}
.page-theme-energies-renouvelables .btn-primary{
  background-color: #F1E400;
  border-color: #F1E400;
  color: #000;
}
.page-theme-energies-renouvelables .btn-primary:hover{
  background-color: #d4a600;
  border-color: #d4a600;
  color: #000;
}
.page-theme-energies-renouvelables section.section-with-bg{
  background-color: #fffbb4;
}

.page-theme-electricite-generale .bloc-content h1::after{
  background-color: #269B38;
}
.page-theme-electricite-generale .btn-primary{
  background-color: #269B38;
  border-color: #269B38;
}
.page-theme-electricite-generale .btn-primary:hover{
  background-color: #127220;
  border-color: #127220;
}
.page-theme-electricite-generale section.section-with-bg{
  background-color: #c0e6c6;
}

.page-theme-conseils-services .bloc-content h1::after{
  background-color: #96621C;
}
.page-theme-conseils-services .btn-primary{
  background-color: #96621C;
  border-color: #96621C;
}
.page-theme-conseils-services .btn-primary:hover{
  background-color: #7d4a08;
  border-color: #7d4a08;
}
.page-theme-conseils-services section.section-with-bg{
  background-color: #eadcc8;
}



.bloc-content ul {
  list-style-type: none; /* Supprime les puces */
  padding: 0;
  margin: 0;
}

.bloc-content ul li {
  border-bottom: 1px solid rgba(0, 0, 0, 0.2); /* Ajoute une ligne grise en bas de chaque élément */
  padding: 10px 0; /* Ajoute un peu d'espace vertical pour chaque élément */
}

.bloc-content ul li:last-child {
  border-bottom: none; /* Supprime la ligne en bas du dernier élément */
}

.bloc-image{
  min-height: 200px;
}
.pagination{
  --bs-pagination-border-color:#bbb;
  --bs-pagination-border-radius:0;
  --bs-pagination-color:#121212;  
  --bs-pagination-active-color: #fff;
  --bs-pagination-active-bg: #121212;
  --bs-pagination-active-border-color: #121212;
  --bs-pagination-hover-color: #121212;
  --bs-pagination-hover-bg: #bbb;
  --bs-pagination-hover-border-color: #bbb;
  --bs-pagination-focus-color: #121212;
  --bs-pagination-focus-bg: #bbb;
}
#map{
  width: 100%;
  height: 450px;
}

.post-thumbnail img{
  max-width: 100%;
  height: auto;
}
.pagination{
  display: flex;
  justify-content: center;
}
.pagination .page-numbers{
  border: 1px solid #121212;
  padding: 6px 12px;
  margin: 0 6px;
  color: #121212;
}
.pagination .page-numbers:hover,
.pagination .page-numbers.current{
  background-color: #121212;
  color: #FFF;
}