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

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

.first-activity-title { position: relative; display: inline-block; /* limite à la taille du texte */ }

.first-activity-title::after { content: ""; display: block; width: 80px; height: 2px; background-color: #b30030; margin-top: 30px; }

.second-activity-title { position: relative; display: inline-block; /* limite à la taille du texte */ }

.second-activity-title::after { content: ""; display: block; width: 80px; height: 2px; background-color: #b30030; margin-top: 30px; }

.third-activity-title { position: relative; display: inline-block; /* limite à la taille du texte */ }

.third-activity-title::after { content: ""; display: block; width: 80px; height: 2px; background-color: #b30030; margin-top: 30px; }

.display-6.titles.fw-bold.text-body-emphasis.lh-1.mb-5 { margin-bottom: 1rem !important; }

a.grow.button_header.text-color-fourth.mx-3.mx-lg-2.p-2.rounded-pill.text-decoration-none.button-header-telephone { border-radius: 2px !important; font-weight: 600; letter-spacing: 1.2px; }

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

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

.mb-4.text-center.display-6.titles { color: #b30030; letter-spacing: -0.5px; }

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

button.w-100.btn.btn-outline-dark { border-radius: 0px; border: 1px solid #b30030; color: #fff; font-weight: 600; background: #b30030; transition: transform .2s, background .2s, border-color .2s; text-transform: uppercase; font-family: 'Arial'; }

button.w-100.btn.btn-outline-dark:hover { border-radius: 0px; border: 1px solid #b30030; font-weight: 600; background: var(--red-light); transform: translateY(-2px); color: var(--white) !important; }

.lh-1.mb-3.titles { text-align: left; padding-left: 100px; }

@media (max-width: 768px) { .lh-1.mb-3.titles { text-align: left; padding-left: 20px; margin-bottom: 40px !important; } }

:root { --red: #b30030; --red-light: #9E022C; --white: #ffffff; --black: #111111; --gray-text: #555555; --bg: #F2F2F0; --gray-text: #555555; --gray-light: #F2F2F0; --border: #E8E8E6; }

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

html, body { width: 100%; overflow-x: hidden; }

/* ============================ SAVOIR-FAIRE PLEIN ÉCRAN ============================ */
.savoirfaire-full { background-color: #fff; color: #0a2e50; width: 100vw; margin: 0; padding: 0; overflow-x: hidden; }

.savoirfaire-container { display: flex; justify-content: space-evenly; align-items: center; /* ✅ centrage vertical */ width: 100%; min-height: 450px; text-align: center; }

/* --- Éléments --- */
.savoirfaire-item { flex: 1; padding: 80px; box-sizing: border-box; display: flex; flex-direction: column; justify-content: center; align-items: center; }

/* --- Icônes PNG --- */
.savoirfaire-icon img { width: 100px; /* ✅ taille modifiable ici */ height: auto; margin-bottom: 25px; opacity: 0.9; }

/* --- Titres --- */
.savoirfaire-item h3 { font-size: 1.8rem; margin-bottom: 20px; color: #000; font-family: 'Arial'; font-weight: 800 !important; }

/* --- Paragraphes --- */
.savoirfaire-item p { color: #111; font-size: 16px; max-width: 390px; margin: 0 auto; }

/* --- Séparateur --- */
.savoirfaire-divider { width: 1.5px; height: 240px; background-color: #b30030; align-self: center; }

/* --- Responsive --- */
@media (max-width: 1024px) { .savoirfaire-container { flex-direction: column; align-items: center; } .savoirfaire-divider { width: 50%; height: 1px; background-color: rgba(255, 255, 255, 0.3); margin: 25px 0; } .savoirfaire-item { width: 100%; max-width: 600px; padding: 50px 20px; } .savoirfaire-icon img { width: 70px; } }

/* =========================== BLOC TEXTE + IMAGE =========================== */
.about-split { background: #ffffff; padding: 80px 80px; }

.about-split1 { background: var(--bg); padding: 80px 80px; }

.about-split__container { max-width: 1700px; margin: 0 auto; }

.about-split__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: center; }

.about-split__content { max-width: 720px; }

.about-split__media { position: relative; max-width: 860px; width: 100%; }

.about-split__media img { width: 100%; height: 450px; object-fit: cover; display: block; position: relative; z-index: 1; }

/* Coin rouge haut gauche */
.about-split__media::before { content: ''; position: absolute; top: -10px; left: -10px; width: 32px; height: 32px; border-top: 3px solid var(--red); border-left: 3px solid var(--red); z-index: 2; pointer-events: none; }

/* Coin rouge bas droite */
.about-split__media::after { content: ''; position: absolute; bottom: -10px; right: -10px; width: 32px; height: 32px; border-bottom: 3px solid var(--red); border-right: 3px solid var(--red); z-index: 2; pointer-events: none; }

/* =========================== RESPONSIVE =========================== */
@media (max-width: 1200px) { .about-split { padding: 70px 30px; } .about-split1 { padding: 70px 30px; } .about-split__grid { gap: 45px; } .about-split__title { font-size: 3.2rem; } .about-split__media img { height: 520px; } }

@media (max-width: 900px) { .about-split { padding: 55px 20px; } .about-split1 { padding: 55px 20px; } .about-split__grid { grid-template-columns: 1fr; gap: 35px; } .about-split__content { max-width: 100%; } .about-split__title { font-size: 2.5rem; margin-bottom: 24px; } .about-split__text { font-size: 1rem; line-height: 1.75; } .about-split__media img { height: 420px; } }

@media (max-width: 520px) { .about-split { padding: 45px 16px; } .about-split1 { padding: 45px 16px; } .about-split__eyebrow { gap: 10px; margin-bottom: 18px; } .about-split__eyebrow-line { width: 24px; } .about-split__eyebrow-text { font-size: 0.72rem; letter-spacing: 0.22em; } .about-split__title { font-size: 1.9rem; line-height: 1.15; margin-bottom: 20px; } .about-split__text { font-size: 0.96rem; line-height: 1.7; } .about-split__media img { height: 280px; } }

/* =========================== BLOC OCCASIONS LEBONCOIN =========================== */
.occasions-leboncoin { position: relative; background: #fff; padding: 80px 40px; min-height: 650px; overflow: hidden; }

.occasions-leboncoin__media { position: absolute; top: 80px; right: 80px; width: 66%; height: 560px; background-image: url("https://firebasestorage.googleapis.com/v0/b/refpro-app-ca244.appspot.com/o/customers%2FvlQndkd5rvMklaMwfV2hSL9nlVA3%2Fimages%2F278123317_306086851630928_1975487330652181327_n_jr8m.webp?alt=media&token=59da0a21-8664-4aa6-b986-d86a3e3b5de6"); background-size: cover; background-position: center; background-repeat: no-repeat; z-index: 1; }

.occasions-leboncoin__card { position: relative; z-index: 2; background: var(--bg); max-width: 640px; padding: 50px 50px 50px; margin-top: 90px; margin-left: 70px; box-sizing: border-box; border: 2px solid #b30030; }

.occasions-leboncoin__title { font-family: 'Arial', sans-serif; font-size: 2rem; line-height: 1.1; font-weight: 900 !important; color: #000; max-width: 530px; margin: 0 0 80px; text-transform: uppercase; }

.occasions-leboncoin__subtitle { font-family: 'Barlow', sans-serif; font-size: 1.2rem; color: #111; margin-top: -60px; margin-bottom: 60px; }

.occasions-leboncoin__btn span { font-size: 1.3rem; line-height: 1; }

/* =========================== RESPONSIVE =========================== */
@media (max-width: 1200px) { .occasions-leboncoin__media { right: 40px; width: 62%; height: 500px; } .occasions-leboncoin__card { max-width: 560px; padding: 80px 70px; margin-left: 30px; } .occasions-leboncoin__title { font-size: 2.5rem; margin-bottom: 90px; } }

@media (max-width: 900px) { .occasions-leboncoin { padding: 50px 20px; min-height: auto; } .occasions-leboncoin__media { position: relative; top: auto; right: auto; width: 100%; height: 320px; margin-bottom: -40px; } .occasions-leboncoin__card { max-width: 100%; margin-top: 40px; padding: 50px 30px 40px; } .occasions-leboncoin__title { max-width: 100%; font-size: 2rem; margin-bottom: 40px; } .occasions-leboncoin__subtitle { margin-top: -20px; margin-bottom: 35px; font-size: 0.85rem; letter-spacing: 0.08em; line-height: 1.5; } }

@media (max-width: 520px) { .occasions-leboncoin { padding: 35px 16px; } .occasions-leboncoin__media { height: 240px; margin-bottom: -25px; } .occasions-leboncoin__card { padding: 34px 22px 28px; margin-top: 40px; margin-left: 0px; } .occasions-leboncoin__title { font-size: 1.55rem; line-height: 1.2; margin-bottom: 28px; } .occasions-leboncoin__subtitle { margin-top: -10px; margin-bottom: 24px; font-size: 1rem; letter-spacing: 0.05em; line-height: 1.6; } .occasions-leboncoin__btn { width: 100%; justify-content: center; padding: 15px 20px; font-size: 0.95rem; } }

/* ── PAGE HEADER ── */
.page-header-ac { position: relative; width: 100%; height: clamp(350px, 45vh, 520px); overflow: hidden; display: flex; align-items: flex-end; font-family: 'Barlow', sans-serif; }

/* Image de fond */
.page-header-ac__bg { position: absolute; inset: 0; z-index: 0; background-size: cover; background-position: center 50%; }

/* Overlay — même logique que le hero */
.page-header-ac__overlay { position: absolute; inset: 0; z-index: 1; background: linear-gradient(to right, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0.45) 45%, rgba(0, 0, 0, 0) 100%); }

/* ── CONTENU ── */
.page-header-ac__inner { position: relative; z-index: 10; padding: 56px 100px; width: 100%; max-width: 1000px; }

.page-header-ac__tag { display: inline-flex; align-items: center; gap: 10px; margin-bottom: 18px; opacity: 0; animation: fadeUp .60s ease .1s forwards; }

.page-header-ac__tag-bar { width: 28px; height: 2px; background: var(--red); flex-shrink: 0; }

.page-header-ac__tag-label { font-family: 'Barlow Condensed', sans-serif; font-size: 11px; font-weight: 700; letter-spacing: 4px; text-transform: uppercase; color: var(--red-light); }

.page-header-ac__title { font-family: 'Barlow Condensed', sans-serif; font-weight: 900; font-size: 4rem; text-transform: uppercase; line-height: .90; letter-spacing: -.5px; color: var(--white); opacity: 0; animation: fadeUp .60s ease .22s forwards; }

.page-header-ac__title em { font-style: normal; color: rgba(255, 255, 255, 0.8); }

.page-header-ac__subtitle { margin-top: 14px; font-size: clamp(13px, 1.4vw, 15px); font-weight: 400; line-height: 1.65; color: white; max-width: 600px; opacity: 0; animation: fadeUp .60s ease .46s forwards; }

/* ── RESPONSIVE ── */
@media (max-width: 768px) { .page-header-ac__inner { padding: 0 24px 40px; } .page-header-ac { height: clamp(260px, 40vh, 360px); } .page-header-ac__title { font-size: 3rem; } }

/* ── KEYFRAMES ── */
@keyframes fadeUp { from { opacity: 0;
    transform: translateY(20px); }
  to { opacity: 1;
    transform: translateY(0); } }

/*------------------------------------------Bouton Fixe en bas à droite------------------------------*/
.btnFixe { position: fixed; bottom: 20px; right: 20px; z-index: 10; width: 125px; transition: width 0.5s ease; }

.btnFixe:hover { width: 130px; transition: width 0.5s ease; }

@media (max-width: 768px) { .btnFixe { width: 110px; right: 12px; bottom: 12px; } .btnFixe:hover { width: 115px; } }

@media (max-width: 480px) { .btnFixe { width: 100px; right: 10px; bottom: 10px; } .btnFixe:hover { width: 105px; } }

/* =========================== BLOC MAPS =========================== */
.zone-garage-ac { position: relative; padding: 100px 60px; background-color: #fff; overflow: hidden; font-family: 'Barlow', sans-serif; }

/* Overlay blanc semi-transparent pour lisibilité */
.zone-garage-ac::before { content: ''; position: absolute; inset: 0; background: rgba(255, 255, 255, 0.88); pointer-events: none; z-index: 0; }

/* ── CONTAINER ── */
.zone-garage-ac-container { position: relative; z-index: 1; max-width: 1600px; margin: 0 auto; }

/* ── GRID ── */
.zone-garage-ac-grid { display: grid; grid-template-columns: 1.1fr 1fr; gap: 80px; align-items: center; }

/* ── MAP ── */
.zone-garage-ac-map { height: 500px; overflow: hidden; box-shadow: 0 20px 60px rgba(0, 0, 0, 0.1); transition: transform .3s ease, box-shadow .3s ease; animation: fadeInLeftZone .8s ease-out; position: relative; }

.zone-garage-ac-map::before { content: ''; position: absolute; top: 0; left: 0; width: 32px; height: 32px; border-top: 3px solid var(--red); border-left: 3px solid var(--red); z-index: 2; pointer-events: none; }

.zone-garage-ac-map::after { content: ''; position: absolute; bottom: 0; right: 0; width: 32px; height: 32px; border-bottom: 3px solid var(--red); border-right: 3px solid var(--red); z-index: 2; pointer-events: none; }

.zone-garage-ac-map iframe { width: 100%; height: 100%; border: none; display: block; }

/* ── CONTENU ── */
.zone-garage-ac-eyebrow { display: inline-flex; align-items: center; gap: 10px; margin-bottom: 20px; }

.zone-garage-ac-eyebrow-bar { width: 24px; height: 2px; background: var(--red); flex-shrink: 0; }

.zone-garage-ac-eyebrow-label { font-family: 'Barlow Condensed', sans-serif; font-size: 11px; font-weight: 700; letter-spacing: 4px; text-transform: uppercase; color: var(--red); }

.zone-garage-ac-title { font-family: 'Barlow Condensed', sans-serif; font-weight: 900 !important; font-size: 2rem; text-transform: uppercase; line-height: 1.2; color: var(--black); margin-bottom: 28px; }

.zone-garage-ac-text { font-size: clamp(14px, 1.4vw, 16px); font-weight: 400; line-height: 1.80; color: var(--black); margin-bottom: 16px; }

/* ── RESPONSIVE ── */
@media (max-width: 1200px) { .zone-garage-ac { padding: 80px 40px; } .zone-garage-ac-grid { gap: 60px; } .zone-garage-ac-map { height: 450px; } }

@media (max-width: 968px) { .zone-garage-ac { padding: 80px 30px; } .zone-garage-ac-grid { grid-template-columns: 1fr; gap: 50px; } .zone-garage-ac-map { height: 400px; } }

@media (max-width: 640px) { .zone-garage-ac { padding: 60px 20px; } .zone-garage-ac-map { height: 320px; } }

/* =========================== BLOC GALERIE =========================== */
/* Style pour la galerie */
.photo-gallery { display: grid; grid-template-columns: repeat(4, 1fr); }

/* Style pour chaque image */
.gallery-item img { width: 100%; height: auto; object-fit: cover; transition: transform 0.3s ease, box-shadow 0.3s ease; }

/* Responsive */
@media (max-width: 768px) { .photo-gallery { grid-template-columns: repeat(2, 1fr); } }

/* =========================== BLOC AVIS CLIENTS =========================== */
.testimonials-section { padding: 100px 40px; background: var(--bg); }

.testimonials-container { max-width: 1300px; margin: 0 auto; text-align: center; }

.testimonials-carousel { position: relative; padding: 0 100px; }

.testimonials-wrapper { overflow: hidden; position: relative; }

.testimonials-track { display: flex; transition: transform 0.5s ease; }

.testimonial-item { min-width: 100%; padding: 40px 20px; opacity: 0; transition: opacity 0.5s ease; }

.testimonial-item.active { opacity: 1; }

.testimonial-quote { margin-bottom: 40px; font-weight: 400; font-size: 1.05rem; line-height: 1.6; color: var(--black); }

.testimonial-author { font-size: 1.1rem; color: #1a2332; font-weight: 600; margin-bottom: 5px; }

.testimonial-stars { display: flex; justify-content: center; gap: 5px; }

.testimonial-stars svg { width: 20px; height: 20px; fill: var(--red); }

.testimonial-nav { position: absolute; top: 50%; transform: translateY(-50%); width: 50px; height: 50px; border: none; background-color: transparent; cursor: pointer; display: flex; align-items: center; justify-content: center; transition: all 0.3s ease; z-index: 10; }

.testimonial-nav:hover { transform: translateY(-50%) scale(1.1); }

.testimonial-nav svg { width: 30px; height: 30px; stroke: #1a2332; stroke-width: 2; fill: none; }

.testimonial-nav.prev { left: 0; }

.testimonial-nav.next { right: 0; }

.testimonial-dots { display: flex; justify-content: center; gap: 10px; margin-top: 40px; }

.testimonial-dot { width: 10px; height: 10px; border-radius: 50%; background-color: #ddd; border: none; cursor: pointer; transition: all 0.3s ease; padding: 0; }

.testimonial-dot.active { background-color: #1a2332; width: 30px; border-radius: 5px; }

@media (max-width: 768px) { .testimonials-section { padding: 60px 20px; } .testimonials-title { font-size: 2rem; } .testimonial-quote { font-size: 1.2rem; } .testimonials-carousel { padding: 0 40px; } .testimonial-nav { width: 40px; height: 40px; } }

/* =========================== SECTION : SERVICES =========================== */
.services { width: 100%; background: #ffffff; padding: 90px 56px; font-family: 'Barlow', sans-serif; }

.services__header { text-align: center; margin-bottom: 80px; }

.services__header1 { text-align: center; margin-bottom: 0px; }

.services__supertitle { display: inline-flex; align-items: center; justify-content: center; gap: 10px; margin-bottom: 20px; }

.services__supertitle-bar { width: 24px; height: 2px; background: var(--red); flex-shrink: 0; }

.services__supertitle-label { font-family: 'Barlow Condensed', sans-serif; font-size: 11px; font-weight: 700; letter-spacing: 4px; text-transform: uppercase; color: var(--red); }

.services__title { font-family: 'Barlow Condensed', sans-serif; font-weight: 900 !important; font-size: 2rem; text-transform: uppercase; line-height: .92; color: var(--black); }

.services__title em { font-style: italic; color: var(--red); }

/* ── GRILLE ── */
.services__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 2px; max-width: 1300px; margin: 0 auto; background: var(--border); }

/* ── CARD ── */
.service-card { background: #ffffff; padding: 48px 40px 44px; display: flex; flex-direction: column; gap: 0; text-decoration: none; position: relative; overflow: hidden; transition: background .25s; }

.service-card::after { content: ''; position: absolute; bottom: 0; left: 0; width: 0; height: 2px; background: var(--red); transition: width .35s ease; }

.service-card:hover { background: var(--gray-light); }

.service-card:hover::after { width: 100%; }

.service-card:hover .service-card__arrow { transform: translateX(5px); opacity: 1; }

/* Icône */
.service-card__icon { width: 70px; height: 70px; margin-bottom: 20px; flex-shrink: 0; }

.service-card__icon img { width: 100%; height: auto; }

.service-card__arrow { width: 20px; /* Ajuster la taille de l'icône de la flèche */ height: auto; }

/* Titre */
.service-card__title { font-family: 'Barlow Condensed', sans-serif; font-weight: 600 !important; font-size: 28px; text-transform: uppercase; line-height: .95; color: var(--black); margin-bottom: 16px; }

/* Divider */
.service-card__divider { width: 28px; height: 2px; background: var(--border); margin-bottom: 16px; transition: background .25s; }

.service-card:hover .service-card__divider { background: var(--red); }

/* Description */
.service-card__desc { font-size: 16px; font-weight: 400; line-height: 1.70; color: var(--black); flex: 1; }

/* Lien bas */
.service-card__footer { display: flex; align-items: center; gap: 8px; margin-top: 32px; }

.service-card__link-label { font-family: 'Barlow Condensed', sans-serif; font-size: 12px; font-weight: 700; letter-spacing: 2.5px; text-transform: uppercase; color: var(--red); }

.service-card__arrow { width: 14px; height: 14px; flex-shrink: 0; opacity: .6; transition: transform .25s, opacity .25s; }

/* ── RESPONSIVE ── */
@media (max-width: 900px) { .services { padding: 64px 32px; } .services__grid { grid-template-columns: 1fr; } .service-card { padding: 40px 32px; } }

@media (max-width: 540px) { .services { padding: 48px 24px; } .service-card { padding: 36px 24px; } }

/* =========================== SECTION : VIDEO =========================== */
.split { width: 100%; background: var(--bg); display: flex; align-items: stretch; min-height: 520px; font-family: 'Barlow', sans-serif; }

/* ── GAUCHE ── */
.split__left { flex: 0 0 45%; display: flex; align-items: center; padding: 72px 80px; }

.split__text { max-width: 620px; }

.split__supertitle { display: inline-flex; align-items: center; gap: 10px; margin-bottom: 20px; }

.split__supertitle-bar { width: 24px; height: 2px; background: var(--red); flex-shrink: 0; }

.split__supertitle-label { font-family: 'Barlow Condensed', sans-serif; font-size: 11px; font-weight: 700; letter-spacing: 4px; text-transform: uppercase; color: var(--red); }

.split__title { font-family: 'Barlow Condensed', sans-serif; font-weight: 900 !important; font-size: 2rem; text-transform: uppercase; line-height: 1.2; letter-spacing: -.3px; color: var(--black); padding-bottom: 20px; }

.split__title em { font-style: normal; color: var(--red); display: block; }

.split__body { font-size: clamp(14px, 1.4vw, 16px); font-weight: 400; line-height: 1.75; color: var(--black); }

.split__right { flex: 1; display: flex; align-items: center; justify-content: center; padding: 48px 56px 48px 24px; }

.split__video-wrap { width: 100%; max-width: 720px; aspect-ratio: 16 / 9; position: relative; overflow: hidden; box-shadow: 0 12px 40px rgba(0, 0, 0, 0.14); cursor: pointer; }

.split__video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; }

/* ── OVERLAY ── */
.video-overlay { position: absolute; inset: 0; z-index: 2; display: flex; align-items: center; justify-content: center; background: rgba(0, 0, 0, 0.3); transition: background .25s; }

.video-overlay.is-playing { background: transparent; pointer-events: none; }

.video-overlay.is-playing .video-play-btn { opacity: 0; transform: scale(0.8); }

.split__video-wrap:hover .video-overlay.is-playing { background: rgba(0, 0, 0, 0.12); pointer-events: auto; }

.split__video-wrap:hover .video-overlay.is-playing .video-play-btn { opacity: 1; transform: scale(1); }

.video-play-btn { width: 68px; height: 68px; border-radius: 50%; background: rgba(255, 255, 255, 0.92); display: flex; align-items: center; justify-content: center; transition: opacity .25s, transform .25s, background .2s; flex-shrink: 0; }

.video-play-btn:hover { background: #ffffff; }

.video-play-btn svg { width: 24px; height: 24px; }

/* ── BARRE CONTRÔLES ── */
.video-controls { position: absolute; bottom: 0; left: 0; right: 0; z-index: 3; display: flex; align-items: center; gap: 10px; padding: 28px 14px 10px; background: linear-gradient(to top, rgba(0, 0, 0, 0.62) 0%, transparent 100%); opacity: 0; transition: opacity .25s; pointer-events: none; }

.split__video-wrap:hover .video-controls { opacity: 1; pointer-events: auto; }

.ctrl-btn { background: none; border: none; cursor: pointer; padding: 4px; display: flex; align-items: center; justify-content: center; flex-shrink: 0; transition: transform .15s; }

.ctrl-btn:hover { transform: scale(1.15); }

.ctrl-btn svg { width: 18px; height: 18px; }

.progress-wrap { flex: 1; height: 3px; background: rgba(255, 255, 255, 0.28); border-radius: 2px; cursor: pointer; position: relative; }

.progress-bar { height: 100%; width: 0%; background: #ffffff; border-radius: 2px; pointer-events: none; }

.ctrl-time { font-family: 'Barlow Condensed', sans-serif; font-size: 12px; font-weight: 600; color: rgba(255, 255, 255, 0.8); letter-spacing: .5px; white-space: nowrap; flex-shrink: 0; }

/* ── RESPONSIVE ── */
@media (max-width: 900px) { .split { flex-direction: column; } .split__left { flex: none; padding: 56px 32px; } .split__right { flex: none; padding: 0 32px 56px; } }

@media (max-width: 540px) { .split__left { padding: 48px 24px; } .split__right { padding: 0 24px 48px; } }

/* =========================== SECTION : LOGO =========================== */
.logos-strip { width: 100%; background: #ffffff; padding: 80px 56px; display: flex; align-items: center; justify-content: center; }

.logos-strip__inner { display: flex; align-items: center; justify-content: center; width: 100%; max-width: 1300px; gap: 0; }

.logos-strip__item { flex: 1; display: flex; align-items: center; justify-content: center; padding: 0 40px; }

.logos-strip__item img { height: 60px; width: auto; max-width: 140px; object-fit: contain; }

.logos-strip__sep { width: 1px; height: 48px; background: #e0e0e0; flex-shrink: 0; }

.logos-strip__item a { display: inline-flex; align-items: center; justify-content: center; text-decoration: none; transition: transform 0.3s ease; }

.logos-strip__item img { height: 60px; width: auto; max-width: 140px; object-fit: contain; transition: transform 0.3s ease, filter 0.3s ease, opacity 0.3s ease; }

.logos-strip__item a:hover img { transform: translateY(-3px) scale(1.06); filter: brightness(1.05); }

.logos-strip__item a:focus-visible img { transform: translateY(-3px) scale(1.06); filter: brightness(1.05); }

@media (max-width: 768px) { .logos-strip { padding: 32px 24px; } .logos-strip__item { padding: 0 20px; } .logos-strip__item img { height: 36px; max-width: 90px; } }

@media (max-width: 540px) { .logos-strip__inner { flex-wrap: wrap; gap: 24px; } .logos-strip__sep { display: none; } .logos-strip__item { flex: 0 0 calc(33% - 16px); padding: 0; } }

/* =========================== SECTION : ACCUEIL =========================== */
.hero { position: relative; width: 100%; height: 100svh; min-height: 580px; overflow: hidden; display: flex; align-items: center; font-family: 'Barlow', sans-serif; z-index: 0; }

.hero__bg { position: absolute; inset: 0; z-index: -1; background-image: url("https://storage.googleapis.com/refpro-app-ca244.appspot.com/customers%2FvlQndkd5rvMklaMwfV2hSL9nlVA3%2Fimages%2F278123317_306086851630928_1975487330652181327_n_jr8m.webp"); background-size: cover; background-position: center 30%; transform: scale(1.04); animation: slowZoom 12s ease forwards; }

@keyframes slowZoom { from { transform: scale(1.04); }
  to { transform: scale(1); } }

.hero__overlay { position: absolute; inset: 0; z-index: 1; background: linear-gradient(to right, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0.45) 45%, rgba(0, 0, 0, 0) 100%); }

.hero__inner { position: relative; z-index: 2; width: 100%; max-width: 880px; padding: 0 80px 0px; }

.hero__tag { display: inline-flex; align-items: center; gap: 10px; margin-bottom: 30px; opacity: 0; animation: fadeUp .65s ease .1s forwards; }

.hero__tag-bar { width: 28px; height: 2px; background: var(--red); flex-shrink: 0; }

.hero__tag-label { font-family: 'Barlow Condensed', sans-serif; font-size: 14px; font-weight: 700; letter-spacing: 4px; text-transform: uppercase; color: var(--red); }

.hero__title { font-family: 'Barlow Condensed', sans-serif; font-weight: 900; font-size: clamp(58px, 9.5vw, 5rem); text-transform: uppercase; line-height: 1; letter-spacing: -.5px; color: var(--white); opacity: 0; animation: fadeUp .65s ease .25s forwards; }

.hero__title em { font-style: normal; color: rgba(255, 255, 255, 0.68); display: block; }

.hero__desc { margin-top: 18px; margin-bottom: 50px !important; font-size: clamp(13px, 1.5vw, 17px); font-weight: 400; line-height: 1.7; color: white; max-width: 600px; opacity: 0; animation: fadeUp .65s ease .45s forwards; }

.hero__actions { display: flex; gap: 12px; margin-top: 40px; flex-wrap: wrap; opacity: 0; animation: fadeUp .65s ease .60s forwards; }

.hero__btn { display: inline-flex; align-items: center; gap: 9px; padding: 14px 28px; border-radius: 2px; font-family: 'Barlow Condensed', sans-serif; font-size: 13px; font-weight: 700; letter-spacing: 1.2px; text-transform: uppercase; text-decoration: none; cursor: pointer; border: none; transition: transform .2s, background .2s, border-color .2s; }

.hero__btn--fill { background: var(--red); color: var(--white) !important; }

.hero__btn--fill:hover { background: var(--red-light); transform: translateY(-2px); color: var(--white) !important; }

.hero__btn--fill:hover .btn-arrow { transform: translateX(3px); }

.hero__btn--outline { background: #ffffff8c !important; color: black !important; border: 1.5px solid rgba(255, 255, 255, 0.3); }

.hero__btn--outline:hover { border-color: rgba(255, 255, 255, 0.75); transform: translateY(-2px); color: black !important; }

.hero__btn--fill1 { background: var(--red); color: var(--white) !important; margin-top: 20px; }

.hero__btn--fill1:hover { background: var(--red-light); transform: translateY(-2px); color: var(--white) !important; }

.btn-arrow { width: 15px; height: 15px; flex-shrink: 0; transition: transform .2s; }

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

@keyframes fadeIn { from { opacity: 0; }
  to { opacity: 1; } }

@keyframes dotBounce { 0%, 100% { transform: translateY(0);
    opacity: .7; }
  50% { transform: translateY(10px);
    opacity: .15; } }

@media (max-width: 640px) { .hero__inner { padding: 0 24px 64px; } .hero__scroll { display: none; } }

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