@charset "UTF-8";
@import url(main.css);
/*Header*/
.logo_nav { height: 6vh !important; }

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

.grow.button_header.text-color-fourth.mx-3.mx-lg-2.p-2.rounded-pill.text-decoration-none.button-header-telephone { border-radius: 25px 0px 25px 0px !important; }

/*Hero*/
.hero-button { margin: 25px; }

/*Espace*/
.b-bloc-divider { height: 50px !important; background-color: transparent !important; border: none !important; box-shadow: none !important; }

#blue-divider { height: 50px !important; background-color: #1BA68C !important; border: none !important; box-shadow: none !important; }

/*Présentation*/
.d-block.mx-lg-auto.img-fluid { border-radius: 50px 0px 50px 0px; }

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

.mx-auto.col-lg-11 img.img-fluid { transition: transform 0.35s ease, box-shadow 0.35s ease; will-change: transform; }

.mx-auto.col-lg-11 img.img-fluid:hover { transform: scale(1.05); box-shadow: 0 20px 40px rgba(0, 0, 0, 0.25); }

/*Services*/
.custom-cards-2 { width: 100%; display: flex; display: -webkit-flex; justify-content: center; -webkit-justify-content: center; max-width: 1300px; margin-left: auto; margin-right: auto; }

.card__img { visibility: hidden; background-size: cover; background-position: center; background-repeat: no-repeat; width: 100%; height: 250px; border-top-left-radius: 25px; border-bottom-right-radius: 25px; }

.card__img--hover { transition: 0.2s all ease-out; background-size: cover; background-position: center; background-repeat: no-repeat; width: 100%; position: absolute; height: 250px; border-top-left-radius: 25px; border-bottom-right-radius: 25px; top: 0; }

.custom-card-2 { margin-right: 25px; transition: all 0.4s cubic-bezier(0.175, 0.885, 0, 1); background-color: #fff; width: 33.3%; position: relative; border-radius: 25px 0px 25px 0px; overflow: hidden; }

.custom-card-2:hover { transform: scale(1.1, 1.1); }

.card__info { z-index: 2; background-color: #fff; border-top-right-radius: 0px; border-bottom-left-radius: 0px; padding: 16px 24px 24px 24px; }

.card__title { margin-top: 5px; margin-bottom: 10px; }

.custom-card-2:hover .card__img--hover { height: 100%; opacity: 0.3; }

.custom-card-2:hover .card__info { background-color: transparent; position: relative; }

.custom-card-2:hover .card__info-hover { opacity: 1; }

@media (max-width: 1024px) { .custom-cards-2 { flex-wrap: wrap; } .custom-card-2 { width: 48%; margin-bottom: 25px; } }

@media (max-width: 768px) { .custom-card-2 { width: 100%; margin-right: 0; } }

/*Galerie Avant-Après*/
.photoTitleText.text-color-sixth { padding: 3rem; }

.mx-1.mx-lg-4.mb-5 { padding: 3rem 0rem; }

/*Avis Google*/
.card.p-2.rounded-3.shadow-lg.px-4.border-0.d-flex.justify-content-lg-between { border-radius: 50px 0px 50px 0px !important; box-shadow: 0 0rem 0rem rgba(0, 0, 0, 0.175) !important; }

#maps-url { border-radius: 25px 0px 25px 0px !important; }

/*Bloc SEO*/
.card.card-cover.h-100.overflow-hidden.rounded-4.shadow-lg { border-radius: 50px 0px 50px 0px !important; box-shadow: 0 0rem 0rem rgba(0, 0, 0, 0.175) !important; border-width: 0px !important; }

.black-screen { opacity: 0 !important; }

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

.first-activity-div .card, .second-activity-div .card, .third-activity-div .card { transition: transform 0.35s ease, box-shadow 0.35s ease; will-change: transform; }

.first-activity-div .card:hover, .second-activity-div .card:hover, .third-activity-div .card:hover { transform: scale(1.05); box-shadow: 0 20px 40px rgba(0, 0, 0, 0.25); }

/*Titre*/
#title { padding-top: 3rem !important; padding-bottom: 0rem !important; }

/* Conteneur du titre CTA – uniquement dans le bloc #title */
#title .ctaLinks-title { position: relative; display: inline-block; }

/* Ligne animée sous le texte – uniquement dans le bloc #title */
#title .ctaLinks-title::after { content: ""; position: absolute; left: 50%; bottom: -25px; /* 25px sous le texte */ width: 150px; height: 2px; background-color: #A6178E; transform: translateX(-50%) scaleX(0); transform-origin: left; animation: drawLine 1s ease-out forwards; }

/* Animation dessin de gauche à droite */
@keyframes drawLine { from { transform: translateX(-50%) scaleX(0); }
  to { transform: translateX(-50%) scaleX(1); } }

/*Introduction*/
#introduction { margin-top: 0rem !important; padding-top: 0rem !important; }

/*Call To Action*/
.button_homepageDoubleScreen.ctaLinks-button.text-color-fourth.p-3.fs-6.fw-bold.m-2 { border-radius: 25px 0px 25px 0px; }

/*Frise chronologique*/
.timeline-line { background-color: #1BA68C; }

.timeline-point { background-color: #F2A444; }

.card.border-0.h-100.timeline-card.timeline-card-container.text-color-secondary { border-radius: 25px 0px 25px 0px !important; }

/*Conclusion*/
.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 { border-radius: 50px 0px 50px 0px !important; box-shadow: 0 0rem 0rem rgba(0, 0, 0, 0.175) !important; }

.rounded-lg-3 { border-radius: 50px 0px 50px 0px !important; }

.display-5.fw-bold.p-4.pt-lg-2.titles.position-relative.z-1 { padding-left: 4rem !important; padding-right: 4rem !important; }

.photoText-div .col-lg-5.offset-lg-1 { transition: transform 0.35s ease, box-shadow 0.35s ease; will-change: transform; }

.photoText-div .col-lg-5.offset-lg-1:hover { transform: scale(1.05); box-shadow: 0 20px 40px rgba(0, 0, 0, 0.25); }

/*Foire aux questions*/
.faq-section.position-relative.py-5.bg-primaryColor.text-color-primary { padding-top: 0rem !important; }

.col-lg-12.p-3.p-lg-4 { padding-top: 0rem !important; }

/*Avant-Après*/
.before-after-images-column { max-height: 100vh; }

/*Réalisations*/
.d-flex.align-items-center.justify-content-center.px-4.py-5.text-center.cta_banner.bg-sixthColor.position-relative { padding-top: 4rem !important; }

.realisations-section { background: #FFFFFF; padding: 25px 25px 0px 25px; }

.overlay { max-width: 1200px; margin: 0 auto; padding: 25px 25px 0px 25px; }

.realisations-main-title { text-align: center; font-size: 3rem; color: #F9A34C; font-weight: bold; margin-bottom: 32px; font-family: 'Prata', Arial, sans-serif; }

.filter-tabs { display: flex; justify-content: center; gap: 25px; margin-bottom: 50px; flex-wrap: wrap; }

.filter-btn { background: #F2B6D7; border: none; color: #000; font-size: 1rem; padding: 17.5px 17.5px; border-radius: 25px 0px 25px 0px; cursor: pointer; font-weight: 400; box-shadow: none; display: flex; align-items: center; justify-content: center; min-height: 25px; line-height: 1.2; transition: background 0.2s; text-align: center; }

.filter-btn.active { background: #A6178E; color: #FFFFFF; }

p { margin-bottom: 0rem !important; }

.realisations-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 25px; }

.realisation-card { border-radius: 0px; overflow: hidden; box-shadow: 0 0px 0px rgba(0, 0, 0, 0.1); transition: transform 0.2s; }

.realisation-card:hover { transform: translateY(-4px); }

.realisation-card img { width: 100%; height: 300px; object-fit: cover; display: block; cursor: pointer; }

.realisation-card.hidden { display: none; }

/* Modal pour l’image agrandie */
.modal { display: none; position: fixed; z-index: 1000; left: 0; top: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.85); align-items: center; justify-content: center; }

.modal-content { max-width: 500px; max-height: 75vh; width: auto; height: auto; border-radius: 25px 0px 25px 0px; background: #fff; }

.modal-close { position: absolute; top: 24px; right: 32px; color: #fff; font-size: 36px; font-weight: bold; cursor: pointer; z-index: 1100; }

.modal-close:hover { color: #ffae42; }

@media (max-width: 900px) { .filter-tabs { gap: 8px; font-size: 0.9rem; } .filter-btn { padding: 10px 20px; font-size: 1rem; min-height: 48px; } .realisations-grid { grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 16px; } .realisation-card img { height: 240px; } .modal-content { max-width: 90%; max-height: 90%; } }

/* État normal des boutons */
button, .btn, a.btn { transition: background-color 0.45s cubic-bezier(0.25, 0.8, 0.25, 1), color 0.45s cubic-bezier(0.25, 0.8, 0.25, 1), transform 0.45s cubic-bezier(0.25, 0.8, 0.25, 1), box-shadow 0.45s cubic-bezier(0.25, 0.8, 0.25, 1); will-change: transform; }

/* État hover */
button:hover, .btn:hover, a.btn:hover { background-color: #A6178E; color: #FFFFFF; transform: scale(1.05); box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2); }

.display-5.titles.mb-2.fw-bold.text-body-emphasis.ctaLinks-title.text-color-sixth { margin-bottom: 1.5rem !important; }

/*Formulaire de contact*/
#contact .titles::before { content: ''; background-image: url("https://storage.googleapis.com/refpro-app-ca244.appspot.com/customers%2FunxLydzGt3ZGUoFvNtoIU6CUY0C2%2Fimages%2FBAC_Logotype_A_itly.webp"); width: 30%; height: 200px; background-size: contain; background-repeat: no-repeat; background-position: center; display: block; margin-left: auto; margin-right: auto; margin-bottom: 50px; }

#formContact { border-radius: 50px 0px 50px 0px !important; background-color: #1BA68C !important; }

/*Footer*/
.mx-4.mb-3.logo-footer.mx-auto > .logo_nav { height: 9vh !important; }

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