@charset "UTF-8";
@import url(main.css);
/*  ombre bloc */
.row.p-4.pb-0.pe-lg-0.pt-lg-5.pb-lg-5.rounded-3.shadow-lg.justify-content-center.position-relative.bg-primaryColor.text-color-primary { box-shadow: 0 0rem 0rem !important; }

.mx-auto.col-lg-11.px-4.py-4.mb-5.mt-5.text-color-primary.rounded-3.shadow-lg.bg-primaryColor.position-relative { box-shadow: 0 0rem 0rem !important; }

h1 { text-shadow: 5px 5px 5px #000000 !important; }

#inverse .row.flex-lg-row-reverse.align-items-center.g-5.py-2.px-4.mt-5.position-relative.z-1 { flex-direction: row !important; }

/*   taille logo footer  */
.logo-footer > .logo_nav { height: 25vh !important; }

.videoTitle { width: 100% !important; }

/*   taille logo navbar */
.navbar-brand { height: 11vh !important; width: 11vw !important; }

.logo_nav { height: 10vh !important; }

/*   accueil voile transparent  */
.video-background-overlay { background-color: transparent !important; }

/* effet espace  */
.b-bloc-divider { border: none !important; border-width: none !important; box-shadow: none !important; background-color: transparent !important; }

/* ===  fond icônes  === */
.bg-sixthColor { background-color: #ffffff00 !important; }

/* ===  carré-bloc services  === */
.carré-bloc { width: 100%; padding: 20px; margin: 0; box-sizing: border-box; text-align: center; /* centre le titre */ }

/* === Titre avec formes géométriques bleues === */
.carré-bloc__title { position: relative; display: inline-block; font-size: 2rem; margin-bottom: 40px; font-weight: 700; color: #256ba2; padding: 20px 80px; /* espace autour du texte */ }

/* Coin bas gauche */
.carré-bloc__title::before { content: ""; position: absolute; left: 0; bottom: 0; width: 80px; height: 25px; border-left: 3px solid #256ba2; border-bottom: 3px solid #256ba2; }

/* Coin haut droit */
.carré-bloc__title::after { content: ""; position: absolute; right: 0; top: 0; width: 80px; height: 25px; border-right: 3px solid #256ba2; border-top: 3px solid #256ba2; }

/* === Grille des cartes === */
.carré-bloc__container { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; width: 100%; }

.carré-bloc__item { aspect-ratio: 1 / 1; display: flex; align-items: center; justify-content: center; position: relative; text-decoration: none; overflow: hidden; cursor: pointer; transition: transform 0.3s ease; }

.carré-bloc__item:hover { transform: scale(1.05); }

.carré-bloc__border { width: 85%; height: 85%; border: 2px solid #fff; display: flex; align-items: center; justify-content: center; position: relative; z-index: 2; }

.carré-bloc__border h3 { color: #fff; font-size: clamp(1rem, 2vw, 1.5rem); font-weight: 600; text-align: center; margin: 0; letter-spacing: 1px; z-index: 3; }

/* === Overlay === */
.carré-bloc__overlay { position: absolute; inset: 0; background-size: cover; background-position: center; opacity: 0; transition: opacity 0.4s ease; z-index: 1; }

/* Images overlay */
.item-1 .carré-bloc__overlay { background-image: url("https://storage.googleapis.com/refpro-app-ca244.appspot.com/customers%2FPOEIBscqUkZCw25hqh60IZfbLAy2%2Fimages%2Flogo_sanitair_5_y22z.webp"); }

.item-2 .carré-bloc__overlay { background-image: url("https://storage.googleapis.com/refpro-app-ca244.appspot.com/customers%2FPOEIBscqUkZCw25hqh60IZfbLAy2%2Fimages%2Flogo_sanitair_6_0yic.webp"); }

.item-3 .carré-bloc__overlay { background-image: url("https://storage.googleapis.com/refpro-app-ca244.appspot.com/customers%2FPOEIBscqUkZCw25hqh60IZfbLAy2%2Fimages%2Flogo_sanitair_7_hw27.webp"); }

.item-4 .carré-bloc__overlay { background-image: url("https://storage.googleapis.com/refpro-app-ca244.appspot.com/customers%2FPOEIBscqUkZCw25hqh60IZfbLAy2%2Fimages%2Flogo_sanitair_8_r2s9.webp"); }

/* Hover overlay */
.carré-bloc__item:hover .carré-bloc__overlay { opacity: 0.5; }

/* === Couleurs de fond === */
.item-1 { background-color: #396888; }

.item-2 { background-color: #256ba2; }

.item-3 { background-color: #8ab9d5; }

.item-4 { background-color: #98c5d2; }

/* === Responsive === */
@media (max-width: 900px) { .carré-bloc__container { grid-template-columns: repeat(2, 1fr); } .carré-bloc__title { font-size: 1.6rem; padding: 15px 50px; } /* ✅ Images toujours visibles sur mobile */ .carré-bloc__overlay { opacity: 1 !important; } .item-1, .item-2, .item-3, .item-4 { background-color: transparent !important; } }

@media (max-width: 500px) { .carré-bloc__container { grid-template-columns: 1fr; } .carré-bloc__title { font-size: 1.4rem; padding: 10px 30px; } }

/* === Fin bloc : carré service === */
/* === Bloc réalisations === */
.réalisations-bloc { width: 100%; padding: 60px 20px; background-color: transparent; box-sizing: border-box; }

/* === Structure === */
.réalisations-bloc__container { display: flex; align-items: center; gap: 40px; max-width: 1200px; margin: 0 auto; }

/* === Image === */
.réalisations-bloc__image img { max-width: 500px; height: auto; display: block; }

/* === Contenu texte === */
.réalisations-bloc__content { flex: 1; text-align: center; }

/* === Titre décoratif === */
.réalisations-title { position: relative; display: inline-block; font-size: 2rem; margin-bottom: 25px; font-weight: 700; color: #256ba2 !important; /* 🔹 Couleur forcée */ padding: 20px 80px; }

/* Coin bas gauche */
.réalisations-title::before { content: ""; position: absolute; left: 0; bottom: 0; width: 80px; height: 25px; border-left: 3px solid #256ba2; border-bottom: 3px solid #256ba2; }

/* Coin haut droit */
.réalisations-title::after { content: ""; position: absolute; right: 0; top: 0; width: 80px; height: 25px; border-right: 3px solid #256ba2; border-top: 3px solid #256ba2; }

/* === Texte descriptif === */
.réalisations-bloc__content p { font-size: 1.2rem; margin-bottom: 25px; color: #555; line-height: 1.6; max-width: 600px; margin-left: auto; margin-right: auto; }

/* === Bouton (CTA) === */
.réalisations-bloc__cta { display: inline-block; padding: 12px 32px; border: 2px solid #396888; color: #396888; text-decoration: none; font-weight: 650; background-color: transparent; border-radius: 50px; transition: all 0.3s ease; }

.réalisations-bloc__cta:hover { background-color: #396888; color: #fff; }

/* === Responsive === */
@media (max-width: 900px) { .réalisations-bloc__container { flex-direction: column; text-align: center; } .réalisations-bloc__image img { max-width: 380px; } .réalisations-title { font-size: 1.6rem; padding: 15px 50px; } }

@media (max-width: 500px) { .réalisations-title { font-size: 1.4rem; padding: 10px 35px; } .réalisations-title::before, .réalisations-title::after { width: 50px; height: 20px; } .réalisations-bloc__image img { max-width: 300px; } }

/* === Fin bloc : Réalisations === */
/* ===== Slider d'images ===== */
.image-slider { margin: auto; width: 100%; overflow: hidden; display: flex; }

.image-slider .slide { height: 20rem; /* tu peux ajuster la hauteur */ width: max-content; padding: 20px; display: flex; justify-content: center; align-items: center; }

.image-slider .slide img { height: 100%; object-fit: cover; }

.image-slider .slide-group { display: flex; justify-content: space-around; gap: 20px; padding-right: 20px; will-change: transform; animation: scrolling 50s linear infinite; }

/* Animation infinie */
@keyframes scrolling { 0% { transform: translateX(0); }
  100% { transform: translateX(-100%); } }

/* === Fin bloc : Slider d'images === */
/*-------------------Galerie Custom--------------------------*/
#custom-gallery { padding-top: 40px; }

@media screen and (min-width: 991px) { #custom-gallery { padding: 60px 30px 0 30px; } }

#custom-gallery .image { height: 400px !important; margin: 20px 0; }

.img-wrapper { position: relative; height: 100%; margin-top: 15px; }

.img-wrapper img { width: 100%; }

.img-overlay { background: rgba(0, 0, 0, 0.7); width: 100%; height: 100%; position: absolute; top: 0; left: 0; display: flex; justify-content: center; align-items: center; opacity: 0; }

.img-overlay i { color: #fff; font-size: 3em; }

#overlay { background: rgba(0, 0, 0, 0.7); width: 100%; height: 100%; position: fixed; top: 0; left: 0; display: flex; justify-content: center; align-items: center; z-index: 999; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }

#overlay img { margin: 0; width: 80%; height: auto; object-fit: contain; padding: 5%; }

@media screen and (min-width: 768px) { #overlay img { width: 60%; } }

@media screen and (min-width: 1200px) { #overlay img { width: 50%; } }

#nextButton { color: #fff; font-size: 2em; transition: opacity 0.8s; }

#nextButton:hover { opacity: 0.7; }

@media screen and (min-width: 768px) { #nextButton { font-size: 3em; } }

#prevButton { color: #fff; font-size: 2em; transition: opacity 0.8s; }

#prevButton:hover { opacity: 0.7; }

@media screen and (min-width: 768px) { #prevButton { font-size: 3em; } }

#exitButton { color: #fff; font-size: 2em; transition: opacity 0.8s; position: absolute; top: 15px; right: 15px; }

#exitButton:hover { opacity: 0.7; }

@media screen and (min-width: 768px) { #exitButton { font-size: 3em; } }

.img-responsive { height: 100% !important; object-fit: cover !important; }

/*# sourceMappingURL=custom.css.map */