/*
 Theme Name:     Divi Child
 Theme URI:      https://www.elegantthemes.com/gallery/divi/
 Description:    Divi Child Theme
 Author:         Elegant Themes
 Author URI:     https://www.elegantthemes.com
 Template:       Divi
 Version:        1.0.0
*/


/* =Theme customization starts here
------------------------------------------------------- */



a {
    text-decoration: none !important;
}

.et_pb_text_inner {
    font-weight: 400;
}

p.font-weight {
    font-weight: 600;
}
.class-fotter p {
    font-weight: 600;
}

@media (min-width: 981px) {
    .class-h2 h2 , .class-h01 p {
        font-size: 33px;
        line-height: 39px;
  		font-weight: 600;
	
    }
	.class-h202 h2 {
    font-size: 29px;
    line-height: 39px;
    font-weight: 600;
}
	
	.class-h1 h1 {
        font-size: 37px;
        line-height: 51px;
        font-weight: 600;
	
		
}
	
.half {
    display: flex;
    align-items: center;
}

	
}


.class-h3-titre h3 {
    font-size: 20px;
    font-weight: 500;
    line-height: 31px !important;
}


@media only screen and (max-width: 980px){
.reverse {
    display: flex;
    flex-direction: column-reverse;
}
}
	@media (max-width: 980px) {
    .bloc-espac .et_pb_column.et_pb_column_empty {
        display: block;
        padding-bottom: 70%;
    }
	.espaces .et_pb_column.et_pb_column_1_2.et_pb_column_1.et_pb_css_mix_blend_mode_passthrough.et-last-child {
    padding-top: 33% !important;
}	
}


p.sous-titres {
	color: #d9e1ea;
    letter-spacing: 6px;
    font-size: 16px;
    font-weight: 600;
    text-transform: uppercase;
}

.class-titre-flip h2.dsm-title.et_pb_module_header {
    font-size: 24px;
    line-height: 35px;
    font-weight: 600 !important;
}

/***********/

.fixed-phone {
    position: fixed;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    background-color: #1b1464 ;
    border-radius: 100px 0px 0px 100px;
    width: 60px;
    transition: width 0.3s ease, background-color 0.5s ease;
    overflow: hidden;
    z-index: 2;
    white-space: nowrap;
}
.fixed-phone a {
  display: flex;
  align-items: center;
  color: #fff;
	padding: 15px 0px 15px 20px;
  text-decoration: none;
  font-size: 16px;
}
.phone-icon {
  font-size: 20px;
  margin-right: 10px;
  transform: rotate(90deg);
}
.phone-number {
  display: none;
  font-size: 16px;
  color: #fff;
  white-space: nowrap;
}
.fixed-phone:hover {
  width: 234px;
}
.fixed-phone:hover .phone-number {
  display: inline;
}
.fixed-phone:hover .phone-icon {
  margin-right: 15px;
}
@media (max-width:767px) {
.fixed-phone {
    width: 50px;
}
.fixed-phone a {
    padding: 10px 0px 10px 10px;
}
	
	a.et_pb_button {
    letter-spacing: 2px !important;
}
}


/***********************/
.fixed-phone.siz1.pos2 {
    top: 60%;
}


.pos2  span.phone-icon {
    transform: unset !important;
}

/***********/


.class-icon span.et_pb_image_wrap.et_pb_only_image_mode_wrap {
    width: 65px;
}


.mobile_menu_bar:before, .mobile_menu_bar:after, #top-menu li.current-menu-ancestor>a, #top-menu li.current-menu-item>a {
    color: #1b1464 !important;
}


.et_mobile_menu {
 
    border-top: 3px solid #1b1464  !important;
	}

.opacity-c img {
    opacity: 0.6;
}
@media (max-width: 980px) {
    .et_fixed_nav #main-header {
        position: fixed !important;
    }
	
		.class-h1 h1 {
    font-size: 29px;
    line-height: 46px;
	font-weight:600;
	        color: #00B0FF;
        text-shadow: 0 0 20px #000000;
}
	    .class-h2 h2 , .class-h01 p , .class-h202 h2 {
        font-size: 26px;
        line-height:41px;
		font-weight:600;
	
    }
	
	  
	
	p.sous-titres{
		
	    font-size: 15px !important;	
	    letter-spacing: 5px !important;
	}
	.opacity-c img {
  display:none;
}
}






.et-fixed-header #top-menu li.class-btn a {
    color: white !important;
}


nav#top-menu-nav {
    margin-top: -14px;
}

.icon-titre img {
    width: 95px !important;
}
.middle {

    align-items: center; /* Centrage vertical */
    
}


/**/


/* SECTION HERO */
.diapomobile21 {
  min-height: 650px;
  overflow: hidden;
  display: flex;
  align-items: center;
  background-size: cover !important;
  background-position: center center !important;
}

/* Overlay bleu sur l'image */
.diapomobile21::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(
    90deg,
    rgba(32, 87, 145, 0.82) 0%,
    rgba(63, 105, 166, 0.62) 45%,
    rgba(25, 32, 72, 0.45) 100%
  );
  pointer-events: none;
}

/* Vague blanche en bas */
.diapomobile21::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  height: 145px;
  z-index: 3;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 1440 160' xmlns='http://www.w3.org/2000/svg' preserveAspectRatio='none'%3E%3Cpath d='M0 70 C210 110 440 130 670 140 C860 150 980 108 1135 88 C1260 72 1360 80 1440 94 L1440 160 L0 160 Z' fill='white'/%3E%3C/svg%3E");
  background-size: 100% 100%;
  background-repeat: no-repeat;
  background-position: bottom center;
  pointer-events: none;
}

/* Row au-dessus de l'overlay */
.diapomobile21 .et_pb_row {
  position: relative;
  z-index: 5;
  width: 82% !important;
  max-width: 1180px !important;
  padding: 0 !important;
}

/* Module texte */
.diapomobile21 .et_pb_text {
  max-width: 680px;
}

/* Nettoyer les br ajoutés par Divi */
.diapomobile21 .hero-small-title br,
.diapomobile21 .hero-phone-btn br {
  display: none;
}

.diapomobile21 .hero-text-plomberie p:empty {
  display: none;
}

/* Bloc texte */
.diapomobile21 .hero-text-plomberie {
  max-width: 680px;
  text-align: left;
  color: #ffffff;
}

/* Petit texte */
.diapomobile21 .hero-small-title {
  display: block;
  margin-bottom: 18px;
  color: #ffffff !important;
  font-size: 14px;
  font-weight: 800;
  line-height: 1.4;
  letter-spacing: 0.4px;
  text-transform: uppercase;
  text-shadow: 0 6px 22px rgba(0, 0, 0, 0.18);
}

/* Grand titre */
.diapomobile21 .hero-text-plomberie h1 {
  margin: 0 0 24px !important;
  padding: 0 !important;
  color: #ffffff !important;
  font-size: clamp(48px, 5vw, 82px) !important;
  font-weight: 800 !important;
  line-height: 1.03 !important;
  letter-spacing: -2px;
  text-shadow: 0 8px 30px rgba(0, 0, 0, 0.18);
}

/* Sous-titre */
.diapomobile21 .hero-text-plomberie p {
  margin: 0 0 30px !important;
  padding: 0 !important;
  color: #ffffff !important;
  font-size: 25px !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
  text-shadow: 0 6px 24px rgba(0, 0, 0, 0.18);
}

/* Bouton téléphone */
.diapomobile21 .hero-phone-btn {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 14px;
  padding: 17px 34px;
  border-radius: 999px;
  background: #ffffff;
  color: #25304a !important;
  font-size: 19px;
  font-weight: 800;
  line-height: 1;
  text-decoration: none !important;
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.18);
  transition: all 0.3s ease;
}

.diapomobile21 .hero-phone-btn span {
  color: #0b2d5c;
  font-size: 19px;
  line-height: 1;
}

.diapomobile21 .hero-phone-btn:hover {
  color: #1b1464  !important;
  transform: translateY(-2px);
  box-shadow: 0 22px 46px rgba(0, 0, 0, 0.22);
}

/* TABLETTE */
@media (max-width: 980px) {
  .diapomobile21 {
    min-height: 580px;
    background-position: center right !important;
  }

  .diapomobile21 .et_pb_row {
    width: 88% !important;
  }

  .diapomobile21 .hero-text-plomberie {
    max-width: 560px;
  }

  .diapomobile21 .hero-text-plomberie h1 {
    font-size: 56px !important;
  }

  .diapomobile21 .hero-text-plomberie p {
    font-size: 21px !important;
  }
}

/* MOBILE */
@media (max-width: 767px) {
  .diapomobile21 {
    min-height: 540px;
    align-items: center;
    background-position: center right !important;
  }

  .diapomobile21::before {
    background: linear-gradient(
      90deg,
      rgba(32, 87, 145, 0.9) 0%,
      rgba(45, 90, 150, 0.78) 55%,
      rgba(20, 30, 70, 0.55) 100%
    );
  }

  .diapomobile21::after {
    height: 90px;
  }

  .diapomobile21 .et_pb_row {
    width: 90% !important;
  }

  .diapomobile21 .hero-small-title {
    font-size: 11px;
    margin-bottom: 14px;
  }

  .diapomobile21 .hero-text-plomberie h1 {
    font-size: 42px !important;
    letter-spacing: -1px;
    margin-bottom: 18px !important;
  }

  .diapomobile21 .hero-text-plomberie p {
    font-size: 18px !important;
    margin-bottom: 24px !important;
  }

  .diapomobile21 .hero-phone-btn {
    padding: 14px 24px;
    font-size: 16px;
  }
}

h1 {}

.home div#page-container {
    padding-top: 0 !important;
}

.home header#main-header {
    background: #ff000000 !important;
    border: 0 !important;
}

.home #top-menu li a {
    color: white;
}

.home #top-menu li.current-menu-item>a {
    color: #bdbdbd !important;
}

.home #main-header.et-fixed-header {
    background: #ffffff !important;
    border: 0 !important;
}