@import url(main.css);
/*=================================== BOUTON FIXE CONTACT ===========================================*/
.bdp-contact-fixe { position: fixed; right: 20px; bottom: 20px; z-index: 999; display: flex; flex-direction: column; gap: 10px; }

.bdp-contact-fixe__btn { display: flex; align-items: center; justify-content: center; width: 50px; height: 50px; background: #1FA51F; border-radius: 50%; box-shadow: 0 4px 12px rgba(0, 0, 0, 0.25); text-decoration: none; transition: transform 0.2s ease; }

.bdp-contact-fixe__btn:nth-child(2) { background: #1F2328; }

.bdp-contact-fixe__btn:nth-child(3) { background: #8A22C2; }

.bdp-contact-fixe__btn:nth-child(4) { background: #1E7FD8; }

.bdp-contact-fixe__btn:hover { transform: scale(1.1); }

.bdp-contact-fixe__icone { display: block; width: 22px; height: 22px; fill: #FFFFFF; }

@media (max-width: 768px) { .bdp-contact-fixe { right: 12px; bottom: 12px; gap: 8px; } .bdp-contact-fixe__btn { width: 44px; height: 44px; } .bdp-contact-fixe__icone { width: 20px; height: 20px; } }

/*===================== CUSTOM NAV BAR ============*/
a.grow.button_header.text-color-fourth.mx-3.mx-lg-2.my-2.my-lg-1.p-2.rounded-pill.text-decoration-none.button-header-telephone { border-radius: 5px !important; padding: 14px 26px !important; font-weight: 800 !important; }

.animated-border-button:after { background-color: #8A22C2; }

/*=================================================================================== HERO D'ACCUEIL ==================================================================================*/
.bdp-hero { position: relative; min-height: 80vh; display: flex; align-items: center; justify-content: center; text-align: center; overflow: hidden; }

.bdp-hero__img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; }

.bdp-hero::after { content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.5); }

.bdp-hero__logo { display: inline-block; margin-bottom: 24px; padding: 14px 20px; border-radius: 12px; }

.bdp-hero__logo img { display: block; width: 250px; height: auto; }

.bdp-hero__contenu { position: relative; z-index: 2; max-width: 800px; padding: 80px 20px; }

.bdp-hero__titre { margin: 0 0 16px; color: #FFFFFF; font-size: 50px; line-height: 1.15; font-weight: 700 !important; text-transform: uppercase; }

.bdp-hero__texte { margin: 0 0 30px; color: #FFFFFF; font-size: 19px; line-height: 1.6; }

.bdp-hero__btn { display: inline-block; padding: 14px 32px; background: #1FA51F; color: #FFFFFF; border-radius: 4px; font-size: 16px; font-weight: 600 !important; text-decoration: none; transition: background 0.2s ease; }

.bdp-hero__btn:hover { background: #8A22C2; color: #FFFFFF; }

@media (max-width: 768px) { .bdp-hero { min-height: 65vh; } .bdp-hero__titre { font-size: 32px; } .bdp-hero__texte { font-size: 16px; } .bdp-hero__logo { padding: 10px 14px; } .bdp-hero__logo img { width: 110px; } }

/*====================================================================================== PRESENTATION DE L'ENTREPRISE ================================================================================*/
.bdp-entreprise { padding: 90px 20px; background: #FFFFFF; }

.bdp-entreprise__inner { display: flex; align-items: center; gap: 60px; max-width: 1150px; margin: 0 auto; }

.bdp-entreprise__texte { flex: 1; }

.bdp-entreprise__titre { margin: 0 0 24px; color: #1F2328; font-size: 36px; line-height: 1.2; font-weight: 700 !important; text-transform: uppercase; }

.bdp-entreprise__texte p { margin: 0 0 16px; color: #444444; font-size: 17px; line-height: 1.7; }

.bdp-entreprise__photo { flex: 1; }

.bdp-entreprise__photo img { display: block; width: 100%; height: 420px; object-fit: cover; border-radius: 8px; }

.bdp-entreprise__chiffres { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; max-width: 1150px; margin: 60px auto 0; }

.bdp-entreprise__chiffre { padding: 28px 20px; background: #F4F4F2; text-align: center; border-top: 4px solid #1FA51F; }

.bdp-entreprise__chiffre:nth-child(2) { border-top-color: #8A22C2; }

.bdp-entreprise__chiffre:nth-child(3) { border-top-color: #E0201B; }

.bdp-entreprise__chiffre:nth-child(4) { border-top-color: #F28C1B; }

.bdp-entreprise__chiffre strong { display: block; margin-bottom: 6px; color: #1F2328; font-size: 36px; line-height: 1.1; font-weight: 800 !important; }

.bdp-entreprise__chiffre span { color: #555555; font-size: 15px; line-height: 1.4; }

@media (max-width: 900px) { .bdp-entreprise { padding: 60px 20px; } .bdp-entreprise__inner { flex-direction: column; gap: 32px; } .bdp-entreprise__titre { font-size: 28px; } .bdp-entreprise__photo { width: 100%; } .bdp-entreprise__photo img { height: 280px; } .bdp-entreprise__chiffres { grid-template-columns: repeat(2, 1fr); gap: 16px; margin-top: 40px; } .bdp-entreprise__chiffre strong { font-size: 28px; } }

/*========================================================================================== LES EXPERTISES ===============================================================================*/
.bdp-expertises { padding: 90px 20px; background: #F4F4F2; }

.bdp-expertises__inner { max-width: 1150px; margin: 0 auto; }

.bdp-expertises__titre { margin: 0 0 16px; color: #1F2328; font-size: 36px; line-height: 1.2; text-align: center; font-weight: 700 !important; text-transform: uppercase; }

.bdp-expertises__intro { max-width: 680px; margin: 0 auto 48px; color: #555555; font-size: 17px; line-height: 1.6; text-align: center; }

.bdp-expertises__grille { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; align-items: stretch; }

.bdp-expertises__carte { display: flex; flex-direction: column; height: 100%; background: #FFFFFF; overflow: hidden; }

.bdp-expertises__carte img { display: block; width: 100%; height: 200px; object-fit: cover; }

.bdp-expertises__contenu { flex: 1; display: flex; flex-direction: column; padding: 26px 24px 30px; border-top: 4px solid #1FA51F; }

.bdp-expertises__carte:nth-child(2) .bdp-expertises__contenu { border-top-color: #8A22C2; }

.bdp-expertises__carte:nth-child(3) .bdp-expertises__contenu { border-top-color: #E0201B; }

.bdp-expertises__carte:nth-child(4) .bdp-expertises__contenu { border-top-color: #F28C1B; }

.bdp-expertises__contenu h3 { display: flex; align-items: flex-start; min-height: 52px; margin: 0 0 14px; color: #1F2328; font-size: 20px; line-height: 1.3; font-weight: 700 !important; text-transform: uppercase; }

.bdp-expertises__contenu p { margin: 0; color: #555555; font-size: 16px; line-height: 1.6; }

@media (max-width: 1000px) { .bdp-expertises__grille { grid-template-columns: repeat(2, 1fr); } }

@media (max-width: 600px) { .bdp-expertises { padding: 60px 20px; } .bdp-expertises__titre { font-size: 28px; margin-bottom: 32px; } .bdp-expertises__intro { font-size: 16px; margin-bottom: 32px; } .bdp-expertises__grille { grid-template-columns: 1fr; } .bdp-expertises__contenu h3 { min-height: 0; } }

/*======================================================================================= LES PROJETS / REALISATIONS ====================================================================================================*/
.bdp-real { padding: 90px 20px; background: #111111; }

.bdp-real__inner { max-width: 1150px; margin: 0 auto; }

.bdp-real__titre { margin: 0 0 16px; color: #FFFFFF; font-size: 36px; line-height: 1.2; text-align: center; font-weight: 700 !important; text-transform: uppercase; }

.bdp-real__intro { max-width: 680px; margin: 0 auto 48px; color: rgba(255, 255, 255, 0.7); font-size: 17px; line-height: 1.6; text-align: center; }

.bdp-real__grille { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }

.bdp-real__carte { display: flex; flex-direction: column; background: #1E1E1E; cursor: pointer; overflow: hidden; outline: none; transition: transform 0.25s ease, box-shadow 0.25s ease; }

.bdp-real__carte:hover, .bdp-real__carte:focus { transform: translateY(-4px); box-shadow: 0 10px 24px rgba(0, 0, 0, 0.5); }

.bdp-real__cover { display: block; width: 100%; height: 260px; object-fit: cover; }

.bdp-real__contenu { flex: 1; display: flex; flex-direction: column; padding: 22px 24px 26px; }

.bdp-real__contenu h3 { margin: 0 0 6px; color: #FFFFFF; font-size: 22px; line-height: 1.3; font-weight: 700 !important; text-transform: uppercase; }

.bdp-real__info { color: rgba(255, 255, 255, 0.6); font-size: 15px; }

.bdp-real__lien { margin-top: 16px; color: #1FA51F; font-size: 15px; font-weight: 600 !important; }

.bdp-real__carte:hover .bdp-real__lien { color: #FFFFFF; }

.bdp-real__photos { display: none; }

.bdp-popup { display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 9999; padding: 20px; box-sizing: border-box; background: rgba(0, 0, 0, 0.75); align-items: center; justify-content: center; }

.bdp-popup.is-open { display: flex; }

.bdp-popup__boite { width: 100%; max-width: 1000px; max-height: 95vh; display: flex; flex-direction: column; background: #FFFFFF; border-radius: 8px; overflow: hidden; }

.bdp-popup__entete { display: flex; align-items: center; justify-content: space-between; padding: 16px 24px; }

.bdp-popup__titre { margin: 0; color: #1F2328; font-size: 22px; font-weight: 700 !important; }

.bdp-popup__info { color: #777777; font-size: 14px; }

.bdp-popup__fermer { background: none; border: none; color: #1F2328; font-size: 38px; line-height: 1; cursor: pointer; padding: 0 4px; }

.bdp-popup__carrousel { position: relative; display: flex; align-items: center; justify-content: center; height: 60vh; background: #1F2328; }

.bdp-popup__image { max-width: 100%; max-height: 100%; object-fit: contain; }

.bdp-popup__nav { position: absolute; top: 50%; transform: translateY(-50%); width: 48px; height: 48px; border: none; border-radius: 50%; background: rgba(255, 255, 255, 0.9); color: #1F2328; font-size: 34px; line-height: 1; cursor: pointer; transition: background 0.2s ease, color 0.2s ease; }

.bdp-popup__nav:hover { background: #1FA51F; color: #FFFFFF; }

.bdp-popup__nav--prev { left: 16px; }

.bdp-popup__nav--next { right: 16px; }

.bdp-popup__compteur { position: absolute; bottom: 12px; left: 50%; transform: translateX(-50%); padding: 4px 12px; border-radius: 20px; background: rgba(0, 0, 0, 0.6); color: #FFFFFF; font-size: 13px; }

.bdp-popup__miniatures { display: flex; gap: 8px; padding: 12px 24px 16px; overflow-x: auto; }

.bdp-popup__miniatures img { flex: 0 0 auto; width: 90px; height: 64px; object-fit: cover; cursor: pointer; opacity: 0.5; border: 2px solid transparent; transition: opacity 0.2s ease, border-color 0.2s ease; }

.bdp-popup__miniatures img:hover { opacity: 0.85; }

.bdp-popup__miniatures img.is-active { opacity: 1; border-color: #1FA51F; }

@media (max-width: 900px) { .bdp-real__grille { grid-template-columns: repeat(2, 1fr); } }

@media (max-width: 600px) { .bdp-real { padding: 60px 20px; } .bdp-real__titre { font-size: 28px; } .bdp-real__intro { font-size: 16px; margin-bottom: 32px; } .bdp-real__grille { grid-template-columns: 1fr; } .bdp-real__cover { height: 220px; } .bdp-popup { padding: 10px; } .bdp-popup__carrousel { height: 45vh; } .bdp-popup__nav { width: 38px; height: 38px; font-size: 26px; } .bdp-popup__miniatures img { width: 70px; height: 50px; } }

/*========================================================================================= LES ENGAGEMENTS ================================================================================================*/
.bdp-engagements { padding: 90px 20px; background: #FFFFFF; }

.bdp-engagements__inner { max-width: 1150px; margin: 0 auto; text-align: center; }

.bdp-engagements__titre { margin: 0 0 16px; color: #1F2328; font-size: 36px; line-height: 1.2; font-weight: 700 !important; text-transform: uppercase; }

.bdp-engagements__intro { max-width: 700px; margin: 0 auto 50px; color: #555555; font-size: 17px; line-height: 1.6; }

.bdp-engagements__grille { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; margin-bottom: 50px; }

.bdp-engagements__item { position: relative; padding: 34px 24px; background: #F4F4F2; border-top: 4px solid #1FA51F; border-radius: 0; }

.bdp-engagements__item:nth-child(2) { border-top-color: #8A22C2; }

.bdp-engagements__item:nth-child(3) { border-top-color: #E0201B; }

.bdp-engagements__item:nth-child(4) { border-top-color: #F28C1B; }

.bdp-engagements__item h3 { margin: 0 0 12px; color: #1F2328; font-size: 20px; line-height: 1.3; font-weight: 700 !important; }

.bdp-engagements__item p { margin: 0; color: #555555; font-size: 16px; line-height: 1.6; }

.bdp-engagements__badge { position: absolute; top: 12px; right: 12px; padding: 4px 10px; background: #1FA51F; border-radius: 4px; color: #FFFFFF; font-size: 14px; line-height: 1.2; font-weight: 800 !important; }

.bdp-engagements__label { display: block; margin-bottom: 16px; color: #1FA51F; font-size: 13px; letter-spacing: 2px; text-transform: uppercase; font-weight: 700 !important; }

.bdp-engagements__marques { display: flex; flex-wrap: wrap; justify-content: center; gap: 14px; }

.bdp-engagements__marques span { padding: 12px 26px; background: #FFFFFF; border: 1px solid #DDDDDA; border-radius: 4px; color: #1F2328; font-size: 16px; font-weight: 600 !important; }

@media (max-width: 1000px) { .bdp-engagements__grille { grid-template-columns: repeat(2, 1fr); } }

@media (max-width: 600px) { .bdp-engagements { padding: 60px 20px; } .bdp-engagements__titre { font-size: 28px; } .bdp-engagements__intro { font-size: 16px; margin-bottom: 36px; } .bdp-engagements__grille { grid-template-columns: 1fr; gap: 16px; margin-bottom: 40px; } }

/*============================================================================================= MAPS / ZONE D'INTERVENTION ======================================================================================*/
.bdp-contact { padding: 90px 20px; background: #F4F4F2; }

.bdp-contact__inner { max-width: 1150px; margin: 0 auto; }

.bdp-contact__titre { margin: 0 0 16px; color: #1F2328; font-size: 36px; line-height: 1.2; text-align: center; font-weight: 700 !important; text-transform: uppercase; }

.bdp-contact__intro { max-width: 680px; margin: 0 auto 40px; color: #555555; font-size: 17px; line-height: 1.6; text-align: center; }

.bdp-contact__carte iframe { display: block; width: 100%; height: 380px; border: 0; border-radius: 8px; }

@media (max-width: 768px) { .bdp-contact { padding: 60px 20px; } .bdp-contact__titre { font-size: 28px; } .bdp-contact__intro { font-size: 16px; margin-bottom: 32px; } .bdp-contact__carte iframe { height: 300px; } }

/*================================================================================================= BLOC REFERENCES ===================================================================================================*/
.bdp-ref { padding: 50px 20px; background: #1FA51F; }

.bdp-ref__inner { display: flex; align-items: center; justify-content: space-between; gap: 40px; max-width: 1150px; margin: 0 auto; }

.bdp-ref__titre { margin: 0 0 10px; color: #FFFFFF; font-size: 28px; line-height: 1.25; font-weight: 700 !important; }

.bdp-ref__texte p { max-width: 700px; margin: 0; color: #FFFFFF; font-size: 17px; line-height: 1.6; }

.bdp-ref__btn { flex-shrink: 0; display: inline-block; padding: 15px 32px; background: #FFFFFF; color: #1F2328; border-radius: 4px; font-size: 16px; font-weight: 600 !important; text-decoration: none; transition: background 0.2s ease, color 0.2s ease; }

.bdp-ref__btn:hover { background: #1F2328; color: #FFFFFF; }

@media (max-width: 768px) { .bdp-ref { padding: 44px 20px; } .bdp-ref__inner { flex-direction: column; align-items: flex-start; gap: 24px; } .bdp-ref__titre { font-size: 24px; } .bdp-ref__texte p { font-size: 16px; } }

/*========================================================================================= LES FOURNISSEURS ===========================================================================================*/
.bdp-fournisseurs { padding: 80px 20px; background: #1F2328; }

.bdp-fournisseurs__inner { max-width: 1000px; margin: 0 auto; text-align: center; }

.bdp-fournisseurs__titre { margin: 0 0 16px; color: #FFFFFF; font-size: 36px; line-height: 1.2; font-weight: 700 !important; text-transform: uppercase; }

.bdp-fournisseurs__intro { max-width: 680px; margin: 0 auto 44px; color: rgba(255, 255, 255, 0.75); font-size: 17px; line-height: 1.6; }

.bdp-fournisseurs__grille { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }

.bdp-fournisseurs__carte { display: flex; align-items: center; justify-content: center; height: 150px; padding: 24px; background: #FFFFFF; border-radius: 8px; box-sizing: border-box; transition: transform 0.25s ease; }

.bdp-fournisseurs__carte:hover { transform: translateY(-4px); }

.bdp-fournisseurs__carte img { display: block; max-width: 80%; max-height: 80px; object-fit: contain; }

@media (max-width: 768px) { .bdp-fournisseurs { padding: 60px 20px; } .bdp-fournisseurs__titre { font-size: 28px; } .bdp-fournisseurs__intro { font-size: 16px; margin-bottom: 32px; } .bdp-fournisseurs__grille { grid-template-columns: 1fr; gap: 14px; } .bdp-fournisseurs__carte { height: 120px; } }

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