@charset "UTF-8";
@import url(main.css);
a.nav-link.fs-6.dropdown-toggle.px-0.text-color-secondary.text-center { font-size: 0.9em !important; }

h2.display-6.fw-bold.p-3.pt-lg-3.m-0.titles { color: black !important; }

/*───────────────────────────────────────────────────────────────────── VARIABLES GLOBALES ─────────────────────────────────────────────────────────────────────*/
:root { --charcoal: #2c2c2c; --sand: #e1be9b; --oak: #a2672c; --cream: #fff8f1; --sand-light: #f5e8d6; --sand-dark: #c8a17a; --oak-dark: #7a4d1e; --text-muted: #7a6852; }

body > main > div.py-0.my-0.bg-thirdColor { display: none !important; }

/* Inverser image / texte uniquement pour le bloc #reverse */
@media (min-width: 992px) { #reverse .row.flex-lg-row-reverse { flex-direction: row !important; } }

/* Correction de la boîte et suppression des ombres */
div#reverse, .shadow-lg { box-shadow: none !important; }

/*───────────────────────────────────────────────────────────────────── 1. NAVIGATION (HEADER) ─────────────────────────────────────────────────────────────────────*/
.navbar-nav { width: 100% !important; justify-content: flex-end !important; margin: 0 !important; }

.navbar-nav li:first-child { margin-right: auto !important; text-align: left !important; }

.navbar-nav li:first-child .obftrucs { display: flex !important; flex-direction: column !important; align-items: flex-start !important; line-height: 1.2 !important; }

.navbar-nav li:first-child .obftrucs span { display: block !important; margin-top: 2px !important; letter-spacing: 1px !important; }

a.grow.button_header { border-radius: 4px !important; padding: 10px 20px !important; color: #fff8f1 !important; }

@media (max-width: 991px) { .navbar-nav { justify-content: center !important; } .navbar-nav li:first-child { margin-right: 0 !important; text-align: center !important; } .navbar-nav li:first-child .obftrucs { align-items: center !important; } .navbar-nav li .obftrucs span { font-size: 1.1em !important; padding: 5px 0 !important; } }

/*───────────────────────────────────────────────────────────────────── 2. BLOC VIDÉO (HERO) - AVEC ANIMATIONS ELEGANTES ─────────────────────────────────────────────────────────────────────*/
.video-background-content.container { max-width: 100% !important; }

.videoTitle { width: 100% !important; }

@keyframes fadeUp { 0% { opacity: 0;
    transform: translateY(30px); }
  100% { opacity: 1;
    transform: translateY(0); } }

@keyframes expandLine { 0% { width: 0;
    opacity: 0; }
  100% { width: 30px;
    opacity: 1; } }

.videoTitle .titleText p:first-child, .videoTitle .titleText h1, .videoTitle .titleText p:nth-child(4), .video-background-content .mt-lg-2 { opacity: 0; animation: fadeUp 0.8s cubic-bezier(0.25, 1, 0.5, 1) forwards; }

.videoTitle .titleText p:first-child { animation-delay: 0.2s; }

.videoTitle .titleText h1 { animation-delay: 0.4s; }

.videoTitle .titleText p:nth-child(4) { animation-delay: 0.6s; }

.video-background-content .mt-lg-2 { animation-delay: 0.8s; }

.videoTitle .titleText p:first-child span { letter-spacing: .2em !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; gap: .75rem !important; }

.videoTitle .titleText p:first-child span::before, .videoTitle .titleText p:first-child span::after { content: '' !important; display: block !important; width: 28px !important; height: 1px !important; background-color: #e1be9b !important; opacity: 1 !important; animation: none !important; }

#fullHeight > div > div > div.container.videoTitle > div > p:nth-child(4) > span { letter-spacing: normal !important; font-weight: 300 !important; }

#fullHeight > div > div > div.container.videoTitle > div { margin-bottom: 0 !important; }

.video-background-content .mt-lg-2 { display: flex !important; gap: 20px !important; justify-content: center !important; align-items: center !important; margin-top: 2rem !important; pointer-events: none !important; }

a#phone-analytics-tag-video-bloc { display: inline-flex !important; align-items: center !important; justify-content: center !important; background-color: var(--oak) !important; color: var(--cream) !important; padding: 12px 30px !important; border-radius: 4px !important; font-family: 'Jost', sans-serif !important; font-size: 1rem !important; font-weight: 500 !important; letter-spacing: .1em !important; text-transform: uppercase !important; text-decoration: none !important; transition: all .3s ease !important; border: 2px solid var(--oak) !important; box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2) !important; pointer-events: auto !important; }

a#phone-analytics-tag-video-bloc:hover { background-color: var(--oak-dark) !important; border-color: var(--oak-dark) !important; transform: translateY(-3px) !important; box-shadow: 0 8px 20px rgba(162, 103, 44, 0.3) !important; }

.video-background-content .mt-lg-2::after { content: "Nos services" !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; padding: 12px 30px !important; border-radius: 4px !important; font-family: 'Jost', sans-serif !important; font-size: 1rem !important; font-weight: 500 !important; letter-spacing: .1em !important; text-transform: uppercase !important; cursor: pointer !important; color: var(--cream) !important; border: 2px solid rgba(255, 248, 241, 0.5) !important; background: transparent !important; transition: all .3s ease !important; pointer-events: auto !important; }

.video-background-content .mt-lg-2:hover::after { border-color: var(--oak) !important; background-color: rgba(162, 103, 44, 0.15) !important; transform: translateY(-3px) !important; }

a#phone-analytics-tag-video-bloc:hover ~ ::after, .video-background-content .mt-lg-2:has(> a#phone-analytics-tag-video-bloc:hover)::after { border-color: rgba(255, 248, 241, 0.5) !important; background-color: transparent !important; transform: none !important; }

@media (max-width: 768px) { .video-background-content .mt-lg-2 { flex-direction: column !important; gap: 15px !important; width: 100% !important; max-width: 300px !important; margin: 0.5rem auto 0 !important; } a#phone-analytics-tag-video-bloc, .video-background-content .mt-lg-2::after { width: 100% !important; padding: 15px 20px !important; } }

/*───────────────────────────────────────────────────────────────────── 3 & 4. BLOC "NOTRE HISTOIRE" ─────────────────────────────────────────────────────────────────────*/
.photoText-div > div.col-sm-9 { margin-top: 1rem !important; }

.photoText-div .img-services-list { position: relative !important; max-width: 600px !important; margin: 0 auto !important; aspect-ratio: 4 / 3 !important; display: flex !important; align-items: center !important; justify-content: center !important; background-size: cover !important; background-position: center !important; z-index: 1 !important; }

.photoText-div .titles p span { letter-spacing: .2em !important; }

@media (max-width: 991px) { .photoText-div { display: flex !important; flex-direction: column !important; } .photoText-div > div:first-child { order: 1 !important; padding: 20px 20px 30px 20px !important; text-align: center !important; } .display-5.lh-1.mt-5.px-5.titles.position-relative.z-1 { padding: 0px !important; margin: 0px !important; } .photoText-div .titles h2 { text-align: center !important; margin: 0 auto 15px auto !important; font-size: 2.2rem !important; line-height: 1.2 !important; } .photoText-div .titles p { text-align: center !important; margin: 0 auto !important; font-size: 4rem !important; line-height: 1.6 !important; } .photoText-div .img-services-list { order: 2 !important; width: 100% !important; max-width: 500px !important; min-height: 360px !important; aspect-ratio: 4 / 3 !important; margin: 0 auto 70px auto !important; border-radius: 8px !important; } }

.row.row-eq-height.row-flex.flex-wrap.mx-auto.photoText-div { padding-bottom: 5rem; }

/* Bloc n°18 (Image sur mesure sans rognage) */
body > main > div.wrapper > div > div:nth-child(18) > div.col-lg-6.order-1.order-lg-2.order-xl-2.order-xxl-2.img-services-list.position-relative { position: relative !important; max-width: 600px !important; margin: 0 auto !important; min-height: auto !important; aspect-ratio: 4 / 3 !important; display: flex !important; background-size: cover !important; background-position: center !important; }

#reverse > div.row.flex-lg-row-reverse.align-items-center.g-5.py-2.px-4.mt-5.position-relative.z-1 > div.col-lg-7.my-0.order-1.order-lg-1.order-xl-1.order-xxl-1 > div.display-6.fw-bold.text-body-emphasis.lh-1.mb-5.titles > p > span { letter-spacing: .2em !important; font-weight: 400; }

/*───────────────────────────────────────────────────────────────────── 5. BLOC GOOGLE MAPS (FOND CLAIR) ─────────────────────────────────────────────────────────────────────*/
#maps-url { border-radius: 4px !important; }

.maps-section.position-relative.bg-sixthColor { padding: 100px 5% !important; position: relative !important; overflow: hidden !important; }

.maps-section .background-image-div-opacity { display: none !important; }

.maps-section .content-container { max-width: 1800px !important; margin: 0 auto !important; }

.maps-section .row.informations-list { display: grid !important; grid-template-columns: 1fr 1fr !important; align-items: start !important; }

.maps-section .col-lg-6.col-xl-4.content { padding: 0 !important; width: 80% !important; }

.maps-section .mb-4.text-center.display-6.titles { text-align: left !important; margin-bottom: 1.5rem !important; }

.maps-section .mb-4.text-center.display-6.titles p { margin-bottom: 0 !important; }

.maps-section .mb-4.text-center.display-6.titles p:first-child span { letter-spacing: .22em !important; display: flex !important; align-items: center !important; gap: .75rem !important; margin-bottom: 1rem !important; }

.maps-section .mb-4.text-center.display-6.titles h3 span { line-height: 1.2 !important; display: block !important; text-align: left !important; margin-bottom: 1rem !important; }

.maps-section .mb-4.text-center.display-6.titles p:last-child span { line-height: 1.75 !important; display: block !important; text-align: left !important; }

.maps-section .mb-4.text-center.display-6.titles > p:nth-child(1) > span:nth-child(1) { margin: 0 !important; }

.maps-section .item-content, .maps-section .item-content.mx-5 { margin: 0 !important; padding: 0 !important; display: grid !important; grid-template-columns: 1fr !important; }

.maps-section .item-content > .d-flex { padding: 0 !important; display: flex !important; align-items: flex-start !important; margin-bottom: 1.5rem !important; gap: 18px !important; }

.maps-section .item-content .d-flex > div:first-child, .maps-section .item-content .d-flex > .mx-2 { width: 42px !important; height: 42px !important; border: 1px solid rgba(44, 44, 44, 0.2) !important; display: flex !important; align-items: center !important; justify-content: center !important; flex-shrink: 0 !important; border-radius: 2px !important; margin: 0 !important; background: transparent !important; }

.maps-section .item-content .d-flex > div:first-child i { color: var(--oak-dark) !important; font-size: 1.1rem !important; }

.maps-section .item-content .d-flex > div:last-child { flex: 1 !important; display: flex !important; flex-direction: column !important; justify-content: center !important; min-height: 42px !important; }

.maps-section .item-content .d-flex .titles { font-family: 'Jost', sans-serif !important; font-size: .72rem !important; letter-spacing: .14em !important; text-transform: uppercase !important; color: var(--oak-dark) !important; margin-bottom: .2rem !important; font-weight: 600 !important; display: block !important; }

.maps-section .item-content .d-flex span.p-1, .maps-section .item-content .d-flex a.p-1 { font-family: 'Jost', sans-serif !important; font-size: .9rem !important; color: var(--charcoal) !important; font-weight: 400 !important; line-height: 1.5 !important; padding: 0 !important; display: block !important; text-decoration: none !important; }

.maps-section .item-content .d-flex a.p-1:hover, a#phone-analytics-tag-maps:hover { color: var(--oak) !important; text-decoration: underline !important; }

.maps-section a#phone-analytics-tag-maps { transition: color .2s ease !important; }

.maps-section .item-content::before { content: "HORAIRES D'OUVERTURE\A\A Lundi – Jeudi\A\A Vendredi\A\A Samedi – Dimanche" !important; grid-column: 1 !important; grid-row: 3 !important; display: block !important; white-space: pre-wrap !important; margin-top: .5rem !important; padding: 1.5em !important; border: 1px solid rgba(44, 44, 44, 0.15) !important; border-radius: 2px !important; font-family: 'Jost', sans-serif !important; font-size: .85rem !important; color: #7a4b1b !important; line-height: 1.4em !important; overflow: hidden; background-image: linear-gradient(rgba(44, 44, 44, 0.15), rgba(44, 44, 44, 0.15)), linear-gradient(rgba(44, 44, 44, 0.15), rgba(44, 44, 44, 0.15)), linear-gradient(rgba(44, 44, 44, 0.15), rgba(44, 44, 44, 0.15)); background-color: #e4c8ac; background-size: calc(100% - 3em) 1px; background-position: 1.5em 3.6em, 1.5em 6.4em, 1.5em 9.2em; background-repeat: no-repeat; }

.maps-section .item-content::before::first-line { color: var(--oak-dark) !important; font-size: .72rem !important; letter-spacing: .14em !important; text-transform: uppercase !important; font-weight: 600 !important; }

.maps-section .item-content::after { content: "\A\A 8h00 – 12h30 / 14h00 – 17h45\A\A 8h00 – 12h00\A\A Fermé" !important; grid-column: 1 !important; grid-row: 3 !important; display: block !important; white-space: pre-wrap !important; margin-top: .5rem !important; padding: 1.5em !important; font-family: 'Jost', sans-serif !important; font-size: .85rem !important; color: #7a4b1b !important; line-height: 1.4em !important; text-align: right !important; pointer-events: none !important; }

.maps-section .col-lg-6.col-xl-8.map-content { padding: 0 !important; display: flex !important; align-items: center !important; justify-content: center !important; width: 100% !important; }

.maps-section .map-content iframe { width: 100% !important; height: 500px !important; border: none !important; border-radius: 4px !important; box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15) !important; }

@media (max-width: 991px) { .maps-section .row.informations-list { grid-template-columns: 1fr !important; gap: 50px !important; } .maps-section .col-lg-6.col-xl-4.content { width: 100% !important; } .maps-section .mb-4.text-center.display-6.titles { text-align: left !important; } .maps-section .mb-4.text-center.display-6.titles p:first-child span { justify-content: flex-start !important; } .maps-section .mb-4.text-center.display-6.titles p:first-child span::before { display: none !important; } .maps-section .mb-4.text-center.display-6.titles h3 span, .maps-section .mb-4.text-center.display-6.titles p:last-child span { text-align: left !important; } .maps-section .map-content iframe { height: 350px !important; } }

@media (max-width: 576px) { .maps-section.position-relative.bg-sixthColor { padding: 60px 40px !important; } .maps-section .map-content iframe { height: 300px !important; } .maps-section .item-content .d-flex > div:first-child { width: 32px !important; height: 32px !important; } .maps-section .item-content::before { font-size: .75rem !important; padding: 1.2em !important; background-size: calc(100% - 2.4em) 1px !important; background-position: 1.2em 3.6em, 1.2em 6.4em, 1.2em 9.2em !important; } .maps-section .item-content::after { font-size: .75rem !important; padding: 1.2em !important; } }

@media (max-width: 768px) { .maps-section .mb-4.text-center.display-6.titles p:nth-child(1) span, .maps-section .mb-4.text-center.display-6.titles p:nth-child(3) span { font-size: 0.6em !important; } }

/*───────────────────────────────────────────────────────────────────── 6. BLOC FACEBOOK ─────────────────────────────────────────────────────────────────────*/
.socialsMiroir-div { width: 70% !important; max-width: 1200px !important; margin: 60px auto !important; border-right: 5px solid var(--oak) !important; border-radius: 4px !important; box-shadow: 0 15px 35px rgba(27, 54, 93, 0.1) !important; overflow: hidden !important; }

.socialsMiroir-div .titles p:nth-child(1) span { letter-spacing: 0.2em !important; }

.socialsMiroir-div .text-center.titles { display: flex !important; flex-direction: column !important; align-items: flex-end !important; padding: 0 20px 60px 20px !important; }

.socialsMiroir-div .text-center.titles a { width: fit-content; display: inline-flex !important; align-items: center !important; justify-content: right !important; background-color: var(--oak-dark) !important; color: #FFF !important; padding: 14px 28px !important; margin-top: 25px !important; border-radius: 4px !important; font-family: 'Jost', sans-serif !important; font-size: .85rem !important; font-weight: 600 !important; letter-spacing: .1em !important; text-decoration: none !important; cursor: pointer !important; transition: all .3s ease !important; box-shadow: 0 4px 12px rgba(27, 54, 93, 0.2) !important; }

.socialsMiroir-div .text-center.titles a:hover { background-color: var(--oak) !important; transform: translateY(-3px) !important; box-shadow: 0 6px 15px rgba(162, 103, 44, 0.3) !important; color: #FFF !important; }

.socialsMiroir-div .row { gap: 40px !important; padding: 0 20px !important; }

.socialsMiroir-div .col { flex: 1 !important; width: auto !important; }

@media (max-width: 991px) { .socialsMiroir-div { width: 95% !important; border-right: none !important; border-bottom: 5px solid var(--oak) !important; } .socialsMiroir-div .text-center.titles { align-items: center !important; } .socialsMiroir-div .text-center.titles p, .socialsMiroir-div .text-center.titles h3 { text-align: center !important; } .socialsMiroir-div .text-center.titles a { justify-content: center !important; } }

/*───────────────────────────────────────────────────────────────────── 7. BLOC BANDEAU (ACCOMPAGNEMENT) ─────────────────────────────────────────────────────────────────────*/
.accompagnement_text .content > div { padding: 0 !important; margin-top: 0 !important; }

.accompagnement_text-card { padding-bottom: 0 !important; padding-top: 1rem !important; }

.accompagnement_text-card .titles.display-5, .accompagnement_text-card .titles.display-5 p span { font-size: 20px !important; line-height: 1 !important; }

.accompagnement_text .content p { margin-bottom: 0 !important; }

@media (max-width: 768px) { .accompagnement_text-card span.fs-5.mx-auto p span { font-size: .8em !important; letter-spacing: 0.1em !important; font-weight: 500 !important; } .accompagnement_text-card .titles.display-5 { font-size: 30px !important; margin-bottom: 10px !important; } }

/*───────────────────────────────────────────────────────────────────── 8. BLOC PRESTATIONS (SERVICES) ─────────────────────────────────────────────────────────────────────*/
.services { padding: 50px 8% 70px; background: var(--light); }

.section-title { text-align: center; margin-bottom: 60px; }

.section-title h2 { font-size: 3rem; font-family: 'Playfair Display', serif; }

.section-title p, p.section-kicker { font-family: 'Jost', sans-serif; color: #7a4b1b; text-transform: uppercase; letter-spacing: .2em; }

.services-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 30px; }

.service-card { background: #fff; border-radius: 8px; overflow: hidden; box-shadow: 0 15px 35px rgba(0, 0, 0, 0.05); transition: .3s; text-decoration: none !important; display: block; color: inherit; }

.service-card:hover { transform: translateY(-10px); }

.service-card:hover h3 { color: var(--oak); }

.card-img { height: 200px; background-size: cover; background-position: center; }

.card-body { padding: 25px !important; }

.card-body h3 { margin-bottom: 10px; font-size: 1.3rem; font-family: 'Playfair Display', serif; color: var(--oak-dark); }

.card-body p { color: var(--grey); font-size: .95rem; font-family: 'Jost', sans-serif; }

/*───────────────────────────────────────────────────────────────────── 9. BLOC "ÉLÉMENTS BOIS SUR MESURE" - COMPLÈTEMENT ADAPTÉ AU FOND #e0be9a ─────────────────────────────────────────────────────────────────────*/
#sur-mesure { background: #e0be9ab0 !important; padding: 100px 5%; position: relative; overflow: hidden; }

.sur-mesure-inner { max-width: 1100px; margin: 0 auto; display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: center; }

.sur-mesure-text h2 { color: #a2672c; font-family: 'Playfair Display', serif; margin-bottom: 1rem; }

.sur-mesure-text .section-sub { color: var(--charcoal); /* Texte descriptif en charbon lisible */ text-align: left; margin-bottom: 2rem; }

.sur-mesure-list { list-style: none; display: flex; flex-direction: column; gap: .85rem; padding-left: 0; }

.sur-mesure-list li { display: flex; align-items: center; gap: .9rem; font-size: .9rem; color: #7a4b1b; }

.sur-mesure-list li::before { content: ''; width: 20px; height: 1px; background: var(--oak-dark); flex-shrink: 0; }

.sur-mesure-cards { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }

/* Les tuiles passent sur une opacité blanche subtile pour flotter élégamment sur le sable */
.sm-card { background-color: #a2672c14 !important; border: 1px solid rgba(44, 44, 44, 0.1) !important; padding: 1.5rem 1.25rem; border-radius: 2px; transition: transform .3s ease-out, border-color .3s ease-out, box-shadow .3s ease-out !important; cursor: default; }

.sm-card:hover { transform: translateY(-8px) !important; border-color: var(--oak-dark) !important; box-shadow: 0 12px 25px rgba(122, 77, 30, 0.15) !important; background-color: #a2672c3d !important; }

.sm-card:hover .sm-card-num { color: var(--oak-dark) !important; transition: color .3s ease !important; }

.sm-card-num { font-family: 'Playfair Display', serif; font-size: 2rem; font-weight: 700; color: rgba(122, 77, 30, 0.35); margin-bottom: .5rem; }

.sm-card-title { font-size: .85rem; font-weight: 600; color: #a2672c; text-transform: uppercase; letter-spacing: .08em; margin-bottom: .5rem; }

.sm-card-desc { font-size: .8rem; color: #2c2c2c; line-height: 1.65; }

.animate-on-scroll { opacity: 0; transform: translateY(40px); transition: opacity 0.8s cubic-bezier(0.25, 1, 0.5, 1), transform 0.8s cubic-bezier(0.25, 1, 0.5, 1); }

.animate-on-scroll.visible { opacity: 1; transform: translateY(0); }

.sm-card.visible:nth-child(1) { transition-delay: 0.1s; }

.sm-card.visible:nth-child(2) { transition-delay: 0.2s; }

.sm-card.visible:nth-child(3) { transition-delay: 0.3s; }

.sm-card.visible:nth-child(4) { transition-delay: 0.4s; }

@media (max-width: 991px) { #sur-mesure { padding: 60px 20px !important; } .sur-mesure-inner { grid-template-columns: 1fr !important; gap: 40px !important; } .sur-mesure-text h2, .sur-mesure-text .section-kicker, .sur-mesure-text .section-sub { text-align: center !important; } .sur-mesure-list { align-items: start !important; } .sur-mesure-list li { text-align: center !important; justify-content: center !important; } }

@media (max-width: 576px) { .sur-mesure-cards { grid-template-columns: 1fr !important; gap: 15px !important; } .sur-mesure-text h2 { font-size: 2rem !important; } }

/*───────────────────────────────────────────────────────────────────── 10. BLOC CTA (CALL-TO-ACTION) ─────────────────────────────────────────────────────────────────────*/
.cta_banner { padding: 0px !important; }

.cta_banner .titles p span { font-weight: 400 !important; letter-spacing: .2em !important; }

.cta_banner .content { background-color: #fff !important; border-left: 6px solid var(--oak) !important; border-radius: 4px !important; padding: 50px 60px !important; box-shadow: 0 20px 40px rgba(0, 0, 0, 0.2) !important; display: grid !important; grid-template-columns: 1fr auto !important; grid-template-rows: auto auto !important; column-gap: 50px !important; align-items: center !important; width: 100% !important; max-width: 1100px !important; margin: 0 auto !important; }

.cta_banner .col-lg-12 { display: contents !important; }

.cta_banner .titles { grid-column: 1/2 !important; grid-row: 1/2 !important; text-align: left !important; margin-bottom: 5px !important; }

.cta_banner .lead { grid-column: 1/2 !important; grid-row: 2/3 !important; text-align: left !important; padding: 0 !important; }

.cta_banner .d-grid:nth-child(2) { grid-column: 2/3 !important; grid-row: 1/2 !important; align-self: end !important; margin-bottom: 8px !important; }

.cta_banner .d-grid:nth-child(3) { grid-column: 2/3 !important; grid-row: 2/3 !important; align-self: start !important; margin-top: 8px !important; }

.cta_banner .ctaLinks-button { border-radius: 4px !important; letter-spacing: .08em !important; padding: 15px 30px !important; margin: 0 !important; width: 100% !important; max-width: 350px !important; transition: all .3s ease !important; text-decoration: none !important; display: flex !important; justify-content: center !important; }

.cta_banner .ctaLinks-button p { margin: 0 !important; }

.cta_banner .d-grid:nth-child(2) .ctaLinks-button { border: 2px solid var(--oak) !important; background-color: var(--oak) !important; }

.cta_banner .d-grid:nth-child(2) .ctaLinks-button span { color: #FFF8F1 !important; }

.cta_banner .d-grid:nth-child(2) .ctaLinks-button:hover { background-color: var(--oak-dark) !important; border-color: var(--oak-dark) !important; transform: translateY(-3px) !important; box-shadow: 0 8px 15px rgba(162, 103, 44, 0.3) !important; }

.cta_banner .d-grid:nth-child(3) .ctaLinks-button { background-color: transparent !important; border: 2px solid var(--oak) !important; }

.cta_banner .d-grid:nth-child(3) .ctaLinks-button:hover { background-color: var(--oak) !important; transform: translateY(-3px) !important; box-shadow: 0 8px 15px rgba(162, 103, 44, 0.3) !important; }

.cta_banner .d-grid:nth-child(3) .ctaLinks-button:hover span { color: #FFF8F1 !important; }

.cta_banner .titles h3 span { line-height: 1.2 !important; }

@media (max-width: 991px) { .cta_banner .content { grid-template-columns: 1fr !important; grid-template-rows: auto auto auto auto !important; padding: 40px 20px !important; border-left: none !important; border-top: 6px solid var(--oak) !important; row-gap: 20px !important; } .cta_banner .titles, .cta_banner .lead { grid-column: 1/-1 !important; text-align: center !important; margin-bottom: 0 !important; } .cta_banner .titles { grid-row: 1/2 !important; } .cta_banner .lead { grid-row: 2/3 !important; } .cta_banner .d-grid:nth-child(2) { grid-row: 3/4 !important; grid-column: 1/-1 !important; margin: 10px 0 0 0 !important; } .cta_banner .d-grid:nth-child(3) { grid-row: 4/5 !important; grid-column: 1/-1 !important; margin: 0 !important; } .cta_banner .ctaLinks-button { width: 100% !important; padding: 15px 20px !important; } }

@media (max-width: 576px) { .cta_banner .content { padding: 30px 15px !important; } .cta_banner .titles h3 span, .cta_banner .titles h3 em span { font-size: 1.1em !important; } .cta_banner .lead p span { font-size: .85em !important; } }

@media (max-width: 768px) { .cta_banner .titles p span { font-size: 0.4em !important; } }

/*───────────────────────────────────────────────────────────────────── 11. BLOCS SEO (ACTIVITÉS) ─────────────────────────────────────────────────────────────────────*/
.first-activity-div, .third-activity-div { border-left: 6px solid var(--oak) !important; }

.second-activity-div { border-right: 6px solid var(--oak) !important; }

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

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

@media (max-width: 991px) { .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 { margin-bottom: 5rem !important; } }

/*───────────────────────────────────────────────────────────────────── PAGE CONTACT - ENTIÈREMENT ADAPTÉE AU FOND LUMINEUX #e0be9a ─────────────────────────────────────────────────────────────────────*/
div#contact { padding-top: 3rem !important; }

#contact .row.align-items-center { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 80px !important; max-width: 1100px !important; margin: 0 auto !important; width: 100% !important; }

#contact .row.align-items-center > div.col-lg-6 { width: 100% !important; max-width: 100% !important; padding: 0 !important; }

#contact .row.align-items-center > .col-lg-6.text-center { text-align: left !important; display: flex !important; flex-direction: column !important; justify-content: center !important; }

#contact .titles { display: grid !important; grid-template-columns: 1fr !important; position: relative !important; }

#contact .titles p { grid-column: 1 !important; margin-bottom: 0 !important; }

/* Libellés de niveau 1 passés en marron profond */
#contact .titles p:nth-child(1) { font-family: 'Jost', sans-serif !important; font-size: .72rem !important; letter-spacing: .18em !important; text-transform: uppercase !important; color: var(--oak-dark) !important; display: flex !important; align-items: center !important; gap: 15px !important; margin-bottom: 1rem !important; }

/* Titre de contact principal en charbon */
#contact .titles p:nth-child(2) { font-family: 'Playfair Display', serif !important; font-size: clamp(2.2rem, 4vw, 3rem) !important; font-weight: 600 Tri; color: #a2672c !important; margin-bottom: 2.5rem !important; line-height: 1.1 !important; }

#contact .titles p:nth-child(3), #contact .titles p:nth-child(5) { position: relative !important; padding-left: 60px !important; font-family: 'Jost', sans-serif !important; font-size: .72rem !important; letter-spacing: .14em !important; text-transform: uppercase !important; color: var(--oak-dark) !important; margin-bottom: .2rem !important; font-weight: 600 !important; }

/* Les cadres de petites icônes s'adaptent au fond clair */
#contact .titles p:nth-child(3)::before, #contact .titles p:nth-child(5)::before { content: '' !important; position: absolute !important; left: 0 !important; top: 0 !important; width: 42px !important; height: 42px !important; border: 1px solid rgba(44, 44, 44, 0.2) !important; border-radius: 2px !important; }

#contact .titles p:nth-child(3)::after { content: '' !important; position: absolute !important; left: 11px !important; top: 11px !important; width: 20px !important; height: 20px !important; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237a4d1e' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0118 0z'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E") !important; background-size: contain !important; background-repeat: no-repeat !important; }

#contact .titles p:nth-child(5)::after { content: '' !important; position: absolute !important; left: 11px !important; top: 11px !important; width: 20px !important; height: 20px !important; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237a4d1e' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.92v3a2 2 0 01-2.18 2 19.79 19.79 0 01-8.63-3.07A19.5 19.5 0 013.07 9.8a19.79 19.79 0 01-3.07-8.69A2 2 0 012.18 0h3a2 2 0 012 1.72c.127.96.361 1.903.7 2.81a2 2 0 01-.45 2.11L6.91 7.09a16 16 0 006 6l.61-.61a2 2 0 012.11-.45c.907.339 1.85.573 2.81.7A2 2 0 0122 14.92v2z'/%3E%3C/svg%3E") !important; background-size: contain !important; background-repeat: no-repeat !important; }

#contact .titles p:nth-child(4), #contact .titles p:nth-child(6) { padding-left: 60px !important; font-family: 'Jost', sans-serif !important; font-size: .9rem !important; color: var(--charcoal) !important; line-height: 1.5 !important; margin-bottom: 1.5rem !important; }

/* Cadre horaire interne mis en contraste (Idem bloc Maps) */
#contact .titles::before { content: "HORAIRES D'OUVERTURE\A\A Lundi – Jeudi\A\A Vendredi\A\A Samedi – Dimanche" !important; grid-column: 1 !important; grid-row: 10 !important; display: block !important; white-space: pre !important; margin-top: 2rem !important; padding: 1.5em !important; border: 1px solid rgba(44, 44, 44, 0.15) !important; border-radius: 2px !important; font-family: 'Jost', sans-serif !important; font-size: .85rem !important; color: #7a4b1b !important; line-height: 1.4em !important; overflow: hidden; background-image: linear-gradient(rgba(44, 44, 44, 0.15), rgba(44, 44, 44, 0.15)), linear-gradient(rgba(44, 44, 44, 0.15), rgba(44, 44, 44, 0.15)), linear-gradient(rgba(44, 44, 44, 0.15), rgba(44, 44, 44, 0.15)); background-size: calc(100% - 3em) 1px; background-color: #dbb792; background-position: 1.5em 3.6em, 1.5em 6.4em, 1.5em 9.2em; background-repeat: no-repeat; }

#contact .titles::before::first-line { color: var(--oak-dark) !important; font-size: .72rem !important; letter-spacing: .14em !important; text-transform: uppercase !important; font-weight: 600 !important; }

#contact .titles::after { content: "\A\A 8h00 – 12h30 / 14h00 – 17h45\A\A 8h00 – 12h00\A\A Fermé" !important; grid-column: 1 !important; grid-row: 10 !important; display: block !important; white-space: pre !important; margin-top: 2rem !important; padding: 1.5em !important; font-family: 'Jost', sans-serif !important; font-size: .85rem !important; color: #7a4b1b !important; line-height: 1.4em !important; text-align: right !important; pointer-events: none !important; }

#formContact { background-color: transparent !important; border: none !important; padding: 0 !important; width: 100% !important; max-width: 600px !important; }

/* Champs de formulaires blanchis pour s'isoler proprement du fond ocre */
#formContact .form-control { background-color: #a2672c14 !important; border: 1px solid rgba(44, 44, 44, 0.15) !important; border-radius: 2px !important; color: var(--charcoal) !important; font-family: 'Jost', sans-serif !important; font-size: .9rem !important; padding: 1.2rem 1rem .6rem 1rem !important; box-shadow: none !important; transition: border-color .3s ease, background-color .3s ease !important; }

#formContact .form-control:focus { border-color: var(--oak-dark) !important; background-color: #a2672c3d  !important; }

#formContact .form-control:-webkit-autofill { -webkit-box-shadow: 0 0 0 30px #f5e8d6 inset !important; -webkit-text-fill-color: var(--charcoal) !important; border: 1px solid rgba(44, 44, 44, 0.15) !important; }

#formContact .form-floating label { color: var(--text-muted) !important; font-family: 'Jost', sans-serif !important; font-size: .8rem !important; letter-spacing: .1em !important; text-transform: uppercase !important; padding: 1rem !important; opacity: 1 !important; }

#formContact .form-floating > .form-control:focus ~ label, #formContact .form-floating > .form-control:not(:placeholder-shown) ~ label { color: var(--oak-dark) !important; transform: scale(0.85) translateY(-0.8rem) translateX(0.15rem) !important; background-color: transparent !important; }

#formContact textarea.form-control { min-height: 120px !important; resize: vertical !important; padding-top: 1rem !important; }

#formContact textarea::placeholder { color: var(--text-muted) !important; font-size: .8rem !important; letter-spacing: .1em !important; text-transform: uppercase !important; }

#formContact .input-group input[type="file"] { padding: .8rem !important; font-size: .8rem !important; color: var(--charcoal) !important; }

#formContact .input-group input[type="file"]::file-selector-button { background-color: rgba(44, 44, 44, 0.08) !important; border: 1px solid rgba(44, 44, 44, 0.2) !important; color: var(--charcoal) !important; border-radius: 2px !important; padding: .4rem .8rem !important; margin-right: 1rem !important; transition: all .2s !important; cursor: pointer !important; }

#formContact .input-group input[type="file"]::file-selector-button:hover { background-color: var(--oak-dark) !important; color: var(--cream) !important; border-color: var(--oak-dark) !important; }

#erase-file { border-color: rgba(44, 44, 44, 0.15) !important; color: var(--charcoal) !important; border-radius: 0 2px 2px 0 !important; }

#erase-file:hover { background-color: #dc3545 !important; color: #fff !important; border-color: #dc3545 !important; }

#formContact .checkbox { margin-top: 1rem !important; }

#formContact .checkbox label { color: var(--charcoal) !important; font-size: .8rem !important; line-height: 1.5 !important; display: flex !important; align-items: flex-start !important; gap: 10px !important; }

#formContact .checkbox input[type="checkbox"] { margin-top: 4px !important; accent-color: var(--oak-dark) !important; width: 16px !important; height: 16px !important; cursor: pointer !important; }

#formContact .checkbox a { color: var(--oak-dark) !important; text-decoration: none !important; transition: color .2s !important; }

#formContact .checkbox a:hover { color: var(--oak) !important; text-decoration: underline !important; }

#formContact button[type="submit"] { background-color: var(--oak-dark) !important; color: var(--cream) !important; border: none !important; padding: 1rem 2rem !important; font-family: 'Jost', sans-serif !important; font-size: .95rem !important; font-weight: 500 !important; letter-spacing: .1em !important; text-transform: uppercase !important; border-radius: 4px !important; margin-top: 1rem !important; transition: all .3s ease !important; }

#formContact button[type="submit"]:hover { background-color: var(--oak) !important; transform: translateY(-2px) !important; box-shadow: 0 8px 15px rgba(122, 77, 30, 0.2) !important; }

@media (max-width: 991px) { #contact .row.align-items-center { grid-template-columns: 1fr !important; gap: 50px !important; padding: 0 20px !important; } }

@media (max-width: 768px) { div#contact { padding: 7rem 0 5rem !important; } }

/*───────────────────────────────────────────────────────────────────── BLOC GALERIE & RÉALISATIONS ─────────────────────────────────────────────────────────────────────*/
.realisations-section { padding: 100px 5%; background-color: var(--cream); text-align: center; }

.realisations-main-title { font-family: 'Playfair Display', serif; font-size: clamp(2.2rem, 4vw, 3rem); font-weight: 600; color: var(--charcoal); margin-bottom: 2.5rem; position: relative; }

.realisations-main-title::after { content: ''; display: block; width: 60px; height: 2px; background-color: var(--oak); margin: 15px auto 0; }

.filter-tabs { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin-bottom: 3.5rem; max-width: 1000px; margin-left: auto; margin-right: auto; }

.filter-btn { background-color: transparent; border: 1px solid rgba(162, 103, 44, 0.3); color: var(--charcoal); padding: 10px 22px; border-radius: 4px; font-family: 'Jost', sans-serif; font-size: .85rem; font-weight: 500; letter-spacing: .08em; cursor: pointer; transition: all .3s ease; }

.filter-btn:hover { border-color: var(--oak); color: var(--oak); }

.filter-btn.active { background-color: var(--oak); color: var(--cream); border-color: var(--oak); box-shadow: 0 6px 15px rgba(162, 103, 44, 0.25); transform: translateY(-2px); }

.realisations-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap: 25px; max-width: 1200px; margin: 0 auto; }

.realisation-card { border-radius: 4px; overflow: hidden; position: relative; aspect-ratio: 4/3; background-color: var(--sand-light); cursor: pointer; box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05); transition: box-shadow .3s ease; }

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

.realisation-card:hover { box-shadow: 0 12px 25px rgba(0, 0, 0, 0.15); }

.realisation-card img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }

.realisation-card:hover img { transform: scale(1.05); }

.realisation-card::after { content: ''; position: absolute; inset: 0; background: rgba(44, 44, 44, 0); transition: background .3s ease; pointer-events: none; }

.realisation-card:hover::after { background: rgba(44, 44, 44, 0.15); }

.modal { display: none; position: fixed; z-index: 9999; left: 0; top: 0; width: 100%; height: 100%; background-color: rgba(44, 44, 44, 0.95); backdrop-filter: blur(5px); align-items: center; justify-content: center; }

.modal-content { max-width: 90vw; max-height: 85vh; background-color: transparent !important; box-shadow: 0 10px 40px rgba(0, 0, 0, 0.6); object-fit: contain; border-radius: 4px; animation: zoomFade .3s ease-out forwards; }

.modal-close { position: absolute; top: 25px; right: 40px; color: var(--cream); font-size: 45px; font-weight: 300; font-family: 'Jost', sans-serif; cursor: pointer; transition: color .2s ease, transform .2s ease; z-index: 10000; line-height: 1; }

.modal-close:hover { color: var(--oak); transform: scale(1.1); }

.modal-prev, .modal-next { position: absolute; top: 50%; transform: translateY(-50%); color: var(--cream); font-size: 40px; font-weight: 300; padding: 20px; cursor: pointer; transition: color .3s ease, transform .3s ease; z-index: 10000; user-select: none; }

.modal-prev { left: 20px; }

.modal-next { right: 20px; }

.modal-prev:hover, .modal-next:hover { color: var(--oak); transform: translateY(-50%) scale(1.1); }

@keyframes zoomFade { 0% { opacity: 0;
    transform: scale(0.95); }
  100% { opacity: 1;
    transform: scale(1); } }

@keyframes popInGallery { 0% { opacity: 0;
    transform: scale(0.95) translateY(10px); }
  100% { opacity: 1;
    transform: scale(1) translateY(0); } }

.realisation-card:not(.hidden) { animation: popInGallery .4s ease-out forwards; }

@media (max-width: 768px) { .modal-close { top: 10px; right: 20px; font-size: 35px; } .filter-btn { padding: 8px 16px; font-size: .9rem; } .modal-prev { left: 0; padding: 10px; font-size: 30px; } .modal-next { right: 0; padding: 10px; font-size: 30px; } }

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

/*───────────────────────────────────────────────────────────────────── BLOC AVANT / APRÈS ─────────────────────────────────────────────────────────────────────*/
.mx-1.mx-lg-4.mb-5 { padding-top: 3rem; }

.slider-before-after-images:before, .slider-before-after-images:after { background: var(--cream) !important; }

.slider-before-after-images { background: var(--cream) !important; border: 3px solid var(--cream) !important; box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3) !important; }

.bi-chevron-left::before, .bi-chevron-right::before { color: var(--oak) !important; }

/*───────────────────────────────────────────────────────────────────── BLOC GALERIE INFINIE ─────────────────────────────────────────────────────────────────────*/
.portfolio-section { background-color: var(--cream); padding: 70px 0 0; overflow: hidden; }

.portfolio-header { text-align: center; max-width: 800px; margin: 0 auto 50px auto; padding: 0 20px; }

.portfolio-subtitle { font-family: 'Jost', sans-serif; font-size: .72rem; font-weight: 500; text-transform: uppercase; letter-spacing: .22em; color: var(--oak); display: flex; align-items: center; justify-content: center; gap: .75rem; margin-bottom: 1rem; }

.portfolio-subtitle::before, .portfolio-subtitle::after { content: ''; display: block; width: 28px; height: 1px; background: var(--oak); }

.portfolio-title { font-family: 'Playfair Display', serif; font-size: clamp(2.2rem, 4vw, 3rem); font-weight: 600; color: var(--charcoal); margin: 0 0 20px 0; line-height: 1.2; }

.portfolio-text { font-family: 'Jost', sans-serif; font-size: 1rem !important; line-height: 1.75 !important; color: rgba(44, 44, 44, 0.7) !important; margin: 0; }

.infinite-gallery { overflow: hidden; width: 100%; position: relative; margin: 0 0 50px 0; }

.gallery-track { display: flex; gap: 25px; width: max-content; animation: scrollGallery 60s linear infinite; }

.infinite-gallery:hover .gallery-track { animation-play-state: paused; }

.gallery-item { flex: 0 0 auto; width: 400px; height: 300px; border-radius: 4px; overflow: hidden; box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08); background-color: var(--sand-light); }

.gallery-item a { display: block; width: 100%; height: 100%; cursor: pointer; }

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

.gallery-item:hover img { transform: scale(1.08); }

@keyframes scrollGallery { from { transform: translateX(0); }
  to { transform: translateX(calc(-50% - 12.5px)); } }

.portfolio-action { text-align: center; padding-top: 20px; }

.btn-portfolio { display: inline-flex !important; align-items: center; justify-content: center; background-color: var(--oak) !important; color: var(--cream) !important; border: 2px solid var(--oak) !important; padding: 15px 35px !important; border-radius: 4px !important; font-family: 'Jost', sans-serif !important; font-size: .9rem !important; font-weight: 500 !important; text-decoration: none !important; text-transform: uppercase !important; letter-spacing: .1em !important; transition: all .3s ease !important; box-shadow: 0 4px 15px rgba(162, 103, 44, 0.2) !important; }

.btn-portfolio:hover { background-color: var(--oak-dark) !important; border-color: var(--oak-dark) !important; color: #fff !important; transform: translateY(-3px) !important; box-shadow: 0 8px 20px rgba(162, 103, 44, 0.3) !important; }

.lightbox { position: fixed; inset: 0; background: rgba(44, 44, 44, 0.95); backdrop-filter: blur(5px); display: flex; align-items: center; justify-content: center; padding: 40px; opacity: 0; pointer-events: none; transition: opacity .3s ease; z-index: 9999; }

.lightbox.active { opacity: 1; pointer-events: auto; }

.lightbox-image { max-width: 90vw; max-height: 90vh; border-radius: 4px; object-fit: contain; box-shadow: 0 10px 40px rgba(0, 0, 0, 0.6); }

.lightbox-close { position: absolute; top: 25px; right: 40px; background: transparent; border: none; color: var(--cream); font-size: 45px; font-weight: 300; cursor: pointer; line-height: 1; font-family: 'Jost', sans-serif; transition: color .2s ease, transform .2s ease; z-index: 10000; }

.lightbox-close:hover { color: var(--oak); transform: scale(1.1); }

@media screen and (max-width: 768px) { .portfolio-section { padding: 70px 0 0; } .gallery-item { width: 280px; height: 210px; } .lightbox-close { top: 15px; right: 20px; font-size: 40px; } }

/*───────────────────────────────────────────────────────────────────── HEADER DE PAGE INTERNE ─────────────────────────────────────────────────────────────────────*/
h1 { text-shadow: 0 2px 50px rgba(0, 0, 0, 0.8) !important; }

.cta_banner.bg-sixthColor { min-height: 55vh !important; display: flex !important; align-items: center !important; justify-content: center !important; padding: 0px 5% 80px 5% !important; }

.cta_banner .background-image-div-opacity { position: absolute !important; top: 0 !important; left: 0 !important; width: 100% !important; height: 100% !important; z-index: 1 !important; }

.cta_banner .background-image-div-opacity::after { content: '' !important; position: absolute !important; inset: 0 !important; background: linear-gradient(to bottom, rgba(44, 44, 44, 0.6) 0%, rgba(44, 44, 44, 0.4) 50%, rgba(44, 44, 44, 0.2) 100%) !important; z-index: 2 !important; }

.cta_banner .container { z-index: 3 !important; max-width: 1000px !important; margin: 0 auto !important; display: flex !important; flex-direction: column !important; align-items: center !important; }

.cta_banner .cta_banner-title p:first-child span { letter-spacing: .2em !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; gap: .75rem !important; }

.cta_banner .cta_banner-title p:first-child span::before, .cta_banner .cta_banner-title p:first-child span::after { content: '' !important; display: block !important; width: 28px !important; height: 1px !important; background-color: var(--sand) !important; }

/* Animations de fondu à l'apparition */
.cta_banner .cta_banner-title p:nth-child(1), .cta_banner .cta_banner-title h1, .cta_banner .cta_banner-title p:nth-child(3), .cta_banner .container > a { opacity: 0; animation: fadeUp 0.8s cubic-bezier(0.25, 1, 0.5, 1) forwards; }

.cta_banner .cta_banner-title p:nth-child(1) { animation-delay: 0.2s; }

.cta_banner .cta_banner-title h1 { animation-delay: 0.4s; }

.cta_banner .cta_banner-title p:nth-child(3) { animation-delay: 0.6s; }

.cta_banner .container > a { animation-delay: 0.8s; }

.cta_banner .cta_banner-title h1, .cta_banner .cta_banner-title h1 span { margin-bottom: 1.5rem !important; }

.cta_banner .cta_banner-title p:nth-child(3) { line-height: 50%; max-width: 1000px !important; margin: 0 auto 2rem auto !important; }

.cta_banner .container > a lottie-player { display: none !important; }

.cta_banner .container > a::after { content: '' !important; display: block !important; width: 24px !important; height: 24px !important; background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23a2672c' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 5v14M19 12l-7 7-7-7'/%3E%3C/svg%3E") !important; background-repeat: no-repeat !important; background-position: center !important; animation: bounceScroll 2s infinite !important; }

@media (max-width: 768px) { .cta_banner.bg-sixthColor { min-height: 60vh !important; padding: 4rem 20px 60px 20px !important; margin-top: 4rem !important; } .cta_banner .background-image-div-opacity { background-attachment: scroll !important; } body > main > div.wrapper > div > div:nth-child(2) > div.container > div > p:nth-child(3) > span { font-size: 0.6em !important; line-height: normal !important; font-weight: 300 !important; } }

/* ── Masque le saut de ligne sur ordinateur ── */
.mobile-break { display: none !important; }

@media (max-width: 576px) { .sur-mesure-cards { grid-template-columns: 1fr !important; gap: 15px !important; } .sur-mesure-text h2 { font-size: 2rem !important; } #sur-mesure > div > div.sur-mesure-text.animate-on-scroll.visible > ul > li:nth-child(6) { gap: 3.6rem !important; } /* ── Active le saut de ligne sur mobile ── */ .mobile-break { display: block !important; } }

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