@charset "UTF-8";
@import url(main.css);
::marker { color: #419176; }

/*********************** NAVBAR *****************************/
.animated-border-button:after { background-color: #419176; }

nav.navbar { box-shadow: rgba(0, 0, 0, 0.45) 0px 25px 20px -20px; }

#navigation-bar-hide { opacity: 1 !important; top: 0 !important; }

/************************************************** PAGES ACCUEIL **************************************************/
/*********************** hero *****************************/
.videoTitle { width: 100% !important; }

.fondDegradeLogo { width: 60% !important; }

/******************** BANNIERE *************************/
body > main > div.wrapper > div > div.d-flex.align-items-center.justify-content-center.px-4.py-5.text-center.cta_banner.bg-sixthColor.position-relative { min-height: 10vh !important; height: auto !important; box-sizing: border-box !important; }

@media (max-width: 991px) { body > main > div.wrapper > div > div.d-flex.align-items-center.justify-content-center.px-4.py-5.text-center.cta_banner.bg-sixthColor.position-relative { min-height: 10vh !important; } }

@media (max-width: 576px) { body > main > div.wrapper > div > div.d-flex.align-items-center.justify-content-center.px-4.py-5.text-center.cta_banner.bg-sixthColor.position-relative { min-height: 10vh !important; } }

/******************** BLOC PRESENTATION *************************/
.phototext-section { position: relative !important; overflow: hidden !important; background-color: #ffffff !important; }

/* Traits décoratifs sur le côté gauche */
.phototext-section::before, .phototext-section::after { content: "" !important; position: absolute !important; left: 35px !important; width: 8px !important; height: 170% !important; background-color: rgba(42, 148, 119, 0.18) !important; transform: rotate(20deg) !important; transform-origin: center !important; pointer-events: none !important; z-index: 0 !important; }

.phototext-section::before { top: -35% !important; }

.phototext-section::after { top: -20% !important; left: 65px !important; background-color: rgba(42, 148, 119, 0.1) !important; }

/* Le contenu reste au-dessus des traits */
.phototext-section > * { position: relative !important; z-index: 1 !important; }

.button-contact { transition: transform 0.3s ease, box-shadow 0.3s ease !important; }

.button-contact:hover { transform: translateY(-4px) !important; box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15) !important; }

/* Tablette */
@media (max-width: 991px) { .phototext-section::before, .phototext-section::after { left: 20px !important; width: 6px !important; height: 150% !important; opacity: 0.8 !important; } .phototext-section::after { left: 45px !important; } }

/* Mobile */
@media (max-width: 576px) { .phototext-section::before, .phototext-section::after { left: 10px !important; width: 4px !important; height: 130% !important; background-color: rgba(42, 148, 119, 0.12) !important; } .phototext-section::after { left: 28px !important; background-color: rgba(42, 148, 119, 0.07) !important; } }

/******************** BLOC SERVICES *************************/
li > p { line-height: 1.2 !important; margin-bottom: 6px !important; }

ol, ul { padding-left: 0rem !important; }

.db-renov-services { width: 100% !important; padding: 100px 24px !important; background-color: rgba(61, 61, 61, 0.1) !important; box-sizing: border-box !important; overflow: hidden !important; }

.db-renov-services__container { width: 100% !important; max-width: 1400px !important; margin: 0 auto !important; padding: 0 !important; box-sizing: border-box !important; }

.db-renov-services__header { width: 100% !important; max-width: 850px !important; margin: 0 auto 60px !important; text-align: center !important; }

.db-renov-services__title, .db-renov-services__description { width: 100% !important; }

.db-renov-services__description { margin-top: 20px !important; }

.db-renov-services__grid { display: grid !important; grid-template-columns: repeat(6, minmax(0, 1fr)) !important; gap: 30px !important; align-items: stretch !important; justify-content: center !important; width: 100% !important; }

.db-renov-services__card { grid-column: span 2 !important; display: flex !important; flex-direction: column !important; min-width: 0 !important; height: 100% !important; overflow: hidden !important; background-color: #ffffff !important; border-radius: 24px !important; box-shadow: 0 18px 45px rgba(0, 0, 0, 0.08) !important; box-sizing: border-box !important; transition: transform 0.3s ease, box-shadow 0.3s ease !important; }

.db-renov-services__card:nth-child(4) { grid-column: 2 / span 2 !important; }

.db-renov-services__card:nth-child(5) { grid-column: 4 / span 2 !important; }

.db-renov-services__card:hover { transform: translateY(-8px) !important; box-shadow: 0 26px 60px rgba(0, 0, 0, 0.13) !important; }

.db-renov-services__visual { position: relative !important; width: 100% !important; height: 300px !important; padding: 0 !important; overflow: hidden !important; background: none !important; }

.db-renov-services__main-image { display: block !important; width: 100% !important; height: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important; object-fit: cover !important; object-position: center !important; border: 0 !important; border-radius: 0 !important; transition: transform 0.5s ease !important; }

.db-renov-services__card:hover .db-renov-services__main-image { transform: scale(1.04) !important; }

.db-renov-services__content { position: relative !important; display: flex !important; flex: 1 1 auto !important; flex-direction: column !important; align-items: flex-start !important; gap: 16px !important; width: 100% !important; padding: 62px 40px 40px !important; box-sizing: border-box !important; }

.db-renov-services__icon-wrapper { position: absolute !important; top: -41px !important; left: 40px !important; display: flex !important; align-items: center !important; justify-content: center !important; width: 82px !important; height: 82px !important; padding: 18px !important; overflow: hidden !important; background-color: #419176 !important; border-radius: 22px !important; box-shadow: 0 12px 24px rgba(65, 145, 118, 0.25) !important; box-sizing: border-box !important; }

.db-renov-services__icon { display: block !important; width: 100% !important; height: 100% !important; max-width: 46px !important; max-height: 46px !important; margin: 0 !important; padding: 0 !important; object-fit: contain !important; border: 0 !important; border-radius: 0 !important; }

.db-renov-services__card-title, .db-renov-services__card-description { width: 100% !important; }

@media (max-width: 1199px) { .db-renov-services { padding: 85px 24px !important; } .db-renov-services__grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 26px !important; } .db-renov-services__card, .db-renov-services__card:nth-child(4), .db-renov-services__card:nth-child(5) { grid-column: auto !important; } .db-renov-services__card:nth-child(5) { grid-column: 1 / -1 !important; width: calc(50% - 13px) !important; justify-self: center !important; } .db-renov-services__visual { height: 280px !important; } }

@media (max-width: 767px) { .db-renov-services { padding: 70px 18px !important; } .db-renov-services__header { margin-bottom: 45px !important; } .db-renov-services__grid { grid-template-columns: 1fr !important; gap: 24px !important; } .db-renov-services__card, .db-renov-services__card:nth-child(4), .db-renov-services__card:nth-child(5) { grid-column: auto !important; width: 100% !important; } .db-renov-services__visual { height: 250px !important; } .db-renov-services__content { gap: 14px !important; padding: 55px 26px 32px !important; } .db-renov-services__icon-wrapper { top: -36px !important; left: 26px !important; width: 72px !important; height: 72px !important; padding: 16px !important; border-radius: 18px !important; } .db-renov-services__icon { max-width: 40px !important; max-height: 40px !important; } }

@media (max-width: 480px) { .db-renov-services { padding: 60px 14px !important; } .db-renov-services__visual { height: 220px !important; } .db-renov-services__card { border-radius: 18px !important; } .db-renov-services__content { padding: 52px 22px 28px !important; } .db-renov-services__icon-wrapper { left: 22px !important; } }

/******************** BLOC ZONE INTERVENTION *************************/
.db-renov-zone { position: relative; width: 100%; padding: 5rem 1.5rem; overflow: hidden; background-color: rgba(61, 61, 61, 0.1) !important; box-sizing: border-box; }

.db-renov-zone__container { position: relative; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: center; gap: 5.5rem; width: 100%; max-width: 87.5rem; margin: 0 auto; }

.db-renov-zone__image { display: flex; align-items: center; justify-content: center; width: 100%; height: 38rem; overflow: hidden; }

.db-renov-zone__image img { display: block; width: 100%; height: 100%; max-width: 100%; object-fit: contain; object-position: center; border-radius: 0 !important; }

.db-renov-zone__content { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; min-height: 38rem; }

.db-renov-zone__title-small { margin-bottom: 0.875rem; padding-bottom: 0.5rem; color: #419176; text-transform: uppercase; letter-spacing: 0.04em; }

.db-renov-zone__title-main { position: relative; margin-bottom: 1.375rem; padding-bottom: 1rem; color: #3d3d3d; line-height: 1.1; }

.db-renov-zone__title-main::after { content: ""; position: absolute; bottom: 0; left: 0; width: 6.25rem; height: 0.2rem; background-color: #419176; }

.db-renov-zone__title-second { margin-bottom: 1rem; color: #3d3d3d; }

.db-renov-zone__description { width: 100%; max-width: 38.75rem; color: #5f5f5f; line-height: 1.65; }

@media screen and (max-width: 62rem) { .db-renov-zone { padding: 4rem 1.25rem; } .db-renov-zone__container { grid-template-columns: 1fr; gap: 2.5rem; } .db-renov-zone__image { height: 30rem; } .db-renov-zone__content { min-height: auto; } }

@media screen and (max-width: 37.5rem) { .db-renov-zone { padding: 3rem 1rem; } .db-renov-zone__container { gap: 2rem; } .db-renov-zone__image { height: 22rem; } .db-renov-zone__title-small { margin-bottom: 0.625rem; } .db-renov-zone__title-main { margin-bottom: 1.125rem; } .db-renov-zone__title-main::after { width: 5rem; } }

/******************** BLOC CTA *************************/
.button_homepageDoubleScreen p { margin: 0 !important; }

.button_homepageDoubleScreen { background-color: white !important; transition: background-color 0.4s ease, transform 0.3s ease !important; }

.button_homepageDoubleScreen span { transition: color 0.4s ease !important; }

.button_homepageDoubleScreen:hover { background-color: #3D3D3D !important; }

.button_homepageDoubleScreen:hover span { color: #ffffff !important; }

.button_homepageDoubleScreen:hover { transform: translateY(-3px); }

/************************************************** PAGES SECONDAIRES **************************************************/
/******************** HERO *************************/
#secondaires { height: 0; }

\
#secondaires + style + #fullHeight { height: 80vh; min-height: unset !important; }

/******************** SECTION SERVICES *************************/
/* ====================================================== CONTENU ÉDITORIAL ====================================================== */
.db-renov-services-secondary li > p { line-height: 1.2 !important; margin-bottom: 6px !important; }

.db-renov-services-secondary ol, .db-renov-services-secondary ul { padding-left: 1.25rem !important; }

/* ====================================================== SECTION ====================================================== */
.db-renov-services-secondary { width: 100% !important; padding: 100px 24px !important; overflow: hidden !important; background-color: rgba(61, 61, 61, 0.1) !important; box-sizing: border-box !important; }

.db-renov-services-secondary__container { width: 100% !important; max-width: 1400px !important; margin: 0 auto !important; padding: 0 !important; box-sizing: border-box !important; }

/* ====================================================== EN-TÊTE ====================================================== */
.db-renov-services-secondary__header { width: 100% !important; max-width: 850px !important; margin: 0 auto 60px !important; text-align: center !important; }

.db-renov-services-secondary__title, .db-renov-services-secondary__description { width: 100% !important; }

.db-renov-services-secondary__title { margin-top: 0 !important; margin-bottom: 0 !important; }

.db-renov-services-secondary__description { margin-top: 20px !important; }

.db-renov-services-secondary__description > *:first-child { margin-top: 0 !important; }

.db-renov-services-secondary__description > *:last-child { margin-bottom: 0 !important; }

/* ====================================================== GRILLE ====================================================== */
.db-renov-services-secondary__grid { display: flex !important; flex-wrap: wrap !important; align-items: stretch !important; justify-content: center !important; gap: 30px !important; width: 100% !important; box-sizing: border-box !important; }

/* ====================================================== CARTES ====================================================== */
.db-renov-services-secondary__card { display: flex !important; flex: 0 1 calc((100% - 60px) / 3) !important; flex-direction: column !important; align-self: stretch !important; min-width: 0 !important; max-width: calc((100% - 60px) / 3) !important; height: auto !important; margin: 0 !important; padding: 0 !important; overflow: hidden !important; background-color: #ffffff !important; border-radius: 24px !important; box-shadow: 0 18px 45px rgba(0, 0, 0, 0.08) !important; box-sizing: border-box !important; transition: transform 0.3s ease, box-shadow 0.3s ease !important; }

.db-renov-services-secondary__card:hover { transform: translateY(-8px) !important; box-shadow: 0 26px 60px rgba(0, 0, 0, 0.13) !important; }

/* ====================================================== IMAGES ====================================================== */
.db-renov-services-secondary__visual { position: relative !important; flex: 0 0 300px !important; width: 100% !important; height: 300px !important; margin: 0 !important; padding: 0 !important; overflow: hidden !important; background: none !important; box-sizing: border-box !important; }

.db-renov-services-secondary__main-image { display: block !important; width: 100% !important; height: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important; object-fit: cover !important; object-position: center !important; border: 0 !important; border-radius: 0 !important; transition: transform 0.5s ease !important; }

.db-renov-services-secondary__card:hover .db-renov-services-secondary__main-image { transform: scale(1.04) !important; }

/* ====================================================== CONTENU DES CARTES ====================================================== */
.db-renov-services-secondary__content { display: flex !important; flex: 1 1 auto !important; flex-direction: column !important; align-items: flex-start !important; gap: 16px !important; width: 100% !important; padding: 38px 40px 40px !important; box-sizing: border-box !important; }

.db-renov-services-secondary__card-title, .db-renov-services-secondary__card-description { width: 100% !important; }

.db-renov-services-secondary__card-title { flex: 0 0 auto !important; margin-top: 0 !important; margin-bottom: 0 !important; }

.db-renov-services-secondary__card-description { display: flex !important; flex: 1 1 auto !important; flex-direction: column !important; margin: 0 !important; }

.db-renov-services-secondary__card-description > *:first-child { margin-top: 0 !important; }

.db-renov-services-secondary__card-description > *:last-child { margin-bottom: 0 !important; }

/* ====================================================== TABLETTE ====================================================== */
@media (max-width: 1199px) { .db-renov-services-secondary { padding: 85px 24px !important; } .db-renov-services-secondary__grid { gap: 26px !important; } .db-renov-services-secondary__card { flex-basis: calc((100% - 26px) / 2) !important; max-width: calc((100% - 26px) / 2) !important; } .db-renov-services-secondary__visual { flex-basis: 280px !important; height: 280px !important; } }

/* ====================================================== MOBILE ====================================================== */
@media (max-width: 767px) { .db-renov-services-secondary { padding: 70px 18px !important; } .db-renov-services-secondary__header { margin-bottom: 45px !important; } .db-renov-services-secondary__grid { gap: 24px !important; } .db-renov-services-secondary__card { flex-basis: 100% !important; width: 100% !important; max-width: 620px !important; } .db-renov-services-secondary__visual { flex-basis: 250px !important; height: 250px !important; } .db-renov-services-secondary__content { gap: 14px !important; padding: 30px 26px 32px !important; } }

/* ====================================================== PETITS MOBILES ====================================================== */
@media (max-width: 480px) { .db-renov-services-secondary { padding: 60px 14px !important; } .db-renov-services-secondary__card { max-width: 100% !important; border-radius: 18px !important; } .db-renov-services-secondary__visual { flex-basis: 220px !important; height: 220px !important; } .db-renov-services-secondary__content { padding: 26px 22px 28px !important; } }

/******************** IMAGE REVETEMENT SOL  *************************/
body > main > div.wrapper > div > div:nth-child(11) > div > div.row.flex-lg-row-reverse.align-items-center.g-5.py-2.px-4.mt-5.position-relative.z-1 > div.col-12.col-sm-8.col-lg-5.my-0.order-2.order-lg-2.order-xl-2.order-xxl-2 > img { height: clamp(250px, 30vw, 400px) !important; width: auto !important; object-fit: cover !important; margin: 0 auto !important; display: block !important; }

/******************** SEO  *************************/
a.nav-link.fs-6.dropdown-toggle.px-0.text-color-secondary.text-center { text-transform: uppercase; }

a.button_homepageDoubleScreen { color: #3D3D3D !important; background-color: #FFFFFF !important; }

a.button_homepageDoubleScreen:hover { color: #FFFFFF !important; }

#bandeau-title-seo > div > h2 { color: #3D3D3D !important; }

#contact > div { background-color: white !important; }

#contact > div > div.col-lg-6.text-center.text-color-sixth > span { color: #3D3D3D !important; }

#contact > div > div.col-lg-6.text-center.text-color-sixth > p { color: #3D3D3D !important; }

body > main > div.wrapper > div > div.my-5.pb-4 > div.px-5.pt-5.display-6.text-color-primary.titles { color: #3D3D3D !important; }

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