@charset "UTF-8";
@import url(main.css);
.spacer { display: none; }

/*---------------------------Barre de navigation--------------------*/
nav.navbar { box-shadow: #00000038 0px 25px 20px -20px; }

.animated-border-button:after { background-color: #dddddd; }

/*******************************************AJUSTEMENTS SEO*********************************/
#navbarSupportedContent > ul > li.dropdown.px-4 > div > a:nth-child(1) { font-size: 0.8em !important; }

#navbarSupportedContent > ul > li.dropdown.px-4 > div > ul a { transition: all 0.5s ease; }

#navbarSupportedContent > ul > li.dropdown.px-4 > div > ul a:hover { color: black !important; }

#gautier-faq-preserved-answer-0 > div.col-lg-7.my-0.order-1.order-lg-1.order-xl-1.order-xxl-1 > div:nth-child(2) { font-size: 0.9rem !important; margin-top: 30px !important; }

#navbarSupportedContent > ul > li.dropdown.px-4 { display: none; }

/*--------------------------------------------------------------
Bannière accueil Pouessel
--------------------------------------------------------------*/
.pouessel-hero { position: relative; width: 100vw; min-height: 100vh; overflow: hidden; isolation: isolate; background: #061426; }

.pouessel-hero__bg { position: absolute; inset: 0; z-index: -3; background-size: cover; background-position: bottom center; background-repeat: no-repeat; }

.pouessel-hero__shade { position: absolute; inset: 0; z-index: -2; background: linear-gradient(107deg, #436785 0%, #112b41d6 22%, #06080a9e 48%, rgba(12, 104, 180, 0.12) 72%, rgba(12, 104, 180, 0) 100%); }

.pouessel-hero__content { position: relative; z-index: 3; min-height: 100vh; display: flex; align-items: center; padding-inline: 4vw; padding-block: 5rem; }

.pouessel-hero__text-zone { position: relative; width: 64%; max-width: 920px; padding: 3rem; color: #ffffff; background: transparent; }

.pouessel-hero__title-wrap h1 { margin: 0; font-size: 2.9rem; text-transform: uppercase; color: #ffffff; }

.pouessel-hero__desc-wrap { margin-top: 1.5rem; max-width: 54rem; text-shadow: 4px 4px 18px #10163dcf; }

.pouessel-hero__desc-wrap p { margin: 0; font-size: 1vw; line-height: 1.65; font-weight: 500; color: rgba(255, 255, 255, 0.94); }

.pouessel-hero__btn { position: relative; display: inline-flex; align-items: center; justify-content: center; gap: 0.85rem; margin-top: 2rem; padding-block: 1rem; padding-inline: 1.35rem; background: #9e8068; color: white; font-size: 0.85rem; font-weight: 700; text-transform: uppercase; text-decoration: none; letter-spacing: 0.03em; border-radius: 0; overflow: hidden; transition: color 0.35s ease, transform 0.35s ease; }

.pouessel-hero__btn::before { content: ""; position: absolute; inset: 0; background: #2472A4; transform: translateX(-101%); transition: transform 0.35s ease; z-index: 0; }

.pouessel-hero__btn span, .pouessel-hero__btn svg { position: relative; z-index: 1; }

.pouessel-hero__btn svg { width: 1.25rem; height: 1.25rem; fill: none; stroke: currentColor; stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; transition: transform 0.35s ease; }

.pouessel-hero__btn:hover { color: #ffffff; transform: translateY(-0.2rem); }

.pouessel-hero__btn:hover::before { transform: translateX(0); }

.pouessel-hero__btn:hover svg { transform: translateX(0.35rem); }

/* Vagues bas de bannière */
.pouessel-hero__wave { position: absolute; left: 0; right: 0; bottom: 0; height: 24vh; z-index: 2; pointer-events: none; overflow: hidden; }

.pouessel-hero__wave-grey { position: absolute; left: -8vw; bottom: -8vh; width: 120vw; height: 18vh; background: linear-gradient(135deg, #061426 0%, #88b4d0 68%, #2472a4 100%); border-radius: 50% 50% 0 0; transform: rotate(358deg); }

.pouessel-hero__wave-yellow { position: absolute; left: -10vw; bottom: -5vh; width: 95vw; height: 13vh; background: #9e8068; border-radius: 50% 50% 0 0; transform: rotate(-5deg); }

.pouessel-hero__slashes { position: absolute; right: 6vw; bottom: 6.5vh; display: flex; gap: 0.7rem; z-index: 3; }

.pouessel-hero__slashes span { display: block; width: 1.2rem; height: 3.2rem; background: #F8CA00; transform: skewX(-22deg); }

/* Responsive tablette */
@media screen and (max-width: 1024px) { .pouessel-hero__text-zone { width: 58%; max-width: none; } .pouessel-hero__desc-wrap p { font-size: 1.6vw; } }

/* Responsive mobile */
@media screen and (max-width: 768px) { .pouessel-hero__content { align-items: flex-start; padding-inline: 5vw; padding-block: 8rem; } .pouessel-hero__text-zone { width: 84%; max-width: none; padding: 2rem; } .pouessel-hero__desc-wrap p { font-size: 2.4vw; } .pouessel-hero__wave { height: 18vh; } }

@media screen and (max-width: 560px) { .pouessel-hero__content { padding-inline: 4vw; padding-block: 6rem; } .pouessel-hero__text-zone { width: 92%; max-width: none; padding: 1.5rem; } .pouessel-hero__desc-wrap p { font-size: 4vw; } .pouessel-hero__btn { width: 100%; } .pouessel-hero__slashes { right: 5vw; bottom: 5vh; } .pouessel-hero__slashes span { width: 0.9rem; height: 2.4rem; } }

/********************************************3 icones****************************************/
.pouessel-services { position: relative; z-index: 4; width: 100%; background: #ffffff; padding-block: 4rem; padding-inline: 6vw; overflow: hidden; }

.pouessel-services::before { content: ""; position: absolute; left: 0; top: 0; width: 100%; height: 0.35rem; background: linear-gradient(90deg, #2472A4 0%, #2472A4 38%, #F8CA00 38%, #F8CA00 56%, #c6c6c6 56%, #c6c6c6 100%); }

.pouessel-services__inner { display: grid; grid-template-columns: repeat(3, 1fr); gap: 3vw; margin-inline: auto; }

.pouessel-services__card { position: relative; display: grid; grid-template-columns: auto 1fr; padding: 2rem; background-position: center; background-repeat: no-repeat; min-height: 500px; border-radius: 10%; align-content: center; background-size: contain; border-left: 0.25rem solid transparent; transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease; }

.pouessel-services__card::before { content: ""; position: absolute; inset: 0; background: linear-gradient(135deg, rgba(12, 104, 180, 0.08) 0%, rgba(12, 104, 180, 0) 58%); opacity: 0; transition: opacity 0.35s ease; pointer-events: none; }

.pouessel-services__card:hover { transform: translateY(-0.4rem); box-shadow: 0 1.5rem 3rem rgba(6, 20, 38, 0.12); border-color: #F8CA00; }

.pouessel-services__card:hover::before { opacity: 1; }

.pouessel-services__icon { position: relative; width: 6.5rem; height: 6.5rem; display: flex; align-items: center; justify-content: center; }

.pouessel-services__icon::before { content: ""; position: absolute; inset: 0; background: rgba(12, 104, 180, 0.08); transform: skewX(-10deg); transition: background 0.35s ease, transform 0.35s ease; }

.pouessel-services__card:hover .pouessel-services__icon::before { background: rgba(234, 201, 39, 0.22); transform: skewX(-10deg) scale(1.08); }

.pouessel-services__icon img { position: relative; z-index: 1; width: 4.2rem; height: 4.2rem; object-fit: contain; transition: transform 0.35s ease; }

.pouessel-services__card:hover .pouessel-services__icon img { transform: translateY(-0.25rem); }

.pouessel-services__content { position: relative; z-index: 1; border-left: 5px solid #2472a4; padding-left: 20px; }

.pouessel-services__title { color: #2472A4; margin-top: 20px; font-weight: 700 !important; text-transform: uppercase; line-height: 1.15; }

.pouessel-services__text { margin-top: 0.8rem; color: rgba(6, 20, 38, 0.78); line-height: 1.55; }

.pouessel-services__link { position: relative; display: inline-flex; align-items: center; gap: 0.55rem; margin-top: 1.2rem; color: #2472A4; font-weight: 800; text-transform: uppercase; text-decoration: none; letter-spacing: 0.03em; transition: color 0.35s ease; }

.pouessel-services__link::after { content: ""; position: absolute; left: 0; bottom: -0.25rem; width: 100%; height: 0.12rem; background: #F8CA00; transform: scaleX(0); transform-origin: left; transition: transform 0.35s ease; }

.pouessel-services__link svg { width: 1rem; height: 1rem; fill: none; stroke: currentColor; stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; transition: transform 0.35s ease; }

.pouessel-services__link:hover { color: #071b2f; }

.pouessel-services__link:hover::after { transform: scaleX(1); }

.pouessel-services__link:hover svg { transform: translateX(0.35rem); }

/* Responsive tablette */
@media screen and (max-width: 1024px) { .pouessel-services__inner { grid-template-columns: 1fr; gap: 1.5rem; } .pouessel-services__card { grid-template-columns: auto 1fr; min-height: 200px; } }

/* Responsive mobile */
@media screen and (max-width: 560px) { .pouessel-services { padding-block: 3rem; padding-inline: 4vw; } .pouessel-services__card { grid-template-columns: 1fr; gap: 1rem; padding: 1.5rem; } .pouessel-services__icon { width: 4rem; height: 4rem; } .pouessel-services__icon img { width: 2.8rem; height: 2.8rem; } }

/********************************************************PARAGRAPHE*****************************************/
.pouessel-presentation { position: relative; overflow: hidden; background: linear-gradient(135deg, #061426 0%, #88b4d0 68%, #2472a4 100%); color: #ffffff; padding-block: 7rem; padding-inline: 6vw; }

.pouessel-presentation::before { content: ""; position: absolute; left: -12vw; bottom: -12vh; width: 70vw; height: 28vh; background: #c6c6c6; border-radius: 50% 50% 0 0; transform: rotate(-5deg); opacity: 0.18; pointer-events: none; }

.pouessel-presentation::after { content: ""; position: absolute; left: -10vw; bottom: -16vh; width: 58vw; height: 23vh; background: #F8CA00; border-radius: 50% 50% 0 0; transform: rotate(-6deg); opacity: 0.9; pointer-events: none; }

.pouessel-presentation__inner { position: relative; z-index: 2; display: grid; grid-template-columns: 1fr 1fr; gap: 5vw; align-items: center; max-width: 1280px; margin-inline: auto; }

.pouessel-presentation__content { position: relative; z-index: 2; }

.pouessel-presentation__kicker { display: inline-flex; align-items: center; gap: 0.8rem; margin-bottom: 1.2rem; color: #F8CA00; font-weight: 800; text-transform: uppercase; letter-spacing: 0.08em; }

.pouessel-presentation__kicker::before { content: ""; display: block; width: 2.8rem; height: 0.18rem; background: #F8CA00; }

.pouessel-presentation__title { color: #ffffff; font-weight: 700 !important; text-transform: uppercase; line-height: 1.08; text-shadow: 4px 4px 18px rgba(0, 0, 0, 0.35); }

.pouessel-presentation__text { margin-top: 1.6rem; max-width: 42rem; color: rgba(255, 255, 255, 0.9); line-height: 1.75; }

.pouessel-presentation__visual { position: relative; }

.pouessel-presentation__image-wrap { position: relative; overflow: hidden; background: #ffffff; box-shadow: 0 2rem 4rem rgba(0, 0, 0, 0.26); }

.pouessel-presentation__image-wrap::before { content: ""; position: absolute; inset: 1rem; border: 0.15rem solid rgba(234, 201, 39, 0.75); z-index: 2; pointer-events: none; }

.pouessel-presentation__image-wrap::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(6, 20, 38, 0.22) 0%, rgba(6, 20, 38, 0) 55%); z-index: 1; pointer-events: none; }

.pouessel-presentation__image-wrap img { display: block; width: 100%; height: 32rem; object-fit: cover; transition: transform 0.45s ease; }

.pouessel-presentation__visual:hover .pouessel-presentation__image-wrap img { transform: scale(1.04); }

.pouessel-presentation__slashes { position: absolute; right: -1.8rem; bottom: -1.6rem; display: flex; gap: 0.7rem; z-index: 3; }

.pouessel-presentation__slashes span { display: block; width: 1.2rem; height: 4rem; background: #F8CA00; transform: skewX(-22deg); }

.pouessel-presentation__decor { position: absolute; pointer-events: none; opacity: 0.16; }

.pouessel-presentation__decor--one { top: 5rem; right: 6vw; width: 10rem; height: 10rem; background: linear-gradient(#ffffff, #ffffff) 0 0/30% 30% no-repeat, linear-gradient(#ffffff, #ffffff) 50% 0/30% 30% no-repeat, linear-gradient(#F8CA00, #F8CA00) 50% 50%/30% 30% no-repeat, linear-gradient(#ffffff, #ffffff) 100% 50%/30% 30% no-repeat, linear-gradient(#ffffff, #ffffff) 0 100%/30% 30% no-repeat, linear-gradient(#ffffff, #ffffff) 50% 100%/30% 30% no-repeat, linear-gradient(#ffffff, #ffffff) 100% 100%/30% 30% no-repeat; }

.pouessel-presentation__decor--two { left: 5vw; top: 10rem; width: 18rem; height: 18rem; border: 0.15rem solid rgba(255, 255, 255, 0.32); transform: rotate(18deg); }

/* Responsive */
@media screen and (max-width: 1024px) { .pouessel-presentation__inner { grid-template-columns: 1fr; gap: 4rem; } .pouessel-presentation__image-wrap img { height: 30rem; } }

@media screen and (max-width: 768px) { .pouessel-presentation { padding-block: 5rem; padding-inline: 5vw; } .pouessel-presentation__image-wrap img { height: 24rem; } }

@media screen and (max-width: 560px) { .pouessel-presentation { padding-block: 4rem; padding-inline: 4vw; } .pouessel-presentation__text { line-height: 1.65; } .pouessel-presentation__image-wrap img { height: 18rem; } .pouessel-presentation__slashes { right: 1rem; bottom: -1.2rem; } .pouessel-presentation__slashes span { width: 0.9rem; height: 2.8rem; } }

/***********************************************NOS SERVICES**********************************/
.pouessel-services--listing { position: relative; padding-block: 7rem; background: #ffffff; overflow: hidden; }

.pouessel-services--listing::after { content: ""; position: absolute; right: -8vw; top: 4rem; width: 22rem; height: 22rem; border: 0.15rem solid rgba(12, 104, 180, 0.12); transform: rotate(18deg); pointer-events: none; }

.pouessel-services__heading { position: relative; z-index: 2; display: flex; flex-direction: column; align-items: flex-start; max-width: 1280px; margin-inline: auto; margin-bottom: 3rem; }

/* H2 stylisé avec dédoublement jaune */
.pouessel-services__main-title { position: relative; display: inline-block; width: fit-content; margin: 0; color: #2472A4; font-weight: 700 !important; text-transform: uppercase; line-height: 1.08; z-index: 1; font-size: 3rem !important; }

/* Remplacement de la grid par flex pour centrer la deuxième ligne */
.pouessel-services__inner--listing { position: relative; z-index: 2; display: flex; flex-wrap: wrap; justify-content: center; gap: 3vw; max-width: 1580px; margin-inline: auto; }

.pouessel-services__card--listing { position: relative; display: flex; flex-direction: column; flex: 0 1 calc(25% - 3vw); min-width: 280px; padding: 0; overflow: hidden; background: #ffffff; border-left: none; border-bottom: 0.25rem solid #2472A4; transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease; }

.pouessel-services__card--listing::before { content: ""; position: absolute; inset: 0; background: linear-gradient(135deg, rgba(12, 104, 180, 0.08) 0%, rgba(12, 104, 180, 0) 58%); opacity: 0; transition: opacity 0.35s ease; pointer-events: none; }

.pouessel-services__card--listing:hover { transform: translateY(-0.4rem); box-shadow: 0 1.5rem 3rem rgba(6, 20, 38, 0.12); border-color: #F8CA00; }

.pouessel-services__card--listing:hover::before { opacity: 1; }

/* Zone image adaptée aux PNG / icônes */
.pouessel-services__image { position: relative; display: flex; align-items: center; justify-content: center; width: 100%; height: 13rem; padding: 2rem; overflow: hidden; background: rgba(12, 104, 180, 0.08); text-decoration: none; }

.pouessel-services__image::before { content: ""; position: absolute; right: -3rem; top: -3rem; width: 9rem; height: 9rem; background: rgba(234, 201, 39, 0.22); transform: rotate(18deg); pointer-events: none; }

.pouessel-services__image::after { content: ""; position: absolute; right: 1.2rem; bottom: 1.2rem; z-index: 2; width: 4.5rem; height: 2rem; background: linear-gradient(#F8CA00, #F8CA00) 0 0/22% 100% no-repeat, linear-gradient(#F8CA00, #F8CA00) 38% 0/22% 100% no-repeat, linear-gradient(#F8CA00, #F8CA00) 76% 0/22% 100% no-repeat; transform: skewX(-22deg); }

.pouessel-services__image img { position: relative; z-index: 1; display: block; width: 85%; height: 85%; object-fit: contain; transition: transform 0.45s ease; }

.pouessel-services__card--listing:hover .pouessel-services__image img { transform: translateY(-0.25rem) scale(1.04); }

.pouessel-services__content--listing { position: relative; z-index: 1; padding: 2rem; background: #ffffff; flex: 1; }

.pouessel-services__card--listing .pouessel-services__title h3 { margin: 0; color: #2472A4; font-weight: 700 !important; text-transform: uppercase; line-height: 1.15; }

.pouessel-services__card--listing .pouessel-services__text { margin-top: 1rem; color: rgba(6, 20, 38, 0.78); line-height: 1.55; }

.pouessel-services__card--listing .pouessel-services__link { position: relative; display: inline-flex; align-items: center; gap: 0.55rem; margin-top: 1.5rem; color: #2472A4; font-weight: 800; text-transform: uppercase; text-decoration: none; letter-spacing: 0.03em; transition: color 0.35s ease; }

.pouessel-services__card--listing .pouessel-services__link::after { content: ""; position: absolute; left: 0; bottom: -0.25rem; width: 100%; height: 0.12rem; background: #F8CA00; transform: scaleX(0); transform-origin: left; transition: transform 0.35s ease; }

.pouessel-services__card--listing .pouessel-services__link svg { width: 1rem; height: 1rem; fill: none; stroke: currentColor; stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; transition: transform 0.35s ease; }

.pouessel-services__card--listing .pouessel-services__link:hover { color: #071b2f; }

.pouessel-services__card--listing .pouessel-services__link:hover::after { transform: scaleX(1); }

.pouessel-services__card--listing .pouessel-services__link:hover svg { transform: translateX(0.35rem); }

/* Responsive tablette */
@media screen and (max-width: 1024px) { .pouessel-services--listing { padding-block: 5rem; } .pouessel-services__inner--listing { gap: 1.5rem; } .pouessel-services__card--listing { flex-basis: calc(50% - 1.5rem); } .pouessel-services__image { height: 14rem; } }

/* Responsive mobile */
@media screen and (max-width: 560px) { .pouessel-services--listing { padding-block: 4rem; } .pouessel-services__heading { margin-bottom: 2rem; } .pouessel-services__card--listing { flex-basis: 100%; min-width: 0; } .pouessel-services__image { height: 12rem; padding: 1.5rem; } .pouessel-services__image img { width: 76%; height: 76%; } .pouessel-services__content--listing { padding: 1.5rem; } }

/*--------------------------------------------------------------
Bloc MAPS
--------------------------------------------------------------*/
.pouessel-reviews { padding-block: 7rem; }

.pouessel-reviews iframe { width: 100% !important; }

.pouessel-reviews__inner { position: relative; z-index: 2; max-width: 1280px; margin-inline: auto; }

.pouessel-reviews__heading { max-width: 52rem; margin-bottom: 3.5rem; }

.pouessel-reviews__grid { display: flex; flex-wrap: wrap; justify-content: center; gap: 2rem; }

.pouessel-reviews__card { position: relative; flex: 1; padding: 2rem; background: rgba(255, 255, 255, 0.96); color: #061426; border-bottom: 0.25rem solid #F8CA00; box-shadow: 0 2rem 4rem rgba(0, 0, 0, 0.18); overflow: hidden; transition: transform 0.35s ease, box-shadow 0.35s ease; align-content: center; }

.pouessel-reviews__card::before { content: ""; position: absolute; right: -4rem; top: -4rem; width: 10rem; height: 10rem; background: rgba(12, 104, 180, 0.1); transform: rotate(18deg); pointer-events: none; }

.pouessel-reviews__card::after { content: "“"; position: absolute; right: 1.4rem; bottom: -2rem; color: rgba(12, 104, 180, 0.08); font-weight: 800; line-height: 1; pointer-events: none; }

.pouessel-reviews__card:hover { transform: translateY(-0.4rem); box-shadow: 0 2.5rem 4.5rem rgba(0, 0, 0, 0.24); }

.pouessel-reviews__stars { position: relative; z-index: 1; display: flex; gap: 0.25rem; margin-bottom: 1.2rem; color: #F8CA00; }

.pouessel-reviews__text { position: relative; z-index: 1; line-height: 1.7; color: rgba(6, 20, 38, 0.82); }

.pouessel-reviews__footer { position: relative; z-index: 1; display: flex; align-items: center; gap: 0.8rem; margin-top: 1.6rem; }

.pouessel-reviews__footer span { display: block; width: 2.8rem; height: 0.18rem; background: #2472A4; }

.pouessel-reviews__note { color: #2472A4; font-weight: 800; text-transform: uppercase; letter-spacing: 0.06em; }

.pouessel-reviews__slashes { right: 6vw; bottom: 4rem; }

/* Responsive */
@media screen and (max-width: 1024px) { .pouessel-reviews { padding-block: 5rem; } .pouessel-reviews__card { flex-basis: 20rem; } }

@media screen and (max-width: 768px) { .pouessel-reviews { padding-block: 5rem; padding-inline: 5vw; } .pouessel-reviews__heading { margin-bottom: 2.5rem; } .pouessel-reviews__grid { justify-content: flex-start; flex-direction: column; } .pouessel-reviews__card { flex-basis: 100%; } }

@media screen and (max-width: 560px) { .pouessel-reviews { padding-block: 4rem; padding-inline: 4vw; } .pouessel-reviews__card { padding: 1.5rem; } .pouessel-reviews__slashes { right: 1rem; bottom: 2rem; } }

/*--------------------------------------------------------------
Bloc activités SEO Pouessel
--------------------------------------------------------------*/
div:has(> .first-activity-div) { padding: 100px 0; }

.first-activity-div, .second-activity-div, .third-activity-div { position: relative !important; overflow: hidden !important; background: #ffffff !important; color: #061426 !important; border-radius: 0 !important; box-shadow: 0 2rem 4rem rgba(6, 20, 38, 0.12) !important; border-left: 0.25rem solid #2472A4 !important; transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease !important; }

.first-activity-div::before, .second-activity-div::before, .third-activity-div::before { content: "" !important; position: absolute !important; inset: 0 !important; background: linear-gradient(135deg, rgba(12, 104, 180, 0.08) 0%, rgba(12, 104, 180, 0) 58%) !important; pointer-events: none !important; }

.first-activity-div::after, .second-activity-div::after, .third-activity-div::after { content: "" !important; position: absolute !important; right: -5rem !important; top: -5rem !important; width: 14rem !important; height: 14rem !important; background: rgba(234, 201, 39, 0.18) !important; transform: rotate(18deg) !important; pointer-events: none !important; }

.first-activity-div .row, .second-activity-div .row, .third-activity-div .row { position: relative !important; z-index: 2 !important; }

/* Titres */
.first-activity-title, .second-activity-title, .third-activity-title { position: relative !important; margin-bottom: 1.8rem !important; }

.first-activity-title::before, .second-activity-title::before, .third-activity-title::before { content: "" !important; display: block !important; width: 2.8rem !important; height: 0.18rem !important; background: #F8CA00 !important; margin-bottom: 0.2rem !important; }

.first-activity-title h2, .second-activity-title h2, .third-activity-title h2 { position: relative !important; margin: 0 !important; font-weight: 700 !important; text-transform: uppercase !important; line-height: 1.08 !important; }

.first-activity-title h2 span, .second-activity-title h2 span, .third-activity-title h2 span { font-weight: 600 !important; font-size: 1.4rem; }

.first-activity-title h2::before, .second-activity-title h2::before, .third-activity-title h2::before { content: attr(data-title) !important; position: absolute !important; left: 0.18rem !important; top: 0.18rem !important; color: #F8CA00 !important; z-index: -1 !important; opacity: 0.9 !important; white-space: nowrap !important; }

/* Textes */
.first-activity-div .lead, .second-activity-div .lead, .third-activity-div .lead { color: rgba(6, 20, 38, 0.78) !important; line-height: 1.75 !important; font-weight: 400 !important; }

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

/* Cartes images */
.first-activity-div .card-cover, .second-activity-div .card-cover, .third-activity-div .card-cover { position: relative !important; min-height: 24rem !important; border-radius: 0 !important; border: none !important; overflow: hidden !important; background-color: #061426 !important; box-shadow: 0 1.8rem 3.5rem rgba(6, 20, 38, 0.22) !important; transition: transform 0.45s ease, box-shadow 0.45s ease !important; }

.first-activity-div:hover .card-cover, .second-activity-div:hover .card-cover, .third-activity-div:hover .card-cover { transform: scale(1.02) !important; box-shadow: 0 2.2rem 4rem rgba(6, 20, 38, 0.28) !important; }

.first-activity-div .card-cover::before, .second-activity-div .card-cover::before, .third-activity-div .card-cover::before { content: "" !important; position: absolute !important; inset: 1rem !important; border: 0.15rem solid rgba(234, 201, 39, 0.75) !important; z-index: 3 !important; pointer-events: none !important; }

.first-activity-div .card-cover::after, .second-activity-div .card-cover::after, .third-activity-div .card-cover::after { content: "" !important; position: absolute !important; right: 1.2rem !important; bottom: 1.2rem !important; z-index: 4 !important; width: 4.5rem !important; height: 2rem !important; background: linear-gradient(#F8CA00, #F8CA00) 0 0/22% 100% no-repeat, linear-gradient(#F8CA00, #F8CA00) 38% 0/22% 100% no-repeat, linear-gradient(#F8CA00, #F8CA00) 76% 0/22% 100% no-repeat !important; transform: skewX(-22deg) !important; pointer-events: none !important; }

/* Overlay image */
.first-activity-div .black-screen, .second-activity-div .black-screen, .third-activity-div .black-screen { position: absolute !important; inset: 0 !important; background: linear-gradient(90deg, rgba(6, 20, 38, 0.28) 0%, rgba(6, 20, 38, 0.04) 100%) !important; opacity: 1 !important; z-index: 1 !important; }

/* Nettoyage classes Bootstrap */
.first-activity-div.bg-primaryColor, .second-activity-div.bg-primaryColor, .third-activity-div.bg-primaryColor { background: #ffffff !important; }

.first-activity-div.rounded-3, .second-activity-div.rounded-3, .third-activity-div.rounded-3, .first-activity-div .rounded-4, .second-activity-div .rounded-4, .third-activity-div .rounded-4 { border-radius: 0 !important; }

.first-activity-div .text-body-emphasis, .second-activity-div .text-body-emphasis, .third-activity-div .text-body-emphasis { color: #061426 !important; }

/* Alternance visuelle */
.second-activity-div { border-left: none !important; border-right: 0.25rem solid #2472A4 !important; }

.second-activity-div::after { left: -5rem !important; right: auto !important; }

/* Responsive */
@media screen and (max-width: 991px) { .first-activity-div, .second-activity-div, .third-activity-div { border-left: 0.25rem solid #2472A4 !important; border-right: none !important; } .first-activity-div .card-cover, .second-activity-div .card-cover, .third-activity-div .card-cover { min-height: 20rem !important; } }

@media screen and (max-width: 560px) { .first-activity-div, .second-activity-div, .third-activity-div { padding-inline: 1rem !important; padding-block: 1.5rem !important; } .first-activity-div .row, .second-activity-div .row, .third-activity-div .row { padding-inline: 0 !important; gap: 2rem !important; } .first-activity-div .card-cover, .second-activity-div .card-cover, .third-activity-div .card-cover { min-height: 16rem !important; } .first-activity-title, .second-activity-title, .third-activity-title { margin-bottom: 1.2rem !important; } }

/*--------------------------------------------------------------
Bannière pages secondaires Pouessel
--------------------------------------------------------------*/
.pouessel-page-hero { position: relative; width: 100vw; min-height: 48vh; overflow: hidden; isolation: isolate; background: #061426; }

.pouessel-page-hero__bg { position: absolute; inset: 0; z-index: -3; background-image: url("https://storage.googleapis.com/refpro-app-ca244.appspot.com/customers%2FYbqdaRJNr3NBKQvR50NH6oTQUZ73%2Fimages%2FCharte_Graphique_1_dji7.webp"); background-size: cover; background-position: center; background-repeat: no-repeat; }

.pouessel-page-hero__shade { position: absolute; inset: 0; z-index: -2; background: linear-gradient(107deg, #071e31eb 0%, #0f2e49fc 24%, #06080a8f 54%, rgba(12, 104, 180, 0.12) 78%, rgba(12, 104, 180, 0) 100%); }

.pouessel-page-hero__content { position: relative; z-index: 3; min-height: 48vh; display: flex; align-items: center; padding-inline: 6vw; padding-block: 7rem; }

.pouessel-page-hero__text-zone { position: relative; width: 70%; max-width: 980px; padding: 2rem 3rem; color: #ffffff; }

.pouessel-page-hero__kicker { display: inline-flex; align-items: center; gap: 0.8rem; margin-bottom: 1.2rem; color: #F8CA00; font-weight: 800; text-transform: uppercase; letter-spacing: 0.08em; text-shadow: 4px 4px 18px #030616cf; }

.pouessel-page-hero__kicker::before { content: ""; display: block; width: 2.8rem; height: 0.18rem; background: #F8CA00; }

.pouessel-page-hero__title-wrap { position: relative; color: #ffffff; font-size: 2.6rem; font-weight: 700; text-transform: uppercase; line-height: 1.08; text-shadow: 4px 4px 18px #030616cf; }

.pouessel-page-hero__title-wrap::before { content: ""; position: absolute; left: 0; bottom: -1rem; width: 5rem; height: 0.22rem; background: #F8CA00; }

/* Vagues bas de bannière */
.pouessel-page-hero__wave { position: absolute; left: 0; right: 0; bottom: -1px; height: 12vh; z-index: 2; pointer-events: none; overflow: hidden; }

.pouessel-page-hero__wave-yellow { position: absolute; left: -12vw; bottom: -4vh; width: 125vw; height: 8vh; background: linear-gradient(135deg, #061426 0%, #88b4d0 68%, #2472a4 100%); border-radius: 50% 50% 0 0; transform: rotate(-2deg); z-index: 2; }

.pouessel-page-hero__slashes { position: absolute; right: 6vw; bottom: 3.2vh; display: flex; gap: 0.7rem; z-index: 4; }

.pouessel-page-hero__slashes span { display: block; width: 0.95rem; height: 2.5rem; background: #F8CA00; transform: skewX(-22deg); }

/* Responsive tablette */
@media screen and (max-width: 1024px) { .pouessel-page-hero { min-height: 44vh; } .pouessel-page-hero__content { min-height: 44vh; } .pouessel-page-hero__text-zone { width: 80%; } .pouessel-page-hero__title-wrap { font-size: 5vw; } }

/* Responsive mobile */
@media screen and (max-width: 768px) { .pouessel-page-hero { min-height: 42vh; } .pouessel-page-hero__content { min-height: 42vh; align-items: center; padding-inline: 5vw; padding-block: 6rem; background-size: auto 62%; } .pouessel-page-hero__text-zone { width: 92%; max-width: none; padding: 1.5rem; } .pouessel-page-hero__title-wrap { font-size: 7vw; } .pouessel-page-hero__shade { background: linear-gradient(180deg, rgba(12, 104, 180, 0.88) 0%, rgba(6, 20, 38, 0.68) 56%, rgba(6, 20, 38, 0.22) 100%); } .pouessel-page-hero__wave { height: 13vh; } }

@media screen and (max-width: 560px) { .pouessel-page-hero { min-height: 38vh; } .pouessel-page-hero__content { min-height: 38vh; padding-inline: 4vw; padding-block: 5rem; } .pouessel-page-hero__text-zone { width: 94%; padding: 1rem; } .pouessel-page-hero__title-wrap { font-size: 9vw; } .pouessel-page-hero__kicker { margin-bottom: 0.9rem; } .pouessel-page-hero__slashes { right: 5vw; bottom: 3vh; } .pouessel-page-hero__slashes span { width: 0.8rem; height: 2.2rem; } }

/*--------------------------------------------------------------
Boutons CMS - Style Pouessel sans superposition texte
--------------------------------------------------------------*/
a.button_header, a.button_homepageScreen, a.button_homepageDoubleScreen, a.phone-number-button { position: relative !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; gap: 0.85rem !important; padding-block: 1rem !important; padding-inline: 1.35rem !important; background-image: linear-gradient(90deg, #2472A4 0%, #2472A4 50%, #9e8068 50%, #9e8068 100%) !important; background-size: 220% 100% !important; background-position: right center !important; color: #ffffff !important; border: none !important; border-radius: 0 !important; overflow: hidden !important; font-weight: 700 !important; text-transform: uppercase !important; text-decoration: none !important; letter-spacing: 0.03em !important; line-height: 1 !important; box-shadow: none !important; transition: background-position 0.35s ease, transform 0.35s ease, color 0.35s ease !important; }

/* On désactive l’ancien overlay bleu */
a.button_header::before, a.button_homepageScreen::before, a.button_homepageDoubleScreen::before, a.phone-number-button::before { content: none !important; display: none !important; }

/* Hover */
a.button_header:hover, a.button_homepageScreen:hover, a.button_homepageDoubleScreen:hover, a.phone-number-button:hover { background-position: left center !important; color: #ffffff !important; transform: translateY(-0.2rem) !important; text-decoration: none !important; box-shadow: none !important; }

/* Icônes */
a.button_header i, a.button_homepageScreen i, a.button_homepageDoubleScreen i, a.phone-number-button i { color: inherit !important; transition: transform 0.35s ease !important; }

a.button_header:hover i, a.button_homepageScreen:hover i, a.button_homepageDoubleScreen:hover i, a.phone-number-button:hover i { transform: translateX(0.25rem) !important; }

/* SVG éventuels */
a.button_header svg, a.button_homepageScreen svg, a.button_homepageDoubleScreen svg, a.phone-number-button svg { width: 1.25rem !important; height: 1.25rem !important; fill: none !important; stroke: currentColor !important; stroke-width: 2.4 !important; stroke-linecap: round !important; stroke-linejoin: round !important; transition: transform 0.35s ease !important; }

a.button_header:hover svg, a.button_homepageScreen:hover svg, a.button_homepageDoubleScreen:hover svg, a.phone-number-button:hover svg { transform: translateX(0.35rem) !important; }

/* Override Bootstrap */
a.button_header.rounded-pill, a.button_homepageScreen.rounded-pill, a.button_homepageDoubleScreen.rounded-pill, a.phone-number-button.rounded-pill { border-radius: 0 !important; }

a.button_header.text-color-fourth, a.button_homepageScreen.text-color-fourth, a.button_homepageDoubleScreen.text-color-fourth, a.phone-number-button.text-color-fourth { color: #ffffff !important; }

/*--------------------------------------------------------------
Bloc histoire Pouessel - version fond blanc
--------------------------------------------------------------*/
.pouessel-story { position: relative; overflow: hidden; background: #ffffff; color: #061426; padding-block: 7rem; padding-inline: 6vw; }

.pouessel-story::before { content: ""; position: absolute; right: -8vw; top: 4rem; width: 22rem; height: 22rem; border: 0.15rem solid rgba(12, 104, 180, 0.12); transform: rotate(18deg); pointer-events: none; }

.pouessel-story::after { content: ""; position: absolute; left: -8vw; bottom: -10vh; width: 40vw; height: 18vh; background: rgba(234, 201, 39, 0.18); border-radius: 50% 50% 0 0; transform: rotate(-5deg); pointer-events: none; }

.pouessel-story.secondaires::after { display: none !important; }

.pouessel-story__inner { position: relative; z-index: 2; display: block; max-width: 1180px; width: fit-content; margin-inline: auto; }

.pouessel-story__content { position: relative; z-index: 2; max-width: 850px; }

.pouessel-story .pouessel-presentation__kicker { color: #2472A4; }

.pouessel-story .pouessel-presentation__kicker::before { background: #F8CA00; }

.pouessel-story__title { margin: 0; font-weight: 700; text-transform: uppercase; line-height: 1.08; }

.pouessel-story__title::after { content: ""; display: block; width: 5rem; height: 0.22rem; background: #F8CA00; margin-top: 1.2rem; }

.pouessel-story__text { margin-top: 1.8rem; color: rgba(6, 20, 38, 0.78); line-height: 1.75; }

.pouessel-story__text p { margin-top: 0; margin-bottom: 1.2rem; }

.pouessel-story__text p:last-child { margin-bottom: 0; }

/* Citation en dessous */
.pouessel-story__quote-card { position: relative; overflow: hidden; margin-top: 3rem; max-width: 830px; background: linear-gradient(135deg, rgba(12, 104, 180, 0.08) 0%, rgba(12, 104, 180, 0.02) 100%); color: #061426; padding: 3rem; box-shadow: 0 1.5rem 3rem rgba(6, 20, 38, 0.1); border-left: 0.25rem solid #2472A4; border-bottom: none; }

.pouessel-story__quote-card::before { content: ""; position: absolute; right: -4rem; top: -4rem; width: 11rem; height: 11rem; background: rgba(234, 201, 39, 0.22); transform: rotate(18deg); pointer-events: none; }

.pouessel-story__quote-card::after { content: ""; position: absolute; right: 1.4rem; bottom: 1.4rem; width: 4.5rem; height: 2rem; background: linear-gradient(#F8CA00, #F8CA00) 0 0/22% 100% no-repeat, linear-gradient(#F8CA00, #F8CA00) 38% 0/22% 100% no-repeat, linear-gradient(#F8CA00, #F8CA00) 76% 0/22% 100% no-repeat; transform: skewX(-22deg); pointer-events: none; }

.pouessel-story__quote-mark { position: absolute; right: 2rem; top: -1.5rem; color: rgba(12, 104, 180, 0.08); font-weight: 800; line-height: 1; pointer-events: none; }

.pouessel-story__quote { position: relative; z-index: 2; margin: 0; color: rgba(6, 20, 38, 0.82); line-height: 1.75; font-style: normal !important; letter-spacing: -0.5px !important; }

.pouessel-story__author { position: relative; z-index: 2; display: flex; align-items: center; gap: 1rem; margin-top: 2rem; }

.pouessel-story__author span { display: block; width: 3rem; height: 0.18rem; background: #F8CA00; }

.pouessel-story__author strong { display: block; color: #2472A4; font-weight: 800; text-transform: uppercase; }

.pouessel-story__author small { display: block; margin-top: 0.25rem; color: rgba(6, 20, 38, 0.68); font-weight: 600; }

.pouessel-story__slashes { display: none; }

/* Responsive */
@media screen and (max-width: 1024px) { .pouessel-story__inner { display: block; } .pouessel-story__content, .pouessel-story__quote-card { max-width: none; } }

@media screen and (max-width: 768px) { .pouessel-story { padding-block: 5rem; padding-inline: 5vw; } .pouessel-story__quote-card { padding: 2rem; } }

@media screen and (max-width: 560px) { .pouessel-story { padding-block: 4rem; padding-inline: 4vw; } .pouessel-story__quote-card { padding: 1.5rem; margin-top: 2rem; } .pouessel-story__title::before { display: none; } }

/*********************************************************RESPONSIVE**************************************************/
@media screen and (max-width: 1370px) { .pouessel-hero__title-wrap h1 { font-size: 2rem; } }

@media screen and (max-width: 1024px) { .pouessel-hero__title-wrap h1 { font-size: 1.5rem; line-height: 1.5; } .pouessel-presentation__decor--one { display: none; } }

@media screen and (max-width: 1330px) { div.pouessel-reviews__grid > article:nth-child(3) { display: none; } }

@media screen and (max-width: 872px) { div.pouessel-reviews__grid > article:nth-child(3) { display: block; } }

/*--------------------------------------------------------------
Bloc services plomberie Pouessel
--------------------------------------------------------------*/
.pouessel-plomberie { position: relative; overflow: hidden; background: #ffffff; color: #061426; padding-block: 7rem; padding-inline: 6vw; }

.pouessel-plomberie::before { content: ""; position: absolute; right: -8vw; top: 4rem; width: 22rem; height: 22rem; border: 0.15rem solid rgba(12, 104, 180, 0.12); transform: rotate(18deg); pointer-events: none; }

.pouessel-plomberie::after { content: ""; position: absolute; left: -8vw; bottom: -10vh; width: 40vw; height: 18vh; background: rgba(234, 201, 39, 0.18); border-radius: 50% 50% 0 0; transform: rotate(-5deg); pointer-events: none; }

.pouessel-plomberie__inner { position: relative; z-index: 2; max-width: 1280px; margin-inline: auto; }

.pouessel-plomberie__heading { max-width: 850px; margin-bottom: 3.5rem; }

.pouessel-plomberie .pouessel-presentation__kicker { color: #2472A4; }

.pouessel-plomberie .pouessel-presentation__kicker::before { background: #F8CA00; }

.pouessel-plomberie__title { position: relative; display: inline-block; width: fit-content; margin: 0; color: #061426; font-weight: 700; text-transform: uppercase; line-height: 1.08; z-index: 1; }

.pouessel-plomberie__title::before { content: attr(data-title); position: absolute; left: 0.18rem; top: 0.18rem; width: max-content; white-space: nowrap; color: #F8CA00; z-index: -1; opacity: 0.9; }

.pouessel-plomberie__title::after { content: ""; display: block; width: 5rem; height: 0.22rem; background: #F8CA00; margin-top: 1.2rem; }

.pouessel-plomberie__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 2rem; }

.pouessel-plomberie__item { position: relative; display: grid; grid-template-columns: auto 1fr; gap: 1.5rem; padding: 2rem; background: linear-gradient(135deg, rgba(12, 104, 180, 0.08) 0%, rgba(12, 104, 180, 0.02) 100%); border-left: 0.25rem solid #2472A4; box-shadow: 0 1.5rem 3rem rgba(6, 20, 38, 0.08); pointer-events: none; }

.pouessel-plomberie__number { position: relative; z-index: 1; display: flex; align-items: center; justify-content: center; width: 4.2rem; height: 4.2rem; background: #2472A4; color: #ffffff; font-weight: 800; }

.pouessel-plomberie__number::after { content: ""; position: absolute; right: -0.45rem; bottom: -0.45rem; width: 1.5rem; height: 1.5rem; background: #F8CA00; z-index: -1; }

.pouessel-plomberie__content { position: relative; z-index: 1; }

.pouessel-plomberie__content h3 { margin: 0; color: #2472A4; font-weight: 800; text-transform: uppercase; line-height: 1.15; }

.pouessel-plomberie__content p { margin-top: 1rem; margin-bottom: 0; color: rgba(6, 20, 38, 0.78); line-height: 1.7; }

@media screen and (max-width: 1024px) { .pouessel-plomberie__grid { grid-template-columns: 1fr; } }

@media screen and (max-width: 768px) { .pouessel-plomberie { padding-block: 5rem; padding-inline: 5vw; } .pouessel-plomberie__heading { margin-bottom: 2.5rem; } .pouessel-plomberie__item { padding: 1.7rem; } }

@media screen and (max-width: 560px) { .pouessel-plomberie { padding-block: 4rem; padding-inline: 4vw; } .pouessel-plomberie__title::before { display: none; } .pouessel-plomberie__item { grid-template-columns: 1fr; gap: 1rem; padding: 1.5rem; } .pouessel-plomberie__number { width: 3.6rem; height: 3.6rem; } }

/*-----------------------------------------------Galerie infinie-------------------------------------------------------------*/
.infinite-gallery { overflow: hidden; width: 100%; position: relative; padding: 150px 0; }

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

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

.gallery-item img { max-height: 100px; object-fit: contain; display: block; }

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

/* Pause au survol */
.gallery-track:hover { animation-play-state: paused; }

/*-----------------------------------------------Mobile-------------------------------------------------------------*/
@media screen and (max-width: 767px) { .infinite-gallery { overflow: visible; padding: 60px 20px; } .gallery-track { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; width: 100%; animation: none; transform: none; } .gallery-track:hover { animation-play-state: initial; } .gallery-item { width: 100%; } .gallery-item a { display: block; width: 100%; } .gallery-item img { width: 100%; max-height: 100px !important; max-height: none; aspect-ratio: 1 / 1; object-fit: contain; } }

/*-----------------------------------------------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: 300px; object-fit: contain; background-color: white; padding: 10px; }

.lightbox-close { position: absolute; top: 20px; right: 25px; background: transparent; border: none; color: white; font-size: 40px; cursor: pointer; line-height: 1; }

@media screen and (max-width: 767px) { .lightbox { padding: 20px; } .lightbox-close { top: 12px; right: 16px; font-size: 36px; } }

/***************************************************************POP UP*********************************************/
.pouessel-service-popup { position: fixed; inset: 0; z-index: 999999; display: flex; align-items: center; justify-content: center; padding: 6vw; width: 100%; max-width: 100%; box-sizing: border-box; overflow-x: hidden; opacity: 0; visibility: hidden; pointer-events: none; transition: opacity 0.3s ease, visibility 0.3s ease; }

.pouessel-service-popup *, .pouessel-service-popup *::before, .pouessel-service-popup *::after { box-sizing: border-box; }

.pouessel-service-popup.is-open { opacity: 1; visibility: visible; pointer-events: auto; }

.pouessel-service-popup__overlay { position: absolute; inset: 0; background: rgba(6, 20, 38, 0.82); backdrop-filter: blur(0.35rem); }

.pouessel-service-popup__box { position: relative; width: 100%; max-width: 980px; max-height: 86vh; overflow-y: auto; overflow-x: hidden; background: #ffffff; color: #061426; padding: 3.2rem; box-shadow: 0 2rem 5rem rgba(0, 0, 0, 0.35); border-bottom: 0.3rem solid #eac927; transform: translateY(1.2rem) scale(0.98); transition: transform 0.3s ease; }

.pouessel-service-popup.is-open .pouessel-service-popup__box { transform: translateY(0) scale(1); }

.pouessel-service-popup__box::after { content: ""; position: absolute; right: -2rem; top: -4rem; width: 10rem; height: 10rem; background: rgba(12, 104, 180, 0.08); transform: rotate(18deg); pointer-events: none; }

.pouessel-service-popup__close { position: absolute; right: 1.5rem; top: 1.5rem; z-index: 4; width: 3rem; height: 3rem; border: none; border-radius: 0; background: #eac927; color: #ffffff; font-weight: 800; line-height: 1; cursor: pointer; transition: background 0.3s ease, transform 0.3s ease; }

.pouessel-service-popup__close:hover { background: #0c68b4; transform: rotate(90deg); }

.pouessel-service-popup__title { position: relative; z-index: 2; color: #2472a4; font-size: 2rem; font-weight: 700; text-transform: uppercase; line-height: 1.08; margin-right: 3rem; }

.pouessel-service-popup__title::after { content: ""; display: block; width: 5rem; height: 0.22rem; background: #eac927; margin-top: 1.2rem; }

.pouessel-service-popup__content { position: relative; z-index: 2; margin-top: 1.8rem; color: rgba(6, 20, 38, 0.82); line-height: 1.75; }

.pouessel-service-popup__content p { margin-top: 0; margin-bottom: 1.2rem; }

.pouessel-service-popup__content p:last-child { margin-bottom: 0; }

.pouessel-service-popup__highlight { display: grid; grid-template-columns: auto 1fr; gap: 1rem; margin: 2rem 0; padding: 1.4rem; background: linear-gradient(135deg, rgba(12, 104, 180, 0.08) 0%, rgba(12, 104, 180, 0.02) 100%); border-left: 0.25rem solid #0c68b4; }

.pouessel-service-popup__highlight-number { display: flex; align-items: center; justify-content: center; width: 3.2rem; height: 3.2rem; background: #0c68b4; color: #ffffff; font-weight: 800; }

.pouessel-service-popup__highlight-text { color: rgba(6, 20, 38, 0.78); line-height: 1.55; }

.pouessel-service-popup__slashes { position: absolute; right: 1.6rem; bottom: 1.6rem; z-index: 3; display: flex; gap: 0.5rem; pointer-events: none; }

.pouessel-service-popup__slashes span { display: block; width: 0.8rem; height: 2.6rem; background: #eac927; transform: skewX(-22deg); }

.pouessel-services__card--listing { cursor: pointer; }

.pouessel-services__card--listing a { cursor: pointer; }

body.pouessel-popup-open { overflow: hidden; }

/* Responsive */
@media screen and (max-width: 768px) { .pouessel-service-popup { padding: 5vw; } .pouessel-service-popup__box { max-width: 100%; padding: 2.2rem; } }

@media screen and (max-width: 560px) { .pouessel-service-popup { align-items: flex-end; padding: 0; width: 100%; max-width: 100%; overflow-x: hidden; } .pouessel-service-popup__box { width: 100%; max-width: 100%; max-height: 90vh; padding: 1.5rem; overflow-y: auto; overflow-x: hidden; } .pouessel-service-popup__box::before { inset: 0.7rem; } .pouessel-service-popup__box::after { right: -3rem; top: -3rem; width: 8rem; height: 8rem; } .pouessel-service-popup__title { margin-right: 2.5rem; } .pouessel-service-popup__highlight { grid-template-columns: 1fr; } .pouessel-service-popup__slashes { display: none; } }

/********************************************************CARROUSEL*************************************************************/
/*--------------------------------------------------------------
Carrousel bloc présentation Pouessel
--------------------------------------------------------------*/
.pouessel-presentation__slider { position: relative; height: 32rem; }

.pouessel-presentation__slide { position: absolute; inset: 0; opacity: 0; transform: scale(1.04); transition: opacity 0.55s ease, transform 0.55s ease; pointer-events: none; }

.pouessel-presentation__slide.is-active { opacity: 1; transform: scale(1); pointer-events: auto; }

.pouessel-presentation__slide img { display: block; width: 100%; height: 100%; object-fit: cover; }

/* On neutralise l'ancien sélecteur img direct si besoin */
.pouessel-presentation__slider > img { display: none; }

/* Flèches */
.pouessel-presentation__slider-arrow { position: absolute; top: 50%; z-index: 5; width: 3rem; height: 3rem; border: none; border-radius: 0; background: #eac927; color: #ffffff; font-weight: 800; line-height: 1; cursor: pointer; transform: translateY(-50%); transition: background 0.3s ease, transform 0.3s ease; }

.pouessel-presentation__slider-arrow:hover { background: #0c68b4; }

.pouessel-presentation__slider-arrow--prev { left: 1.4rem; }

.pouessel-presentation__slider-arrow--next { right: 1.4rem; }

.pouessel-presentation__slider-arrow--prev:hover { transform: translateY(-50%) translateX(-0.2rem); }

.pouessel-presentation__slider-arrow--next:hover { transform: translateY(-50%) translateX(0.2rem); }

/* Points */
.pouessel-presentation__slider-dots { position: absolute; left: 50%; bottom: 1.5rem; z-index: 5; display: flex; align-items: center; gap: 0.55rem; transform: translateX(-50%); }

.pouessel-presentation__slider-dot { width: 0.7rem; height: 0.7rem; padding: 0; border: none; border-radius: 0; background: rgba(255, 255, 255, 0.62); cursor: pointer; transform: skewX(-22deg); transition: background 0.3s ease, width 0.3s ease; }

.pouessel-presentation__slider-dot.is-active { width: 2rem; background: #eac927; }

/* Responsive */
@media screen and (max-width: 1024px) { .pouessel-presentation__slider { height: 30rem; } }

@media screen and (max-width: 768px) { .pouessel-presentation__slider { height: 24rem; } .pouessel-presentation__slider-arrow { width: 2.7rem; height: 2.7rem; } }

@media screen and (max-width: 560px) { .pouessel-presentation__slider { height: 18rem; } .pouessel-presentation__slider-arrow { width: 2.4rem; height: 2.4rem; } .pouessel-presentation__slider-arrow--prev { left: 1rem; } .pouessel-presentation__slider-arrow--next { right: 1rem; } .pouessel-presentation__slider-dots { bottom: 1rem; } }

/*--------------------------------------------------------------
Frise chronologique Pouessel
--------------------------------------------------------------*/
.pouessel-timeline { position: relative; margin-top: 2.2rem; max-width: 44rem; }

.pouessel-timeline::before { content: ""; position: absolute; left: 4.6rem; top: 0.7rem; bottom: 0.7rem; width: 0.15rem; background: rgba(234, 201, 39, 0.5); }

.pouessel-timeline__item { position: relative; display: grid; grid-template-columns: 8.5rem 1fr; gap: 1.5rem; margin-bottom: 1.8rem; }

.pouessel-timeline__item:last-child { margin-bottom: 0; }

.pouessel-timeline__date { position: relative; z-index: 2; display: flex; align-items: center; justify-content: center; min-height: 3.6rem; padding-inline: 0.8rem; background: #eac927; color: #ffffff; font-weight: 800; text-transform: uppercase; box-shadow: 0 1rem 2rem rgba(0, 0, 0, 0.18); }

.pouessel-timeline__date::after { content: ""; position: absolute; right: -0.45rem; bottom: -0.45rem; width: 1.4rem; height: 1.4rem; background: #0c68b4; z-index: -1; }

.pouessel-timeline__content { position: relative; padding: 1.4rem; background: rgba(255, 255, 255, 0.1); border-left: 0.2rem solid #eac927; overflow: hidden; }

.pouessel-timeline__content::before { content: ""; position: absolute; right: -2.8rem; top: -2.8rem; width: 7rem; height: 7rem; background: rgba(255, 255, 255, 0.08); transform: rotate(18deg); pointer-events: none; }

.pouessel-timeline__title { position: relative; z-index: 1; color: #ffffff; font-weight: 800; text-transform: uppercase; line-height: 1.15; }

.pouessel-timeline__text { position: relative; z-index: 1; margin-top: 0.7rem; color: rgba(255, 255, 255, 0.88); line-height: 1.65; }

@media screen and (max-width: 768px) { .pouessel-timeline { margin-top: 2rem; } .pouessel-timeline::before { left: 1.7rem; } .pouessel-timeline__item { grid-template-columns: 1fr; gap: 1rem; padding-left: 3.5rem; } .pouessel-timeline__date { position: relative; width: fit-content; min-height: 3.2rem; } .pouessel-timeline__date::before { content: ""; position: absolute; left: -2.35rem; top: 50%; width: 1rem; height: 1rem; background: #eac927; transform: translateY(-50%) rotate(45deg); } }

@media screen and (max-width: 560px) { .pouessel-timeline__item { padding-left: 2.8rem; } .pouessel-timeline::before { left: 1.3rem; } .pouessel-timeline__content { padding: 1.2rem; } }

/*********************************************************************OFFRES EMPLOI************************************************************/
.pouessel-jobs { position: relative; overflow: hidden; background: #ffffff; color: #061426; padding-block: 7rem; padding-inline: 6vw; }

.pouessel-jobs::before { content: ""; position: absolute; left: -10vw; bottom: -13vh; width: 62vw; height: 25vh; background: rgba(234, 201, 39, 0.18); border-radius: 50% 50% 0 0; transform: rotate(-5deg); pointer-events: none; }

.pouessel-jobs::after { content: ""; position: absolute; right: -8vw; top: 4rem; width: 22rem; height: 22rem; border: 0.15rem solid rgba(12, 104, 180, 0.12); transform: rotate(18deg); pointer-events: none; }

.pouessel-jobs__inner { position: relative; z-index: 2; max-width: 1180px; margin-inline: auto; }

.pouessel-jobs__intro { margin-bottom: 3.5rem; }

.pouessel-jobs__title { position: relative; color: #2472a4; font-size: 2.5rem; font-weight: 700; text-transform: uppercase; line-height: 1.08; }

.pouessel-jobs__title::after { content: ""; display: block; width: 5rem; height: 0.22rem; background: #eac927; margin-top: 1.2rem; }

.pouessel-jobs__text { margin-top: 1.6rem; color: rgba(6, 20, 38, 0.78); line-height: 1.75; }

.pouessel-jobs__slider-wrap { position: relative; }

.pouessel-jobs__slider { position: relative; min-height: 360px; overflow: hidden; }

.pouessel-jobs__slide { position: absolute; inset: 0; opacity: 0; transform: translateX(2rem); pointer-events: none; transition: opacity 0.45s ease, transform 0.45s ease; }

.pouessel-jobs__slide.is-active { opacity: 1; transform: translateX(0); pointer-events: auto; }

.pouessel-jobs__card { position: relative; overflow: hidden; min-height: 360px; background: #9e8068; color: #ffffff; padding: 3rem; border-bottom: 0.28rem solid #eac927; box-shadow: 0 1.5rem 3rem rgba(6, 20, 38, 0.16); }

.pouessel-jobs__card-top { position: relative; z-index: 1; display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: 1.8rem; }

.pouessel-jobs__badge { display: inline-flex; align-items: center; padding: 0.55rem 0.8rem; background: #eac927; color: #ffffff; font-weight: 800; text-transform: uppercase; letter-spacing: 0.04em; }

.pouessel-jobs__number { color: rgba(255, 255, 255, 0.32); font-weight: 800; }

.pouessel-jobs__card-title { position: relative; z-index: 1; color: #ffffff; font-weight: 800; text-transform: uppercase; line-height: 1.15; }

.pouessel-jobs__card-title::after { content: ""; display: block; width: 3.6rem; height: 0.18rem; background: #eac927; margin-top: 1rem; }

.pouessel-jobs__card-text { position: relative; z-index: 1; margin-top: 1.3rem; max-width: 720px; color: rgba(255, 255, 255, 0.86); line-height: 1.65; }

.pouessel-jobs__link { position: relative; z-index: 1; display: inline-flex; align-items: center; gap: 0.75rem; margin-top: 2rem; color: #ffffff; font-weight: 800; text-transform: uppercase; text-decoration: none; }

.pouessel-jobs__link svg { width: 1.2rem; height: 1.2rem; fill: none; stroke: currentColor; stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; transition: transform 0.3s ease; }

.pouessel-jobs__link:hover { color: #eac927; text-decoration: none; }

.pouessel-jobs__link:hover svg { transform: translateX(0.35rem); }

.pouessel-jobs__controls { display: flex; align-items: center; justify-content: flex-end; gap: 1rem; margin-top: 1.8rem; }

.pouessel-jobs__arrow { width: 3rem; height: 3rem; border: none; border-radius: 0; background: #eac927; color: #ffffff; font-weight: 800; cursor: pointer; transition: background 0.3s ease, transform 0.3s ease; }

.pouessel-jobs__arrow:hover { background: #0c68b4; transform: translateY(-0.2rem); }

.pouessel-jobs__dots { display: flex; align-items: center; gap: 0.55rem; }

.pouessel-jobs__dot { width: 0.75rem; height: 0.75rem; padding: 0; border: none; border-radius: 0; background: rgba(12, 104, 180, 0.24); cursor: pointer; transform: skewX(-22deg); transition: width 0.3s ease, background 0.3s ease; }

.pouessel-jobs__dot.is-active { width: 2rem; background: #eac927; }

.pouessel-jobs__decor { position: absolute; pointer-events: none; opacity: 0.14; }

.pouessel-jobs__decor--one { top: 5rem; right: 7vw; width: 10rem; height: 10rem; background: linear-gradient(#0c68b4, #0c68b4) 0 0/30% 30% no-repeat, linear-gradient(#eac927, #eac927) 50% 50%/30% 30% no-repeat, linear-gradient(#0c68b4, #0c68b4) 100% 100%/30% 30% no-repeat; }

.pouessel-jobs__decor--two { left: 5vw; top: 12rem; width: 18rem; height: 18rem; border: 0.15rem solid rgba(12, 104, 180, 0.18); transform: rotate(18deg); }

@media screen and (max-width: 768px) { .pouessel-jobs { padding-block: 5rem; padding-inline: 5vw; } .pouessel-jobs__intro { margin-bottom: 2.5rem; } .pouessel-jobs__slider { min-height: 420px; } .pouessel-jobs__card { min-height: 420px; padding: 2rem; } .pouessel-jobs__controls { justify-content: flex-start; } }

@media screen and (max-width: 560px) { .pouessel-jobs { padding-block: 4rem; padding-inline: 4vw; } .pouessel-jobs__slider { min-height: 470px; } .pouessel-jobs__card { min-height: 470px; padding: 1.5rem; } .pouessel-jobs__card::after { display: none; } .pouessel-jobs__arrow { width: 2.7rem; height: 2.7rem; } }

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