@charset "UTF-8";
@import url(main.css);
.navbar { opacity: 0; visibility: hidden; transform: translateY(-120%); transition: opacity 0.6s ease, transform 0.6s ease, visibility 0.6s ease; }

.navbar.scrolled { opacity: 1; visibility: visible; transform: translateY(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 { 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: "Les Chaboissières, 72430 Noyen-sur-Sarthe"; font-size: 16px; }

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

.card.card-cover.h-100.overflow-hidden.rounded-4.shadow-lg { border-radius: 0px !important; }

.mx-auto.col-lg-11.px-4.py-4.bg-primaryColor.text-color-primary.rounded-3.shadow-lg { border-radius: 0px !important; }

.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; }

.fs-6.lead.mt-4.mb-4 { color: #523039; font-size: 17px; line-height: 1.7; }

.spacer { display: none; }

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 { border-radius: 12px !important; }

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

/* ----------------------------------------------------------------------------- SEO ----------------------------------------------------------------------------- */
.fs-6.lead { color: #523039; font-size: 17px; line-height: 1.7; }

a.fw-light.grow.button_header.text-color-fourth.rounded-pill.p-2.text-decoration-none.all-activities-button { border-radius: 12px !important; }

a.button_homepageDoubleScreen.ctaLinks-button.text-color-fourth.p-3.fs-6.fw-bold.m-2 { border-radius: 12px; }

a.button_homepageDoubleScreen.first-banner-seo-page-button.text-color-fourth.p-3.fs-6.fw-bold.m-2 { border-radius: 12px; }

div#photo-text-seo-page-text p { font-size: 16px !important; }

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

a.p-3.fw-bold.fs-6.m-2.phone-number-button.text-decoration-none { background: #523039; color: white !important; border-radius: 12px !important; }

img.logo_nav.mx-2 { width: 110px; height: auto !important; }

/* ----------------------------------------------------------------------------- WRAPPER FORMULAIRE CONTACT JOUY CHRISTOPHE ----------------------------------------------------------------------------- */
/* --- BASE --- */
.jouy-contact-wrapper { position: relative; background: #ffffff; padding: 50px 30px; overflow: hidden; }

/* --- DECORATION --- */
.jouy-contact-wrapper__shape { position: absolute; border-radius: 50%; pointer-events: none; }

.jouy-contact-wrapper__shape--one { width: 350px; height: 350px; background: rgba(198, 139, 68, 0.12); top: -150px; left: -120px; }

.jouy-contact-wrapper__shape--two { width: 260px; height: 260px; background: rgba(82, 48, 57, 0.08); bottom: -120px; right: -100px; }

/* ----------------------------------------------------------------------------- HEADER PAGE JOUY CHRISTOPHE ----------------------------------------------------------------------------- */
/* --- BASE --- */
.jouy-page-header { position: relative; height: 420px; display: flex; align-items: center; justify-content: center; overflow: hidden; }

/* --- IMAGE --- */
.jouy-page-header__background { position: absolute; inset: 0; }

.jouy-page-header__background img { width: 100%; height: 100%; object-fit: cover; }

/* --- OVERLAY --- */
.jouy-page-header__overlay { position: absolute; inset: 0; background: #fbf6eceb; }

/* --- CONTENU --- */
.jouy-page-header__container { position: relative; z-index: 2; width: 100%; max-width: 1180px; padding: 40px 30px; }

.jouy-page-header__content { display: flex; align-items: center; justify-content: center; gap: 45px; }

/* --- LOGO --- */
.jouy-page-header__logo { width: 600px; }

.jouy-page-header__logo img { width: 100%; height: auto; display: block; }

/* --- SEPARATEUR --- */
.jouy-page-header__separator { width: 1px; height: 90px; background: #c68b44; }

/* --- TITRE --- */
.jouy-page-header__title { margin: 0; color: #523039; font-size: 48px; line-height: 1.2; }

/* --- TABLETTE --- */
@media (max-width: 991px) { .jouy-page-header { height: 350px; } .jouy-page-header__content { gap: 30px; } .jouy-page-header__logo { width: 210px; } .jouy-page-header__title { font-size: 38px; } }

/* --- MOBILE --- */
@media (max-width: 767px) { .jouy-page-header { height: auto; min-height: 350px; } .jouy-page-header__content { flex-direction: column; gap: 25px; text-align: center; } .jouy-page-header__separator { width: 70px; height: 1px; } .jouy-page-header__logo { width: 190px; } .jouy-page-header__title { font-size: 32px; } }

/* -----------------------------------------------------------------------------  GALERIE RÉALISATIONS JOUY CHRISTOPHE ----------------------------------------------------------------------------- */
/* --- BASE --- */
.jouy-gallery { position: relative; background: #ffffff; padding: 120px 30px; overflow: hidden; }

/* --- DECORATION --- */
.jouy-gallery__shape { position: absolute; border-radius: 50%; }

.jouy-gallery__shape--one { width: 320px; height: 320px; background: rgba(198, 139, 68, 0.12); top: -140px; left: -120px; }

.jouy-gallery__shape--two { width: 250px; height: 250px; background: rgba(82, 48, 57, 0.08); bottom: -120px; right: -100px; }

/* --- CONTAINER --- */
.jouy-gallery__container { position: relative; z-index: 2; max-width: 1200px; margin: auto; display: grid; grid-template-columns: 0.8fr 1.2fr; align-items: center; gap: 70px; }

/* --- CONTENU --- */
.jouy-gallery__content { max-width: 420px; }

.jouy-gallery__eyebrow { color: #c68b44; font-size: 14px; text-transform: uppercase; letter-spacing: 3px; margin-bottom: 20px; }

.jouy-gallery__title { margin: 0 0 25px; color: #523039; font-size: 42px; line-height: 1.2; }

.jouy-gallery__description { margin: 0 0 35px; color: #523039; font-size: 17px; line-height: 1.7; }

/* --- BOUTON --- */
.jouy-gallery__button { display: inline-flex; padding: 16px 32px; background: #523039; color: #ffffff !important; text-decoration: none; border-radius: 12px; transition: 0.3s ease; }

.jouy-gallery__button:hover { background: #c68b44; color: #ffffff !important; }

/* --- GALERIE --- */
.jouy-gallery__right { overflow: hidden; }

.infinite-gallery { overflow: hidden; width: 100%; position: relative; }

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

.gallery-item { flex: 0 0 auto; }

.gallery-item img { width: 280px; height: 320px; object-fit: cover; display: block; }

/* --- ANIMATION --- */
@keyframes scrollGallery { from { transform: translateX(0); }
  to { transform: translateX(-50%); } }

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

/* --- LIGHTBOX --- */
.lightbox { position: fixed; inset: 0; background: rgba(0, 0, 0, 0.9); display: flex; align-items: center; justify-content: center; padding: 40px; opacity: 0; pointer-events: none; transition: opacity 0.3s ease; z-index: 9999; }

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

.lightbox-image { max-width: 90vw; max-height: 90vh; object-fit: contain; }

.lightbox-close { position: absolute; top: 20px; right: 25px; background: none; border: none; color: #ffffff; font-size: 40px; cursor: pointer; }

/* --- TABLETTE --- */
@media (max-width: 991px) { .jouy-gallery__container { grid-template-columns: 1fr; gap: 50px; } .jouy-gallery__content { max-width: 100%; text-align: center; } .jouy-gallery__button { justify-content: center; } }

/* --- MOBILE --- */
@media (max-width: 767px) { .jouy-gallery { padding: 80px 25px; } .jouy-gallery__title { font-size: 32px; } .gallery-track { display: grid; grid-template-columns: repeat(2, 1fr); width: 100%; animation: none; gap: 12px; } .gallery-item img { width: 100%; height: auto; aspect-ratio: 1/1; } }

/* -----------------------------------------------------------------------------  PARTENAIRES JOUY CHRISTOPHE ----------------------------------------------------------------------------- */
/* --- BASE --- */
.jouy-partners { position: relative; background: #f3dfc8; padding: 90px 30px; }

/* --- CONTAINER --- */
.jouy-partners__container { max-width: 1100px; margin: auto; }

/* --- TITRE --- */
.jouy-partners__heading { max-width: 950px; margin: 0 auto 55px; text-align: center; }

.jouy-partners__eyebrow { color: #c68b44; font-size: 14px; text-transform: uppercase; letter-spacing: 3px; margin-bottom: 20px; }

.jouy-partners__title { margin: 0 auto 20px; max-width: 950px; color: #523039; font-size: 42px; line-height: 1.2; }

.jouy-partners__description { max-width: 680px; margin: auto; color: #523039; font-size: 18px; line-height: 1.6; }

/* --- LOGOS --- */
.jouy-partners__logos { display: flex; justify-content: center; align-items: center; gap: 40px; }

.jouy-partners__logo { width: 260px; height: 140px; display: flex; align-items: center; justify-content: center; transition: transform 0.35s ease, opacity 0.35s ease; }

.jouy-partners__logo img { max-width: 100%; max-height: 120px; object-fit: contain; transition: transform 0.35s ease; }

/* Ajustement logos horizontaux */
.jouy-partners__logo:nth-child(3) img { width: 520px !important; height: 260px !important; }

/* Ajustement logos carrés */
.jouy-partners__logo:nth-child(1) img, .jouy-partners__logo:nth-child(2) img { width: 150px; }

.jouy-partners__logo:hover { transform: scale(1.05); }

/* --- TABLETTE --- */
@media (max-width: 991px) { .jouy-partners__logos { gap: 50px; } .jouy-partners__logo { width: 180px; } .jouy-partners__title { font-size: 36px; } }

/* --- MOBILE --- */
@media (max-width: 767px) { .jouy-partners { padding: 70px 25px; } .jouy-partners__logos { flex-direction: column; gap: 35px; } .jouy-partners__title { font-size: 30px; } .jouy-partners__description { font-size: 17px; } }

/* -----------------------------------------------------------------------------  SERVICES JOUY CHRISTOPHE ----------------------------------------------------------------------------- */
/* --- BASE --- */
.jouy-services { position: relative; background: #c68b44; padding: 110px 30px; overflow: hidden; }

/* --- CONTAINER --- */
.jouy-services__container { position: relative; z-index: 2; max-width: 1200px; margin: auto; }

/* --- TITRE --- */
.jouy-services__heading { width: 100%; text-align: center; margin-bottom: 60px; }

.jouy-services__eyebrow { color: #f3dfc8; font-size: 14px; text-transform: uppercase; letter-spacing: 3px; margin-bottom: 20px; }

.jouy-services__title { width: 100%; max-width: 1000px; margin: 0 auto 20px; color: #fff; font-size: 44px; line-height: 1.2; }

.jouy-services__description { max-width: 550px; margin: auto; color: #ffffff; font-size: 18px; line-height: 1.6; }

/* --- GRILLE --- */
.jouy-services__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 25px; }

/* --- CARTES --- */
.jouy-services__card { position: relative; overflow: hidden; background: #ffffff; padding: 35px 30px; text-align: center; border: 1px solid rgba(82, 48, 57, 0.12); }

.jouy-services__card::before { content: ""; position: absolute; width: 130px; height: 130px; border-radius: 50%; background: rgba(198, 139, 68, 0.12); top: -55px; right: -55px; }

.jouy-services__card::after { content: ""; position: absolute; width: 90px; height: 90px; border-radius: 50%; background: rgba(243, 223, 200, 0.35); bottom: -40px; left: -30px; }

/* --- ICONES --- */
.jouy-services__icon { position: relative; z-index: 2; width: 75px; height: 75px; margin: 0 auto 25px; display: flex; align-items: center; justify-content: center; }

.jouy-services__icon img { width: 75px; height: 75px; object-fit: contain; }

/* --- CONTENU CARTES --- */
.jouy-services__card h3 { position: relative; z-index: 2; margin: 0 0 15px; color: #523039; font-size: 24px; }

.jouy-services__card p { position: relative; z-index: 2; margin: 0; color: #523039; font-size: 16px; line-height: 1.6; }

/* --- TABLETTE --- */
@media (max-width: 991px) { .jouy-services__grid { grid-template-columns: repeat(2, 1fr); } .jouy-services__title { font-size: 36px; } }

/* --- MOBILE --- */
@media (max-width: 767px) { .jouy-services { padding: 80px 25px; } .jouy-services__grid { grid-template-columns: 1fr; } .jouy-services__title { font-size: 30px; } .jouy-services__description { font-size: 17px; } }

/* ----------------------------------------------------------------------------- PRÉSENTATION JOUY CHRISTOPHE ----------------------------------------------------------------------------- */
/* --- BASE --- */
.jouy-about { position: relative; overflow: hidden; background: #ffffff; padding: 110px 30px; }

/* --- FORMES --- */
.jouy-about__shape { position: absolute; border-radius: 50%; }

.jouy-about__shape--one { width: 380px; height: 380px; background: rgba(198, 139, 68, 0.1); left: -150px; top: -100px; }

.jouy-about__shape--two { width: 250px; height: 250px; background: rgba(82, 48, 57, 0.08); right: -80px; bottom: -80px; }

/* --- CONTAINER --- */
.jouy-about__container { position: relative; z-index: 2; max-width: 1200px; margin: auto; display: flex; align-items: center; gap: 80px; }

/* --- IMAGES --- */
.jouy-about__images { position: relative; width: 50%; min-height: 520px; }

.jouy-about__image { position: absolute; overflow: hidden; }

.jouy-about__image img { width: 100%; height: 100%; object-fit: cover; }

.jouy-about__image--first { width: 55%; height: 430px; left: 0; top: 40px; }

.jouy-about__image--second { width: 55%; height: 430px; right: 0; bottom: 0; }

/* --- CONTENU --- */
.jouy-about__content { width: 50%; }

/* --- EYEBROW --- */
.jouy-about__eyebrow { color: #c68b44; text-transform: uppercase; letter-spacing: 3px; font-size: 14px; margin-bottom: 25px; }

/* --- TITRE --- */
.jouy-about__title { color: #523039; font-size: 42px; line-height: 1.2; margin: 0 0 30px; }

/* --- TEXTE --- */
.jouy-about__text { color: #523039; font-size: 17px; line-height: 1.7; }

.jouy-about__text p { margin-bottom: 18px; }

/* --- BOUTON --- */
.jouy-about__button { display: inline-flex; margin-top: 30px; padding: 15px 32px; background: #523039; color: #ffffff; border-radius: 12px; text-decoration: none; transition: 0.3s ease; }

.jouy-about__button:hover { background: #c68b44; }

/* --- TABLETTE --- */
@media (max-width: 991px) { .jouy-about__container { flex-direction: column; gap: 50px; } .jouy-about__images, .jouy-about__content { width: 100%; } }

/* --- MOBILE --- */
@media (max-width: 767px) { .jouy-about { padding: 80px 25px; } .jouy-about__images { min-height: 420px; } .jouy-about__image--first, .jouy-about__image--second { height: 330px; } .jouy-about__title { font-size: 32px; } }

/* -----------------------------------------------------------------------------  HERO JOUY CHRISTOPHE ----------------------------------------------------------------------------- */
/* --- BASE --- */
.jouy-hero { position: relative; height: 100vh; display: flex; align-items: center; justify-content: center; overflow: hidden; }

/* --- IMAGE --- */
.jouy-hero__background { position: absolute; inset: 0; }

.jouy-hero__background img { width: 100%; height: 100%; object-fit: cover; opacity: 0.18; }

/* --- OVERLAY --- */
.jouy-hero__overlay { position: absolute; inset: 0; background: #fbf6ecba; }

/* --- CONTENU --- */
.jouy-hero__container { position: relative; z-index: 2; width: 100%; max-width: 1100px; padding: 80px 30px; }

.jouy-hero__content { display: flex; flex-direction: column; align-items: center; text-align: center; }

/* --- LOGO --- */
.jouy-hero__logo { width: 400px; max-width: 85%; }

/* --- TITRE --- */
.jouy-hero__title { max-width: 850px; color: #523039; font-size: 45px; line-height: 1.25; }

/* --- AVANTAGES --- */
.jouy-hero__advantages { display: flex; justify-content: center; align-items: center; gap: 45px; margin-bottom: 45px; padding-top: 25px; border-top: 1px solid rgba(82, 48, 57, 0.15); }

.jouy-hero__advantage { display: flex; align-items: center; gap: 15px; }

.jouy-hero__icon { width: 38px; height: 38px; border-radius: 50%; display: flex; align-items: center; justify-content: center; background: #f3dfc8; color: #523039; font-size: 12px; font-weight: bold; border: 1px solid rgba(82, 48, 57, 0.12); }

.jouy-hero__advantage span { color: #523039; font-size: 18px; }

/* --- BOUTONS --- */
.jouy-hero__buttons { display: flex; justify-content: center; align-items: center; gap: 25px; }

.jouy-hero__button { text-decoration: none; transition: 0.3s ease; }

/* bouton principal */
.jouy-hero__button--primary { padding: 17px 35px; background: #523039; color: #fff !important; border-radius: 12px; }

.jouy-hero__button--primary:hover { background: #c68b44; }

/* bouton secondaire */
.jouy-hero__button--secondary { padding: 17px 10px; color: #523039; border-bottom: 2px solid #c68b44; }

.jouy-hero__button--secondary:hover { color: #c68b44; }

/* --- TABLETTE --- */
@media (max-width: 991px) { .jouy-hero__logo { width: 280px; } .jouy-hero__advantages { gap: 25px; } .jouy-hero__title { font-size: 36px; } }

/* --- MOBILE --- */
@media (max-width: 767px) { .jouy-hero { min-height: 850px; } .jouy-hero__advantages { flex-direction: column; gap: 20px; } .jouy-hero__buttons { flex-direction: column; width: 100%; } .jouy-hero__button--primary, .jouy-hero__button--secondary { width: 100%; } .jouy-hero__title { font-size: 30px; } }

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