@charset "UTF-8";
@import url(main.css);
/*=================== CUSTOM SEO ======================*/
.d-flex.flex-column.flex-lg-row.align-items-center { display: none !important; }

a.button_homepageDoubleScreen.first-banner-seo-page-button.text-color-fourth.p-3.fs-6.fw-bold.m-2, a.button_homepageDoubleScreen.ctaLinks-button.text-color-fourth.p-3.fs-6.fw-bold.m-2, a.fw-light.grow.button_header.text-color-fourth.rounded-pill.p-2.text-decoration-none.all-activities-button { border-radius: 0px !important; padding: 12px 20px !important; font-family: 'Inter'; text-transform: uppercase; font-weight: 700 !important; }

a.button_homepageDoubleScreen.first-banner-seo-page-button.text-color-fourth.p-3.fs-6.fw-bold.m-2:hover, a.button_homepageDoubleScreen.ctaLinks-button.text-color-fourth.p-3.fs-6.fw-bold.m-2:hover, a.fw-light.grow.button_header.text-color-fourth.rounded-pill.p-2.text-decoration-none.all-activities-button:hover { color: white !important; }

h2.display-6.fw-bold.p-3.pt-lg-3.m-0.titles { color: black; }

#contact > div > div.col-lg-6.text-center.text-color-sixth > div > img { display: none; }

#contact > div > div.col-lg-6.text-center.text-color-sixth > p { display: none; }

/*=================== CUSTOM FORMULAIRE DE CONTACT ======================*/
.spacer { display: none; }

div#contact { padding-top: 90px !important; }

/*=================== CUSTOM BLOC SEO ======================*/
.mx-auto.third-activity-div.col-lg-11.px-4.py-4.mb-4.mt-5.bg-primaryColor.text-color-primary.rounded-3.shadow-lg.position-relative, .mx-auto.second-activity-div.col-lg-11.px-4.py-4.mb-5.mt-5.rounded-3.shadow-lg.bg-primaryColor.text-color-primary.position-relative, .mx-auto.first-activity-div.col-lg-11.px-4.py-4.mb-5.mt-5.bg-primaryColor.text-color-primary.rounded-3.shadow-lg.position-relative { margin-top: 100px !important; margin-bottom: 100px !important; padding: 50px 20px !important; box-shadow: none !important; }

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

.black-screen { display: none; }

/*=================== CUSTOM COOKIES ======================*/
div#termsfeed-com---nb { border-radius: 4px !important; margin: 10px; }

/*=================== CUSTOM NAVBAR ======================*/
.navbar { transition: background-color 0.3s ease, backdrop-filter 0.3s ease, border-color 0.3s ease; background-color: rgba(255, 255, 255, 0.12); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); border-bottom: 1px solid rgba(255, 255, 255, 0.25); }

.navbar.scrolled { background-color: #ffffff !important; backdrop-filter: blur(0); -webkit-backdrop-filter: blur(0); border-bottom: 1px solid rgba(0, 0, 0, 0.06); }

/* Bouton au départ */
.fs-6.animated-border-button.obftrucs { color: #ffffff !important; border-color: #ffffff !important; transition: color 0.3s ease, border-color 0.3s ease, background-color 0.3s ease; }

/* Bouton après scroll */
.navbar.scrolled .fs-6.animated-border-button.obftrucs { color: #438bb0 !important; border-color: #438bb0 !important; }

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

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

.logo_nav { height: 9vh !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: 4px !important; padding: 0 30px !important; font-family: "Inter", sans-serif !important; font-weight: 550 !important; }

.fs-6.animated-border-button.obftrucs { text-transform: uppercase; font-weight: 600; letter-spacing: 0.04em; font-family: "Inter", sans-serif; }

/*======================================================================== HERO D'ACCUEIL =======================================================================*/
.as-label-hero, .as-label-hero * { box-sizing: border-box; }

.as-label-hero { --as-black: #101010; --as-navy: #142640; --as-blue: #438bb0; --as-blue-light: #bed8e4; --as-white: #fdfefe; position: relative; min-height: 100svh; padding: 110px 6%; overflow: hidden; background: var(--as-black); display: flex; align-items: center; }

.as-label-hero__bg { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }

.as-label-hero__overlay { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(16, 16, 16, 0.78), rgba(16, 16, 16, 0.42), rgba(16, 16, 16, 0.2)), linear-gradient(180deg, rgba(20, 38, 64, 0.2), rgba(20, 38, 64, 0.55)); }

.as-label-hero__content { position: relative; z-index: 2; max-width: 720px; }

.as-hero__eyebrow { display: inline-block; margin-bottom: 18px; font-family: "Inter", sans-serif; font-size: 0.82rem; font-weight: 600; letter-spacing: 0.14em; text-transform: uppercase; color: rgba(253, 254, 254, 0.88); }

.as-label-hero__title { margin: 0 0 22px; font-family: "DM Serif Display", serif; font-size: clamp(3.4rem, 6.8vw, 7.4rem); line-height: .88; font-weight: 700; text-transform: uppercase; color: var(--as-white); letter-spacing: 0.04em; }

.as-label-hero__title span { color: var(--as-blue-light); }

.as-label-hero__text { max-width: 560px; margin: 0 0 34px; font-family: "Poppins", "Inter", sans-serif; font-size: 1.02rem; line-height: 1.75; color: rgba(253, 254, 254, 0.9); }

.as-label-hero__actions { display: flex; flex-wrap: wrap; gap: 18px; }

/* Boutons */
a.grow.button_header.text-color-fourth.mx-3.mx-lg-2.p-2.rounded-pill.text-decoration-none.button-header-telephone, .as-btn-modern { position: relative; display: inline-flex; align-items: center; justify-content: center; min-height: 58px; padding: 0 30px; background: #fdfefe; border: 1px solid #438bb0; border-radius: 4px; text-decoration: none; transition: transform 0.25s ease; box-shadow: 6px 6px 0 #438bb0; }

a.grow.button_header.text-color-fourth.mx-3.mx-lg-2.p-2.rounded-pill.text-decoration-none.button-header-telephone span, .as-btn-modern span { font-family: "Inter", sans-serif; font-size: 0.92rem; font-weight: 700 !important; letter-spacing: 0.03em; text-transform: uppercase; color: #101010; transition: color 0.25s ease; }

a.grow.button_header.text-color-fourth.mx-3.mx-lg-2.p-2.rounded-pill.text-decoration-none.button-header-telephone:hover, .as-btn-modern:hover { transform: translate(3px, 3px); box-shadow: 3px 3px 0 #438bb0; }

a.grow.button_header.text-color-fourth.mx-3.mx-lg-2.p-2.rounded-pill.text-decoration-none.button-header-telephone:hover span, .as-btn-modern:hover span { color: #438bb0; }

/* Macarons */
.as-label-hero__badges { position: absolute; z-index: 3; right: 3%; top: 50%; transform: translateY(-50%); width: 650px; height: 660px; }

.as-round-badge { position: absolute; width: 210px; height: 210px; padding: 26px 20px; border-radius: 50%; background: var(--as-white); border: 3px solid var(--as-blue-light); box-shadow: 10px 10px 0 var(--as-blue); display: flex; flex-direction: column; align-items: center; justify-content: center; transform: rotate(-6deg); text-align: center; }

.as-round-badge--main { width: 270px; height: 270px; top: 0; right: 160px; background: var(--as-navy); border-color: var(--as-white); color: var(--as-white); }

.as-round-badge:nth-child(2) { left: 0; top: 275px; transform: rotate(5deg); }

.as-round-badge:nth-child(3) { right: 0; top: 275px; transform: rotate(-4deg); background: var(--as-blue-light); }

.as-round-badge:nth-child(4) { left: 220px; top: 430px; transform: rotate(4deg); background: var(--as-white); }

.as-round-badge span { font-family: "Poppins", "Inter", sans-serif; font-size: .72rem; font-weight: 700; letter-spacing: .11em; text-transform: uppercase; color: var(--as-blue); }

.as-round-badge--main span { color: var(--as-blue-light); }

.as-round-badge strong { margin: 8px 0; font-family: "Poppins", "Inter", sans-serif; font-size: 2.55rem; line-height: .95; font-weight: 800; color: var(--as-black); }

.as-round-badge:nth-child(4) strong { font-size: 1.75rem; }

.as-round-badge--main strong { font-size: 4.8rem; color: var(--as-white); }

.as-round-badge small { font-family: "Poppins", "Inter", sans-serif; font-size: .78rem; font-weight: 600; line-height: 1.35; color: rgba(16, 16, 16, 0.7); }

.as-round-badge--main small { color: rgba(253, 254, 254, 0.78); }

/* Pilule avis */
.as-review-pill { position: absolute; right: 0; bottom: -65px; min-width: 440px; padding: 15px 22px; background: var(--as-navy); border-radius: 999px; box-shadow: 7px 7px 0 var(--as-blue); display: flex; align-items: center; justify-content: center; gap: 10px; font-family: "Poppins", "Inter", sans-serif; color: var(--as-white); }

.as-review-pill__stars { color: #ffd23f; letter-spacing: .08em; font-size: .9rem; }

.as-review-pill strong { font-size: 1rem; font-weight: 800; }

.as-review-pill span:last-child { font-size: .82rem; font-weight: 600; color: rgba(253, 254, 254, 0.88); }

/* Ordinateur portable */
@media (max-width: 1380px) and (min-width: 1025px) { .as-label-hero { padding: 120px 5%; } .as-label-hero__content { max-width: 650px; } .as-label-hero__title { font-size: clamp(3rem, 6vw, 6rem); } .as-label-hero__badges { right: 2%; width: 560px; height: 620px; } .as-round-badge { width: 170px; height: 170px; } .as-round-badge--main { width: 230px; height: 230px; right: 165px; } .as-round-badge:nth-child(2) { left: 0; top: 250px; } .as-round-badge:nth-child(3) { right: 0; top: 250px; } .as-round-badge:nth-child(4) { left: 195px; top: 405px; } .as-round-badge strong { font-size: 2.2rem; } .as-round-badge:nth-child(4) strong { font-size: 1.55rem; } .as-round-badge--main strong { font-size: 4rem; } .as-review-pill { right: 0; bottom: -65px; min-width: 420px; } }

/* Tablette */
@media (max-width: 1100px) { .as-label-hero { padding: 90px 6%; display: block; } .as-label-hero__badges { position: relative; right: auto; top: auto; transform: none; width: 100%; height: auto; min-height: 680px; margin-top: 50px; } .as-round-badge--main { top: 0; left: 50%; right: auto; transform: translateX(-50%) rotate(-4deg); } .as-round-badge:nth-child(2) { left: 4%; top: 280px; } .as-round-badge:nth-child(3) { right: 4%; top: 280px; } .as-round-badge:nth-child(4) { left: 50%; top: 460px; transform: translateX(-50%) rotate(4deg); } .as-review-pill { left: 50%; right: auto; bottom: 0; transform: translateX(-50%); min-width: 440px; } }

/* Mobile */
@media (max-width: 768px) { .as-label-hero { padding: 80px 20px; display: block; } .as-label-hero__title { font-size: clamp(2.8rem, 14vw, 4.7rem); } .as-label-hero__actions { flex-direction: column; } .as-btn-modern { width: 100%; } .as-label-hero__badges { min-height: auto; display: grid; grid-template-columns: 1fr; gap: 18px; } .as-round-badge, .as-round-badge--main, .as-round-badge:nth-child(2), .as-round-badge:nth-child(3), .as-round-badge:nth-child(4), .as-review-pill { position: relative; inset: auto; width: 100%; height: auto; min-height: 150px; border-radius: 16px; transform: none; } .as-round-badge--main strong { font-size: 3.6rem; } .as-round-badge:nth-child(4) strong { font-size: 2rem; } .as-review-pill { min-width: 0; border-radius: 999px; flex-wrap: wrap; } }

/*==================================================================== PRESENTATION DE L'ENTREPRISE =================================================================*/
.as-about, .as-about * { box-sizing: border-box; }

.as-about { padding: 50px 6%; background: #eef4f7; overflow: hidden; }

.as-about__container { max-width: 1280px; margin: 0 auto; display: grid; grid-template-columns: 0.95fr 1.05fr; gap: 70px; align-items: stretch; }

.as-about__content { display: flex; align-items: center; }

.as-about__panel { width: 100%; max-width: 560px; padding: 42px 38px; background: #fdfefe; border: 1px solid #7eb3c9; border-radius: 4px; box-shadow: 10px 10px 0 #7eb3c9; }

.as-about__eyebrow { display: inline-block; margin-bottom: 16px; font-family: "Inter", sans-serif; font-size: 0.75rem; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: #438bb0; }

.as-about__title { margin: 0 0 22px; font-family: "DM Serif Display", serif; font-size: clamp(2.2rem, 3vw, 3.2rem); line-height: 1.02; color: #101010; text-transform: uppercase; }

.as-about__panel p { margin: 0 0 16px; font-family: "Inter", sans-serif; font-size: 0.98rem; line-height: 1.75; color: rgba(16, 16, 16, 0.78); }

.as-about__panel .as-btn-modern { margin-top: 12px; }

.as-about__visual { display: flex; align-items: stretch; justify-content: center; min-height: 720px; /* augmente ou baisse selon le rendu */ }

.as-about__image { width: 100%; max-width: 560px; height: 100%; min-height: 720px; object-fit: contain; /* important si ton montage Canva a déjà sa forme */ display: block; }

@media (max-width: 1024px) { .as-about__container { grid-template-columns: 1fr; gap: 50px; } .as-about__content { justify-content: center; } .as-about__panel { max-width: 100%; } .as-about__visual { order: -1; min-height: auto; } .as-about__image { max-width: 460px; min-height: auto; height: auto; } }

@media (max-width: 640px) { .as-about { padding: 80px 20px; } .as-about__panel { padding: 30px 24px; box-shadow: 7px 7px 0 #438bb0; } .as-about__title { font-size: 2rem; } }

/*======================================================================= LES CATEGORIES DE SPAS ====================================================================*/
.as-models, .as-models * { box-sizing: border-box; }

.as-models { position: relative; padding: 0 6% 120px; background: #101010; overflow: visible; }

/* séparateur pleine largeur écran */
.as-models__divider { position: relative; width: 100vw; height: 34px; margin-left: 50%; transform: translateX(-50%); background: linear-gradient(to bottom, #eef4f7 0 50%, #101010 50% 100%); }

.as-models__diamond { position: absolute; top: 50%; width: 14px; height: 14px; transform: translateY(-50%) rotate(45deg); border: 1px solid #438bb0; }

.as-models__diamond--left { left: calc(50% - 12px); background: #fdfefe; }

.as-models__diamond--center { left: calc(50% + 2px); background: #438bb0; box-shadow: 4px 4px 0 #bed8e4; }

.as-models__container { max-width: 1280px; margin: 0 auto; padding-top: 70px; }

.as-models__heading { max-width: 760px; margin: 0 auto 50px; text-align: center; }

.as-models__eyebrow { display: inline-block; margin-bottom: 14px; font-family: "Inter", sans-serif; font-size: 0.78rem; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: #7eb3c9; }

.as-models__title { margin: 0 0 16px; font-family: "DM Serif Display", serif; font-size: clamp(2.1rem, 3.2vw, 3.4rem); line-height: 1.02; color: #fdfefe; text-transform: uppercase; }

.as-models__text { margin: 0 auto; max-width: 620px; font-family: "Inter", sans-serif; font-size: 1rem; line-height: 1.75; color: rgba(253, 254, 254, 0.78); }

.as-models__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 26px; align-items: stretch; }

.as-model-card { display: flex; flex-direction: column; height: 100%; background: #fdfefe; border: 1px solid #438bb0; border-radius: 4px; box-shadow: 8px 8px 0 #438bb0; overflow: hidden; transition: transform 0.25s ease, box-shadow 0.25s ease; }

.as-model-card__media { width: 100%; aspect-ratio: 1.25 / 1; overflow: hidden; background: #dbe9f0; }

.as-model-card__media img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 0.5s ease; }

.as-model-card__body { display: flex; flex-direction: column; flex: 1; align-items: center; text-align: center; padding: 28px 24px 30px; }

.as-model-card__body h3 { min-height: 2.4em; margin: 0 0 14px; display: flex; align-items: center; justify-content: center; font-family: "DM Serif Display", serif; font-size: 1.7rem; line-height: 1.1; color: #101010; width: 100%; text-transform: uppercase; }

.as-model-card__body p { width: 100%; margin: 0 0 24px; font-family: "Inter", sans-serif; font-size: 0.95rem; line-height: 1.7; color: rgba(16, 16, 16, 0.72); }

.as-model-card__body .as-btn-modern { margin-top: auto; }

.as-models__footer { display: flex; justify-content: center; margin-top: 100px; }

/* variante bouton sur carte claire */
.as-btn-modern--dark { box-shadow: 6px 6px 0 #438bb0; }

@media (max-width: 1100px) { .as-models__grid { grid-template-columns: 1fr 1fr; } .as-model-card:last-child { grid-column: 1 / -1; max-width: 420px; width: 100%; margin: 0 auto; } }

@media (max-width: 768px) { .as-models { padding: 0 20px 90px; } .as-models__container { padding-top: 54px; } .as-models__grid { grid-template-columns: 1fr; gap: 22px; } .as-model-card:last-child { grid-column: auto; max-width: none; } .as-models__title { font-size: 2.2rem; } }

/*======================================================================= GALERIE D'IMAGES ======================================================================*/
.bloc-a7f3-gallery, .bloc-a7f3-gallery *, .bloc-a7f3-gallery *::before, .bloc-a7f3-gallery *::after { box-sizing: border-box; }

.bloc-a7f3-gallery { width: 100%; max-width: 100%; background: #101010; padding: 0px 0 50px 0; overflow: hidden; position: relative; }

.bloc-a7f3-gallery__track-wrap { width: 100%; overflow: hidden; position: relative; }

.bloc-a7f3-gallery__track-wrap::before, .bloc-a7f3-gallery__track-wrap::after { content: ''; position: absolute; top: 0; bottom: 0; width: 120px; z-index: 2; pointer-events: none; }

.bloc-a7f3-gallery__track-wrap::before { left: 0; background: linear-gradient(90deg, #0b0b0c, transparent); }

.bloc-a7f3-gallery__track-wrap::after { right: 0; background: linear-gradient(-90deg, #0b0b0c, transparent); }

.bloc-a7f3-gallery__track { display: flex; gap: 16px; width: max-content; animation: bloc-a7f3-scroll 35s linear infinite; }

@keyframes bloc-a7f3-scroll { from { transform: translateX(0); }
  to { transform: translateX(-50%); } }

.bloc-a7f3-gallery__item { flex-shrink: 0; width: 340px; height: 230px; overflow: hidden; }

.bloc-a7f3-gallery__item img { width: 100%; height: 100%; object-fit: cover; display: block; pointer-events: none; border-radius: 4px; }

.bloc-a7f3-gallery__footer { display: flex; justify-content: center; margin-top: 48px; padding: 0 8%; }

@media (max-width: 768px) { .bloc-a7f3-gallery__item { width: 240px; height: 170px; } }

@media (max-width: 480px) { .bloc-a7f3-gallery { padding: 48px 0; } .bloc-a7f3-gallery__item { width: 180px; height: 135px; } }

/*====================================================================== ABRI POUR SPA ==========================================================================*/
.as-shelters, .as-shelters * { box-sizing: border-box; }

.as-shelters { padding: 50px 6%; background: #eef4f7; }

.as-shelters__container { max-width: 1280px; margin: 0 auto; display: grid; grid-template-columns: 1.1fr 1fr; gap: 70px; align-items: center; }

/* VISUEL */
.as-shelters__visual { display: flex; justify-content: center; }

.as-shelters__visual img { width: 100%; max-width: 560px; height: 100%; min-height: 720px; object-fit: contain; display: block; }

/* CONTENU */
.as-shelters__content { position: relative; max-width: 520px; padding: 42px 36px; background: #fdfefe; border: 1px solid #7eb3c9; border-radius: 4px; box-shadow: 10px 10px 0 #7eb3c9; }

.as-shelters__eyebrow { display: inline-block; margin-bottom: 14px; font-family: "Inter", sans-serif; font-size: 0.75rem; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: #438bb0; }

.as-shelters__title { margin: 0 0 20px; font-family: "DM Serif Display", serif; font-size: clamp(2.2rem, 3vw, 3.2rem); line-height: 1.05; color: #101010; text-transform: uppercase; }

.as-shelters__content p { margin: 0 0 16px; font-family: "Inter", sans-serif; font-size: 0.98rem; line-height: 1.75; color: rgba(16, 16, 16, 0.75); }

.as-shelters__content .as-btn-modern { margin-top: 14px; }

@media (max-width: 900px) { .as-shelters { padding: 40px 20px; } .as-shelters__container { grid-template-columns: 1fr; gap: 32px; } .as-shelters__content { order: 1; max-width: 100%; padding: 32px 24px; box-shadow: 6px 6px 0 #7eb3c9; } .as-shelters__visual { order: 2; } .as-shelters__visual img { max-width: 100%; height: auto; min-height: auto; } }

@media (max-width: 600px) { .as-shelters { padding: 32px 16px; } .as-shelters__container { gap: 24px; } .as-shelters__content { padding: 24px 18px; box-shadow: 4px 4px 0 #7eb3c9; } .as-shelters__title { font-size: clamp(1.8rem, 8vw, 2.4rem); line-height: 1.1; } .as-shelters__content p { font-size: 0.95rem; line-height: 1.65; } }

/*====================================================================== POURQUOI NOUS CHOISIR ? =================================================================*/
.as-why, .as-why * { box-sizing: border-box; }

.as-why { position: relative; padding: 50px 6%; background: #eef4f7; overflow: hidden; }

/* image de fond */
.as-why::before { content: ""; position: absolute; inset: 0; background: url("images/bg-why.jpg") center center/cover no-repeat; opacity: 0.18; pointer-events: none; }

/* voile clair */
.as-why::after { content: ""; position: absolute; inset: 0; background: #eef4f7; pointer-events: none; }

.as-why__container { position: relative; z-index: 2; max-width: 1280px; margin: 0 auto; }

.as-why__heading { max-width: 760px; margin: 0 auto 50px; text-align: center; }

.as-why__eyebrow { display: inline-block; margin-bottom: 14px; font-family: "Inter", sans-serif; font-size: 0.75rem; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: #438bb0; }

.as-why__title { margin: 0 0 18px; font-family: "DM Serif Display", serif; font-size: clamp(2.2rem, 3vw, 3.2rem); line-height: 1.05; color: #101010; text-transform: uppercase; }

.as-why__text { margin: 0 auto; max-width: 620px; font-family: "Inter", sans-serif; font-size: 1rem; line-height: 1.75; color: rgba(16, 16, 16, 0.75); }

.as-why__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; align-items: stretch; }

.as-why-card { display: flex; flex-direction: column; align-items: center; text-align: center; height: 100%; min-height: 320px; padding: 34px 26px 30px; background: #fdfefe; border: 1px solid #7eb3c9; border-radius: 4px; box-shadow: 8px 8px 0 #7eb3c9; transition: transform 0.25s ease, box-shadow 0.25s ease; }

/* zone icône fixe */
.as-why-card__icon { width: 62px; height: 62px; margin: 0 auto 28px; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }

.as-why-card__icon img { max-width: 100%; max-height: 100%; display: block; object-fit: contain; }

/* zone titre fixe */
.as-why-card h3 { width: 100%; min-height: 3.1em; margin: 0 0 14px; display: flex-top; align-items: center; justify-content: center; font-family: "DM Serif Display", serif; font-size: 1.5rem; line-height: 1.05; color: #101010; }

/* zone texte qui s'étire proprement */
.as-why-card p { width: 100%; margin: 0; font-family: "Inter", sans-serif; font-size: 0.95rem; line-height: 1.7; color: rgba(16, 16, 16, 0.72); flex-grow: 1; display: flex; align-items: flex-start; justify-content: center; }

@media (max-width: 1100px) { .as-why__grid { grid-template-columns: repeat(2, 1fr); } }

@media (max-width: 768px) { .as-why { padding: 80px 20px; } .as-why__grid { grid-template-columns: 1fr; gap: 20px; } .as-why__title { font-size: 2rem; } .as-why-card { min-height: 280px; } .as-why-card h3 { min-height: auto; } .as-why-card p { flex-grow: 0; display: block; } }

/*===================================================================== HORAIRES + LOCALISATION ====================================================================*/
.info-ss { --as-black: #101010; --as-blue: #438bb0; --as-blue-soft: #7eb3c9; --as-blue-light: #bed8e4; --as-white: #fdfefe; position: relative; background: #eef4f7; padding: 100px 0; overflow: hidden; font-family: "Inter", sans-serif; }

/* ── Conteneur principal ── */
.info-ss__container { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; align-items: flex-start; max-width: 1400px; margin: 0 auto; padding: 0 5%; }

/* ── Section horaires ── */
.info-ss__horaires { animation: info-fadeInLeft 0.9s cubic-bezier(0.22, 1, 0.36, 1) both; }

.info-ss__horaires-card { background: var(--as-white); border: 1px solid var(--as-blue-soft); border-radius: 4px; box-shadow: 10px 10px 0 var(--as-blue-soft); padding: 36px 32px; transition: transform 0.25s ease, box-shadow 0.25s ease; }

/* ── Header ── */
.info-ss__header, .info-ss__map-header { display: flex; align-items: center; gap: 12px; margin-bottom: 28px; }

.info-ss__icon-wrapper { background: var(--as-blue-light); border: 1px solid var(--as-blue); width: 48px; height: 48px; border-radius: 4px; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }

.info-ss__icon { width: 22px; height: 22px; color: var(--as-blue); }

.info-ss__title { font-family: "DM Serif Display", serif; font-size: 1.8rem; font-weight: 400; line-height: 1.1; color: var(--as-black); margin: 0; }

/* ── Schedule ── */
.info-ss__schedule { display: flex; flex-direction: column; gap: 10px; }

.info-ss__day-row { display: flex; justify-content: space-between; align-items: center; padding: 14px 16px; border: 1px solid rgba(67, 139, 176, 0.18); border-radius: 4px; background: rgba(190, 216, 228, 0.16); transition: background 0.2s ease, transform 0.2s ease, border-color 0.2s ease; }

.info-ss__day-row:hover { background: rgba(190, 216, 228, 0.32); border-color: rgba(67, 139, 176, 0.35); }

.info-ss__day-row.today { background: var(--as-blue-light); border-color: var(--as-blue); }

.info-ss__day-name { font-size: 0.95rem; color: var(--as-black); font-weight: 600; }

.info-ss__hours { font-size: 0.95rem; font-weight: 600; color: var(--as-blue); }

.info-ss__hours.closed { color: var(--as-black); opacity: 0.55; }

.info-ss__today-badge { font-size: 0.75rem; font-weight: 600; opacity: 0.85; margin-left: 8px; color: var(--as-blue); text-transform: uppercase; letter-spacing: 0.08em; }

/* ── Section map ── */
.info-ss__map-wrapper { animation: info-fadeInRight 0.9s cubic-bezier(0.22, 1, 0.36, 1) both; }

.info-ss__map-header { margin-bottom: 24px; }

.info-ss__map { width: 100%; min-height: 420px; border: 1px solid var(--as-blue-soft); border-radius: 4px; overflow: hidden; box-shadow: 10px 10px 0 var(--as-blue-soft); background: var(--as-white); }

.info-ss__map iframe { width: 100%; height: 100%; min-height: 420px; border: 0; display: block; }

/* ── Adresse si besoin ── */
.info-ss__address-text { margin-top: 16px; font-size: 0.95rem; line-height: 1.7; color: rgba(16, 16, 16, 0.72); }

/* ── Animations ── */
@keyframes info-fadeInLeft { from { opacity: 0;
    transform: translateX(-40px); }
  to { opacity: 1;
    transform: translateX(0); } }

@keyframes info-fadeInRight { from { opacity: 0;
    transform: translateX(40px); }
  to { opacity: 1;
    transform: translateX(0); } }

/* ── Responsive ── */
@media (max-width: 1024px) { .info-ss__container { grid-template-columns: 1fr; gap: 48px; } .info-ss__map, .info-ss__map iframe { min-height: 350px; } }

@media (max-width: 840px) { .info-ss { padding: 60px 0; } .info-ss__container { gap: 32px; padding: 0; } .info-ss__horaires-card { padding: 28px 24px; box-shadow: 7px 7px 0 var(--ad-green-dark); max-width: 100vw; } .info-ss__title { font-size: 1.45rem; } .info-ss__map { box-shadow: 7px 7px 0 var(--ad-green-dark); } .info-ss__map-wrapper { max-width: 100vw; } .info-ss__map, .info-ss__map iframe { min-height: 280px; } .info-ss__day-name, .info-ss__hours { font-size: 0.9rem; } .info-ss__address-text { font-size: 0.9rem; } }

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