@charset "UTF-8";
@import url(main.css);
/* ===================================================== API MENUISERIE - CUSTOM.CSS ===================================================== */
:root { --api-green: #21473f; --api-green-light: #1e9674; --api-anthracite: #2d2d2b; --api-grey-blue: #b8c4ca; --api-white: #ffffff; --api-cream: #f7f6f2; --api-shadow-sm: 0 2px 8px rgba(33,71,63,.10); --api-shadow-md: 0 6px 24px rgba(33,71,63,.13); --api-shadow-lg: 0 12px 40px rgba(33,71,63,.16); --api-radius: 10px; --api-radius-lg: 16px; --api-max-width: 1160px; --api-transition: 0.28s ease; }

*, *::before, *::after { box-sizing: border-box; }

img { max-width: 100%; height: auto; }

nav.breadcrumb.mb-0.fil-ariane.d-flex.justify-content-center.justify-content-lg-end.p-3 { display: none !important; }

/* ===================================================== Animation globale des boutons ===================================================== */
a.button_homepageScreen, a.button_homepageDoubleScreen, .button_homepageScreen, .button_homepageDoubleScreen, .button_header, .btn, .googleReviews-div .button_homepageScreen, .bloc-a7f3-facebook-link { transition: transform var(--api-transition), background-color var(--api-transition), color var(--api-transition), box-shadow var(--api-transition), opacity var(--api-transition); will-change: transform; }

a.button_homepageScreen:hover, a.button_homepageDoubleScreen:hover, .button_homepageScreen:hover, .button_homepageDoubleScreen:hover, .button_header:hover, .btn:hover, .googleReviews-div .button_homepageScreen:hover, .bloc-a7f3-facebook-link:hover { transform: translateY(-2px); }

/* ===================================================== Navbar - rendu uniforme toutes pages ===================================================== */
#navigation-bar-hide, .navbar.nav-fixed, .navbar.navbar-fixed-top { background-color: var(--api-white) !important; border-bottom: 1px solid rgba(33, 71, 63, 0.1); box-shadow: var(--api-shadow-sm); padding: 0 !important; min-height: 72px; backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); transition: background-color var(--api-transition), box-shadow var(--api-transition), top 0.4s ease, opacity 0.4s ease; }

/* Container navbar : même largeur sur accueil et pages internes */
#navigation-bar-hide .container-fluid, .navbar.nav-fixed .container-fluid, .navbar.navbar-fixed-top .container-fluid { width: 100%; max-width: var(--api-max-width); margin: 0 auto; padding: 10px 24px !important; }

/* Logo navbar desktop */
#navigation-bar-hide .logo_nav, .navbar.nav-fixed .logo_nav, .navbar.navbar-fixed-top .logo_nav { height: 50px; width: auto; object-fit: contain; display: block; }

/* Liens navbar */
#navigation-bar-hide .animated-border-button, .navbar.nav-fixed .animated-border-button, .navbar.navbar-fixed-top .animated-border-button { font-family: "Montserrat", sans-serif; font-size: 0.95rem; font-weight: 500; color: var(--api-anthracite) !important; transition: color var(--api-transition); }

#navigation-bar-hide .animated-border-button:hover, .navbar.nav-fixed .animated-border-button:hover, .navbar.navbar-fixed-top .animated-border-button:hover { color: var(--api-green-light) !important; }

/* Bouton téléphone uniforme */
#navigation-bar-hide .button_header.button-header-telephone, .navbar.nav-fixed .button_header.button-header-telephone, .navbar.navbar-fixed-top .button_header.button-header-telephone { background-color: var(--api-green) !important; color: var(--api-white) !important; font-family: "Montserrat", sans-serif; font-size: 0.78rem; font-weight: 800; letter-spacing: 0.03em; border: none !important; padding: 10px 20px !important; border-radius: 5px !important; white-space: nowrap; text-decoration: none !important; }

#navigation-bar-hide .button_header.button-header-telephone:hover, .navbar.nav-fixed .button_header.button-header-telephone:hover, .navbar.navbar-fixed-top .button_header.button-header-telephone:hover { background-color: var(--api-green-light) !important; color: var(--api-white) !important; transform: translateY(-1px); }

/* Masquer l’icône téléphone */
#navigation-bar-hide i.bi.bi-telephone.fs-6, .navbar.nav-fixed i.bi.bi-telephone.fs-6, .navbar.navbar-fixed-top i.bi.bi-telephone.fs-6 { display: none; }

/* Burger mobile */
#navigation-bar-hide .navbar-toggler, .navbar.nav-fixed .navbar-toggler, .navbar.navbar-fixed-top .navbar-toggler { border: 1px solid rgba(33, 71, 63, 0.2) !important; background-color: var(--api-white) !important; padding: 6px 10px; border-radius: var(--api-radius); }

.animated-border-button:after { background-color: #298c6d !important; }

/* ===================================================== Hero vidéo ===================================================== */
#fullHeight.video-background-holder { position: relative; width: 100%; height: 90vh; min-height: 520px; overflow: hidden; background-color: var(--api-green); }

#fullHeight .video-background-overlay { position: absolute; inset: 0; background: linear-gradient(160deg, rgba(33, 71, 63, 0.72) 0%, rgba(33, 71, 63, 0.55) 60%, rgba(45, 45, 43, 0.75) 100%); z-index: 1; }

#fullHeight .video-background-content { position: relative; z-index: 2; height: 100%; }

#fullHeight .image-video-logo { display: flex; align-items: center; justify-content: center; margin-bottom: 16px; }

#fullHeight .image-video-logo .fondDegradeLogo { width: clamp(120px, 22vw, 220px); height: auto; object-fit: contain; filter: drop-shadow(0 4px 20px rgba(0, 0, 0, 0.45)); animation: heroLogoIn 1s ease both; }

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

#fullHeight .videoTitle .titleText { font-family: "Montserrat", sans-serif; font-weight: 800; text-transform: uppercase; letter-spacing: 0.08em; font-size: clamp(1.2rem, 3vw, 2rem); color: var(--api-white) !important; text-shadow: 0 2px 10px rgba(0, 0, 0, 0.4); animation: heroLogoIn 1.2s ease 0.2s both; }

.videoTitle { width: 83% !important; }

#fullHeight .lottie-scroll { position: absolute; bottom: 24px; left: 50%; transform: translateX(-50%); width: 44px; z-index: 3; opacity: 0.75; }

a.button_homepageScreen { padding: 0.9em 2rem !important; border-radius: 5px !important; font-size: 1.2rem; }

/* ===================================================== Hero page interne - Menuiserie ===================================================== */
.bloc-r7n4-hero-menuiserie { width: 100%; min-height: 560px; height: 50vh; display: flex; align-items: center; justify-content: center; position: relative; overflow: hidden; background-size: cover; background-position: center center; background-repeat: no-repeat; }

.bloc-r7n4-hero-menuiserie-overlay { position: absolute; inset: 0; z-index: 1; background: linear-gradient(to top, rgba(24, 45, 35, 0.78) 0%, rgba(24, 45, 35, 0.58) 42%, rgba(24, 45, 35, 0.28) 75%, rgba(24, 45, 35, 0.12) 100%); }

.bloc-r7n4-hero-menuiserie-container { width: 90%; max-width: 1180px; margin: auto; position: relative; z-index: 2; }

.bloc-r7n4-hero-menuiserie-text { width: 100%; max-width: 980px; margin: 0 auto; text-align: center !important; text-shadow: 0 4px 18px rgba(0, 0, 0, 0.45); }

.bloc-r7n4-hero-menuiserie-title h1, .bloc-r7n4-hero-menuiserie-title h2, .bloc-r7n4-hero-menuiserie-title h3, .bloc-r7n4-hero-menuiserie-title p { margin: 0 0 24px; line-height: 1.05; letter-spacing: 1px; }

.bloc-r7n4-hero-menuiserie-description p, .bloc-r7n4-hero-menuiserie-description h2, .bloc-r7n4-hero-menuiserie-description h3 { max-width: 960px; margin: 0 auto; line-height: 1.55; }

/* ===================================================== API MENUISERIE - Pictos services pages internes Bloc : api-inner-services-icons ===================================================== */
.api-inner-services-icons { background-color: transparent !important; padding: 0px 20px !important; text-align: center; width: 100%; }

.api-inner-services-icons__container { max-width: 1160px; margin: 0 auto; }

.api-inner-services-icons__grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 24px; }

.api-inner-services-icons__item { display: flex; flex-direction: column; align-items: center; padding: 28px 18px; background-color: #ffffff; border-radius: 14px; box-shadow: 0 4px 18px rgba(33, 71, 63, 0.08); transition: transform 0.28s ease, box-shadow 0.28s ease; }

.api-inner-services-icons__item:hover { transform: translateY(-4px); box-shadow: 0 10px 28px rgba(33, 71, 63, 0.14); }

.api-inner-services-icons__icon { width: 52px; height: 52px; margin-bottom: 18px; display: flex; align-items: center; justify-content: center; }

.api-inner-services-icons__icon img { width: 100%; height: 100%; object-fit: contain; display: block; }

.api-inner-services-icons__title { margin-bottom: 10px; line-height: 1.3; text-align: center; }

.api-inner-services-icons__text { line-height: 1; margin: 0; text-align: center; }

/* Responsive */
@media (max-width: 1024px) { .api-inner-services-icons__grid { grid-template-columns: repeat(3, 1fr); gap: 22px; } }

@media (max-width: 768px) { .api-inner-services-icons { padding: 52px 16px !important; } .api-inner-services-icons__grid { grid-template-columns: repeat(2, 1fr); } .api-inner-services-icons__item { padding: 24px 16px; } }

@media (max-width: 480px) { .api-inner-services-icons__grid { grid-template-columns: 1fr; } .api-inner-services-icons__icon { width: 48px; height: 48px; } }

/* ===================================================== Présentation / CTA Banner ===================================================== */
.cta_banner { background-color: var(--api-cream) !important; padding: 64px 24px !important; }

.cta_banner .content { max-width: 1000px !important; margin: 0 auto; text-align: center; }

.cta_banner .content p, .cta_banner .content .lead { color: var(--api-anthracite); font-size: 1.05rem; line-height: 1.75; }

.cta_banner .content .d-flex, .cta_banner .content div:has(.button_homepageScreen), .cta_banner .content div:has(a.button_homepageScreen) { display: flex; justify-content: center; align-items: center; gap: 16px; flex-wrap: wrap; }

.cta_banner .button_homepageScreen, .cta_banner a.button_homepageScreen { display: inline-flex; align-items: center; justify-content: center; width: auto; min-width: 180px; margin: 0 !important; text-align: center; white-space: nowrap; }

/* ===================================================== Activités / Engagements ===================================================== */
.engagements-section { background-color: var(--api-cream) !important; background-image: none !important; background-attachment: unset !important; padding: 80px 24px !important; position: relative; }

.engagements-section .overlay { padding: 0 !important; background: none !important; max-width: var(--api-max-width); margin: 0 auto; }

.engagements-section .engagements-title { font-family: "Montserrat", sans-serif !important; font-weight: 800 !important; text-transform: uppercase !important; letter-spacing: 0.06em !important; color: var(--api-green) !important; font-size: clamp(1.4rem, 3vw, 2rem) !important; text-align: center; margin-bottom: 52px !important; position: relative; }

.engagements-section .engagements-title::after { content: ''; display: block; width: 52px; height: 3px; background-color: var(--api-green-light); border-radius: 2px; margin: 14px auto 0; }

.engagements-section .engagements-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; max-width: var(--api-max-width); margin: 0 auto; }

.engagements-section .card { background-color: var(--api-white) !important; background-image: none !important; border: none !important; border-radius: var(--api-radius-lg) !important; padding: 36px 20px 28px !important; box-shadow: var(--api-shadow-sm) !important; text-align: center; transition: transform var(--api-transition), box-shadow var(--api-transition); position: relative; overflow: hidden; }

.engagements-section .card::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 3px; background: linear-gradient(90deg, var(--api-green), var(--api-green-light)); border-radius: var(--api-radius-lg) var(--api-radius-lg) 0 0; opacity: 0; transition: opacity var(--api-transition); }

.engagements-section .card:hover { transform: translateY(-6px); box-shadow: var(--api-shadow-md) !important; }

.engagements-section .card:hover::before { opacity: 1; }

.engagements-section .card .card-content { position: relative; z-index: 1; }

.engagements-section .card h3, .engagements-section .card .card-content h3 { font-family: "Montserrat", sans-serif !important; font-weight: 700 !important; text-transform: uppercase !important; letter-spacing: 0.04em !important; color: var(--api-green) !important; font-size: 0.85rem !important; margin-bottom: 10px !important; }

.engagements-section .card p, .engagements-section .card .card-content p { color: var(--api-anthracite) !important; font-size: 0.88rem !important; line-height: 1.6 !important; }

.engagements-section .card i { font-size: 1.8rem; color: var(--api-green-light); margin-bottom: 14px; display: block; }

/* ===================================================== Galerie infinie ===================================================== */
.infinite-gallery { overflow: hidden; width: 100%; position: relative; margin: 80px 0 !important; padding: 0; }

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

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

.gallery-item img { max-height: 280px !important; aspect-ratio: 1 / 1; object-fit: cover; border-radius: var(--api-radius) !important; box-shadow: var(--api-shadow-sm); display: block; transition: box-shadow var(--api-transition), transform var(--api-transition); }

.gallery-item img:hover { box-shadow: var(--api-shadow-md); transform: scale(1.02); }

.lightbox { position: fixed; inset: 0; background: rgba(33, 71, 63, 0.93); 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; border-radius: var(--api-radius); object-fit: contain; box-shadow: 0 20px 60px rgba(0, 0, 0, 0.5); }

.lightbox-close { position: absolute; top: 20px; right: 28px; background: transparent; border: none; color: var(--api-cream); font-size: 40px; cursor: pointer; line-height: 1; opacity: 0.8; transition: opacity var(--api-transition); }

.lightbox-close:hover { opacity: 1; }

/* ===================================================== BLOC ZONE D'INTERVENTION ===================================================== */
.amz-zone { width: 100%; padding: 70px 20px; background: #ffffff; box-sizing: border-box; }

.amz-zone__container { max-width: 1400px; margin: 0 auto; display: grid; grid-template-columns: 1fr 1fr; gap: clamp(24px, 3vw, 50px); align-items: center; }

.amz-zone__image { width: 100%; height: clamp(420px, 42vw, 640px); overflow: hidden; display: flex; align-items: center; justify-content: center; }

.amz-zone__image img { width: 100%; height: 100%; object-fit: contain; display: block; }

.amz-zone__content { min-height: clamp(420px, 42vw, 640px); display: flex; flex-direction: column; justify-content: center; align-items: flex-start; padding-left: clamp(10px, 2vw, 30px); }

.amz-zone__title { margin: 0 0 22px 0; line-height: 1.1; font-weight: 600; color: #21473F; }

.amz-zone__description { margin: 0; max-width: 620px; color: #1a1a1a; line-height: 1.65; }

@media (max-width: 992px) { .amz-zone { padding: 55px 18px; } .amz-zone__container { grid-template-columns: 1fr; gap: 24px; } .amz-zone__image { height: 420px; } .amz-zone__content { min-height: auto; padding-left: 0; } }

@media (max-width: 600px) { .amz-zone { padding: 40px 15px; } .amz-zone__image { height: 300px; } .amz-zone__title { margin-bottom: 18px; } }

/* ===================================================== Sections SEO ===================================================== */
.first-activity-div, .second-activity-div, .third-activity-div { width: 100% !important; max-width: 100% !important; flex: 0 0 100% !important; margin-left: 0 !important; margin-right: 0 !important; border-radius: 0 !important; box-shadow: none !important; }

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

.first-activity-div > .row, .second-activity-div > .row, .third-activity-div > .row { max-width: var(--api-max-width); margin-left: auto !important; margin-right: auto !important; }

/* ===================================================== Avis Google ===================================================== */
.googleReviews-div { background-color: var(--api-cream); padding: 72px 0 80px; margin-bottom: 0 !important; }

.googleReviews-div .container > .card { background-color: var(--api-white) !important; border: none !important; border-radius: var(--api-radius-lg) !important; box-shadow: var(--api-shadow-md) !important; padding: 20px 28px !important; max-width: var(--api-max-width); margin: 0 auto 40px; }

.googleReviews-div .avatar-google-place { border: 2px solid var(--api-cream); box-shadow: var(--api-shadow-sm); }

.googleReviews-div h3 { font-family: "Montserrat", sans-serif; font-weight: 800; text-transform: uppercase; letter-spacing: 0.04em; color: var(--api-green); font-size: 1.1rem; margin-bottom: 4px; }

.googleReviews-div .star { color: var(--api-green-light) !important; font-size: 1rem; }

.googleReviews-div .button_homepageScreen { font-family: "Montserrat", sans-serif; font-weight: 700; font-size: 0.78rem; text-transform: uppercase; letter-spacing: 0.05em; background-color: var(--api-green) !important; color: var(--api-white) !important; padding: 10px 22px; border-radius: 50px; text-decoration: none; display: inline-flex; align-items: center; gap: 6px; transition: background-color var(--api-transition), transform var(--api-transition); border: none; white-space: nowrap; }

.googleReviews-div .button_homepageScreen:hover { background-color: var(--api-green-light) !important; transform: translateY(-1px); }

#google-reviews-widget { max-width: var(--api-max-width); margin: 0 auto; padding: 0 16px; }

#google-reviews-widget .card { background-color: var(--api-white) !important; border: none !important; border-radius: var(--api-radius) !important; box-shadow: var(--api-shadow-sm) !important; padding: 20px 16px !important; transition: box-shadow var(--api-transition); }

#google-reviews-widget .card:hover { box-shadow: var(--api-shadow-md) !important; }

.googleReviews-div .avatar-google-reviews { width: 36px; height: 36px; border-radius: 50%; object-fit: contain; margin-right: 10px; }

#google-reviews-widget .card-text { font-size: 0.88rem !important; line-height: 1.65; color: var(--api-anthracite); }

#google-reviews-widget .owl-nav button { background-color: var(--api-green) !important; color: var(--api-white) !important; border-radius: 50% !important; width: 36px; height: 36px; font-size: 1.2rem !important; transition: background-color var(--api-transition); }

#google-reviews-widget .owl-nav button:hover { background-color: var(--api-green-light) !important; }

/* ----------------------------------------------------------------------------- BLOC CONFIANCE & RESEAU ----------------------------------------------------------------------------- */
.amz-trust { width: 100%; padding: 70px 20px; background: #21473F; box-sizing: border-box; }

.amz-trust__container { max-width: 1200px; margin: 0 auto; }

.amz-trust__title { color: #ffffff; font-weight: 600; text-align: center; margin: 0 0 50px 0; }

/* ----------------------------------------------------------------------------- GRILLE ----------------------------------------------------------------------------- */
.amz-trust__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; }

.amz-trust__item { background: #ffffff; border-radius: 8px; padding: 35px 30px; display: flex; flex-direction: column; align-items: center; text-align: center; }

.amz-trust__logo { width: 100%; height: 100px; display: flex; align-items: center; justify-content: center; margin-bottom: 20px; }

.amz-trust__logo img { max-width: 100%; max-height: 100%; object-fit: contain; display: block; }

.amz-trust__text { color: #1a1a1a; line-height: 1.6; }

/* ----------------------------------------------------------------------------- RESPONSIVE ----------------------------------------------------------------------------- */
@media (max-width: 768px) { .amz-trust { padding: 50px 18px; } .amz-trust__title { margin-bottom: 35px; } .amz-trust__grid { grid-template-columns: 1fr; gap: 25px; } .amz-trust__item { padding: 30px 25px; } }

@media (max-width: 480px) { .amz-trust { padding: 40px 15px; } .amz-trust__logo { height: 80px; } }

/* ===================================================== Facebook - Bloc simple API Menuiserie ===================================================== */
.bloc-a7f3-bg { background-color: var(--api-green) !important; }

.bloc-a7f3-min-height { min-height: 420px; }

.bloc-a7f3-socials { margin: 4rem 0 !important; position: relative; overflow: hidden; display: flex; align-items: center; justify-content: center; padding: 96px 24px !important; }

.bloc-a7f3-background-opacity { position: absolute; inset: 0; background-position: center; background-size: cover; background-repeat: no-repeat; opacity: 0.12; z-index: 0; }

.bloc-a7f3-socials::before { content: ""; position: absolute; inset: 0; background: rgba(33, 71, 63, 0.88); z-index: 0; }

.bloc-a7f3-facebook-content { width: 100%; max-width: 980px; margin: 0 auto; display: flex; align-items: center; justify-content: center; min-height: inherit; position: relative; z-index: 1; }

.bloc-a7f3-titles, .bloc-a7f3-text { width: 100%; text-align: center; color: var(--api-white) !important; }

.bloc-a7f3-titles h1, .bloc-a7f3-titles h2, .bloc-a7f3-titles h3, .bloc-a7f3-titles h4, .bloc-a7f3-titles h5, .bloc-a7f3-titles h6 { margin: 0 0 28px !important; font-family: "Montserrat", sans-serif !important; font-size: clamp(2rem, 4vw, 4.3rem) !important; font-weight: 900 !important; line-height: 1.08 !important; letter-spacing: 0.04em !important; text-transform: uppercase !important; color: var(--api-white) !important; }

.bloc-a7f3-titles p, .bloc-a7f3-text p { max-width: 900px; margin: 0 auto 58px !important; font-size: clamp(1rem, 2vw, 1.45rem) !important; line-height: 1.5 !important; color: var(--api-white) !important; }

.bloc-a7f3-facebook-link { width: 112px; height: 112px; margin: 0 auto 22px; border-radius: 50%; background-color: var(--api-white); color: var(--api-green) !important; display: inline-flex; align-items: center; justify-content: center; text-decoration: none; box-shadow: 0 14px 34px rgba(0, 0, 0, 0.16); }

.bloc-a7f3-facebook-link i { font-size: 6.6rem; line-height: 0; }

.bloc-a7f3-facebook-link:hover { color: var(--api-green) !important; background-color: var(--api-cream); transform: translateY(-2px); box-shadow: 0 20px 45px rgba(0, 0, 0, 0.22); }

.bloc-a7f3-facebook-label { margin-top: 0.5rem; font-family: "Montserrat", sans-serif; font-size: clamp(1.1rem, 2vw, 1.65rem); font-weight: 700; color: var(--api-white); }

a.button_homepageDoubleScreen { background-color: #298c6d; border-radius: 5px; }

/* ===================================================== Footer ===================================================== */
.py-4.bg-thirdColor { padding: 0 !important; height: 4px; background: linear-gradient(90deg, var(--api-green), var(--api-green-light), var(--api-green)) !important; }

.bg-thirdColor { background-color: #21473f; padding-top: 3rem; }

.bg-thirdColor .text-color-third, .bg-thirdColor .text-color-third p, .bg-thirdColor .text-color-third a { color: rgba(247, 246, 242, 0.75) !important; }

.bg-thirdColor .text-color-third h5 { font-family: "Montserrat", sans-serif !important; font-weight: 700 !important; text-transform: uppercase !important; letter-spacing: 0.07em !important; font-size: 0.78rem !important; color: var(--api-cream) !important; margin-bottom: 16px !important; }

.bg-thirdColor .text-color-third p { font-size: 0.88rem; line-height: 1.7; }

.bg-thirdColor .footer-infos { color: rgba(247, 246, 242, 0.6) !important; font-size: 0.85rem; text-decoration: none; transition: color var(--api-transition); cursor: pointer; }

.bg-thirdColor .footer-infos:hover { color: var(--api-cream) !important; }

.bg-thirdColor .link-body-emphasis i { color: rgba(247, 246, 242, 0.7); font-size: 1.4rem; transition: color var(--api-transition), transform var(--api-transition); }

.bg-thirdColor .link-body-emphasis:hover i { color: var(--api-cream); transform: translateY(-2px); }

.bg-thirdColor .border-top { border-color: rgba(247, 246, 242, 0.15) !important; margin-top: 16px; }

.bg-thirdColor .small-font { font-size: 0.78rem !important; color: rgba(247, 246, 242, 0.45) !important; }

.bg-thirdColor .small-font a { opacity: 0.6; transition: opacity var(--api-transition); }

.bg-thirdColor .small-font a:hover { opacity: 1; }

.bg-thirdColor .bi-geo-alt, .bg-thirdColor .bi-telephone { color: var(--api-green-light) !important; margin-top: 3px; flex-shrink: 0; }

/* ===================================================== Responsive ===================================================== */
@media (max-width: 991px) { #fullHeight.video-background-holder { height: 80vh; } .engagements-section .engagements-cards { grid-template-columns: repeat(2, 1fr); } .engagements-section .engagements-cards .card:last-child { grid-column: 1 / -1; max-width: 420px; margin: 0 auto; width: 100%; } .first-activity-div, .second-activity-div, .third-activity-div { padding: 36px 24px !important; } .maps-section .map-content { min-height: 300px; } .gallery-item img { max-height: 220px !important; } #navigation-bar-hide .container-fluid, .navbar.nav-fixed .container-fluid, .navbar.navbar-fixed-top .container-fluid { padding: 8px 16px !important; } #navigation-bar-hide .logo_nav, .navbar.nav-fixed .logo_nav, .navbar.navbar-fixed-top .logo_nav { height: 44px; } }

@media (max-width: 900px) { .bloc-r7n4-hero-menuiserie { min-height: 460px; height: 62vh; } .bloc-r7n4-hero-menuiserie-container { width: 92%; } .bloc-r7n4-hero-menuiserie-title h1, .bloc-r7n4-hero-menuiserie-title h2, .bloc-r7n4-hero-menuiserie-title h3, .bloc-r7n4-hero-menuiserie-title p { margin-bottom: 18px; font-size: clamp(34px, 9vw, 54px); } .bloc-r7n4-hero-menuiserie-description p, .bloc-r7n4-hero-menuiserie-description h2, .bloc-r7n4-hero-menuiserie-description h3 { font-size: 17px; line-height: 1.6; } }

@media (max-width: 767px) { #fullHeight.video-background-holder { height: 70vh; min-height: 420px; } #fullHeight .image-video-logo .fondDegradeLogo { width: clamp(100px, 45vw, 160px); } .cta_banner { padding: 48px 20px !important; } .cta_banner .content .d-flex, .cta_banner .content div:has(.button_homepageScreen), .cta_banner .content div:has(a.button_homepageScreen) { flex-direction: column; gap: 12px; } .cta_banner .button_homepageScreen, .cta_banner a.button_homepageScreen { width: 100%; max-width: 280px; } .engagements-section .engagements-cards { grid-template-columns: 1fr; } .engagements-section .engagements-cards .card:last-child { grid-column: auto; max-width: 100%; } .engagements-section { padding: 60px 16px !important; } .engagements-section .engagements-title { margin-bottom: 36px !important; } .infinite-gallery { margin: 48px 0 !important; } .gallery-item img { max-height: 180px !important; } .maps-section .informations-list > .col-sm-12.col-lg-6.col-xl-4 { background-color: transparent !important; padding: 40px 24px !important; } .maps-section .map-content, .maps-section .map-content iframe { min-height: 260px; } .first-activity-div, .second-activity-div, .third-activity-div { padding: 28px 18px !important; margin-top: 28px !important; margin-bottom: 28px !important; } .googleReviews-div { padding: 52px 0 60px; } .googleReviews-div .container > .card { padding: 16px !important; } .logo-footer .logo_nav { height: 52px; } .bloc-a7f3-min-height { min-height: 420px; } .bloc-a7f3-socials { padding: 72px 20px !important; } .bloc-a7f3-titles h1, .bloc-a7f3-titles h2, .bloc-a7f3-titles h3, .bloc-a7f3-titles h4, .bloc-a7f3-titles h5, .bloc-a7f3-titles h6 { margin-bottom: 22px !important; font-size: clamp(1.8rem, 8vw, 2.8rem) !important; } .bloc-a7f3-titles p, .bloc-a7f3-text p { margin-bottom: 42px !important; font-size: 1rem !important; } .bloc-a7f3-facebook-link { width: 88px; height: 88px; } .bloc-a7f3-facebook-link i { font-size: 6.6rem; } }

@media (max-width: 576px) { .bloc-r7n4-hero-menuiserie { min-height: 420px; height: auto; padding: 110px 0 90px; } }

@media (max-width: 480px) { #fullHeight.video-background-holder { height: 65vh; } .engagements-section .card { padding: 28px 16px 22px !important; } .gallery-track { gap: 10px !important; } .gallery-item img { max-height: 140px !important; } #navigation-bar-hide .navbar-brand { flex-shrink: 0; } #navigation-bar-hide .logo_nav, .navbar.nav-fixed .logo_nav, .navbar.navbar-fixed-top .logo_nav { height: 38px; } #navigation-bar-hide .button_header.button-header-telephone { font-size: 0.72rem; padding: 7px 14px !important; } .maps-section .item-content { margin: 0 !important; } body > main > div.wrapper > div > div.maps-section.position-relative.bg-sixthColor > div.content-container.position-relative > div > div.col-sm-12.col-lg-6.col-xl-4.py-5.content.text-color-sixth > div.mb-4.text-center.display-6.titles > p > span:nth-child(2) { font-size: 0.8EM !important; } #google-reviews-widget { padding: 0 8px; } .bloc-a7f3-min-height { min-height: 420px; } .bloc-a7f3-socials { padding: 60px 18px !important; } .bloc-a7f3-titles h1, .bloc-a7f3-titles h2, .bloc-a7f3-titles h3, .bloc-a7f3-titles h4, .bloc-a7f3-titles h5, .bloc-a7f3-titles h6 { font-size: 1.7rem !important; } .bloc-a7f3-facebook-link { width: 78px; height: 78px; } .bloc-a7f3-facebook-link i { font-size: 3.2rem; } }

/* -------------------------------------------------------------------------- IMAGE - TAILLE - Présentation -------------------------------------------------------------------------- */
.phototext-media-col { display: flex; justify-content: center; }

.phototext-single-image { width: 80% !important; max-width: 500px !important; height: auto !important; display: block; }

/* -------------------------------------------------------------------------- TABLETTE -------------------------------------------------------------------------- */
@media (max-width: 991.98px) { .phototext-single-image { width: 75% !important; max-width: 450px !important; } }

/* -------------------------------------------------------------------------- MOBILE -------------------------------------------------------------------------- */
@media (max-width: 575.98px) { .phototext-single-image { width: 100% !important; max-width: 100% !important; } }

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