@charset "UTF-8";
@import url(main.css);
/*======================= CUSTOM PARTIE SEO ============*/
.d-flex.flex-column.flex-lg-row.align-items-center { text-transform: uppercase; font-family: 'Bebas Neue'; font-size: 1.3rem; font-style: italic; }

.maps-section.position-relative.bg-primaryColor { display: none; }

/* =========================== BLOC NAVBAR =========================== */
.navbar { transition: all 0.3s ease; }

.navbar.scrolled { background-color: rgba(51, 51, 51, 0.5) !important; backdrop-filter: blur(1rem); }

/* 📱 Responsive : navbar TOUJOURS visible */
@media (max-width: 991px) { .navbar { background-color: rgba(61, 0, 0, 0.5) !important; backdrop-filter: blur(1rem); } }

.navbar-brand { height: 9vh !important; width: 9vw !important; }

.logo_nav { height: 11vh !important; margin-top: -10px; }

.fs-6.animated-border-button.obftrucs { letter-spacing: 1px; }

a.grow.button_header.text-color-fourth.mx-3.mx-lg-2.my-2.my-lg-1.p-2.rounded-pill.text-decoration-none.button-header-telephone { color: #ffffff !important; background: linear-gradient(135deg, #8a0006 0%, #b40a09 42%, #bd1011 58%, #760004 100%); box-shadow: 0 14px 35px rgba(205, 8, 18, 0.38); border-radius: 0px !important; font-weight: 600; padding: 12px 18px !important; font-size: 17px; }

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

@media (max-width: 900px) { a.navbar-brand { height: 9vh !important; width: 9vh !important; padding-top: 10px !important; } }

footer > div.row.justify-content-center.justify-content-lg-around.text-center.text-lg-start > div:nth-child(3) > div:nth-child(2) > p { font-size: 0; }

footer > div.row.justify-content-center.justify-content-lg-around.text-center.text-lg-start > div:nth-child(3) > div:nth-child(2) > p::before { content: "Basé près de Vire (14500)"; font-size: 16px; }

.display-6.titles.fw-bold.text-body-emphasis.lh-1 { font-style: italic; text-shadow: 0 0 26px rgba(226, 11, 22, 0.4); }

.fs-6.lead.mt-4.mb-4 { color: #d7d7d7; line-height: 1.7; }

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

.mx-auto.col-lg-11.px-4.py-4.bg-primaryColor.text-color-primary.rounded-3.shadow-lg { border-radius: 0px !important; border: 1px solid rgba(171, 8, 8, 0.4); }

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

.spacer { display: none; }

/* =========================== BLOC HEADER =========================== */
.adac-contact-hero { position: relative; min-height: 520px; display: flex; align-items: center; overflow: hidden; background: #030303; color: #ffffff; }

.adac-contact-hero-bg { position: absolute; inset: 0; }

.adac-contact-hero-bg img { width: 100%; height: 100%; object-fit: cover; transform: scale(1.02); }

.adac-contact-hero-overlay { position: absolute; inset: 0; background: radial-gradient(circle at 80% 40%, rgba(205, 8, 18, 0.24), transparent 34%), linear-gradient(90deg, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.5) 50%, rgba(0, 0, 0, 0.2) 100%); z-index: 1; }

.adac-contact-hero-container { position: relative; z-index: 2; width: 100%; max-width: 1250px; margin: 0 auto; padding: 90px 24px; display: flex; align-items: center; gap: 52px; box-sizing: border-box; padding-top: 140px; }

.adac-contact-hero-logo { width: 230px; max-width: 30%; flex-shrink: 0; filter: drop-shadow(0 0 28px rgba(205, 8, 18, 0.38)); }

.adac-contact-hero-content { max-width: 760px; }

.adac-contact-hero-badge { display: inline-flex; align-items: center; padding: 10px 18px; margin-bottom: 24px; border-left: 1px solid rgba(226, 11, 22, 0.75); color: #ffffff; background: rgba(205, 8, 18, 0.16); text-transform: uppercase; letter-spacing: 1.8px; font-weight: 700; font-size: 13px; }

.adac-contact-hero h1 { margin: 0; color: #ffffff; font-size: 84px; line-height: 1.02; text-transform: uppercase; font-style: italic; text-shadow: 0 0 26px rgba(226, 11, 22, 0.4); }

.adac-contact-hero p { max-width: 680px; margin: 26px 0 0; color: #d7d7d7; font-size: 19px; line-height: 1.7; }

@media (max-width: 768px) { .adac-contact-hero { min-height: 480px; } .adac-contact-hero-container { flex-direction: column; align-items: flex-start; gap: 28px; padding: 80px 18px; } .adac-contact-hero-logo { width: 150px; max-width: 100%; margin-top: 40px; } .adac-contact-hero h1 { font-size: 42px; } .adac-contact-hero p { font-size: 16px; } }

/* =========================== BLOC RESEAUX SOCIAUX =========================== */
.adac-social-section { background: #030303; padding: 110px 24px; color: #ffffff; position: relative; background-image: url("https://firebasestorage.googleapis.com/v0/b/refpro-app-ca244.appspot.com/o/customers%2FEaz9JmDPLpMEvzNfv8GlOkZ00v93%2Fimages%2FFond_AD_Auto_Clean_2_lf7f.webp?alt=media&token=4357b757-04e8-4aa9-8746-090359caa30b"); background-size: cover; background-position: center; background-repeat: no-repeat; overflow: hidden; }

.adac-social-container { max-width: 1250px; margin: 0 auto; display: grid; grid-template-columns: 5fr 7fr; gap: 80px; align-items: center; }

.adac-social-video { position: relative; min-height: 520px; overflow: hidden; border: 1px solid rgba(226, 11, 22, 0.45); box-shadow: 0 0 45px rgba(226, 11, 22, 0.16); }

.adac-social-video video { width: 100%; height: 100%; min-height: 520px; object-fit: cover; display: block; filter: grayscale(0.35) contrast(1.12) brightness(0.72); }

.adac-social-content { display: flex; flex-direction: column; align-items: flex-start; }

.adac-social-badge { display: inline-flex; align-items: center; padding: 10px 18px; margin-bottom: 24px; border-left: 1px solid rgba(226, 11, 22, 0.75); color: #ffffff; background: rgba(205, 8, 18, 0.16); text-transform: uppercase; letter-spacing: 1.8px; font-weight: 700; font-size: 13px; }

.adac-social-content h2 { max-width: 860px; margin: 0; color: #ffffff; font-size: 52px; line-height: 1.08; text-transform: uppercase; font-style: italic; text-shadow: 0 0 26px rgba(226, 11, 22, 0.4); }

.adac-social-content > p { margin: 28px 0 0; max-width: 620px; color: #d7d7d7; font-size: 17px; line-height: 1.8; }

.adac-social-icon { width: 50px; height: 50px; margin-bottom: 22px; display: flex; align-items: center; justify-content: center; }

.adac-social-icon svg { width: 44px; height: 44px; fill: #ffffff; }

.adac-social-cards { width: 100%; margin-top: 34px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }

.adac-social-card { position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; padding: 34px 28px; min-height: 230px; text-decoration: none; color: #ffffff; background: linear-gradient(180deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.015)), #080808; border: 1px solid rgba(255, 255, 255, 0.12); overflow: hidden; transition: transform 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease; }

.adac-social-card::before { content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 4px; background: linear-gradient(90deg, #7a0005, #e20b16, #f1454d, #6d0004); }

.adac-social-card span { display: block; color: #d40812; font-size: 28px; letter-spacing: 2px; text-transform: uppercase; text-transform: uppercase; font-family: 'Bebas Neue'; }

.adac-social-name { margin: 0; color: #ffffff; font-size: 20px; line-height: 1.1; }

.adac-social-card p { color: #d7d7d7; font-size: 16px; line-height: 1.6; }

.adac-social-card:hover { transform: translateY(-6px); border-color: rgba(226, 11, 22, 0.65); box-shadow: 0 20px 45px rgba(226, 11, 22, 0.14); }

@media (max-width: 980px) { .adac-social-container { grid-template-columns: 1fr; gap: 42px; } .adac-social-video { min-height: 420px; } .adac-social-video video { min-height: 420px; } .adac-social-content h2 { font-size: 40px; } .adac-social-cards { grid-template-columns: repeat(3, 1fr); } .adac-social-card { padding: 30px 18px; } }

@media (max-width: 620px) { .adac-social-section { padding: 70px 18px; } .adac-social-video, .adac-social-video video { min-height: 340px; } .adac-social-content h2 { font-size: 38px; } .adac-social-cards { grid-template-columns: 1fr; } .adac-social-cards { grid-template-columns: 1fr; } }

/* =========================== BLOC MAP =========================== */
.adac-zone-section { position: relative; background: #030303; overflow: hidden; padding: 110px 24px; color: #fff; }

.adac-zone-section::before { content: ""; position: absolute; inset: 0; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='ng'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23ng)' opacity='1'/%3E%3C/svg%3E"); background-size: 180px; opacity: 0.04; pointer-events: none; z-index: 2; }

.adac-zone-bg { position: absolute; inset: 0; z-index: 0; }

.adac-zone-bg video { width: 100%; height: 100%; object-fit: cover; filter: grayscale(0.75) brightness(0.3); }

.adac-zone-container { position: relative; z-index: 3; max-width: 1250px; margin: 0 auto; display: grid; grid-template-columns: 5fr 7fr; gap: 60px; align-items: center; }

.adac-zone-text { display: flex; flex-direction: column; align-items: flex-start; }

.adac-zone-badge { display: inline-flex; align-items: center; padding: 10px 18px; margin-bottom: 24px; border-left: 1px solid rgba(226, 11, 22, 0.75); color: #ffffff; background: rgba(205, 8, 18, 0.16); text-transform: uppercase; letter-spacing: 1.8px; font-weight: 700; font-size: 13px; }

.adac-zone-text h2 { max-width: 860px; margin: 0; color: #ffffff; font-size: 52px; line-height: 1.08; text-transform: uppercase; font-style: italic; text-shadow: 0 0 26px rgba(226, 11, 22, 0.4); }

.adac-zone-desc { margin: 28px 0 0; max-width: 560px; color: #d7d7d7; font-size: 17px; line-height: 1.8; }

.adac-zone-map { display: flex; justify-content: center; align-items: center; transform: scale(1.18); transform-origin: center; }

.adac-zone-map svg { width: 100%; max-width: 980px; height: auto; overflow: visible; }

.adac-map-dot text { font-size: 15px; font-weight: 700; }

.adac-map-main text { font-size: 17px; font-weight: 900; }

.adac-map-dot, .adac-map-main { cursor: pointer; }

.adac-map-dot circle { filter: url(#adac-zone-glow); transition: transform 0.3s ease; }

.adac-map-dot:hover circle { transform: scale(1.35); }

.adac-map-dot text, .adac-map-main text { font-family: inherit; letter-spacing: 0.04em; }

@media (max-width: 768px) { .adac-zone-section { padding: 75px 18px; } .adac-zone-container { grid-template-columns: 1fr; gap: 42px; overflow: hidden; } .adac-zone-map { order: -1; width: 100%; transform: scale(1.35); transform-origin: center; margin: 35px 0; } .adac-zone-map svg { width: 135%; max-width: none; } .adac-zone-text h2 { font-size: 38px; } .adac-zone-desc { font-size: 16px; } }

@media (max-width: 480px) { .adac-zone-map { transform: scale(1.55); margin: 55px 0; } .adac-zone-map svg { width: 80%; max-width: none; } }

/* =========================== BLOC AVIS =========================== */
.adac-reviews-section { padding: 110px 24px; position: relative; background: radial-gradient(circle at 15% 20%, rgba(212, 8, 18, 0.18), transparent 28%), radial-gradient(circle at 85% 70%, rgba(226, 11, 22, 0.2), transparent 32%), #030303; color: #ffffff; overflow: hidden; }

.adac-reviews-container { max-width: 1250px; margin: 0 auto; text-align: center; }

.adac-reviews-header { margin-bottom: 38px; }

.adac-reviews-subtitle { display: inline-flex; align-items: center; padding: 10px 18px; margin-bottom: 24px; border-left: 1px solid rgba(226, 11, 22, 0.75); color: #ffffff; background: rgba(205, 8, 18, 0.16); text-transform: uppercase; letter-spacing: 1.8px; font-weight: 700; font-size: 13px; }

.adac-reviews-header h2 { max-width: 860px; margin: 0 auto; color: #ffffff; font-size: 52px; line-height: 1.08; text-transform: uppercase; font-style: italic; text-shadow: 0 0 26px rgba(226, 11, 22, 0.4); }

.adac-reviews-carousel { position: relative; padding: 0 90px; }

.adac-reviews-wrapper { overflow: hidden; position: relative; border: 1px solid rgba(255, 255, 255, 0.12); background: rgba(255, 255, 255, 0.035); box-shadow: 0 25px 60px rgba(0, 0, 0, 0.35); }

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

.adac-review-item { min-width: 100%; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 54px 44px; opacity: 0; transition: opacity 0.5s ease; box-sizing: border-box; }

.adac-review-item.active { opacity: 1; }

.adac-review-quote { max-width: 780px; margin: 0 auto 34px; color: #d7d7d7; font-size: 18px; line-height: 1.75; }

.adac-review-author { margin: 0 0 12px; color: #ffffff; font-size: 18px; font-weight: 900; }

.adac-review-stars { font-size: 22px; letter-spacing: 4px; line-height: 1; margin-bottom: 34px; background: linear-gradient(90deg, #7a0005, #e20b16, #f1454d, #6d0004); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; }

.adac-review-nav { position: absolute; top: 50%; transform: translateY(-50%); width: 54px; height: 54px; border: 1px solid rgba(212, 8, 18, 0.55); background: rgba(255, 255, 255, 0.04); cursor: pointer; display: flex; align-items: center; justify-content: center; z-index: 10; transition: transform 0.3s ease, background 0.3s ease; }

.adac-review-nav:hover { transform: translateY(-50%) scale(1.08); background: rgba(212, 8, 18, 0.18); }

.adac-review-nav svg { width: 30px; height: 30px; stroke: #ffffff; stroke-width: 2; fill: none; }

.adac-review-prev { left: 0; }

.adac-review-next { right: 0; }

.adac-review-dots { display: flex; justify-content: center; gap: 10px; margin-top: 34px; }

.adac-review-dot { width: 10px; height: 10px; border-radius: 50%; background-color: rgba(255, 255, 255, 0.22); border: none; cursor: pointer; transition: all 0.3s ease; padding: 0; }

.adac-review-dot.active { width: 34px; border-radius: 8px; background: linear-gradient(90deg, #7a0005, #e20b16, #f1454d, #6d0004); }

@media (max-width: 768px) { .adac-reviews-section { padding: 70px 18px; } .adac-reviews-header h2 { font-size: 38px; } .adac-reviews-carousel { padding: 0 42px; } .adac-review-item { padding: 42px 24px; } .adac-review-quote { font-size: 16px; } .adac-review-nav { width: 38px; height: 38px; } .adac-review-nav svg { width: 24px; height: 24px; } }

/* =========================== BLOC FORMULES =========================== */
.adac-pricing-section { position: relative; padding: 110px 24px; color: #ffffff; background: radial-gradient(circle at 15% 20%, rgba(212, 8, 18, 0.18), transparent 28%), radial-gradient(circle at 85% 70%, rgba(226, 11, 22, 0.2), transparent 32%), #030303; }

.adac-pricing-heading { max-width: 1050px; margin: 0 auto 58px; text-align: center; }

.adac-pricing-heading > span { display: inline-flex; align-items: center; padding: 10px 18px; margin-bottom: 24px; color: #ffffff; background: rgba(205, 8, 18, 0.16); border-left: 1px solid rgba(226, 11, 22, 0.75); font-size: 13px; font-weight: 700; letter-spacing: 1.8px; text-transform: uppercase; }

.adac-pricing-heading h2 { margin: 6px 0 18px; color: #ffffff; font-size: 55px; line-height: 1.08; font-style: italic; text-transform: uppercase; text-shadow: 0 0 26px rgba(226, 11, 22, 0.4); }

.adac-pricing-heading p { max-width: 680px; margin: 0 auto; color: #d7d7d7; font-size: 18px; line-height: 1.7; }

.adac-pricing-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 26px; max-width: 1250px; margin: 0 auto; }

.adac-pricing-card { position: relative; display: flex; flex-direction: column; min-height: 620px; padding: 34px; overflow: hidden; background: linear-gradient(180deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.015)), #070707; border: 1px solid rgba(255, 255, 255, 0.12); box-shadow: 0 22px 50px rgba(0, 0, 0, 0.35); }

.adac-pricing-card::before { content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 4px; background: linear-gradient(90deg, #7a0005, #e20b16, #f1454d, #6d0004); pointer-events: none; }

.adac-pricing-card-featured { box-shadow: 0 0 45px rgba(212, 8, 18, 0.16); }

.adac-pricing-top { margin-bottom: 34px; }

.adac-pricing-top h3 { margin: 0; color: #ffffff; font-size: 34px; line-height: 1; text-transform: uppercase; }

.adac-pricing-card ul { margin: 0 0 34px; padding: 0; list-style: none; }

.adac-pricing-card li { position: relative; margin-bottom: 16px; padding-left: 28px; color: #e5e5e5; font-size: 16px; line-height: 1.45; font-weight: 700; }

.adac-pricing-card li::before { content: "✓"; position: absolute; top: -1px; left: 0; color: #d40812; font-size: 18px; font-weight: 900; }

.adac-pricing-prices { margin-top: auto; padding-top: 28px; border-top: 1px solid rgba(255, 255, 255, 0.12); }

.adac-pricing-prices p { display: flex; justify-content: space-between; gap: 18px; margin: 0; padding: 16px 0; border-bottom: 1px solid rgba(255, 255, 255, 0.08); }

.adac-pricing-prices p:last-child { padding-bottom: 0; border-bottom: 0; }

.adac-pricing-prices strong { color: #ffffff; font-size: 16px; font-weight: 900; }

.adac-pricing-prices span { color: #d7d7d7; font-size: 16px; font-weight: 700; text-align: right; }

/* SUPPLÉMENTS */
.adac-pricing-supplements { max-width: 1250px; margin: 34px auto 0; background: linear-gradient(90deg, rgba(212, 8, 18, 0.1), rgba(255, 255, 255, 0.025), rgba(212, 8, 18, 0.1)), #070707; border: 1px solid rgba(212, 8, 18, 0.4); box-shadow: 0 18px 40px rgba(0, 0, 0, 0.3); }

.adac-pricing-supplements-title { padding: 14px 20px; color: #ffffff; background: rgba(212, 8, 18, 0.16); border-bottom: 1px solid rgba(212, 8, 18, 0.35); font-size: 14px; font-weight: 900; letter-spacing: 1.6px; text-align: center; text-transform: uppercase; }

.adac-pricing-supplements-list { display: grid; grid-template-columns: repeat(5, 1fr); }

.adac-pricing-supplement { display: flex; flex-direction: column; align-items: center; justify-content: space-between; gap: 12px; min-width: 0; padding: 22px 16px; text-align: center; border-right: 1px solid rgba(255, 255, 255, 0.1); }

.adac-pricing-supplement:last-child { border-right: 0; }

.adac-pricing-supplement span { color: #e4e4e4; font-size: 14px; font-weight: 700; line-height: 1.4; }

.adac-pricing-supplement strong { color: #e20b16; font-size: 20px; font-weight: 900; white-space: nowrap; }

.adac-pricing-action { max-width: 1180px; margin: 46px auto 0; text-align: center; }

a.button_homepageDoubleScreen.ctaLinks-button.text-color-fourth.p-3.fs-6.fw-bold.m-2, a.button_homepageDoubleScreen.first-banner-seo-page-button.text-color-fourth.p-3.fs-6.fw-bold.m-2, a.p-3.fw-bold.fs-6.m-2.phone-number-button.text-decoration-none, a.fw-light.grow.button_header.text-color-fourth.rounded-pill.p-2.text-decoration-none.all-activities-button, .adac-pricing-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 54px; padding: 0 34px !important; color: #ffffff; background: linear-gradient(135deg, #8a0006 0%, #b40a09 42%, #bd1011 58%, #760004 100%); box-shadow: 0 14px 35px rgba(205, 8, 18, 0.34); font-weight: 900 !important; letter-spacing: 0.8px; text-decoration: none; text-transform: uppercase; transition: transform 0.3s ease, box-shadow 0.3s ease; border-radius: 0px !important; }

a.button_homepageDoubleScreen.ctaLinks-button.text-color-fourth.p-3.fs-6.fw-bold.m-2:hover, a.button_homepageDoubleScreen.first-banner-seo-page-button.text-color-fourth.p-3.fs-6.fw-bold.m-2:hover, a.p-3.fw-bold.fs-6.m-2.phone-number-button.text-decoration-none:hover, a.fw-light.grow.button_header.text-color-fourth.rounded-pill.p-2.text-decoration-none.all-activities-button:hover, .adac-pricing-btn:hover { transform: translateY(-3px); box-shadow: 0 18px 42px rgba(205, 8, 18, 0.48); }

@media (max-width: 1100px) { .adac-pricing-supplements-list { grid-template-columns: repeat(3, 1fr); } .adac-pricing-supplement:nth-child(3) { border-right: 0; } .adac-pricing-supplement:nth-child(n + 4) { border-top: 1px solid rgba(255, 255, 255, 0.1); } }

@media (max-width: 980px) { .adac-pricing-grid { grid-template-columns: 1fr; } .adac-pricing-card { min-height: auto; } .adac-pricing-heading h2 { font-size: 38px; } }

@media (max-width: 700px) { .adac-pricing-supplements-list { grid-template-columns: 1fr; } .adac-pricing-supplement { flex-direction: row; gap: 20px; padding: 17px 20px; text-align: left; border-right: 0; border-top: 1px solid rgba(255, 255, 255, 0.1); } .adac-pricing-supplement:first-child { border-top: 0; } .adac-pricing-supplement:nth-child(3) { border-right: 0; } .adac-pricing-supplement span { font-size: 14px; } .adac-pricing-supplement strong { font-size: 18px; } }

@media (max-width: 520px) { .adac-pricing-section { padding: 70px 18px; } .adac-pricing-heading h2 { font-size: 38px; } .adac-pricing-card { padding: 28px 22px; } .adac-pricing-top h3 { font-size: 32px; } .adac-pricing-prices p { flex-direction: column; gap: 4px; } .adac-pricing-prices span { text-align: left; } .adac-pricing-btn { width: 100%; } }

/* =========================== BLOC SERVICES =========================== */
.adac-services-section { background: #030303; padding: 110px 24px; color: #ffffff; background: url("https://storage.googleapis.com/refpro-app-ca244.appspot.com/customers%2FEaz9JmDPLpMEvzNfv8GlOkZ00v93%2Fimages%2FFond_AD_Auto_Clean_2_lf7f.webp"); background-size: cover; }

.adac-services-heading { max-width: 1250px; margin: 0 auto 48px; }

.adac-services-heading span { display: inline-flex; align-items: center; padding: 10px 18px; margin-bottom: 24px; border-left: 1px solid rgba(226, 11, 22, 0.75); color: #ffffff; background: rgba(205, 8, 18, 0.16); text-transform: uppercase; letter-spacing: 1.8px; font-weight: 700; font-size: 13px; }

.adac-services-heading h2 { max-width: 780px; color: #ffffff; font-size: 55px; line-height: 1.05; text-transform: uppercase; font-style: italic; text-shadow: 0 0 26px rgba(226, 11, 22, 0.4); }

.adac-services-grid { max-width: 1250px; margin: 0 auto; display: grid; grid-template-columns: repeat(3, 1fr); gap: 2px; }

.adac-service-card { position: relative; min-height: 520px; padding: 0; border: 0; background: #111111; overflow: hidden; cursor: pointer; text-align: left; }

.adac-service-card img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; filter: grayscale(0.45) contrast(1.15) brightness(0.72); transition: transform 0.5s ease, filter 0.5s ease; }

.adac-service-overlay { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0, 0, 0, 0.15), rgba(0, 0, 0, 0.88)); z-index: 1; }

.adac-service-content { position: absolute; left: 34px; right: 34px; bottom: 42px; z-index: 2; }

.adac-service-content span { display: block; margin-bottom: 14px; color: #e10b16; font-size: 18px; font-weight: 900; }

.adac-service-content h3 { margin: 0; color: #ffffff; font-size: 34px; line-height: 1; text-transform: uppercase; }

.adac-service-content p { max-width: 280px; margin: 18px 0 0; color: #d7d7d7; font-size: 16px; line-height: 1.55; }

.adac-service-card::before { content: ""; position: absolute; top: 0; left: 0; height: 4px; width: 0; background: linear-gradient(90deg, #7a0005, #e20b16, #f1454d); z-index: 3; transition: width 0.35s ease; }

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

.adac-service-card:hover img { transform: scale(1.08); filter: grayscale(0.15) contrast(1.2) brightness(0.86); }

.adac-modal { position: fixed; inset: 0; display: none; align-items: center; justify-content: center; padding: 24px; background: rgba(0, 0, 0, 0.78); z-index: 9999; }

.adac-modal.is-open { display: flex; }

.adac-modal-box { position: relative; width: 100%; max-width: 620px; padding: 48px; background: #080808; border: 1px solid rgba(212, 8, 18, 0.7); box-shadow: 0 0 50px rgba(212, 8, 18, 0.25); }

.adac-modal-close { position: absolute; top: 16px; right: 20px; border: 0; background: transparent; color: #ffffff; font-size: 36px; cursor: pointer; }

.adac-modal-number { color: #e10b16; font-size: 18px; font-weight: 900; }

.adac-modal-title { margin: 14px 0 18px; color: #ffffff; font-size: 38px; line-height: 1; text-transform: uppercase; }

.adac-modal-text { margin: 0; color: #d7d7d7; font-size: 17px; line-height: 1.7; }

@media (max-width: 900px) { .adac-services-grid { grid-template-columns: 1fr; } .adac-service-card { min-height: 360px; } .adac-services-heading h2 { font-size: 38px; } }

@media (max-width: 520px) { .adac-services-section { padding: 70px 18px; } .adac-service-content { left: 24px; right: 24px; bottom: 30px; } .adac-service-content h3 { font-size: 32px; } .adac-modal-box { padding: 38px 26px; } }

/* =========================== BLOC A PROPOS =========================== */
.adac-about-section { position: relative; overflow: hidden; padding: 110px 24px; color: #ffffff; background: radial-gradient(circle at 15% 20%, rgba(212, 8, 18, 0.18), transparent 28%), radial-gradient(circle at 85% 70%, rgba(226, 11, 22, 0.2), transparent 32%), #030303; }

.adac-about-container { display: grid; grid-template-columns: 0.85fr 1.15fr; align-items: center; gap: 60px; max-width: 1250px; margin: 0 auto; }

.adac-about-image { position: relative; min-height: 540px; overflow: hidden; border: 1px solid rgba(212, 10, 20, 0.55); box-shadow: 0 0 45px rgba(212, 10, 20, 0.18); }

.adac-about-image::before { content: ""; position: absolute; inset: 18px; z-index: 2; border: 1px solid rgba(255, 255, 255, 0.16); pointer-events: none; }

.adac-about-image img { display: block; width: 100%; height: 100%; min-height: 540px; object-fit: cover; }

.adac-about-content { position: relative; min-width: 0; }

.adac-about-kicker { display: inline-flex; align-items: center; margin-bottom: 24px; padding: 10px 18px; color: #ffffff; background: rgba(205, 8, 18, 0.16); border-left: 1px solid rgba(226, 11, 22, 0.75); font-size: 13px; font-weight: 700; letter-spacing: 1.8px; text-transform: uppercase; }

.adac-about-content h2 { margin: 0 0 28px; color: #ffffff; font-size: 54px; font-weight: 900; font-style: italic; line-height: 1.08; text-transform: uppercase; text-shadow: 0 0 26px rgba(226, 11, 22, 0.4); }

.adac-about-content p { margin: 0 0 18px; color: #d7d7d7; font-size: 18px; line-height: 1.75; }

/* TYPES DE VÉHICULES */
.adac-about-vehicles { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 8px; width: 100%; margin-top: 30px; }

.adac-about-vehicle { display: flex; flex-direction: column; align-items: center; justify-content: flex-start; gap: 8px; min-width: 0; min-height: 112px; padding: 14px 5px 12px; text-align: center; background: rgba(255, 255, 255, 0.025); border: 1px solid rgba(212, 10, 20, 0.3); transition: transform 0.25s ease, border-color 0.25s ease, background 0.25s ease, box-shadow 0.25s ease; }

.adac-about-vehicle:hover { transform: translateY(-3px); background: rgba(212, 10, 20, 0.07); border-color: rgba(226, 11, 22, 0.75); box-shadow: 0 0 18px rgba(226, 11, 22, 0.13); }

.adac-about-vehicle-icon { display: flex; align-items: center; justify-content: center; flex: 0 0 auto; width: 34px; height: 34px; }

.adac-about-vehicle-icon svg { display: block; width: 34px; height: 34px; fill: none; stroke: #d40812; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }

.adac-about-vehicle span { display: block; width: 100%; color: #ffffff; font-size: 11px; font-weight: 700; line-height: 1.3; overflow-wrap: normal; word-break: normal; }

/* TABLETTE */
@media (max-width: 1100px) { .adac-about-container { grid-template-columns: 0.8fr 1.2fr; gap: 42px; } .adac-about-content h2 { font-size: 44px; } .adac-about-content p { font-size: 17px; } .adac-about-vehicles { display: grid; grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: 96px; gap: 8px; overflow-x: auto; padding-bottom: 10px; scrollbar-width: thin; scrollbar-color: #d40812 rgba(255, 255, 255, 0.08); } .adac-about-vehicles::-webkit-scrollbar { height: 4px; } .adac-about-vehicles::-webkit-scrollbar-track { background: rgba(255, 255, 255, 0.08); } .adac-about-vehicles::-webkit-scrollbar-thumb { background: #d40812; } }

/* MOBILE ET TABLETTE */
@media (max-width: 900px) { .adac-about-section { padding: 80px 20px; } .adac-about-container { grid-template-columns: 1fr; gap: 42px; } .adac-about-image, .adac-about-image img { min-height: 420px; } .adac-about-content h2 { font-size: 38px; } .adac-about-vehicles { grid-auto-columns: 102px; margin-top: 26px; } .adac-about-vehicle { min-height: 106px; } }

/* PETIT MOBILE */
@media (max-width: 520px) { .adac-about-section { padding: 65px 18px; } .adac-about-image, .adac-about-image img { min-height: 320px; } .adac-about-content h2 { font-size: 36px; } .adac-about-content p { font-size: 16px; } .adac-about-vehicles { grid-auto-columns: 94px; gap: 7px; } .adac-about-vehicle { min-height: 102px; padding: 13px 5px 10px; } .adac-about-vehicle-icon, .adac-about-vehicle-icon svg { width: 30px; height: 30px; } .adac-about-vehicle span { font-size: 10px; } }

/* =========================== BLOC HERO ACCUEIL =========================== */
.adac-hero-home { position: relative; width: 100%; height: 100vh; display: flex; align-items: center; overflow: hidden; background: #030303; }

.adac-hero-video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; filter: grayscale(1) contrast(1.18) brightness(0.58); transform: scale(1.02); }

.adac-hero-overlay { position: absolute; inset: 0; background: radial-gradient(circle at 78% 42%, rgba(205, 8, 18, 0.22), transparent 32%), linear-gradient(90deg, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0.6) 42%, rgba(0, 0, 0, 0.4) 100%); z-index: 1; }

.adac-hero-home::before { content: ""; position: absolute; left: 0; bottom: 0; width: 58%; height: 4px; background: linear-gradient(90deg, #7a0005, #e20b16, #f1454d, #6d0004); z-index: 2; }

.adac-hero-content { position: relative; z-index: 3; width: 100%; max-width: 1180px; margin: 0 auto; padding: 120px 24px; box-sizing: border-box; margin-left: 120px; }

.adac-hero-badge { display: inline-flex; align-items: center; padding: 10px 18px; margin-bottom: 24px; border-left: 1px solid rgba(226, 11, 22, 0.75); color: #ffffff; background: rgba(205, 8, 18, 0.16); text-transform: uppercase; letter-spacing: 1.8px; font-weight: 700; font-size: 13px; }

.adac-hero-content h1 { margin: 0; max-width: 760px; color: #ffffff; font-size: 120px; line-height: 0.95; font-style: italic; text-transform: uppercase; text-shadow: 0 0 26px rgba(226, 11, 22, 0.28); }

.adac-hero-subtitle { max-width: 650px; margin: 28px 0 0; color: #d9d9d9; font-size: 21px; line-height: 1.55; font-weight: 500; }

.adac-hero-actions { display: flex; flex-wrap: wrap; gap: 16px; margin-top: 38px; }

.adac-hero-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 52px; padding: 0 28px; text-decoration: none; font-weight: 800; text-transform: uppercase; letter-spacing: 0.8px; transition: transform 0.3s ease, box-shadow 0.3s ease, background 0.3s ease; }

.adac-hero-btn-main { color: #ffffff !important; background: linear-gradient(135deg, #8a0006 0%, #b40a09 42%, #bd1011 58%, #760004 100%); box-shadow: 0 14px 35px rgba(205, 8, 18, 0.38); }

.adac-hero-btn-secondary { color: #ffffff !important; border: 1px solid rgba(210, 210, 210, 0.55); background: rgba(255, 255, 255, 0.06); }

.adac-hero-btn:hover { transform: translateY(-3px); }

.adac-hero-btn-main:hover { box-shadow: 0 18px 42px rgba(205, 8, 18, 0.52); }

.adac-hero-btn-secondary:hover { background: rgba(255, 255, 255, 0.12); }

.adac-hero-inner { display: flex; align-items: center; gap: 46px; }

.adac-hero-logo { width: 260px; max-width: 32%; flex-shrink: 0; filter: drop-shadow(0 0 28px rgba(205, 8, 18, 0.38)); }

.adac-hero-text { max-width: 760px; }

@media (max-width: 900px) { .adac-hero-inner { gap: 28px; } .adac-hero-logo { width: 190px; } }

@media (max-width: 650px) { .adac-hero-inner { flex-direction: column; align-items: flex-start; gap: 24px; } .adac-hero-logo { width: 180px; max-width: 100%; } .adac-hero-overlay { background: radial-gradient(circle at 70% 35%, rgba(205, 8, 18, 0.18), transparent 35%), linear-gradient(90deg, rgba(0, 0, 0, 0.92) 0%, rgba(0, 0, 0, 0.68) 100%); } .adac-hero-content { padding: 110px 20px 80px; } .adac-hero-content h1 { font-size: 52px; } .adac-hero-subtitle { font-size: 18px; } }

@media (max-width: 520px) { .adac-hero-home { min-height: 78vh; } .adac-hero-content { padding: 95px 18px 70px; margin-left: 0px; } .adac-hero-badge { font-size: 11px; letter-spacing: 1.2px; } .adac-hero-content h1 { font-size: 70px; } .adac-hero-subtitle { font-size: 16px; } .adac-hero-actions { flex-direction: column; } .adac-hero-btn { width: 100%; } }

/* =========================== PROGRAMME DE FIDELITE =========================== */
.adac-loyalty-section { background: #030303; padding: 80px 24px; color: #fff; position: relative; overflow: hidden; }

.adac-loyalty-container { max-width: 1250px; margin: 0 auto; display: grid; grid-template-columns: repeat(2, 1fr); gap: 40px; align-items: stretch; }

.adac-loyalty-card { position: relative; background: linear-gradient(180deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.015)), #070707; border: 1px solid rgba(255, 255, 255, 0.12); box-shadow: 0 22px 50px rgba(0, 0, 0, 0.35); padding: 34px 32px; display: flex; flex-direction: column; align-items: center; text-align: center; overflow: hidden; transition: transform 0.3s ease, box-shadow 0.3s ease; }

.adac-loyalty-card::before { content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 4px; background: linear-gradient(90deg, #7a0005, #e20b16, #f1454d, #6d0004); pointer-events: none; }

.adac-loyalty-card:hover { transform: translateY(-6px); box-shadow: 0 28px 60px rgba(0, 0, 0, 0.45); }

.adac-loyalty-icon { width: 50px; height: 50px; margin-bottom: 18px; }

.adac-loyalty-icon svg { width: 100%; height: 100%; }

.adac-loyalty-card h3 { font-size: 34px; font-weight: 900; margin-bottom: 12px; text-transform: uppercase; }

.adac-loyalty-card p { font-size: 16px; line-height: 1.6; color: #d7d7d7; }

@media (max-width: 768px) { .adac-loyalty-container { grid-template-columns: 1fr; } }

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