@charset "UTF-8";
@import url(main.css);
.spacer { display: none; }

.team-members-section strong span { display: none; }

.team-members-section .titles strong span { display: inline; }

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

nav.navbar { transition: all 0.3s ease !important; padding: .5rem 2rem !important; }

.navbar-brand { transition: all 0.3s ease !important; }

.navbar span { transition: all 0.3s ease !important; }

.navbar-brand { height: 11vh !important; width: 11vw !important; }

.logo_nav { height: 10vh !important; }

a.grow.button_header.text-color-fourth.mx-3.mx-lg-2.p-2.rounded-pill.text-decoration-none.button-header-telephone { border-radius: 0 !important; border: 1px solid #FAFAFA; background: transparent; padding: 0.75rem 1.25rem !important; color: #FAFAFA; }

a.grow.button_header.text-color-fourth.mx-3.mx-lg-2.p-2.rounded-pill.text-decoration-none.button-header-telephone:hover { background: #01ACF4; }

.navbar.scrolled { background: #FAFAFA !important; border-bottom: 1px solid #666666; }

.animated-border-button.scrolled::after { background: #01ACF4 !important; }

.grow.button_header.scrolled { border: 1px solid #2F398E !important; background: #2F398E !important; }

.grow.button_header.scrolled:hover { background: #01ACF4 !important; border: 1px solid #01ACF4 !important; }

@media screen and (max-width: 992px) { a.navbar-brand { width: 30vw !important; } div#navbarSupportedContent { background-color: #1C1C1C; transition: all 0.3s ease; } .navbar.scrolled div#navbarSupportedContent { background-color: #FAFAFA; } }

.parallax-wrapper { position: absolute !important; top: -10% !important; left: 0 !important; width: 100% !important; height: 120% !important; }

/********************************** HERO ACCUEIL **********************************/
.hero-section { position: relative; width: 100%; height: 100vh; display: flex; align-items: center; justify-content: center; overflow: hidden; }

.video-background { position: absolute; top: 50%; left: 50%; min-width: 100%; min-height: 100%; width: auto; height: auto; transform: translate(-50%, -50%); z-index: 1; object-fit: cover; }

.hero-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(28, 28, 28, 0.6); z-index: 2; }

.hero-content { position: relative; z-index: 3; text-align: center; color: #FAFAFA; max-width: 900px; padding: 20px; }

.tagline { height: 15rem; margin-bottom: 30px; opacity: 0; animation: fadeInDown 1s ease forwards; animation-delay: 0.7s; }

.hero-line { height: 1px; width: 40px; background: #FAFAFA; margin: auto; margin-bottom: 30px; opacity: 0; animation: fadeInDown 1s ease forwards; animation-delay: 0.5s; }

.main-title { font-size: 48px; font-weight: 300; line-height: 1.3; margin-bottom: 50px; letter-spacing: 2px; text-transform: uppercase; opacity: 0; animation: fadeInUp 1s ease forwards; animation-delay: 0.8s; }

.cta-button { display: inline-block; padding: 0.75rem 1.25rem; border: 1px solid white; color: #FAFAFA; text-decoration: none; text-transform: uppercase; font-size: 1rem; transition: all 0.3s ease; opacity: 0; animation: fadeInUp 1s ease forwards; animation-delay: 1.1s; background: transparent; }

.cta-button:hover { background: #01ACF4; transform: translateY(-3px); }

@keyframes fadeInDown { from { opacity: 0;
    transform: translateY(-30px); }
  to { opacity: 1;
    transform: translateY(0); } }

@keyframes fadeInUp { from { opacity: 0;
    transform: translateY(30px); }
  to { opacity: 1;
    transform: translateY(0); } }

@media (max-width: 768px) { .main-title { font-size: 32px; } .tagline { font-size: 2rem; } .cta-button { font-size: 11px; padding: 12px 30px; } }

/********************************** CITATION **********************************/
#citation .content { max-width: 1200px; }

div#citation { padding: 8rem 4rem !important; }

#citation .background-image-div-opacity { background-size: 100% auto !important; background-attachment: scroll !important; }

@media screen and (max-width: 992px) { div#citation { padding: 4rem 2rem !important; } #citation .background-image-div-opacity { background-size: auto 100% !important; } }

/********************************** A PROPOS **********************************/
div#a-propos { margin: 0 !important; width: 100%; border-radius: 0 !important; }

#a-propos .row.flex-lg-row-reverse.align-items-center.g-5.py-2.px-4.mt-5.position-relative.z-1 { margin-top: 0 !important; padding: 10rem 8rem !important; }

#a-propos img.d-block.mx-lg-auto.img-fluid { width: 180px !important; margin: auto; }

#a-propos h2 { margin-bottom: 1rem !important; }

#a-propos h3 { display: flex; flex-direction: column; align-items: start; margin-top: 2rem; }

#a-propos h3::after { content: ''; height: 1px; width: 20%; background-color: #01ACF4; margin: 0.75rem 0; }

@media screen and (max-width: 992px) { #a-propos .row.flex-lg-row-reverse.align-items-center.g-5.py-2.px-4.mt-5.position-relative.z-1 { padding: 4rem 2rem !important; } #a-propos img.d-block.mx-lg-auto.img-fluid { margin-top: 3rem !important; } }

/********************************** POURQUOI **********************************/
img.team-member-avatar.team-image.rounded-circle.img-fluid.mx-auto { border-radius: 0 !important; width: 80px !important; height: 80px !important; min-width: 80px !important; min-height: 80px !important; margin-bottom: 2rem; }

#lavage img.team-member-avatar.team-image.rounded-circle.img-fluid.mx-auto { border: 1px solid #D5D5D5; width: 280px !important; height: 280px !important; max-width: 280px !important; max-height: 280px !important; }

#lavage img.team-member-avatar.team-image.rounded-circle.img-fluid.mx-auto:hover { transform: scale(1) !important; }

.row.justify-content-center.team-list { margin-top: 3rem; }

.col-12.col-sm-6.col-md-4.col-lg-3.text-center.mb-4.team-col { width: 20%; }

#lavage .col-12.col-sm-6.col-md-4.col-lg-3.text-center.mb-4.team-col { width: 25%; }

.row.justify-content-center.team-list { margin-top: 3rem; gap: 3rem; }

.team-members-section .container.position-relative.z-1 { max-width: 1400px; }

section.team-members-section.position-relative.py-5.bg-primaryColor.text-color-primary { padding: 8rem 2rem !important; }

@media screen and (max-width: 992px) { .col-12.col-sm-6.col-md-4.col-lg-3.text-center.mb-4.team-col { width: 100%; } section.team-members-section.position-relative.py-5.bg-primaryColor.text-color-primary { padding: 4rem 2rem !important; } }

/********************************** PRESTATIONS **********************************/
.garages-section { width: 100%; padding: 100px 40px; position: relative; }

.garages-section .background-image-div-opacity { background: url(https://storage.googleapis.com/refpro-app-ca244.appspot.com/customers%2F57FeEtEfBAaY46zMkpEYA1lrzoA2%2Fimages%2Ffond_j2a1.webp); background-size: cover; width: 100%; height: 100%; }

.garages-container { max-width: 1400px; margin: 0 auto; display: flex; align-items: center; justify-content: space-around; gap: 5rem; position: relative; z-index: 1; }

.garages-header { text-align: left; width: 80%; }

.garages-title { margin-bottom: 20px; }

.garages-divider { width: 110px; height: 1px; background: #2F398E; margin-bottom: 30px; }

.garages-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 40px; }

.garage-card { background: #FAFAFA; border: 1px solid #2F398E; overflow: hidden; display: flex; flex-direction: column; transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1); cursor: pointer; text-decoration: none; position: relative; }

.garage-card:hover { transform: translateY(-10px); border-color: #01ACF4; box-shadow: 0 20px 60px rgba(1, 172, 244, 0.2); }

.garage-card:hover::before { transform: scaleX(1); }

.garage-image-wrapper { width: 100%; height: 300px; overflow: hidden; position: relative; }

.garage-image { width: 100%; height: 100%; object-fit: cover; transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1); filter: grayscale(0.3); }

.garage-card:hover .garage-image { transform: scale(1.1); filter: grayscale(0); }

.garage-image-overlay { position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: linear-gradient(180deg, transparent 0%, rgba(0, 0, 0, 0.6) 100%); }

.garage-info { padding: 40px 30px; text-align: center; flex: 1; display: flex; flex-direction: column; justify-content: space-between; }

.garage-cta { display: inline-block; padding: 14px 28px; background: #2F398E; color: #FAFAFA; border: 1px solid #2F398E; text-decoration: none; font-weight: 400; font-size: 16px; text-transform: uppercase; letter-spacing: 1px; transition: all 0.3s ease; margin: 0 auto; }

.garage-card:hover .garage-cta { background: #01ACF4; border: 1px solid #01ACF4; color: white; transform: translateY(-2px); box-shadow: 0 10px 30px rgba(1, 172, 244, 0.2); }

@media (max-width: 1024px) { .garages-grid { grid-template-columns: repeat(2, 1fr); gap: 30px; } .garages-title { font-size: 36px; } }

@media (max-width: 768px) { .garages-section { padding: 4rem 2rem; } .garages-container { flex-direction: column; gap: 2rem; } .garages-header { width: 100%; } .garages-grid { grid-template-columns: 1fr; gap: 30px; max-width: 500px; margin-left: auto; margin-right: auto; } .garage-name { font-size: 24px; } }

@media (max-width: 480px) { .garages-section { padding: 60px 20px; } .garages-divider { width: 180px; } .garage-image-wrapper { height: 250px; } .garage-info { padding: 30px 20px; } }

/********************************** ESPACE PRO **********************************/
.pro-cards { display: flex; align-items: start; justify-content: center; gap: 3rem; }

.pro-card { display: flex; flex-direction: column; align-items: center; }

#pro-B2B .pro-card { width: 100%; }

.pro-card-img { height: 5rem; margin-bottom: 30px; }

#pro .content { max-width: 1400px; }

#pro-B2B .content { width: 80%; }

#pro-B2B h2 { margin-bottom: 3rem !important; }

#pro, #pro-B2B { display: flex; flex-direction: column; align-items: center; padding: 8rem 2rem 0 !important; }

.pro-img-container { position: relative; height: 25rem; min-width: 100vw; background: url(https://storage.googleapis.com/refpro-app-ca244.appspot.com/customers%2F57FeEtEfBAaY46zMkpEYA1lrzoA2%2Fimages%2Fcars-espace-pro_3nbl.webp); background-size: 110vw auto; background-position: center bottom; background-repeat: no-repeat; margin-top: 4rem; }

.pro-img-container2 { position: relative; height: 25rem; min-width: 100vw; background: url(https://storage.googleapis.com/refpro-app-ca244.appspot.com/customers%2F57FeEtEfBAaY46zMkpEYA1lrzoA2%2Fimages%2FAdobeStock_232530534_f8xv.webp); background-size: 110vw auto; background-position: center top; background-repeat: no-repeat; margin-top: 4rem; }

a.button_homepageDoubleScreen.ctaLinks-button.text-color-fourth.p-3.fs-6.fw-bold.m-2 { margin-top: 3rem !important; border-radius: 0; transition: all 0.3s ease; }

@media screen and (max-width: 1380px) { .pro-img-container { height: 22rem; margin-top: 0; } }

@media screen and (max-width: 992px) { #pro { padding: 4rem 2rem 0 !important; } #pro .content { width: 100%; } .pro-cards { flex-direction: column; align-items: center; } .pro-card { width: 100%; } .pro-img-container { background-size: auto 100%; height: 15rem; margin-top: 10vw; } }

/********************************** CTA **********************************/
#cta { padding: 8rem 4rem !important; }

#cta .parallax-wrapper { height: 100vh !important; }

#cta .content { max-width: 1400px; }

#cta a.button_homepageDoubleScreen.ctaLinks-button.text-color-fourth.p-3.fs-6.fw-bold.m-2.reverse { background: transparent; border: 1px solid #FAFAFA; padding: 1rem !important; }

#cta a.button_homepageDoubleScreen.ctaLinks-button.text-color-fourth.p-3.fs-6.fw-bold.m-2.reverse p { margin-bottom: 0 !important; }

#cta a.button_homepageDoubleScreen.ctaLinks-button.text-color-fourth.p-3.fs-6.fw-bold.m-2.reverse span { transition: all 0.3s ease; }

#cta a.button_homepageDoubleScreen.ctaLinks-button.text-color-fourth.p-3.fs-6.fw-bold.m-2.reverse:hover { background: #FAFAFA; border: 1px solid #FAFAFA; }

#cta a.button_homepageDoubleScreen.ctaLinks-button.text-color-fourth.p-3.fs-6.fw-bold.m-2.reverse:hover span { color: #2F398E !important; }

#cta a.button_homepageDoubleScreen.ctaLinks-button.text-color-fourth.p-3.fs-6.fw-bold.m-2 { background: #FAFAFA; border: 1px solid #FAFAFA; padding: 1rem !important; }

#cta a.button_homepageDoubleScreen.ctaLinks-button.text-color-fourth.p-3.fs-6.fw-bold.m-2 p { margin-bottom: 0 !important; }

#cta a.button_homepageDoubleScreen.ctaLinks-button.text-color-fourth.p-3.fs-6.fw-bold.m-2 span { transition: all 0.3s ease; }

#cta a.button_homepageDoubleScreen.ctaLinks-button.text-color-fourth.p-3.fs-6.fw-bold.m-2:hover { background: transparent; border: 1px solid #FAFAFA; }

#cta a.button_homepageDoubleScreen.ctaLinks-button.text-color-fourth.p-3.fs-6.fw-bold.m-2:hover span { color: #FAFAFA !important; }

@media screen and (max-width: 992px) { #cta { padding: 4rem 2rem !important; } #cta .parallax-wrapper { top: 0 !important; } #cta a.button_homepageDoubleScreen.ctaLinks-button.text-color-fourth.p-3.fs-6.fw-bold.m-2.reverse { margin-top: 0.5rem !important; } #cta a.button_homepageDoubleScreen.ctaLinks-button.text-color-fourth.p-3.fs-6.fw-bold.m-2 { margin-top: 2rem !important; } }

/********************************** CARTE **********************************/
.col-lg-6.order-1.order-lg-2.order-xl-2.order-xxl-2.img-services-list.position-relative { width: 45%; background-position: top left !important; }

.col-sm-9.col-lg-6.py-5.order-2.order-lg-1.order-xl-1.order-xxl-1.position-relative.bg-primaryColor.text-color-primary.minimum-height { width: 55%; padding: 8rem 1rem 8rem 6rem !important; }

#carte h2 { display: flex; flex-direction: column; align-items: start; }

#carte h2::after { content: ''; width: 20%; height: 1px; background: #666666; margin-top: 1.5rem; }

@media screen and (max-width: 992px) { .col-lg-6.order-1.order-lg-2.order-xl-2.order-xxl-2.img-services-list.position-relative { width: 100%; height: 40vh !important; } .col-sm-9.col-lg-6.py-5.order-2.order-lg-1.order-xl-1.order-xxl-1.position-relative.bg-primaryColor.text-color-primary.minimum-height { width: 100%; padding: 0 !important; } .row.row-eq-height.row-flex.flex-wrap.mx-auto.photoText-div { flex-direction: column-reverse; } }

div#carte { border-bottom: 1px solid #D5D5D5; }

/********************************** SEO **********************************/
.mx-auto.first-activity-div.col-lg-11.px-4.py-4.mb-5.mt-5.bg-primaryColor.text-color-primary.rounded-3.shadow-lg.position-relative, .mx-auto.second-activity-div.col-lg-11.px-4.py-4.mb-5.mt-5.bg-primaryColor.text-color-primary.rounded-3.shadow-lg.position-relative, .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 { border-radius: 0 !important; box-shadow: none !important; max-width: 1400px; }

.row.flex-lg-row.align-items-center.g-5.py-2.px-4.mt-2.position-relative.z-1 { margin-top: 0 !important; }

.card.card-cover.h-100.overflow-hidden.rounded-4.shadow-lg { border-radius: 0 !important; box-shadow: 0 0 2rem rgba(102, 102, 102, 0.1) !important; border: 1px solid #666666; }

.first-activity-div h3, .second-activity-div h3, .third-activity-div h3 { display: flex; flex-direction: column; align-items: start; }

.first-activity-div h3::after, .second-activity-div h3::after, .third-activity-div h3::after { content: ''; width: 20%; height: 1px; background: #666666; margin-top: 1.5rem; }

.first-activity-div p, .second-activity-div p, .third-activity-div p { margin-bottom: 0 !important; }

.fs-6.lead.mt-4.mb-4 { margin: 0 !important; }

/********************************** HERO SECONDAIRE **********************************/
div#hero-sec { height: 70vh; align-items: end !important; text-align: left !important; padding-bottom: 6rem !important; }

#hero-sec .content { max-width: 1400px; }

#hero-sec .lead.p-4.text-color-sixth { padding: 1rem 0 !important; display: flex; flex-direction: column; align-items: start; }

#hero-sec .lead.p-4.text-color-sixth::before { content: ''; width: 50%; height: 1px; background: #FAFAFA; margin-bottom: 2rem; }

#hero-sec a.button_homepageDoubleScreen.ctaLinks-button.text-color-fourth.p-3.fs-6.fw-bold.m-2 { margin: 0.5rem 0 !important; }

#hero-sec .d-grid.gap-2.d-sm-flex.justify-content-sm-center { justify-content: start !important; }

#hero-sec .parallax-wrapper { filter: saturate(0); }

#Top .col-lg-6.order-1.order-lg-2.order-xl-2.order-xxl-2.img-services-list.position-relative { width: 40%; background-position: center left !important; }

#Top .col-sm-9.col-lg-6.py-5.order-2.order-lg-1.order-xl-1.order-xxl-1.position-relative.bg-primaryColor.text-color-primary.minimum-height { width: 60%; }

/********************************** NETTOYAGE INTÉRIEUR PRESTATIONS **********************************/
div#tissus, div#b2b { background: linear-gradient(45deg, #131313 30%, #666666); border-bottom: 2px solid #FAFAFA; }

#tissus ::marker, #b2b ::marker { color: #FAFAFA; }

#tissus .col-lg-6.order-sm-2.p-0.position-relative.z-1, #detailing .col-lg-6.order-sm-2.p-0.position-relative.z-1, #b2b .col-lg-6.order-sm-2.p-0.position-relative.z-1 { margin: auto; padding: 6rem 0 !important; }

#cuir .col-sm-9.col-lg-6.p-0.order-2.order-lg-1.order-xl-1.order-xxl-1.position-relative.z-1 { margin: auto; padding: 6rem 0 !important; }

#cuir .col-lg-6.p-0.order-1.order-lg-2.order-xl-2.order-xxl-2.img-services-list { width: 45%; }

div#cuir { background: linear-gradient(100deg, #666666, #131313 70%); border-bottom: 2px solid #FAFAFA; }

#detailing ::marker { color: #FAFAFA; }

#detailing { background: linear-gradient(45deg, #131313 30%, #666666); }

#detailing .col-sm-9.col-lg-6.p-0.img-services-list { background-position-y: 60%; }

#tissus h2, #cuir h2, #detailing h2, #b2b h2 { display: flex; flex-direction: column; align-items: start; margin-top: 2rem; }

#tissus h2::after, #cuir h2::after, #detailing h2::after, #b2b h2::after { content: ''; height: 1px; width: 40%; background-color: #3A71C3; margin: 0.75rem 0; }

#tissus .px-5.py-5.fs-5, #cuir .px-5.py-5.fs-5, #detailing .px-5.py-5.fs-5, #b2b .px-5.py-5.fs-5 { padding-top: 1rem !important; }

#odeurs .content { max-width: 1200px; }

div#odeurs { padding: 8rem 4rem 2rem !important; }

#odeurs ::marker { color: #1C1C1C; }

#odeurs .background-image-div-opacity { background-size: cover !important; background-attachment: scroll !important; background-position: bottom center !important; }

@media screen and (max-width: 992px) { div#odeurs { padding: 4rem 2rem 0 !important; } #odeurs .background-image-div-opacity { background-size: cover !important; } }

#phare .col-lg-6.order-sm-2.p-0.position-relative.z-1, #detailing .col-lg-6.order-sm-2.p-0.position-relative.z-1 { margin: auto; padding: 6rem 0 !important; }

#phare { padding-bottom: 4rem !important; }

#phare .col-sm-9.col-lg-6.p-0.img-services-list { width: 40%; background-position: bottom; }

#b2b .col-sm-9.col-lg-6.p-0.img-services-list { width: 40%; }

section.partenaires-section.py-5.position-relative.bg-primaryColor.text-color-primary { padding-top: 0 !important; }

.partenaires-carousel-item.partenaires-logo-container { width: 300px !important; height: 300px !important; max-width: 300px !important; }

img.partenaires-carousel-logo.partenaires-logo-image { filter: grayscale(0) contrast(1) saturate(0.1) !important; object-fit: cover; }

img.partenaires-carousel-logo.partenaires-logo-image:hover { filter: grayscale(0) contrast(1) saturate(0.8) !important; }

/********************************** TARIFS **********************************/
.pricing-section { padding: 80px 20px; position: relative; font-family: 'Montserrat',sans; background: url(https://firebasestorage.googleapis.com/v0/b/refpro-app-ca244.appspot.com/o/customers%2F57FeEtEfBAaY46zMkpEYA1lrzoA2%2Fimages%2Ffond_j2a1.webp?alt=media&token=7c4ef0d3-2bec-4099-9d14-c586fdb60d1b); background-size: cover; background-position: center; }

.container { max-width: 1280px; margin: 0 auto; position: relative; z-index: 1; }

.section-header { text-align: center; margin-bottom: 60px; animation: fadeInDown 0.8s ease-out; }

.section-title { font-family: 'Montserrat', sans-serif; font-size: 2.5rem; font-weight: 700 !important; color: #1C1C1C; margin-bottom: 16px; line-height: 1.1; }

.section-description { font-size: 18px; color: #666666; margin: 0 auto; }

.vehicle-types { display: inline-flex; align-items: center; gap: 8px; background: #D5D5D5; padding: 8px 20px; border-radius: 50px; font-size: 14px; color: #2F398E; margin-top: 20px; }

/* Formules principales */
.formules-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 30px; margin-bottom: 80px; animation: fadeInUp 0.8s ease-out 0.2s both; }

.formule-card { background: #FAFAFA; padding: 40px 32px; box-shadow: 0 4px 24px rgba(102, 102, 102, 0.06); transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1); position: relative; overflow: hidden; border: 1px solid #D5D5D5; }

.formule-card::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 4px; background: linear-gradient(90deg, #2F398E, #01ACF4); transform: scaleX(0); transform-origin: left; transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1); }

.formule-card:hover { transform: translateY(-8px); box-shadow: 0 12px 48px rgba(26, 140, 255, 0.15); border-color: #01ACF4; }

.formule-card:hover::before { transform: scaleX(1); }

.formule-card.featured { background: linear-gradient(135deg, #3A71C3 0%, #2F398E 100%); color: #FAFAFA; border-color: #2F398E; }

.formule-card.featured .formule-name, .formule-card.featured .formule-price, .formule-card.featured .service-item { color: #FAFAFA; }

.formule-card.featured .service-item::before { background: rgba(255, 255, 255, 0.2); }

.featured-badge { position: absolute; top: 20px; right: 20px; background: rgba(255, 255, 255, 0.2); backdrop-filter: blur(10px); padding: 6px 16px; border-radius: 50px; font-size: 10px; font-weight: 600; letter-spacing: 1px; text-transform: uppercase; }

.formule-name { font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: 700 !important; color: #1C1C1C; margin-bottom: 8px; }

.formule-price { font-family: 'Montserrat', sans-serif; font-size: 36px; font-weight: 800; color: #2F398E; margin-bottom: 24px; display: flex; align-items: baseline; gap: 4px; }

.formule-card.featured .formule-price { color: #FAFAFA; }

.price-note { font-size: 14px; font-weight: 400; color: #2F398E; margin-left: 4px; }

.formule-card.featured .price-note { color: #FAFAFA; }

.services-list { list-style: none; }

.service-item { padding: 12px 0; color: #666666; font-size: 15px; display: flex; align-items: flex-start; gap: 12px; position: relative; padding-left: 24px; }

.service-item::before { content: ''; position: absolute; left: 0; top: 16px; width: 6px; height: 6px; background: #2F398E; border-radius: 50%; }

.service-item + .service-item { border-top: 1px solid #D5D5D5; }

.formule-card.featured .service-item + .service-item { border-top-color: rgba(255, 255, 255, 0.2); }

/* Formule Utilitaire */
.formule-utilitaire { background: #131313; color: #FAFAFA; padding: 50px 40px; margin-bottom: 80px; position: relative; overflow: hidden; animation: fadeInUp 0.8s ease-out 0.4s both; }

.formule-utilitaire-content { display: grid; grid-template-columns: 1fr 2fr; gap: 50px; align-items: center; position: relative; }

.utilitaire-header h3 { font-family: 'Montserrat', sans-serif; font-size: 32px; font-weight: 700 !important; margin-bottom: 12px; }

.utilitaire-subtitle { color: #D5D5D5; font-size: 16px; margin-bottom: 20px; }

.utilitaire-price { font-family: 'Montserrat', sans-serif; font-size: 48px; font-weight: 800; color: #3A71C3; }

.utilitaire-services { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; }

.utilitaire-service { background: rgba(102, 102, 102, 0.2); border: 1px solid rgba(255, 255, 255, 0.1); padding: 16px; font-size: 14px; transition: all 0.3s ease; }

.utilitaire-service:hover { background: rgba(255, 255, 255, 0.08); border-color: #3A71C3; }

/* Options supplémentaires */
.options-section { animation: fadeInUp 0.8s ease-out 0.6s both; }

.options-header { text-align: center; margin-bottom: 50px; }

.options-header h3 { font-family: 'Montserrat', sans-serif; font-size: clamp(28px, 4vw, 42px); font-weight: 700 !important; text-transform: uppercase; color: #1C1C1C; margin-bottom: 12px; }

.options-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 20px; }

.option-card { background: #FAFAFA; border: 1px solid #D5D5D5; padding: 24px; transition: all 0.3s ease; position: relative; }

.option-card:hover { border-color: #2F398E; box-shadow: 0 8px 24px rgba(26, 140, 255, 0.1); }

.option-header { display: flex; justify-content: space-between; align-items: center; gap: 1rem; height: 100%; }

.option-name { font-weight: 600; font-size: 16px; color: #1C1C1C; flex: 1; }

.option-price { font-family: 'Montserrat', sans-serif; font-size: 1rem; font-weight: 700; color: #2F398E; white-space: nowrap; margin-left: 12px; }

.option-description { font-size: 14px; color: #666666; }

/* Note de bas de page */
.pricing-note { border-left: 4px solid #2F398E; padding: 24px 28px; margin-top: 60px; font-size: 14px; color: #2F398E; line-height: 1.8; animation: fadeIn 1s ease-out 0.8s both; }

/* Animations */
@keyframes fadeInDown { from { opacity: 0;
    transform: translateY(-30px); }
  to { opacity: 1;
    transform: translateY(0); } }

@keyframes fadeInUp { from { opacity: 0;
    transform: translateY(30px); }
  to { opacity: 1;
    transform: translateY(0); } }

@keyframes fadeIn { from { opacity: 0; }
  to { opacity: 1; } }

/* Responsive */
@media (max-width: 1024px) { .formule-utilitaire-content { grid-template-columns: 1fr; gap: 30px; } .utilitaire-services { grid-template-columns: 1fr; } }

@media (max-width: 768px) { .pricing-section { padding: 60px 20px; } .formules-grid { grid-template-columns: 1fr; gap: 24px; } .options-grid { grid-template-columns: 1fr; } .formule-card, .formule-utilitaire { padding: 32px 24px; } .section-title { font-size: 36px; } .formule-price { font-size: 32px; } .utilitaire-price { font-size: 40px; } }

@media (max-width: 480px) { .pricing-section { padding: 40px 16px; } .section-header { margin-bottom: 40px; } .formules-grid, .formule-utilitaire { margin-bottom: 50px; } .vehicle-types { font-size: 12px; padding: 6px 16px; } }

.realisations-section { padding: 60px 20px; background: url(https://firebasestorage.googleapis.com/v0/b/refpro-app-ca244.appspot.com/o/customers%2F57FeEtEfBAaY46zMkpEYA1lrzoA2%2Fimages%2Ffonc-infos_rmgu.webp?alt=media&token=ed4f6d0d-c819-4b87-883c-c4883043e563); background-size: cover; background-position: center bottom; }

.overlay { max-width: 1400px; margin: 0 auto; padding: 40px 20px; }

.realisations-main-title { text-align: center; font-size: 2.8rem; color: #2F398E; font-style: italic; font-weight: 500 !important; margin-bottom: 32px; font-family: 'Montserrat', Arial, sans-serif; }

.realisations-main-title strong { color: #1C1C1C; font-weight: 700 !important; font-style: normal; }

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

.filter-btn p { margin-bottom: 0 !important; }

.filter-btn { background: #FAFAFA; border: 1px solid #2F398E; color: #2F398E; font-size: 1.1rem; padding: 12px 24px; cursor: pointer; font-weight: 600; box-shadow: none; display: flex; align-items: center; justify-content: center; min-height: 52px; line-height: 1.2; transition: all 0.3s ease; text-align: center; }

.filter-btn:hover { background: #01ACF4; color: #FAFAFA; }

.filter-btn.active { background: #2F398E; color: #FAFAFA; }

.realisations-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 24px; margin-top: 3rem; }

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

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

.realisation-card img { width: 100%; height: 320px; 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: 70vh; width: auto; height: auto; border-radius: 8px; background: #FAFAFA; }

.modal-close { position: absolute; top: 24px; right: 32px; color: #FAFAFA; font-size: 36px; font-weight: bold; cursor: pointer; z-index: 1100; transition: all 0.3s ease; }

.modal-close:hover { color: #01ACF4; }

@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%; } }

.mx-1.mx-lg-4.mb-5 { max-width: 1400px; margin: auto !important; }

.col.before-after-images-column.my-0.my-lg-2 { height: 400px; }

.image-before-after-container { box-shadow: 0 0 1rem rgba(102, 102, 102, 0.2); }

.photoTitleText.text-color-sixth { margin: 3rem; text-align: center !important; background-color: #FAFAFA; }

.slider-before-after-images { color: #2F398E; background: #FAFAFA; border-color: #FAFAFA; transition: color 0.3s ease, background 0.3s ease, border-color 0.3s ease; }

.slider-before-after-images:hover { color: #FAFAFA; background: #3A71C3; border-color: #3A71C3; }

.slider-before-after-images::before, .slider-before-after-images::after { background: #FAFAFA !important; transition: background 0.3s ease; }

.slider-before-after-images:hover::before { background: #3A71C3 !important; }

.slider-before-after-images:hover::after { background: #3A71C3 !important; }

.fd-social { text-align: center; padding: 8rem 2rem; font-family: 'Montserrat', serif; }

.fd-social-header { margin-bottom: 40px; }

.fd-social-subtitle { display: block; font-family: 'Montserrat'; color: #2F398E; text-transform: uppercase; font-size: 1.5rem; font-weight: 400; font-style: italic; margin-bottom: 1rem; }

.fd-social-header h2 { font-family: 'Montserrat', sans; font-size: 3rem; color: #1C1C1C; font-weight: 700 !important; margin-bottom: 1rem; }

.fd-social-header h2 span { font-family: 'Lobster'; font-size: 3.2rem; color: #2F398E; }

.fd-social-header p { font-size: 1.1rem; color: #666666; line-height: 1.5; max-width: 700px; margin: 0 auto; }

/* --- Icônes réseaux --- */
.fd-social-links { display: flex; justify-content: center; align-items: center; gap: 80px; flex-wrap: wrap; }

.fd-social-item { display: flex; flex-direction: column; align-items: center; text-decoration: none; transition: transform 0.3s ease; }

.social-img-container { width: 100px; height: 100px; margin-bottom: 12px; transition: all 0.4s ease; display: flex; align-items: center; justify-content: center; }

.social-img-container img { width: auto; height: 80%; }

.fd-social-item span { font-family: 'Montserrat', sans-serif; color: #2F398E; font-size: 1rem; font-weight: 500; }

/* --- Effet au survol --- */
.fd-social-item:hover { transform: translateY(-6px); }

@media (max-width: 768px) { .fd-social { padding: 80px 25px; } .fd-social-header h2 { font-size: 2rem; } .fd-social-links { gap: 50px; } .fd-social-item img { width: 60px; height: 60px; } .fd-social-line { width: 80%; } }

div#contact { padding-top: 10vh !important; }

#contact .col-lg-6.text-center.text-color-sixth { text-align: left !important; padding-left: 6rem; }

@media screen and (max-width: 992px) { #contact .col-lg-6.text-center.text-color-sixth { padding-left: 2rem !important; } }

#contact p { line-height: 150% !important; font-size: 1.15rem; }

#contact h1 { margin-bottom: 2rem !important; display: flex; flex-direction: column; align-items: start; }

#contact h1::after { content: ''; width: 50%; height: 1px; background: #3A71C3; margin-top: 1rem; }

form#formContact { border-radius: 0 !important; background: #FAFAFA !important; }

@media screen and (max-width: 992px) { div#hero-sec { height: fit-content; padding: 17vh 2rem 3rem !important; } #Top .col-sm-9.col-lg-6.py-5.order-2.order-lg-1.order-xl-1.order-xxl-1.position-relative.bg-primaryColor.text-color-primary.minimum-height { width: 100%; } #Top .col-lg-6.order-1.order-lg-2.order-xl-2.order-xxl-2.img-services-list.position-relative { width: 100%; } #Top.row.row-eq-height.row-flex.flex-wrap.mx-auto.photoText-div { flex-direction: column; } #tissus .col-lg-6.order-sm-2.p-0.position-relative.z-1, #detailing .col-lg-6.order-sm-2.p-0.position-relative.z-1, #b2b .col-lg-6.order-sm-2.p-0.position-relative.z-1, #cuir .col-sm-9.col-lg-6.p-0.order-2.order-lg-1.order-xl-1.order-xxl-1.position-relative.z-1, #phare .col-lg-6.order-sm-2.p-0.position-relative.z-1 { padding: 0 !important; } #cuir .col-lg-6.p-0.order-1.order-lg-2.order-xl-2.order-xxl-2.img-services-list { width: 100%; } #odeurs h2, #odeurs p { text-align: left !important; } #odeurs .lead.p-4.text-color-sixth { padding: 1rem 0 !important; } #carte .display-5.lh-1.mt-5.px-5.titles.position-relative.z-1 { padding: 0 2rem !important; } #carte .px-5.py-3.fs-5.position-relative.z-1 { padding: 1rem 2rem !important; } .row.justify-content-center.team-list { flex-direction: column; } #lavage .col-12.col-sm-6.col-md-4.col-lg-3.text-center.mb-4.team-col { width: 100%; } #phare .col-sm-9.col-lg-6.p-0.img-services-list { width: 100%; } #b2b .col-sm-9.col-lg-6.p-0.img-services-list { width: 100%; height: 50vh; } div#b2b { flex-direction: column-reverse; } div#pro-B2B { padding: 4rem 2rem 0 !important; } .pro-img-container2 { height: 40vw; background-position: center bottom; } .col-sm-9.col-lg-6.p-0.img-services-list, .col-lg-6.p-0.order-1.order-lg-2.order-xl-2.order-xxl-2.img-services-list { border-bottom: 2px solid #fafafa; } }

@media screen and (max-width: 578px) { .pro-img-container2 { height: 40vw; background-position: center bottom; } }

@media screen and (max-width: 1270px) { .pro-img-container2 { height: 40vw; background-position: center bottom; } }

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