@charset "UTF-8";
@import url(main.css);
div.photoTitleText { text-align: center !important; padding: 3% !important; margin-bottom: 0 !important; }

/*--------------------------------------------------------Ajustements SEO-------------------------------------------------------*/
.first-banner-seo-page .background-image-div-opacity { background-image: url(https://firebasestorage.googleapis.com/v0/b/refpro-app-ca244.appspot.com/o/customers%2FQMYyBPgRGlN0u71eLZs9XpFx19E3%2Fimages%2Fimage00002_xkt0.webp?alt=media&token=0a7166d8-ff76-4b35-9bf6-4734bb6b1dc2) !important; opacity: 0.5 !important; }

.first-banner-seo-page .logo-seo-page { filter: brightness(15); }

/* ------------------------------------------------------------------ Étapes de chantier – Cartes compactes (même DA que p3c-icons) ------------------------------------------------------------------ */
/* Grille : 6 cartes sur une ligne */
.p3c-icons.p3c-steps { display: grid; grid-template-columns: repeat(6, 1fr); gap: 12px; }

/* Carte étape */
.p3c-step { background: #e7e1d5; border-radius: 14px; padding: 14px 8px; text-align: center; display: flex; flex-direction: column; align-items: center; justify-content: center; box-shadow: 0 10px 25px rgba(64, 43, 24, 0.12); border: 1px solid rgba(64, 43, 24, 0.12); transition: transform .25s ease, box-shadow .25s ease; }

/* Hover cohérent avec les autres cartes */
.p3c-step:hover { transform: translateY(-6px); box-shadow: 0 18px 40px rgba(64, 43, 24, 0.22); }

/* Icône Bootstrap */
.p3c-step i { font-size: 26px; color: #402b18; margin-bottom: 6px; line-height: 1; }

/* Texte */
.p3c-step span { font-size: 12px; font-weight: 600; color: #402b18; line-height: 1.3; }

/* ---------------- Responsive ---------------- */
/* Tablette : 3 par ligne */
@media (max-width: 1100px) { .p3c-icons.p3c-steps { grid-template-columns: repeat(3, 1fr); gap: 14px; } }

/* Mobile : 2 par ligne */
@media (max-width: 700px) { .p3c-icons.p3c-steps { grid-template-columns: repeat(2, 1fr); } }

/*-------------------------------------------------------------------------------------------------------------------*/
.titles { text-transform: uppercase; }

p strong { font-weight: 700 !important; }

div.cta_banner { padding-top: 8rem !important; padding-bottom: 8rem !important; }

#accueil, #avis-clients, #prestations { height: 0; background-color: transparent !important; border: none !important; box-shadow: none !important; }

#divider { height: 80px; background-color: transparent !important; border: none !important; box-shadow: none !important; }

.spacer { display: none; }

nav .dropdown { display: none; }

lottie-player { filter: sepia(1) saturate(2) hue-rotate(320deg) brightness(0.4); opacity: 0.5; }

/*-------------------------------------------------------Avant / Après---------------------------------*/
div.row:has(.before-after-images-column) { padding-bottom: 150px !important; margin-top: 0 !important; margin-bottom: 0 !important; background-color: #e7e1d5; width: 100vw !important; }

div.mx-1:has(.before-after-images-column) { margin: 0 !important; }

.image-before-after-container { border-radius: 15px; }

/*------Couleur des lignes---*/
.slider-before-after-images:before, .slider-before-after-images:after { background: #e7e1d5 !important; }

/*------Couleur du rond---*/
.slider-before-after-images { border: 3px solid #e7e1d5 !important; background: #e7e1d5 !important; }

/*------Couleur des flêches---*/
.bi-chevron-left::before, .bi-chevron-right::before { color: white; }

/*------------------------------------------Bloc actu------------------------------*/
#news-posts-bloc { margin-top: 150px !important; margin-bottom: 150px !important; }

/*-----------------------Barre de navigation-------------------------*/
nav.navbar { text-transform: uppercase; color: #402B18 !important; }

.navbar-nav li.px-4.py-2 { padding-right: 1.2rem !important; padding-left: 1.2rem !important; }

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

.animated-border-button:after { background-color: #402B18; }

.fs-6.animated-border-button.obftrucs { color: #402B18 !important; font-family: 'Poppins'; font-weight: 600; }

nav a { text-decoration: none !important; }

@media (min-width: 1360px) { nav ul { justify-content: space-between !important; } }

/*----------------------------------------------------------------------------Paragraphes----------------------------------------------------------*/
.p3c-section { background: #e7e1d5; padding: clamp(50px, 7vw, 90px) 20px; }

.p3c-wrapper { max-width: 1600px; margin: auto; display: flex; flex-direction: column; gap: 90px; }

.p3c-row { display: grid; grid-template-columns: 1.1fr 1fr; gap: 50px; align-items: center; }

/* ORDRE CORRIGÉ */
.p3c-row.reverse .p3c-image { order: 2; }

.p3c-row.reverse .p3c-card { order: 1; }

.p3c-image { position: relative; border-radius: 28px; overflow: hidden; box-shadow: 0 25px 60px rgba(64, 43, 24, 0.25); cursor: pointer; max-height: 600px; }

.p3c-image img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .6s ease; }

.p3c-image:hover img { transform: scale(1.06); }

/* ICÔNE ZOOM */
.p3c-image::after { content: "🔍"; position: absolute; bottom: 16px; right: 16px; background: rgba(64, 43, 24, 0.8); color: #fff; padding: 8px 10px; border-radius: 50%; font-size: 14px; }

/* Lightbox */
.p3c-lightbox { position: fixed; inset: 0; background: rgba(64, 43, 24, 0.92); display: none; align-items: center; justify-content: center; z-index: 9999; }

.p3c-lightbox img { max-width: 90%; max-height: 90%; border-radius: 20px; box-shadow: 0 30px 80px rgba(0, 0, 0, 0.6); }

.p3c-lightbox:target { display: flex; }

.p3c-card { background: rgba(255, 255, 255, 0.55); backdrop-filter: blur(12px); border-radius: 28px; padding: 40px; box-shadow: 0 20px 50px rgba(64, 43, 24, 0.15); border: 1px solid rgba(64, 43, 24, 0.15); }

.p3c-card h2 { color: #402b18; margin-bottom: 30px; font-family: 'Candal'; text-transform: uppercase; font-size: 1.7em; }

.p3c-card h3 { color: #402b18; margin: 50px 0; font-family: 'Candal'; text-transform: uppercase; font-size: 1.2em; }

.p3c-card p { color: #402b18; margin-bottom: 16px; }

.p3c-muted { opacity: .85; }

.p3c-icons { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; margin: 40px 0 !important; }

.p3c-icons a { background: #e7e1d5; border-radius: 18px; padding: 14px 10px; text-align: center; box-shadow: 0 10px 25px rgba(64, 43, 24, 0.12); transition: .3s ease; display: flex; flex-direction: column; align-items: center; text-decoration: none; }

.p3c-icons a:hover { transform: translateY(-6px); background: #402b18; }

.p3c-icons a:hover span { color: #e7e1d5; }

.p3c-icons img { width: 38px; margin-bottom: 8px; }

.p3c-icons span { font-size: 14px; color: #402b18; font-weight: 600; }

/* Responsive */
@media (max-width: 900px) { .p3c-row { grid-template-columns: 1fr; } .p3c-row.reverse .p3c-image, .p3c-row.reverse .p3c-card { order: initial; } .p3c-icons { grid-template-columns: repeat(2, 1fr); } }

/*-----------------------Bannière d'accueil--------------------------*/
#secondaires + style + #fullHeight { height: 60vh !important; }

#secondaires + style + #fullHeight .image-video-logo { display: none; }

#secondaires + style + #fullHeight lottie-player { display: none; }

.fondDegradeLogo { width: 45%; }

.fondDegradeLogo, svg { -webkit-animation-name: fadeInLeftBig; animation-name: fadeInLeftBig; -webkit-animation-duration: 1.5s; animation-duration: 1.5s; -webkit-animation-fill-mode: both; animation-fill-mode: both; }

@-webkit-keyframes fadeInLeftBig { 0% { opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0); }
  100% { opacity: 1;
    -webkit-transform: none;
    transform: none; } }

@keyframes fadeInLeftBig { 0% { opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0); }
  100% { opacity: 1;
    -webkit-transform: none;
    transform: none; } }

.videoTitle { width: 100% !important; }

h1 { position: relative; }

h1::after { content: ""; display: block; width: 20%; height: 60px; /* ajuste selon la hauteur réelle de l’image */ margin: 0 auto; background-image: url("https://storage.googleapis.com/refpro-app-ca244.appspot.com/customers%2FQMYyBPgRGlN0u71eLZs9XpFx19E3%2Fimages%2FPattern_horizontal_P3C_2_pfgh.webp"); background-repeat: no-repeat; background-position: center; background-size: contain; }

/*-----------------------Boutons--------------------------*/
a.button_homepageDoubleScreen { text-transform: uppercase; border-radius: 15px !important; transition: background 0.5s ease; font-family: 'Poppins' !important; color: white !important; font-weight: normal !important; }

a.button_header { border-radius: 15px !important; font-size: 0.9em; padding-top: 0.7rem !important; font-weight: 600; font-family: 'Poppins'; }

#navbarSupportedContent > div > a:nth-child(1) { background-image: url(https://storage.googleapis.com/refpro-app-ca244.appspot.com/customers%2FQMYyBPgRGlN0u71eLZs9XpFx19E3%2Fimages%2Ftoiture_1_9qdy.webp); background-size: cover; background-position: center; }

#navbarSupportedContent > div > a:nth-child(2) { background-image: url(https://storage.googleapis.com/refpro-app-ca244.appspot.com/customers%2FQMYyBPgRGlN0u71eLZs9XpFx19E3%2Fimages%2Fcharpente_1_zdkq.webp); background-size: cover; background-position: center; }

/*--------------------------Cartes de services Custom----------------------*/
/* ---------------- Prestations ---------------- */
.p3c-prestations { position: relative; padding: clamp(90px, 8vw, 130px) 20px; overflow: hidden; }

.p3c-bg-video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }

.p3c-prest-content { position: relative; z-index: 2; max-width: 1200px; margin: auto; text-align: center; }

.p3c-prest-title { font-family: 'Candal'; text-transform: uppercase; font-size: clamp(28px, 3vw, 40px); color: #e7e1d5; font-size: 1.7em; margin-bottom: 50px; }

.p3c-prest-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 30px; }

/* RÉUTILISE LA DA DES CARTES ICÔNES */
.p3c-prest-card { background: rgba(231, 225, 213, 0.8); border-radius: 22px; padding: 26px 22px; box-shadow: 0 12px 28px rgba(64, 43, 24, 0.18); border: 1px solid rgba(64, 43, 24, 0.12); text-decoration: none; color: #402b18 !important; transition: .3s ease; }

.p3c-prest-card:hover { transform: translateY(-6px); box-shadow: 0 25px 55px rgba(64, 43, 24, 0.28); background: #402b18; color: #e7e1d5 !important; }

.p3c-prest-card img { width: 44px; margin-bottom: 14px; }

.p3c-prest-card h3 { font-size: 18px; margin-bottom: 10px; font-weight: 700 !important; }

.p3c-prest-card p { font-size: 16px; line-height: 1.6; }

/* Accessibilité */
.p3c-prest-card:focus { outline: 2px solid #402b18; outline-offset: 4px; }

/* Mobile */
@media (max-width: 800px) { .p3c-prest-title { font-size: 24px; } }

/* Met en valeur les icônes au hover des cartes */
.p3c-icons a:hover img, .p3c-prest-card:hover img { background: #e7e1d5; border-radius: 50%; padding: 10px; }

/*-----------------------Bloc pictos-------------------------*/
.svg-picto-card h3 { text-transform: uppercase; font-size: 0.95em; }

.picto_card .background-image-div-opacity { background-attachment: fixed; background-size: cover; }

.picto_card .row { margin: 0 !important; padding: 100px 0; }

/*-----------------------Bloc avis Google-------------------------*/
.googleReviews-div .owl-stage-outer { overflow: visible !important; }

div.googleReviews-div { padding: 8rem 0 !important; background-color: #402b18; margin-bottom: 0 !important; padding-bottom: 200px !important; }

div.googleReviews-div .card { background-color: #e7e1d5; }

/*------------------------------------------------Bloc Maps-----------------------------------------*/
div.mb-5.googleReviews-div > div.container.m-4.mx-auto > div { background-image: url(https://storage.googleapis.com/refpro-app-ca244.appspot.com/customers%2FQMYyBPgRGlN0u71eLZs9XpFx19E3%2Fimages%2FPattern_horizontal_P3C_1_gql4.webp); background-position: center; color: #e7e1d5; }

div.mb-5.googleReviews-div > div.container.m-4.mx-auto > div img { content: url("https://firebasestorage.googleapis.com/v0/b/refpro-app-ca244.appspot.com/o/customers%2FQMYyBPgRGlN0u71eLZs9XpFx19E3%2Fimages%2Flogo_fond_transparent_2_gw7r.webp?alt=media&token=fdc4f13f-1897-413f-9190-cad9e9e3a689"); }

/*-----------------------Formulaire de contact-------------------------*/
#contact .background-image-div-opacity { background-attachment: fixed; background-size: cover; }

#formContact { background-color: #e7e1d5de !important; }

#contact p { text-transform: none !important; }

#contact h3 { color: #402b18; margin: 50px 0; font-family: 'Candal'; text-transform: uppercase; font-size: 1.2em; }

#contact .align-items-center { justify-content: space-around; }

@media (max-width: 768px) { #contact .align-items-center .text-center { width: 100% !important; } }

#contact .align-items-center .text-center { width: 40%; background-color: #e7e1d5; padding: 20px; border-radius: 20px; }

/*-----------------------Carrousels-------------------------*/
.carousel-partenaires .owl-item img { border-radius: 15px !important; height: 300px !important; }

#carrousel { background-color: #e7e1d5; background-image: url(https://storage.googleapis.com/refpro-app-ca244.appspot.com/customers%2FQMYyBPgRGlN0u71eLZs9XpFx19E3%2Fimages%2FPattern_horizontal_P3C_zqjb.webp); background-attachment: fixed; background-size: cover; background-position: center; max-width: none !important; padding: 200px 150px; }

#carrousel .owl-carousel { box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px; }

@media (max-width: 1100px) { #carrousel { padding: 200px 150px; } }

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