@charset "UTF-8";
@import url(main.css);
.b-bloc-divider { height: 40px !important; background-color: transparent !important; border: none !important; box-shadow: none !important; }

.navbar { box-shadow: 0px 1px 4px rgba(0, 0, 0, 0.1); /* Optionnel : ajoute une ombre subtile */ }

a.grow.button_header.text-color-fourth.mx-3.mx-lg-2.my-2.my-lg-1.p-2.rounded-pill.text-decoration-none.button-header-telephone { padding: 8px 14px !important; background-color: #E86608; color: #FFFFFF !important; border-radius: 5px !important; }

footer > div.row.justify-content-center.justify-content-lg-around.text-center.text-lg-start > div:nth-child(3) > div:nth-child(2) > p { font-size: 0; }

footer > div.row.justify-content-center.justify-content-lg-around.text-center.text-lg-start > div:nth-child(3) > div:nth-child(2) > p::before { content: "Basé à Soulaires (28130)"; font-size: 16px; }

.d-flex.flex-column.flex-lg-row.align-items-center { font-family: 'Cormorant Garamond'; }

/* -------------------------------------------------- SEO -------------------------------------------------- */
.fs-6.lead { color: #4A4A4A; line-height: 1.8; font-weight: 400; }

a.fw-light.grow.button_header.text-color-fourth.rounded-pill.p-2.text-decoration-none.all-activities-button { padding: 8px 14px !important; background-color: #E86608; color: #FFFFFF !important; border-radius: 5px !important; }

a.dropdown-item.text-color-fourth { color: white !important; }

.row.informations-list { background: #faf8f4; }

a.p-3.fw-bold.fs-6.m-2.phone-number-button.text-decoration-none { background-color: #E86608; color: #FFFFFF !important; border-radius: 5px !important; font-weight: 400 !important; }

.seo-hero-button { color: #FFFFFF !important; border-radius: 5px !important; }

.seo-faq-heading h2 { color: white !important; }

.seo-button { color: #FFFFFF !important; border-radius: 5px !important; }

/* -------------------------------------------------- GALERIE CARROUSEL -------------------------------------------------- */
.charritte-gallery { padding: 80px 30px; background-color: #FAF8F4; overflow: hidden; }

.charritte-gallery__viewport { overflow: hidden; }

.charritte-gallery__container { position: relative; max-width: 1350px; margin: auto; padding: 0 45px; }

.charritte-gallery__track { display: flex; gap: 24px; transition: transform .4s ease; }

.charritte-gallery__item { flex: 0 0 calc((100% - 48px) / 3); }

.charritte-gallery__item img { width: 100%; height: 350px; object-fit: cover; border-radius: 10px; }

/* FLECHES */
.charritte-gallery__arrow { position: absolute; top: 50%; transform: translateY(-50%); z-index: 5; width: 45px; height: 45px; border-radius: 50%; border: none; background: #FFFFFF; color: #E86608; font-size: 32px; line-height: 1; cursor: pointer; box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15); }

.charritte-gallery__arrow--prev { left: 0; }

.charritte-gallery__arrow--next { right: 0; }

.charritte-gallery__arrow:hover { transform: translateY(-50%) scale(1.08); }

/* MOBILE */
@media (max-width: 768px) { .charritte-gallery__item { flex: 0 0 100%; } .charritte-gallery__item img { height: 300px; } .charritte-gallery__arrow--prev { left: 10px; } .charritte-gallery__arrow--next { right: 10px; } .charritte-gallery { padding: 80px 0px; } }

/* ----------------------------------------------------------------------------- CTA DEVIS GRATUIT ----------------------------------------------------------------------------- */
.charritte-quote-cta, .charritte-quote-cta * { box-sizing: border-box; }

/* --- SECTION --- */
.charritte-quote-cta { padding: 80px 30px; background-color: #E86608; }

/* --- CONTAINER --- */
.charritte-quote-cta__container { width: 100%; max-width: 1250px; margin: 0 auto; display: flex; align-items: center; justify-content: space-between; gap: 60px; }

/* --- CONTENT --- */
.charritte-quote-cta__content { max-width: 900px; }

/* --- TITLE --- */
.charritte-quote-cta h2 { margin: 0 0 25px; color: #FFFFFF; font-size: 38px; line-height: 1.1; text-transform: uppercase; max-width: 600px; }

/* --- SIGNATURE --- */
.charritte-quote-cta__signature { margin: -10px 0 25px; color: #FFFFFF; font-size: 36px; line-height: 1.2; font-family: 'Parisienne'; }

/* --- TEXT --- */
.charritte-quote-cta__text { max-width: 750px; color: rgba(255, 255, 255, 0.9); font-size: 16px; line-height: 1.8; }

/* --- BUTTON --- */
.charritte-quote-cta__action { flex-shrink: 0; }

.charritte-quote-cta__button { display: inline-flex; align-items: center; justify-content: center; min-width: 230px; padding: 17px 28px; border: 1px solid #FFFFFF; border-radius: 5px; background-color: #FFFFFF; color: #111111; font-size: 14px; font-weight: 600; letter-spacing: 0.5px; text-decoration: none; transition: transform 0.3s ease, box-shadow 0.3s ease; }

.charritte-quote-cta__button:hover { color: #111111; transform: translateY(-3px); box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15); }

/* ----------------------------------------------------------------------------- TABLETTE ----------------------------------------------------------------------------- */
@media (max-width: 992px) { .charritte-quote-cta { padding: 65px 25px; } .charritte-quote-cta__container { gap: 40px; } .charritte-quote-cta h2 { font-size: 34px; } .charritte-quote-cta__signature { font-size: 32px; } .charritte-quote-cta__button { min-width: 210px; } }

/* ----------------------------------------------------------------------------- MOBILE ----------------------------------------------------------------------------- */
@media (max-width: 700px) { .charritte-quote-cta { padding: 70px 20px; } .charritte-quote-cta__container { flex-direction: column; align-items: center; gap: 35px; text-align: center; } .charritte-quote-cta h2 { font-size: 31px; } .charritte-quote-cta__signature { font-size: 30px; } .charritte-quote-cta__text { font-size: 15px; } .charritte-quote-cta__button { min-width: 240px; } }

/* ----------------------------------------------------------------------------- BLOC SEO ----------------------------------------------------------------------------- */
.first-activity-div.shadow-lg { box-shadow: none !important; }

.second-activity-div.shadow-lg { box-shadow: none !important; }

.third-activity-div.shadow-lg { box-shadow: none !important; }

.first-activity-title, .second-activity-title, .third-activity-title { position: relative; }

.first-activity-title::after, .second-activity-title::after, .third-activity-title::after { content: ""; display: block; width: 150px; height: 1px; background-color: #E86608; margin-top: 15px; }

.fs-6.lead.mt-4.mb-4 { color: #4A4A4A; line-height: 1.8; font-weight: 400; }

.card.card-cover.h-100.overflow-hidden.rounded-4.shadow-lg { box-shadow: none !important; }

/* ----------------------------------------------------------------------------- GALERIE PHOTOS PLEINE LARGEUR ----------------------------------------------------------------------------- */
.charritte-gallery-strip, .charritte-gallery-strip * { box-sizing: border-box; }

/* --- SECTION --- */
.charritte-gallery-strip { width: 100%; background: #faf8f4; }

/* --- GRID --- */
.charritte-gallery-strip__grid { display: grid; grid-template-columns: repeat(4, 1fr); width: 100%; gap: 2px; }

/* --- IMAGE --- */
.charritte-gallery-strip__item { height: 320px; overflow: hidden; }

.charritte-gallery-strip__item img { display: block; width: 100%; height: 100%; object-fit: cover; }

/* --- TABLETTE --- */
@media (max-width: 992px) { .charritte-gallery-strip__grid { grid-template-columns: repeat(2, 1fr); } .charritte-gallery-strip__item { height: 350px; } }

/* --- MOBILE --- */
@media (max-width: 576px) { .charritte-gallery-strip__grid { grid-template-columns: 1fr; } .charritte-gallery-strip__item { height: 320px; } }

/* ----------------------------------------------------------------------------- CONTACT INTRO ----------------------------------------------------------------------------- */
.charritte-contact-intro, .charritte-contact-intro * { box-sizing: border-box; }

/* --- SECTION --- */
.charritte-contact-intro { padding: 100px 30px 10px; background-color: #FAF8F4; }

/* --- CONTAINER --- */
.charritte-contact-intro__container { max-width: 1000px; margin: 0 auto; text-align: center; }

/* --- TITLE --- */
.charritte-contact-intro__title { margin: 0 auto 30px; color: #111111; font-size: 38px; line-height: 1.1; text-transform: uppercase; }

/* --- SIGNATURE --- */
.charritte-contact-intro__signature { margin: -15px auto 35px; color: #E86608; font-size: 38px; line-height: 1.2; font-family: 'Parisienne'; }

/* --- TEXT --- */
.charritte-contact-intro__text { max-width: 850px; margin: 0 auto; color: #4A4A4A; font-size: 16px; line-height: 1.8; }

/* ----------------------------------------------------------------------------- MOBILE ----------------------------------------------------------------------------- */
@media (max-width: 576px) { .charritte-contact-intro { padding: 80px 20px 50px; } .charritte-contact-intro__title { font-size: 32px; } .charritte-contact-intro__signature { font-size: 30px; } .charritte-contact-intro__text { font-size: 16px; } }

/* ----------------------------------------------------------------------------- ZONE D'INTERVENTION ----------------------------------------------------------------------------- */
.charritte-zone, .charritte-zone * { box-sizing: border-box; }

/* --- SECTION --- */
.charritte-zone { padding: 120px 30px; background-color: #FFFFFF; }

/* --- CONTAINER --- */
.charritte-zone__container { width: 100%; max-width: 1250px; margin: 0 auto; }

/* --- GRID --- */
.charritte-zone__grid { display: grid; grid-template-columns: 0.95fr 1.05fr; gap: 80px; align-items: center; }

/* ----------------------------------------------------------------------------- VISUEL ----------------------------------------------------------------------------- */
.charritte-zone__visual { position: relative; padding: 0 0 45px 35px; }

.charritte-zone__visual::before { content: ""; position: absolute; left: 0; bottom: 0; width: 72%; height: 72%; background-color: #E86608; border-radius: 10px; opacity: 0.12; }

/* --- MAP --- */
.charritte-zone__map { position: relative; z-index: 1; min-height: 560px; overflow: hidden; border-radius: 10px; }

.charritte-zone__map iframe { display: block; width: 100%; height: 560px; border: 0; }

/* ----------------------------------------------------------------------------- CONTENT ----------------------------------------------------------------------------- */
.charritte-zone__content { padding-left: 10px; }

/* --- TITLE --- */
.charritte-zone__title { margin: 0 0 30px; color: #111111; font-size: 38px; line-height: 1.1; text-transform: uppercase; }

/* --- SIGNATURE --- */
.charritte-zone__signature { margin: -15px 0 35px; color: #E86608; font-size: 38px; line-height: 1.2; font-family: 'Parisienne'; }

/* --- TEXT --- */
.charritte-zone__text { margin-bottom: 42px; color: #4A4A4A; font-size: 17px; line-height: 1.8; }

/* ----------------------------------------------------------------------------- LOCALITÉS ----------------------------------------------------------------------------- */
.charritte-zone__areas { border-top: 1px solid rgba(17, 17, 17, 0.14); }

.charritte-zone__area { display: grid; grid-template-columns: 145px 1fr; gap: 25px; padding: 20px 0; border-bottom: 1px solid rgba(17, 17, 17, 0.14); }

.charritte-zone__area-label { color: #111111; font-size: 15px; font-weight: 600; text-transform: uppercase; letter-spacing: 1px; }

.charritte-zone__area-cities { color: #555555; font-size: 15px; line-height: 1.6; }

/* ----------------------------------------------------------------------------- TABLETTE ----------------------------------------------------------------------------- */
@media (max-width: 992px) { .charritte-zone { padding: 100px 25px; } .charritte-zone__grid { grid-template-columns: 1fr; gap: 70px; } .charritte-zone__visual { max-width: 720px; width: 100%; margin: 0 auto; } .charritte-zone__map, .charritte-zone__map iframe { min-height: 500px; height: 500px; } .charritte-zone__content { max-width: 820px; margin: 0 auto; padding-left: 0; text-align: center; } .charritte-zone__areas { text-align: left; } }

/* ----------------------------------------------------------------------------- MOBILE ----------------------------------------------------------------------------- */
@media (max-width: 576px) { .charritte-zone { padding: 80px 20px; } .charritte-zone__grid { gap: 55px; } .charritte-zone__visual { padding: 0 0 35px 15px; } .charritte-zone__map, .charritte-zone__map iframe { min-height: 390px; height: 390px; } .charritte-zone__badge { position: relative; right: auto; bottom: auto; width: calc(100% - 30px); margin: -45px auto 0; } .charritte-zone__title { font-size: 32px; } .charritte-zone__signature { font-size: 30px; } .charritte-zone__text { font-size: 16px; } .charritte-zone__area { grid-template-columns: 1fr; gap: 8px; padding: 18px 0; } }

/* ----------------------------------------------------------------------------- SERVICES ----------------------------------------------------------------------------- */
.charritte-services, .charritte-services * { box-sizing: border-box; }

/* --- SECTION --- */
.charritte-services { padding: 120px 30px; background-color: #FAF8F4; }

/* --- CONTAINER --- */
.charritte-services__container { width: 100%; max-width: 1250px; margin: 0 auto; }

/* --- HEADER --- */
.charritte-services__header { margin: 0 auto 70px; text-align: center; }

.charritte-services__title { margin: 0 auto 30px; color: #111111; font-size: 38px; line-height: 1.1; text-transform: uppercase; }

.charritte-services__signature { color: #E86608; font-size: 38px; line-height: 1.2; margin: -15px auto 0; font-family: 'Parisienne'; }

/* --- GRID --- */
.charritte-services__grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 34px; }

/* --- CARD --- */
.charritte-service-card { position: relative; min-height: 440px; display: flex; align-items: flex-end; overflow: hidden; border-radius: 10px; background-size: cover; background-position: center; }

/* --- OVERLAY --- */
.charritte-service-card__overlay { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(17, 17, 17, 0.25) 10%, rgba(17, 17, 17, 0.65) 50%, rgba(17, 17, 17, 0.88) 100%); }

/* --- CONTENT --- */
.charritte-service-card__content { position: relative; z-index: 2; width: 100%; padding: 42px; color: #FFFFFF; }

/* --- NUMBER --- */
.charritte-service-card__number { display: inline-block; margin-bottom: 14px; color: #E86608; font-size: 14px; letter-spacing: 2px; }

/* --- TITLE --- */
.charritte-service-card__content h3 { position: relative; margin: 0 0 20px; padding-bottom: 18px; color: #FFFFFF; font-size: 32px; line-height: 1.15; }

.charritte-service-card__content h3::after { content: ""; position: absolute; left: 0; bottom: 0; width: 46px; height: 1px; background-color: #E86608; }

/* --- TEXT --- */
.charritte-service-card__content > div { max-width: 500px; color: rgba(255, 255, 255, 0.9); font-size: 15px; line-height: 1.8; }

/* ----------------------------------------------------------------------------- TABLETTE ----------------------------------------------------------------------------- */
@media (max-width: 992px) { .charritte-services { padding: 100px 25px; } .charritte-services__title { font-size: 36px; } .charritte-services__signature { font-size: 34px; } .charritte-service-card { min-height: 400px; } .charritte-service-card__content { padding: 32px; } }

/* ----------------------------------------------------------------------------- MOBILE ----------------------------------------------------------------------------- */
@media (max-width: 700px) { .charritte-services { padding: 80px 20px; } .charritte-services__header { margin-bottom: 50px; } .charritte-services__title { font-size: 32px; } .charritte-services__signature { font-size: 30px; } .charritte-services__grid { grid-template-columns: 1fr; gap: 20px; } .charritte-service-card { min-height: 390px; } .charritte-service-card__content { padding: 28px; } .charritte-service-card__content h3 { font-size: 25px; } }

/* -----------------------------------------------------------------------------INTRODUCTION & VALEURS ----------------------------------------------------------------------------- */
.charritte-intro, .charritte-intro * { box-sizing: border-box; }

/* --- SECTION --- */
.charritte-intro { padding: 120px 30px; background-color: #fff; }

/* --- CONTAINER --- */
.charritte-intro__container { width: 100%; max-width: 1250px; margin: 0 auto; }

/* --- INTRODUCTION --- */
.charritte-intro__header { margin: 0 auto 80px; text-align: center; }

/* --- SIGNATURE --- */
.charritte-intro__signature { color: #E86608; font-size: 38px; line-height: 1.2; margin: -15px auto 35px; font-family: 'Parisienne'; }

.charritte-intro__title { margin: 0 auto 30px; color: #111111; font-size: 38px; line-height: 1.1; text-transform: uppercase; }

.charritte-intro__text { max-width: 1000px; margin: 0 auto; color: #4A4A4A; font-size: 17px; line-height: 1.8; }

/* ----------------------------------------------------------------------------- CARTES SOLUTIONS ----------------------------------------------------------------------------- */
.charritte-intro__values { display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; max-width: 1150px; margin: 100px auto 0; }

/* --- CARTE --- */
.charritte-value { position: relative; display: flex; flex-direction: column; height: 100%; padding: 65px 32px 38px; border: 1px solid rgba(17, 17, 17, 0.14); background-color: #FAF8F4; text-align: center; border-radius: 10px; }

/* --- ICÔNE RONDE --- */
.charritte-value__icon { position: absolute; top: -38px; left: 50%; transform: translateX(-50%); display: flex; align-items: center; justify-content: center; width: 80px; height: 80px; margin: 0; border-radius: 50%; background-color: #FFFFFF; color: #E86608; box-shadow: 0 8px 22px rgba(0, 0, 0, 0.12); }

.charritte-value__icon img { width: 55px; height: 55px; object-fit: contain; }

/* --- CONTENU --- */
.charritte-value__content { display: flex; flex-direction: column; height: 100%; }

/* --- TITRE --- */
.charritte-value__content h3 { position: relative; margin: 0 0 28px; padding-bottom: 22px; color: #111111; font-size: 28px; line-height: 1.2; padding-top: 10px; }

/* --- PETIT TRAIT ORANGE --- */
.charritte-value__content h3::after { content: ""; position: absolute; left: 50%; bottom: 0; width: 46px; height: 1px; background-color: #E86608; transform: translateX(-50%); }

/* --- TEXTE --- */
.charritte-value__content > div { color: #555555; font-size: 15px; line-height: 1.8; }

/* ----------------------------------------------------------------------------- TABLETTE ----------------------------------------------------------------------------- */
@media (max-width: 992px) { .charritte-intro { padding: 100px 25px; } .charritte-intro__title { font-size: 44px; } .charritte-intro__signature { font-size: 36px; } .charritte-intro__values { grid-template-columns: repeat(3, 1fr); gap: 18px; margin-top: 90px; } .charritte-value { padding: 65px 22px 35px; } .charritte-value__content h3 { font-size: 21px; } }

/* ----------------------------------------------------------------------------- MOBILE ----------------------------------------------------------------------------- */
@media (max-width: 700px) { .charritte-intro { padding: 80px 20px; } .charritte-intro__header { margin-bottom: 55px; } .charritte-intro__title { font-size: 37px; } .charritte-intro__text { font-size: 16px; line-height: 1.7; } .charritte-intro__values { grid-template-columns: 1fr; gap: 70px; margin-top: 70px; } .charritte-value { padding: 65px 24px 35px; } .charritte-value__icon { width: 88px; height: 88px; top: -44px; } .charritte-value__icon img { width: 38px; height: 38px; object-fit: contain; } .charritte-value__content h3 { font-size: 21px; margin-bottom: 28px; } .charritte-value__content > div { font-size: 14px; line-height: 1.8; } }

/* ----------------------------------------------------------------------------- HERO CHARRITTE ----------------------------------------------------------------------------- */
/* --- BASE --- */
.charritte-hero, .charritte-hero * { box-sizing: border-box; }

/* --- SECTION --- */
.charritte-hero { position: relative; height: 100vh; display: flex; align-items: center; background-size: cover; background-position: center; overflow: hidden; }

/* --- OVERLAY --- */
.charritte-hero__overlay { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(17, 17, 17, 0.78) 0%, rgba(17, 17, 17, 0.55) 45%, rgba(17, 17, 17, 0.25) 100%); }

/* --- CONTAINER --- */
.charritte-hero__container { position: relative; z-index: 2; width: 100%; max-width: 1250px; margin: auto; padding: 80px 30px; }

/* --- CONTENT --- */
.charritte-hero__content { max-width: 720px; }

/* --- SIGNATURE --- */
.charritte-hero__signature { color: #E86608; font-size: 40px; line-height: 1.2; margin: -15px 0 25px; font-family: 'Parisienne'; }

/* --- TITLE --- */
.charritte-hero__title { margin: 0 0 25px; color: #FFFFFF; font-size: 55px; line-height: 1.05; text-transform: uppercase; }

/* --- DESCRIPTION --- */
.charritte-hero__description { max-width: 600px; color: #FFFFFF; font-size: 18px; line-height: 1.7; margin-bottom: 40px; }

/* --- BUTTONS --- */
.charritte-hero__actions { display: flex; align-items: center; gap: 18px; }

.charritte-hero__button { display: inline-flex; align-items: center; justify-content: center; padding: 16px 32px; background-color: #E86608; color: #FFFFFF !important; text-decoration: none; border: 1px solid #E86608; transition: transform .3s ease, box-shadow .3s ease; border-radius: 5px; font-weight: 600 !important; }

.charritte-hero__button--outline { background-color: transparent; border-color: #FFFFFF; }

/* --- BUTTONS HOVER --- */
.charritte-hero__button:hover { transform: translateY(-5px); box-shadow: 0 10px 25px rgba(0, 0, 0, 0.18); color: #FFFFFF; }

.charritte-hero__button--outline:hover { background-color: transparent; color: #FFFFFF; }

/* ----------------------------------------------------------------------------- TABLETTE ----------------------------------------------------------------------------- */
@media (max-width: 992px) { .charritte-hero { min-height: 750px; } .charritte-hero__title { font-size: 56px; } }

@media (max-width: 992px) { .charritte-hero__signature { font-size: 36px; } }

@media (max-width: 576px) { .charritte-hero__signature { font-size: 32px; } }

/* ----------------------------------------------------------------------------- MOBILE ----------------------------------------------------------------------------- */
@media (max-width: 576px) { .charritte-hero { min-height: 700px; background-position: center; } .charritte-hero__container { padding: 60px 20px; } .charritte-hero__title { font-size: 42px; } .charritte-hero__description { font-size: 16px; } .charritte-hero__actions { flex-direction: column; align-items: stretch; } .charritte-hero__button { width: 100%; } }

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