@charset "UTF-8";
@import url(main.css);
/* ========================================================= GAUTIER COUVERTURE STYLES COMMUNS AUX QUATRE PAGES ========================================================= */
#google-reviews-widget .owl-stage-outer { overflow: visible !important; }

#navbarSupportedContent > div > a.grow.button_header.text-color-fourth.mx-3.mx-lg-2.my-1.p-2.rounded-pill.text-decoration-none.button-header-telephone { padding: 16px 20px !important; }

/* ========================================================= BASE ========================================================= */
nav.navbar { max-width: 95%; margin: 10px auto; box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px; border-radius: 3px; }

nav.navbar li { letter-spacing: 1.3px; }

nav.navbar a.animated-border-button { font-size: 0.9rem !important; text-decoration: none; }

.navbar-brand { width: 10vw !important; }

@media screen and (max-width: 767px) { .navbar-brand { width: 50vw !important; } }

/* ========================================================= SOUS-MENUS NAVBAR ========================================================= */
.nav-dropdown { position: relative; }

/* Zone invisible entre le lien principal et le sous-menu */
.nav-dropdown::after { content: ""; position: absolute; left: 0; bottom: -15px; width: 100%; height: 20px; }

.nav-dropdown-toggle { display: flex; align-items: center; justify-content: center; gap: 7px; }

.nav-dropdown-toggle i { font-size: 11px; transition: transform 0.25s ease; }

.nav-dropdown:hover .nav-dropdown-toggle i { transform: rotate(180deg); }

.nav-dropdown-menu { position: absolute; top: calc(100% + 10px); left: 50%; min-width: 230px; padding: 8px; margin: 0; list-style: none; background: #ffffff; border-radius: 8px; box-shadow: 0 15px 40px rgba(0, 0, 0, 0.14); opacity: 0; visibility: hidden; pointer-events: none; transform: translateX(-50%) translateY(8px); transition: opacity 0.25s ease, transform 0.25s ease, visibility 0.25s ease; z-index: 9999; }

.nav-dropdown:hover .nav-dropdown-menu { opacity: 1; visibility: visible; pointer-events: auto; transform: translateX(-50%) translateY(0); }

.nav-dropdown-menu li { padding: 0; margin: 0; }

.nav-dropdown-menu a { display: block; width: 100%; padding: 11px 14px; color: #222222 !important; text-decoration: none; text-align: left; font-size: 0.9rem; border-radius: 5px; transition: background 0.2s ease, padding-left 0.2s ease, color 0.2s ease; }

.nav-dropdown-menu a:hover { background: #f3f3f3; padding-left: 18px; }

/* ========================================================= RESPONSIVE TABLETTE / MOBILE ========================================================= */
@media (max-width: 991px) { .nav-dropdown { width: 100%; } .nav-dropdown::after { display: none; } .nav-dropdown-toggle { width: 100%; } .nav-dropdown-menu { position: static; width: 100%; min-width: 0; margin-top: 10px; padding: 5px; background: rgba(255, 255, 255, 0.08); border-radius: 6px; box-shadow: none; opacity: 1; visibility: visible; pointer-events: auto; transform: none; display: none; } .nav-dropdown:hover .nav-dropdown-menu { display: block; transform: none; } .nav-dropdown-menu li { width: 100%; } .nav-dropdown-menu a { width: 100%; padding: 10px 14px; text-align: center; color: inherit !important; } .nav-dropdown-menu a:hover { padding-left: 14px; background: rgba(255, 255, 255, 0.08); } }

.spacer { display: none !important; }

.gautier-container { width: 88%; max-width: 1380px; margin-right: auto; margin-left: auto; }

.gautier-container--narrow { max-width: 1120px; }

.gautier-section { position: relative; padding: 125px 0; }

.gautier-section--light { background: #f8f7f4; }

.gautier-section--white { background: #ffffff; }

.gautier-section--dark { color: #ffffff; background: #302F2B; }

.gautier-section--dark h2, .gautier-section--dark h3, .gautier-section--dark h4 { color: #ffffff; }

.gautier-section--dark p { color: rgba(255, 255, 255, 0.77); }

.gautier-section--angled-top { margin-top: -65px; padding-top: 180px; clip-path: polygon(0 65px, 100% 0, 100% 100%, 0 100%); }

.gautier-section--angled-bottom { padding-bottom: 165px; clip-path: polygon(0 0, 100% 0, 100% calc(100% - 65px), 0 100%); }

.gautier-section--angled-both { margin-top: -65px; padding-top: 185px; padding-bottom: 175px; clip-path: polygon(0 65px, 100% 0, 100% calc(100% - 65px), 0 100%); }

.gautier-section--overlap { position: relative; z-index: 2; margin-top: -80px; }

.gautier-kicker { display: inline-flex; align-items: center; gap: 14px; margin-bottom: 20px; color: #AA800C; letter-spacing: 0.16em; text-transform: uppercase; }

.gautier-kicker::before { width: 34px; height: 1px; background: #cda434; content: ""; }

.gautier-kicker--light { color: #cda434; }

.gautier-title { max-width: 780px; margin-bottom: 24px; line-height: 1.12; }

.gautier-title--center { margin-right: auto; margin-left: auto; text-align: center; }

.gautier-description { max-width: 720px; margin-bottom: 0; line-height: 1.85; }

.gautier-description--center { margin-right: auto; margin-left: auto; text-align: center; }

.gautier-heading { margin-bottom: 62px; }

.gautier-heading--center { display: flex; flex-direction: column; align-items: center; text-align: center; }

.gautier-heading--between { display: flex; align-items: flex-end; justify-content: space-between; gap: 42px; }

.gautier-heading--between .gautier-description { max-width: 490px; }

.gautier-grid-2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 70px; align-items: center; }

.gautier-grid-3 { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; }

.gautier-grid-3.gautier-flex { display: flex; flex-wrap: wrap; justify-content: center; }

.gautier-grid-3.gautier-flex .gautier-service-card { width: 30% !important; }

@media screen and (max-width: 1000px) { .gautier-grid-3.gautier-flex .gautier-service-card { width: 40% !important; } }

@media screen and (max-width: 750px) { .gautier-grid-3.gautier-flex .gautier-service-card { width: 80% !important; } }

.gautier-grid-4 { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 25px; }

/* ========================================================= BOUTONS ET LIENS ========================================================= */
a.button_header, a.button_homepageScreen, a.button_homepageDoubleScreen, a.phone-number-button { color: #302F2B !important; background: #cda434 !important; transition: color 0.3s ease, background-color 0.3s ease, border-color 0.3s ease, transform 0.3s ease !important; gap: 13px !important; padding: 16px 26px !important; border-radius: 0 !important; }

.gautier-button { position: relative; display: inline-flex; min-height: 56px; align-items: center; justify-content: center; gap: 13px; padding: 16px 26px; overflow: hidden; border: 1px solid transparent; transition: color 0.3s ease, background-color 0.3s ease, border-color 0.3s ease, transform 0.3s ease; text-decoration: none; }

.gautier-button:hover { transform: translateY(-3px); }

.gautier-button--gold { color: #302F2B; background: #cda434; }

.gautier-button--gold:hover { color: #ffffff; background: #AA800C; }

.gautier-button--outline-light { color: #ffffff; border-color: rgba(255, 255, 255, 0.62); background: transparent; }

.gautier-button--outline-light:hover { color: #302F2B; border-color: #ffffff; background: #ffffff; }

.gautier-button--outline-dark { color: #302F2B; border-color: #302F2B; background: transparent; }

.gautier-button--outline-dark:hover { color: #ffffff; border-color: #302F2B; background: #302F2B; }

.gautier-button__arrow, .gautier-link__arrow { transition: transform 0.3s ease; }

.gautier-button:hover .gautier-button__arrow, .gautier-link:hover .gautier-link__arrow { transform: translateX(5px); }

.gautier-link { display: inline-flex; align-items: center; gap: 12px; color: #AA800C; transition: color 0.3s ease; text-decoration: none; }

.gautier-link:hover { color: #302F2B; }

.gautier-section--dark .gautier-link { color: #cda434; }

.gautier-section--dark .gautier-link:hover { color: #ffffff; }

/* ========================================================= HERO ACCUEIL ========================================================= */
.gautier-hero { position: relative; display: flex; min-height: 850px; align-items: center; overflow: hidden; color: #ffffff; background-color: #302F2B; background-position: center; background-repeat: no-repeat; background-size: cover; isolation: isolate; }

.hero-logo { position: absolute; max-width: 500px; right: 30px; top: 80px; }

/* ========================================================= VIDÉO ========================================================= */
.gautier-hero__video { position: absolute; z-index: -3; top: 50%; left: 50%; width: 100%; height: 100%; transform: translate(-50%, -50%); object-fit: cover; object-position: center; pointer-events: none; }

/* ========================================================= OVERLAY ========================================================= */
.gautier-hero__overlay { position: absolute; z-index: -2; inset: 0; background: linear-gradient(90deg, rgba(16, 24, 20, 0.88) 0%, rgba(16, 24, 20, 0.68) 48%, rgba(16, 24, 20, 0.24) 100%); pointer-events: none; }

.gautier-hero::after { position: absolute; right: 0; bottom: -1px; left: 0; height: 115px; background: #f8f7f4; clip-path: polygon(0 100%, 100% 36%, 100% 100%); content: ""; }

.gautier-hero__content { position: relative; z-index: 2; max-width: 780px; padding: 175px 0 200px; }

.gautier-hero__title h1 { max-width: 760px !important; margin-bottom: 25px !important; color: #ffffff !important; line-height: 0.9 !important; }

span[style*="Dynalight"] { margin-left: 8px !important; }

.gautier-hero__description { max-width: 650px; margin-bottom: 35px; color: rgba(255, 255, 255, 0.86); line-height: 1.9; }

.gautier-hero__actions { display: flex; flex-wrap: wrap; gap: 16px; }

.gautier-hero__signature { position: absolute; right: 6%; top: 50px; z-index: 2; display: flex; align-items: center; gap: 17px; color: rgba(255, 255, 255, 0.78); letter-spacing: 0.12em; text-transform: uppercase; }

.gautier-hero__signature::before { width: 55px; height: 1px; background: #cda434; content: ""; }

.gautier-hero__triangle { position: absolute; right: 8%; bottom: 110px; z-index: 1; width: 390px; height: 390px; border: 1px solid rgba(205, 164, 52, 0.47); clip-path: polygon(50% 0, 100% 100%, 0 100%); transform: rotate(-18deg); }

.gautier-hero__triangle::before { position: absolute; inset: 32px; border: 1px solid rgba(255, 255, 255, 0.2); clip-path: polygon(50% 0, 100% 100%, 0 100%); content: ""; }

/* ========================================================= HERO PAGES INTÉRIEURES ========================================================= */
.gautier-page-hero { position: relative; display: flex; min-height: 590px; align-items: center; overflow: hidden; color: #ffffff; background-color: #302F2B; background-position: center; background-repeat: no-repeat; background-size: cover; isolation: isolate; }

.gautier-page-hero::before { position: absolute; z-index: -1; inset: 0; background: linear-gradient(110deg, rgba(48, 47, 43, 0.96) 0%, rgba(48, 47, 43, 0.85) 43%, rgba(48, 47, 43, 0.42) 100%); content: ""; }

.gautier-page-hero::after { position: absolute; right: 0; bottom: -1px; left: 0; height: 92px; background: #f8f7f4; clip-path: polygon(0 76%, 100% 0, 100% 100%, 0 100%); content: ""; }

.gautier-page-hero__content { position: relative; z-index: 2; max-width: 850px; padding: 150px 0 165px; }

.gautier-page-hero__title { max-width: 840px; margin-bottom: 21px; color: #ffffff; line-height: 1.09; }

.gautier-page-hero__description { max-width: 720px; margin-bottom: 0; color: rgba(255, 255, 255, 0.84); line-height: 1.85; }

.gautier-page-hero__shape { position: absolute; top: 80px; right: 8%; width: 330px; height: 330px; border: 1px solid rgba(205, 164, 52, 0.44); clip-path: polygon(50% 0, 100% 100%, 0 100%); transform: rotate(16deg); }

/* ========================================================= MÉDIAS ET COMPOSITIONS VISUELLES ========================================================= */
.gautier-visual { position: relative; min-height: 610px; }

.gautier-visual__image { position: absolute; inset: 0 65px 65px 0; overflow: hidden; background-position: center; background-repeat: no-repeat; background-size: cover; clip-path: polygon(0 0, 100% 0, 100% 88%, 79% 100%, 0 100%); }

.gautier-visual__image--reverse { inset: 0 0 65px 65px; clip-path: polygon(0 0, 100% 0, 100% 100%, 20% 100%, 0 87%); }

.gautier-visual__accent { position: absolute; right: 0; bottom: 0; width: 230px; height: 230px; background: #cda434; clip-path: polygon(0 0, 100% 33%, 100% 100%, 33% 100%); }

.gautier-visual__accent--reverse { right: auto; left: 0; clip-path: polygon(0 33%, 100% 0, 67% 100%, 0 100%); }

.gautier-visual__detail { position: absolute; right: 35px; bottom: 35px; width: 250px; height: 250px; background-position: center; background-repeat: no-repeat; background-size: cover; clip-path: polygon(0 0, 100% 17%, 100% 100%, 18% 100%); }

.gautier-visual__detail--reverse { right: auto; left: 35px; clip-path: polygon(0 17%, 100% 0, 82% 100%, 0 100%); }

.gautier-visual__line { position: absolute; top: -24px; right: 30px; width: 170px; height: 170px; border-top: 1px solid #cda434; border-right: 1px solid #cda434; }

.gautier-editorial__text p { margin-bottom: 18px; line-height: 1.9; }

.gautier-editorial__text p:last-child { margin-bottom: 0; }

.gautier-editorial__actions { margin-top: 32px; }

.gautier-editorial__quote { margin-top: 33px; padding: 23px 0 23px 25px; border-left: 2px solid #cda434; color: #302F2B; line-height: 1.1; font-size: 3rem; }

/* ========================================================= CHIFFRES ET REPÈRES ========================================================= */
.gautier-stats { position: relative; z-index: 3; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); overflow: hidden; background: #ffffff; box-shadow: 0 22px 80px rgba(48, 47, 43, 0.08); }

.gautier-stat { position: relative; padding: 42px 36px; }

.gautier-stat + .gautier-stat::before { position: absolute; top: 30%; bottom: 30%; left: 0; width: 1px; background: rgba(48, 47, 43, 0.12); content: ""; }

.gautier-stat__value { display: block; margin-bottom: 9px; color: #AA800C; letter-spacing: 0.04em; font-family: 'Dynalight'; font-size: 2.5rem !important; }

.gautier-stat__label { display: block; color: rgba(48, 47, 43, 0.76); line-height: 1.65; }

/* ========================================================= CARTES SAVOIR-FAIRE ========================================================= */
.gautier-craft-card { position: relative; display: flex; min-height: 440px; align-items: flex-end; overflow: hidden; background-color: #302F2B; background-position: center; background-repeat: no-repeat; background-size: cover; isolation: isolate; }

.gautier-craft-card::before { position: absolute; z-index: -1; inset: 0; background: linear-gradient(180deg, rgba(48, 47, 43, 0.04) 12%, rgba(48, 47, 43, 0.45) 49%, rgba(48, 47, 43, 0.96) 100%); content: ""; }

.gautier-craft-card::after { position: absolute; top: 0; right: 0; width: 84px; height: 84px; background: rgba(205, 164, 52, 0.92); clip-path: polygon(100% 0, 100% 100%, 0 0); content: ""; }

.gautier-craft-card__content { position: relative; z-index: 2; padding: 35px; }

.gautier-craft-card__number { display: block; margin-bottom: 14px; color: #cda434; letter-spacing: 0.04em; font-family: 'Dynalight'; text-shadow: 4px 4px 10px rgba(0, 0, 0, 0.6); font-size: 2rem !important; }

.gautier-craft-card__title { margin-bottom: 12px; color: #ffffff; }

.gautier-craft-card__description { margin-bottom: 19px; color: rgba(255, 255, 255, 0.78); line-height: 1.75; }

.gautier-craft-card__link { color: #cda434; }

.gautier-craft-card__link:hover { color: #ffffff; }

/* ========================================================= PRESTATIONS / CARTES ÉDITORIALES ========================================================= */
.gautier-service-card { position: relative; min-height: 100%; padding: 38px 34px 42px; border: 1px solid rgba(48, 47, 43, 0.11); background: rgba(255, 255, 255, 0.74); }

.gautier-service-card::before { position: absolute; top: 0; left: 0; width: 58px; height: 58px; background: #cda434; clip-path: polygon(0 0, 100% 0, 0 100%); content: ""; }

.gautier-service-card__number { display: block; margin-bottom: 28px; padding-left: 38px; color: #AA800C; letter-spacing: 0.04em; font-family: 'Dynalight'; font-size: 2rem !important; }

.gautier-service-card__title { margin-bottom: 15px; }

.gautier-service-card__description { margin-bottom: 23px; color: rgba(48, 47, 43, 0.77); line-height: 1.8; }

/* ========================================================= BANDEAU PATRIMOINE ========================================================= */
.gautier-heritage { position: relative; overflow: hidden; }

.gautier-heritage__media { aspect-ratio: 1 / 1.5; height: 100%; margin: auto; max-height: 600px; clip-path: polygon(0 0, 100% 8%, 100% 92%, 0 100%); }

.gautier-heritage__video { position: absolute; top: 0; left: 0; display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; pointer-events: none; }

.gautier-heritage__content { position: relative; z-index: 2; max-width: 610px; padding: 60px 0; position: relative; overflow: hidden; }

.gautier-heritage__list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px 25px; margin: 30px 0 35px; padding: 0; list-style: none; }

.gautier-heritage__list li { position: relative; padding-left: 18px; color: rgba(255, 255, 255, 0.81); }

.gautier-heritage__list li::before { position: absolute; top: 8px; left: 0; width: 7px; height: 7px; background: #cda434; clip-path: polygon(50% 0, 100% 100%, 0 100%); content: ""; }

/* ========================================================= QUALIFICATIONS ========================================================= */
.gautier-grid-3.gautier-flex { display: flex; flex-wrap: wrap; justify-content: center; }

.gautier-grid-3.gautier-flex .gautier-qualification { width: 30% !important; }

@media screen and (max-width: 1000px) { .gautier-grid-3.gautier-flex .gautier-qualification { width: 40% !important; } }

@media screen and (max-width: 750px) { .gautier-grid-3.gautier-flex .gautier-qualification { width: 80% !important; } }

.gautier-qualification { position: relative; padding: 34px; border-top: 1px solid rgba(48, 47, 43, 0.14); }

.gautier-qualification__index { display: inline-block; margin-bottom: 20px; color: #AA800C; }

.gautier-qualification__title { margin-bottom: 12px; }

.gautier-qualification__title h3 { font-family: 'Dynalight'; font-size: 2.5rem !important; }

.gautier-qualification__description { margin-bottom: 0; color: rgba(48, 47, 43, 0.74); line-height: 1.75; }

/* ========================================================= CITATION / MANIFESTE ========================================================= */
.gautier-manifesto { position: relative; overflow: hidden; text-align: center; }

.gautier-manifesto__content { position: relative; z-index: 2; max-width: 920px; margin: 0 auto; }

.gautier-manifesto__quote { margin-bottom: 28px; color: #ffffff; line-height: 1; font-size: 3rem; font-family: 'Dynalight'; }

.gautier-manifesto__signature { color: #cda434; letter-spacing: 0.15em; text-transform: uppercase; }

.gautier-manifesto__shape { position: absolute; top: 50%; left: 50%; width: 470px; height: 390px; border: 1px solid rgba(205, 164, 52, 0.18); clip-path: polygon(50% 0, 100% 100%, 0 100%); transform: translate(-50%, -50%); }

/* ========================================================= CHRONOLOGIE ========================================================= */
.gautier-timeline { position: relative; max-width: 1120px; margin: 0 auto; }

.gautier-timeline::before { position: absolute; top: 0; bottom: 0; left: 50%; width: 1px; background: rgba(48, 47, 43, 0.2); content: ""; }

.gautier-timeline__item { position: relative; width: 50%; padding: 0 70px 80px 0; }

.gautier-timeline__item:nth-child(even) { margin-left: 50%; padding: 0 0 80px 70px; }

.gautier-timeline__item::before { position: absolute; top: 11px; right: -7px; width: 15px; height: 15px; background: #cda434; clip-path: polygon(50% 0, 100% 100%, 0 100%); content: ""; }

.gautier-timeline__item:nth-child(even)::before { right: auto; left: -7px; }

.gautier-timeline__year { display: inline-block; margin-bottom: 14px; color: #AA800C; letter-spacing: 0.12em; }

.gautier-timeline__title { margin-bottom: 14px; }

.gautier-timeline__description { margin-bottom: 0; color: rgba(48, 47, 43, 0.78); line-height: 1.85; }

/* ========================================================= VALEURS ========================================================= */
.gautier-value { position: relative; padding: 33px 0 33px 26px; border-left: 1px solid rgba(255, 255, 255, 0.2); }

.gautier-value__number { display: inline-block; margin-bottom: 20px; color: #cda434; font-family: 'Dynalight'; font-size: 2rem !important; }

.gautier-value__title { margin-bottom: 13px; }

.gautier-value__description { margin-bottom: 0; line-height: 1.8; }

/* ========================================================= DÉTAIL DES MATÉRIAUX ========================================================= */
.gautier-material { position: relative; padding: 85px 0; }

.gautier-material + .gautier-material::before { position: absolute; top: 0; right: 8%; left: 8%; height: 1px; background: rgba(48, 47, 43, 0.11); content: ""; }

.gautier-material__image { min-height: 490px; background-position: center; background-repeat: no-repeat; background-size: cover; clip-path: polygon(0 0, 100% 7%, 100% 100%, 0 92%); }

.gautier-material__image--reverse { clip-path: polygon(0 7%, 100% 0, 100% 92%, 0 100%); }

.gautier-material__content { max-width: 570px; }

.gautier-material__index { display: block; margin-bottom: 19px; color: #AA800C; font-family: 'Dynalight'; font-size: 2rem !important; }

.gautier-material__text p { margin-bottom: 16px; color: rgba(48, 47, 43, 0.79); line-height: 1.85; }

.gautier-material__text p:last-child { margin-bottom: 0; }

.gautier-material__features { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 26px; }

.gautier-material__feature { padding: 9px 13px; border: 1px solid rgba(48, 47, 43, 0.15); color: #302F2B; }

/* ========================================================= DÉTAIL DES SERVICES ========================================================= */
.gautier-service-detail { position: relative; padding: 100px 0; }

.gautier-service-detail__content { max-width: 590px; }

.gautier-service-detail__text p { margin-bottom: 18px; color: rgba(48, 47, 43, 0.78); line-height: 1.88; }

.gautier-service-detail__text p:last-child { margin-bottom: 0; }

.gautier-service-detail__image { min-height: 520px; background-position: center; background-repeat: no-repeat; background-size: cover; clip-path: polygon(0 0, 100% 6%, 100% 100%, 0 92%); }

.gautier-service-detail__image--reverse { clip-path: polygon(0 6%, 100% 0, 100% 92%, 0 100%); }

.gautier-checklist { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px 20px; margin: 26px 0 0; padding: 0; list-style: none; }

.gautier-checklist li { position: relative; padding-left: 17px; color: #302F2B; line-height: 1.65; }

.gautier-checklist li::before { position: absolute; top: 9px; left: 0; width: 7px; height: 7px; background: #cda434; clip-path: polygon(50% 0, 100% 100%, 0 100%); content: ""; }

.gautier-service-note { margin-top: 25px; padding: 18px 20px; border-left: 2px solid #cda434; background: rgba(205, 164, 52, 0.07); line-height: 1.75; }

/* ========================================================= PROCESSUS ========================================================= */
.gautier-process { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 30px; }

.gautier-process__item { position: relative; padding-top: 30px; border-top: 1px solid rgba(255, 255, 255, 0.25); }

.gautier-process__item::before { position: absolute; top: -6px; left: 0; width: 12px; height: 12px; background: #cda434; clip-path: polygon(50% 0, 100% 100%, 0 100%); content: ""; }

.gautier-process__number { display: block; margin-bottom: 18px; color: #cda434; font-family: 'Dynalight'; font-size: 2rem !important; }

.gautier-process__title { margin-bottom: 12px; }

.gautier-process__description { margin-bottom: 0; line-height: 1.8; }

/* ========================================================= APPEL À L’ACTION ========================================================= */
.gautier-cta { position: relative; overflow: hidden; background-position: center; background-repeat: no-repeat; background-size: cover; isolation: isolate; }

.gautier-cta::before { position: absolute; z-index: -1; inset: 0; background: linear-gradient(110deg, rgba(48, 47, 43, 0.96) 0%, rgba(48, 47, 43, 0.89) 50%, rgba(48, 47, 43, 0.72) 100%); content: ""; }

.gautier-cta__inner { display: flex; align-items: center; justify-content: space-between; gap: 45px; }

.gautier-cta__content { max-width: 780px; }

.gautier-cta__title { margin-bottom: 15px; color: #ffffff; }

.gautier-cta__description { margin-bottom: 0; color: rgba(255, 255, 255, 0.82); line-height: 1.8; }

.gautier-cta__actions { display: flex; flex-wrap: wrap; gap: 15px; flex-shrink: 0; }

.gautier-cta__shape { position: absolute; right: 18%; bottom: -170px; z-index: -1; width: 370px; height: 370px; border: 1px solid rgba(205, 164, 52, 0.35); clip-path: polygon(50% 0, 100% 100%, 0 100%); transform: rotate(-17deg); }

/* -------------------------------------------------------------------------- GALERIE D'IMAGES -------------------------------------------------------------------------- */
.custom-gallery-block { width: 100%; padding-top: 40px; }

.custom-gallery-block *, .custom-gallery-lightbox * { box-sizing: border-box; }

.custom-gallery-item { height: 400px !important; margin: 20px 0; }

.custom-gallery-card { position: relative; width: 100%; height: 100%; overflow: hidden; }

.custom-gallery-link { position: relative; display: block; width: 100%; height: 100%; overflow: hidden; text-decoration: none; cursor: pointer; }

.custom-gallery-image { display: block; width: 100% !important; height: 100% !important; object-fit: cover !important; transition: transform 0.6s ease; }

.custom-gallery-hover { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; color: #ffffff; background: rgba(0, 0, 0, 0.7); opacity: 0; transition: opacity 0.4s ease; }

.custom-gallery-hover i { color: #ffffff; font-size: 3em; transform: scale(0.85); transition: transform 0.4s ease; }

.custom-gallery-link:hover .custom-gallery-image, .custom-gallery-link:focus-visible .custom-gallery-image { transform: scale(1.04); }

.custom-gallery-link:hover .custom-gallery-hover, .custom-gallery-link:focus-visible .custom-gallery-hover { opacity: 1; }

.custom-gallery-link:hover .custom-gallery-hover i, .custom-gallery-link:focus-visible .custom-gallery-hover i { transform: scale(1); }

.custom-gallery-link:focus-visible { outline: 2px solid #ffffff; outline-offset: -6px; }

/* -------------------------------------------------------------------------- LIGHTBOX -------------------------------------------------------------------------- */
.custom-gallery-lightbox { position: fixed; inset: 0; z-index: 99999; display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; padding: 30px 80px; background: rgba(0, 0, 0, 0.9); opacity: 0; visibility: hidden; pointer-events: none; transition: opacity 0.3s ease, visibility 0.3s ease; -webkit-user-select: none; -moz-user-select: none; user-select: none; }

.custom-gallery-lightbox.is-open { opacity: 1; visibility: visible; pointer-events: auto; }

.custom-gallery-lightbox__visual { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; }

.custom-gallery-lightbox__image { display: block; width: auto; max-width: 1100px; width: 85%; height: auto; max-height: 88vh; margin: 0; object-fit: contain; box-shadow: 0 20px 60px rgba(0, 0, 0, 0.45); }

/* -------------------------------------------------------------------------- BOUTONS DE LA LIGHTBOX -------------------------------------------------------------------------- */
.custom-gallery-lightbox__button { position: absolute; z-index: 2; display: flex; align-items: center; justify-content: center; padding: 0; color: #ffffff; background: transparent; border: none; cursor: pointer; transition: opacity 0.3s ease, transform 0.3s ease; }

.custom-gallery-lightbox__button:hover { opacity: 0.7; }

.custom-gallery-lightbox__button:focus-visible { outline: 2px solid #ffffff; outline-offset: 5px; }

.custom-gallery-lightbox__previous, .custom-gallery-lightbox__next { top: 50%; width: 55px; height: 80px; font-size: 3em; transform: translateY(-50%); }

.custom-gallery-lightbox__previous { left: 20px; }

.custom-gallery-lightbox__next { right: 20px; }

.custom-gallery-lightbox__previous:hover { transform: translate(-4px, -50%); }

.custom-gallery-lightbox__next:hover { transform: translate(4px, -50%); }

.custom-gallery-lightbox__close { top: 15px; right: 15px; width: 55px; height: 55px; font-size: 3em; }

.custom-gallery-lightbox__counter { position: absolute; bottom: 18px; left: 50%; color: #ffffff; font-size: 14px; font-weight: 500; letter-spacing: 0.08em; transform: translateX(-50%); }

body.custom-gallery-lightbox-open { overflow: hidden; }

/* -------------------------------------------------------------------------- RESPONSIVE -------------------------------------------------------------------------- */
@media screen and (min-width: 991px) { .custom-gallery-block { padding: 10px 30px 100px; } }

@media screen and (max-width: 991px) { .custom-gallery-item { height: 350px !important; } }

@media screen and (max-width: 767px) { .custom-gallery-block { padding-top: 20px; } .custom-gallery-item { height: 300px !important; margin: 10px 0; } .custom-gallery-lightbox { padding: 60px 45px; } .custom-gallery-lightbox__image { max-width: 90vw; max-height: 80vh; } .custom-gallery-lightbox__previous, .custom-gallery-lightbox__next { width: 40px; height: 60px; font-size: 2em; } .custom-gallery-lightbox__previous { left: 2px; } .custom-gallery-lightbox__next { right: 2px; } .custom-gallery-lightbox__close { top: 5px; right: 5px; width: 45px; height: 45px; font-size: 2em; } }

@media screen and (max-width: 480px) { .custom-gallery-item { height: 260px !important; } }

/* ========================================================= BLOC LOCALISATION ========================================================= */
.gautier-map-section { position: relative; margin-top: -65px; padding: 190px 0 180px; overflow: hidden; color: #ffffff; background-color: #302f2b; background-position: center; background-repeat: no-repeat; background-size: cover; clip-path: polygon(0 65px, 100% 0, 100% 100%, 0 100%); }

.gautier-map-overlay { position: absolute; inset: 0; background: linear-gradient(100deg, rgba(48, 47, 43, 0.97) 0%, rgba(48, 47, 43, 0.91) 43%, rgba(48, 47, 43, 0.66) 100%); pointer-events: none; }

.gautier-map-section .gautier-container { position: relative; z-index: 1; }

/* ========================================================= GRILLE ========================================================= */
.gautier-map-grid { display: grid; grid-template-columns: 0.82fr 1.18fr; align-items: center; gap: 75px; }

/* ========================================================= CONTENU ========================================================= */
.gautier-map-content { position: relative; }

.gautier-map-title { max-width: 580px; margin-bottom: 24px; color: #ffffff; line-height: 1.12; }

.gautier-map-description { max-width: 590px; margin-bottom: 38px; color: rgba(255, 255, 255, 0.77); line-height: 1.85; }

/* ========================================================= COORDONNÉES ========================================================= */
.gautier-map-contact-list { display: grid; gap: 1px; max-width: 580px; margin-bottom: 40px; background: rgba(205, 164, 52, 0.28); }

.gautier-map-contact-item { display: flex; align-items: center; gap: 18px; min-height: 95px; padding: 20px 22px; background: rgba(48, 47, 43, 0.78); backdrop-filter: blur(5px); }

.gautier-map-contact-icon { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 48px; width: 48px; height: 48px; border: 1px solid rgba(205, 164, 52, 0.55); color: #cda434; }

.gautier-map-contact-icon i { line-height: 1; }

.gautier-map-contact-text { display: flex; flex-direction: column; gap: 6px; }

.gautier-map-contact-label { color: #cda434; letter-spacing: 0.13em; text-transform: uppercase; }

.gautier-map-contact-text address { margin: 0; color: #ffffff; font-style: normal; line-height: 1.55; }

.gautier-map-contact-text a { color: #ffffff; text-decoration: none; transition: color 0.3s ease; }

.gautier-map-contact-text a:hover { color: #cda434; }

/* ========================================================= BOUTONS ========================================================= */
.gautier-map-actions { display: flex; flex-wrap: wrap; gap: 14px; }

/* ========================================================= CARTE ========================================================= */
.gautier-map-frame { position: relative; height: 570px; margin-right: 18px; margin-bottom: 18px; background: #ffffff; box-shadow: 22px 22px 0 rgba(205, 164, 52, 0.82); }

.gautier-map-frame iframe { position: relative; z-index: 1; display: block; width: 100%; height: 100%; border: 0; }

.gautier-map-frame-accent { position: absolute; z-index: 2; top: 0; left: 0; width: 110px; height: 4px; background: #cda434; pointer-events: none; }

/* ========================================================= RESPONSIVE ========================================================= */
@media (max-width: 1199px) { .gautier-map-grid { gap: 50px; } .gautier-map-frame { height: 520px; } }

@media (max-width: 991px) { .gautier-map-section { padding-top: 165px; padding-bottom: 165px; } .gautier-map-grid { grid-template-columns: 1fr; gap: 55px; } .gautier-map-title, .gautier-map-description, .gautier-map-contact-list { max-width: 100%; } .gautier-map-frame { height: 480px; margin-right: 14px; margin-bottom: 14px; box-shadow: 14px 14px 0 rgba(205, 164, 52, 0.82); } }

@media (max-width: 767px) { .gautier-map-section { margin-top: -35px; padding: 125px 0 130px; clip-path: polygon(0 35px, 100% 0, 100% calc(100% - 35px), 68% 100%, 0 calc(100% - 12px)); } .gautier-map-grid { gap: 42px; } .gautier-map-description { margin-bottom: 30px; } .gautier-map-contact-list { margin-bottom: 32px; } .gautier-map-contact-item { min-height: 86px; padding: 17px; } .gautier-map-contact-icon { flex-basis: 43px; width: 43px; height: 43px; } .gautier-map-frame { height: 400px; } }

@media (max-width: 480px) { .gautier-map-actions { flex-direction: column; } .gautier-map-actions .gautier-button { width: 100%; } .gautier-map-frame { height: 350px; margin-right: 9px; margin-bottom: 9px; box-shadow: 9px 9px 0 rgba(205, 164, 52, 0.82); } }

/* ========================================================= FOURNISSEURS ========================================================= */
.gautier-suppliers { position: relative; padding: 100px 0; overflow: hidden; background: #f8f7f4; }

/* ========================================================= EN-TÊTE ========================================================= */
.gautier-suppliers-heading { max-width: 720px; margin-bottom: 48px; }

/* ========================================================= LISTE DES FOURNISSEURS ========================================================= */
.gautier-suppliers-list { display: flex; flex-wrap: wrap; align-items: stretch; gap: 16px; }

/* ========================================================= LOGO ========================================================= */
.gautier-supplier { display: flex; align-items: center; justify-content: center; flex: 1 1 190px; max-width: 230px; min-height: 135px; padding: 25px; border: 1px solid rgba(48, 47, 43, 0.1); background: #ffffff; }

.gautier-supplier img { display: block; width: 100%; max-width: 155px; height: 75px; object-fit: contain; filter: grayscale(1); opacity: 0.78; }

/* ========================================================= RESPONSIVE ========================================================= */
@media (max-width: 991px) { .gautier-suppliers { padding: 85px 0; } .gautier-supplier { flex-basis: 170px; max-width: none; } }

@media (max-width: 767px) { .gautier-suppliers { padding: 70px 0; } .gautier-suppliers-heading { margin-bottom: 36px; } .gautier-suppliers-list { gap: 12px; } .gautier-supplier { flex-basis: calc(50% - 6px); min-height: 115px; padding: 20px; } .gautier-supplier img { max-width: 130px; height: 65px; } }

@media (max-width: 480px) { .gautier-supplier { flex-basis: 100%; } }

/* ========================================================= ANIMATIONS DES ÉLÉMENTS GRAPHIQUES Aucun texte n’est masqué ou révélé en JavaScript. ========================================================= */
.gautier-graphic-reveal { opacity: 0; transform: translateY(35px); transition: opacity 0.85s ease, transform 0.85s ease; }

.gautier-graphic-reveal.is-visible { opacity: 1; transform: translateY(0); }

.gautier-graphic-reveal--left { transform: translateX(-45px); }

.gautier-graphic-reveal--right { transform: translateX(45px); }

.gautier-graphic-reveal--scale { transform: scale(0.9); }

.gautier-graphic-reveal--left.is-visible, .gautier-graphic-reveal--right.is-visible { transform: translateX(0); }

.gautier-graphic-reveal--scale.is-visible { transform: scale(1); }

.gautier-graphic-reveal--delay-1 { transition-delay: 0.12s; }

.gautier-graphic-reveal--delay-2 { transition-delay: 0.24s; }

.gautier-graphic-reveal--delay-3 { transition-delay: 0.36s; }

@media (prefers-reduced-motion: reduce) { .gautier-graphic-reveal, .gautier-graphic-reveal--left, .gautier-graphic-reveal--right, .gautier-graphic-reveal--scale { opacity: 1; transform: none; transition: none; } .gautier-button, .gautier-button__arrow, .gautier-link__arrow { transition: none; } }

/* ========================================================= RESPONSIVE : TABLETTES ========================================================= */
@media screen and (max-width: 1100px) { .gautier-container { width: 90%; } .gautier-grid-2 { gap: 45px; } .gautier-grid-3 { gap: 20px; } .gautier-grid-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px; } .gautier-hero { min-height: 760px; } .gautier-hero__triangle { right: 3%; width: 310px; height: 310px; } .gautier-visual { min-height: 540px; } .gautier-stat { padding: 35px 25px; } .gautier-craft-card { min-height: 410px; } .gautier-craft-card__content { padding: 28px; } .gautier-cta__inner { align-items: flex-start; flex-direction: column; } }

/* ========================================================= RESPONSIVE : PETITES TABLETTES ========================================================= */
@media screen and (max-width: 991px) { .gautier-section { padding: 95px 0; } .gautier-section--angled-top { padding-top: 150px; } .gautier-section--angled-bottom { padding-bottom: 140px; } .gautier-section--angled-both { padding-top: 150px; padding-bottom: 145px; } .gautier-grid-2 { grid-template-columns: 1fr; gap: 45px; } .gautier-grid-3 { grid-template-columns: repeat(2, minmax(0, 1fr)); } .gautier-heading--between { align-items: flex-start; flex-direction: column; gap: 18px; } .gautier-heading--between .gautier-description { max-width: 720px; } .gautier-hero { min-height: 730px; } .gautier-hero__signature { right: 5%; bottom: 150px; } .gautier-page-hero { min-height: 520px; } .gautier-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); } .gautier-stat:nth-child(3)::before { display: none; } .gautier-stat:nth-child(n + 3) { border-top: 1px solid rgba(48, 47, 43, 0.1); } .gautier-visual { min-height: 580px; } .gautier-heritage__media { min-height: 480px; } .gautier-heritage__content { padding: 0; } .gautier-material { padding: 65px 0; } .gautier-material__content, .gautier-service-detail__content { max-width: 760px; } .gautier-material__image, .gautier-service-detail__image { min-height: 450px; } .gautier-order-mobile-first { order: -1; } .gautier-process { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 45px 30px; } }

/* ========================================================= RESPONSIVE : MOBILES ========================================================= */
@media screen and (max-width: 767px) { .gautier-container { width: 88%; } .gautier-section { padding: 75px 0; } .gautier-section--angled-top { margin-top: -40px; padding-top: 115px; clip-path: polygon(0 40px, 100% 0, 100% 100%, 0 100%); } .gautier-section--angled-bottom { padding-bottom: 115px; clip-path: polygon(0 0, 100% 0, 100% calc(100% - 40px), 0 100%); } .gautier-section--angled-both { margin-top: -40px; padding-top: 120px; padding-bottom: 115px; clip-path: polygon(0 40px, 100% 0, 100% calc(100% - 40px), 0 100%); } .gautier-section--overlap { margin-top: -80px; } .gautier-grid-3, .gautier-grid-4 { grid-template-columns: 1fr; } .gautier-heading { margin-bottom: 42px; } .gautier-hero { min-height: 720px; } .gautier-hero::before { background: linear-gradient(90deg, rgba(48, 47, 43, 0.95) 0%, rgba(48, 47, 43, 0.82) 70%, rgba(48, 47, 43, 0.67) 100%); } .gautier-hero__content { padding: 145px 0 185px; } .gautier-hero__signature { display: none; } .gautier-hero__triangle { right: -80px; bottom: 95px; width: 250px; height: 250px; } .gautier-page-hero { min-height: 490px; } .gautier-page-hero__content { padding: 135px 0 150px; } .gautier-page-hero__shape { top: 110px; right: -95px; width: 240px; height: 240px; } .gautier-stats { grid-template-columns: 1fr; } .gautier-stat { padding: 27px 25px; } .gautier-stat + .gautier-stat { border-top: 1px solid rgba(48, 47, 43, 0.1); } .gautier-stat + .gautier-stat::before { display: none; } .gautier-visual { min-height: 470px; } .gautier-visual__image { inset: 0 38px 48px 0; } .gautier-visual__image--reverse { inset: 0 0 48px 38px; } .gautier-visual__accent { width: 155px; height: 155px; } .gautier-visual__detail { right: 20px; bottom: 20px; width: 130px; height: 130px; } .gautier-visual__detail--reverse { right: auto; left: 20px; } .gautier-craft-card { min-height: 410px; } .gautier-heritage__media { min-height: 370px; } .gautier-timeline::before { left: 10px; } .gautier-timeline__item, .gautier-timeline__item:nth-child(even) { width: 100%; margin-left: 0; padding: 0 0 55px 45px; } .gautier-timeline__item::before, .gautier-timeline__item:nth-child(even)::before { right: auto; left: 3px; } .gautier-material__image, .gautier-service-detail__image { min-height: 350px; } .gautier-service-detail { padding: 70px 0; } .gautier-cta__actions { width: 100%; } }

/* ========================================================= RESPONSIVE : PETITS MOBILES ========================================================= */
@media screen and (max-width: 480px) { .gautier-container { width: 86%; } .gautier-hero { min-height: 690px; } .gautier-hero__actions, .gautier-cta__actions { align-items: stretch; flex-direction: column; } .gautier-button { width: 100%; } .gautier-visual { min-height: 380px; } .gautier-visual__line { width: 110px; height: 110px; } .gautier-craft-card { min-height: 380px; } .gautier-craft-card__content { padding: 25px; } .gautier-service-card { padding: 33px 25px 35px; } .gautier-heritage__list, .gautier-checklist { grid-template-columns: 1fr; } .gautier-process { grid-template-columns: 1fr; gap: 35px; } .gautier-material__image, .gautier-service-detail__image { min-height: 285px; } .gautier-heritage__media { min-height: 300px; } .gautier-manifesto__shape { width: 290px; height: 260px; } }

/* ========================================================= BLOC INSTAGRAM ========================================================= */
div.instagramMiroir-div { position: relative !important; padding: 135px 30px !important; overflow: hidden !important; isolation: isolate !important; margin: 50px 0; }

/* ========================================================= SÉPARATIONS BISEAUTÉES ========================================================= */
div.instagramMiroir-div::before { position: absolute !important; z-index: 3 !important; top: -2px !important; left: 0 !important; width: 100% !important; height: 65px !important; background-color: #f8f7f4 !important; clip-path: polygon(0 0, 100% 0, 100% 0, 0 100%) !important; content: "" !important; pointer-events: none !important; }

div.instagramMiroir-div::after { position: absolute !important; z-index: 3 !important; right: 0 !important; bottom: -2px !important; width: 100% !important; height: 65px !important; background-color: #f8f7f4 !important; clip-path: polygon(100% 0, 100% 100%, 0 100%) !important; content: "" !important; pointer-events: none !important; }

/* ========================================================= CONTENU ========================================================= */
div.instagramMiroir-div > div.content-container { width: 100% !important; max-width: 1250px !important; margin: 0 auto !important; padding: 0 !important; }

div.instagramMiroir-div div.row { align-items: center !important; }

div.instagramMiroir-div div.col { padding: 25px !important; }

/* ========================================================= PUBLICATION INSTAGRAM ========================================================= */
div.instagramMiroir-div div.tac_socialsembeds { position: relative !important; }

div.instagramMiroir-div div.tac_socialsembeds::before { position: absolute !important; z-index: -1 !important; top: 5px !important; left: 5px !important; width: 90px !important; height: 90px !important; border-top: 2px solid #cda434 !important; border-left: 2px solid #cda434 !important; content: "" !important; }

div.instagramMiroir-div iframe.instagram-media { display: block !important; width: 100% !important; max-width: 540px !important; min-width: 0 !important; margin: 0 auto !important; border: 0 !important; border-radius: 0 !important; background-color: #ffffff !important; box-shadow: 18px 18px 0 rgba(205, 164, 52, 0.25) !important; }

/* ========================================================= TITRE ET TEXTE ========================================================= */
div.instagramMiroir-div div.titles { position: relative !important; width: 100% !important; max-width: 520px !important; padding: 35px !important; text-align: left !important; }

div.instagramMiroir-div div.titles::before { display: block !important; width: 65px !important; height: 2px !important; margin-bottom: 22px !important; background-color: #cda434 !important; content: "" !important; }

div.instagramMiroir-div div.titles h2 { margin: 0 0 22px !important; color: #ffffff !important; font-size: 44px !important; line-height: 1.15 !important; }

div.instagramMiroir-div div.titles p { max-width: 470px !important; margin: 0 !important; color: rgba(255, 255, 255, 0.78) !important; font-size: 17px !important; font-weight: 400 !important; line-height: 1.8 !important; }

/* ========================================================= RESPONSIVE ========================================================= */
@media (max-width: 991px) { div.instagramMiroir-div { padding: 120px 25px !important; } div.instagramMiroir-div div.col { padding: 20px !important; } div.instagramMiroir-div div.titles { max-width: 650px !important; padding: 20px 15px 45px !important; text-align: center !important; } div.instagramMiroir-div div.titles::before { margin-right: auto !important; margin-left: auto !important; } div.instagramMiroir-div div.titles p { max-width: 600px !important; margin-right: auto !important; margin-left: auto !important; } }

@media (max-width: 767px) { div.instagramMiroir-div { padding: 100px 15px !important; } div.instagramMiroir-div::before, div.instagramMiroir-div::after { height: 38px !important; } div.instagramMiroir-div div.col { padding: 15px 5px !important; } div.instagramMiroir-div div.titles { padding: 10px 10px 35px !important; } div.instagramMiroir-div div.titles h2 { font-size: 32px !important; } div.instagramMiroir-div div.titles p { font-size: 16px !important; } div.instagramMiroir-div iframe.instagram-media { box-shadow: 10px 10px 0 rgba(205, 164, 52, 0.25) !important; } }

/* ========================================================= FILTRES DES GALERIES ========================================================= */
.gautier-gallery-filters { display: flex; justify-content: center; flex-wrap: wrap; gap: 12px; max-width: 1200px; margin: 0 auto 45px; padding: 0 25px; }

.gautier-gallery-filter { display: inline-flex; align-items: center; justify-content: center; min-height: 52px; padding: 12px 24px; border: 1px solid #1d2b34; background-color: transparent; color: #1d2b34; cursor: pointer; text-align: center; font-size: 14px; font-weight: 600; line-height: 1.35; letter-spacing: 0.04em; transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease, transform 0.3s ease; }

.gautier-gallery-filter:hover, .gautier-gallery-filter.active { background-color: #1d2b34; border-color: #1d2b34; color: #ffffff; transform: translateY(-2px); }

.gautier-gallery-filter:focus-visible { outline: 2px solid #1d2b34; outline-offset: 4px; }

/* Animation d'apparition des galeries */
#gallery-ardoise, #gallery-zinc, #gallery-acier, #gallery-ornements { animation: gautierGalleryFade 0.45s ease; }

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

/* ========================================================= RESPONSIVE ========================================================= */
@media (max-width: 768px) { .gautier-gallery-filters { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-bottom: 35px; padding: 0 15px; } .gautier-gallery-filter { width: 100%; min-height: 58px; padding: 10px 12px; font-size: 12px; } }

@media (max-width: 480px) { .gautier-gallery-filters { grid-template-columns: 1fr; } .gautier-gallery-filter { min-height: 48px; } }

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