

/* Paghe Service */
/* **************************** Header **************************** */
.service_Header { width: 100%; height: clamp(400px, 70vh, 70vh); background-image: url('../Images/Service/Services-header.jpg'); background-size: cover; background-position: center center; background-repeat: no-repeat; position: relative; overflow: hidden; margin-top: 0; z-index: 0; }
.service_Header::after { content: ""; position: absolute; left: 0; right: 0; top: 0; bottom: 0; background: linear-gradient(rgba(0,0,0,0.6), rgba(0,0,0,0.0)); pointer-events: none; z-index: 1; }

/* **************************** Main Section **************************** */
.menu_ServMainTitle { text-align: center; line-height: 1.02; font-size: clamp(30px, 6.6vw, 64px); display: block; position: relative; z-index: 2; margin-top: clamp(-400px, -15vw, -40px);; padding: 0 10px; margin-bottom: 3em; }
.service_Features { display: flex; gap: clamp(20px, 5vw, 40px); justify-content: center; align-items: flex-start; margin-top: clamp(48px, 6.5vw, 120px); margin-bottom: clamp(48px, 6.5vw, 120px); }
.service_Feature { width: clamp(200px, 25vw, 220px); text-align: center; position: relative; }
.service_ovalMorph { width: 120px; height: 120px; display: block; margin: 0 auto 18px auto; }
.service_Feature_Tittle { margin: 8px 0 4px 0; font-size: clamp(20px, 3vw, 24px); font-family: MtSrtAltXB, "Arial Black", sans-serif; }
.service_Feature_Arrow { display: block; margin: 60px auto 0; width: 40px; height: 40px; }

/* **************************** Sections Infos avec Background Alterné + Boutons **************************** */
.service_Infos[data-bg="magnet"]   { --bg: url('/refonte/Images/Service/Service-magnet.jpg'); }
.service_Infos[data-bg="boussole"] { --bg: url('/refonte/Images/Service/Service-boussole.jpg'); }
.service_Infos[data-bg="calendar"] { --bg: url('/refonte/Images/Service/Service-calendrier_crop.jpg'); }
.service_Infos[data-bg="stat"]     { --bg: url('/refonte/Images/Service/Babily-cover-03.jpg'); }

/** Style Contenu */
.service_Infos {position: relative;display: flex;justify-content: flex-start;padding: clamp(2.5rem, 8vw, 5.5rem) clamp(2.5rem, 6vw, 5rem);background-image: var(--bg);background-size: cover;background-position: center;}
.service_Infos__SVG { font-size: clamp(48px, 7vw, 72px); line-height: 1; margin: 0 0 clamp(1.2rem, 2vw, 1.8rem) 0; }
.service_Infos__title { font-size: clamp(28px, 5.2vw, 54px); line-height: 1.08; font-weight: 700; margin: 0 0 .35em 0; letter-spacing: -.5px; }
.service_Infos__subtitle { font-size: clamp(18px, 3.2vw, 34px); font-weight: 700; line-height: 1.18; margin: 0 0 1.25em 0; font-family: MtSrtAltB; }
.service_Infos__text { font-size: clamp(14px, 1.8vw, 19px); line-height: 1.65; font-weight: 500; margin: 0 0 2.2em 0; max-width: 620px; }

/** Style Boutons */
.service_Btn { --service_Btn-bg: #3C84FB; --service_Btn-bg-hover: #FA6870; --service_Btn-shadow: 0 4px 12px -2px rgba(60,132,251,.55), 0 2px 4px -1px rgba(0,0,0,.25); display: inline-block; text-decoration: none; font-weight: 700; font-size: clamp(15px, 2vw, 22px); color: #fff; background: var(--service_Btn-bg); padding: clamp(.85rem, 1.2vw, 1.05rem) clamp(1.6rem, 2.2vw, 2.35rem); border-radius: 14px; line-height: 1.1; box-shadow: var(--service_Btn-shadow); transition: background .25s, transform .25s, box-shadow .25s; font-family: MtSrtAltXB, "Arial Black", sans-serif; }
.service_Btn:hover { background: var(--service_Btn-bg-hover); transform: translateY(-3px); box-shadow: 0 6px 16px -2px #FA6870, 0 3px 6px -2px rgba(0,0,0,.35); }
.service_Btn:active { transform: translateY(0); box-shadow: 0 2px 6px -1px rgba(60,132,251,.55); }
.service_Btn:focus { outline: 2px solid #fff; outline-offset: 3px; }

/* **************************** Section Stats **************************** */
.service_Infos_Stats { align-items: stretch; min-height: 620px; gap: 40px; }
.service_Infos_Stats::before { content: ""; position: absolute; inset: 0; background: rgba(0,0,0,0.05); z-index: 0; }
.service_Infos_Stats_Content { position: relative; z-index: 1; flex: 1; display: flex; flex-direction: column; justify-content: left; color: #fff; margin: 0 auto; max-width: 1250px; }
.service_Infos_Stats_Facts { display: grid; grid-template-columns: repeat(3,minmax(200px,1fr)); gap: 42px 70px; margin: 0 0 48px 0; }
.service_Infos_Stats_FactsContent__value { font-weight: 800; line-height: 1.04; margin: 0 0 .25em 0; letter-spacing: -.5px; color: #fff; }
.service_Infos_Stats_FactsContent__label { font-size: clamp(15px,1.05vw,20px); font-weight: 600; line-height: 1.25; margin: 0; color: #fff; }
.service_Infos_Stats_Awards { display: grid; grid-template-columns: repeat(3,minmax(200px,1fr)); gap: 30px 60px; margin: 0 0 54px 0; font-size: clamp(13px,.9vw,18px); font-weight: 600; line-height: 1.28; }
.service_Infos_Stats_AwardsContent h1 { font-size: inherit; font-weight: inherit; line-height: 1.28; margin: 0; color: #fff; }
.stats-slogan { font-size: clamp(44px,5.2vw,76px); font-weight: 800; line-height: 1.05; margin: 0; letter-spacing: -.8px; text-align: left; }


/* **************************** Responsive  **************************** */
@media (max-width: 780px) {
  .service_Infos_Stats { flex-direction: column; min-height: unset;}
  .service_Infos_Stats_Facts { grid-template-columns: repeat(3,minmax(140px,1fr)); gap: 34px 40px; margin-bottom: 40px; }
  .service_Infos_Stats_Awards { grid-template-columns: repeat(3,minmax(140px,1fr)); margin-bottom: 44px; }
  .stats-slogan { text-align: center; }
}

@media (max-width: 680px) {
  .service_Features {flex-direction: column;}
  .service_Feature {width: 80%;margin: 0 auto;}
  .service_Feature_Arrow {display: none;}
  .service_Infos {display: block;overflow: hidden;}


  .service_Infos::before {content: "";position: absolute;inset: 0;background-image: var(--bg-blur, var(--bg));background-size: cover;background-position: center center;filter: blur(8px);transform: scale(1.06);z-index: 0;opacity: 1;pointer-events: none;}
  .service_Infos > * {position: relative;z-index: 1;}

  /* Stats section mobile */
  .service_Infos_Stats {padding: 46px 24px;}
  .service_Infos_Stats_Facts {grid-template-columns: repeat(1,minmax(220px,1fr));gap: 24px 24px;margin-bottom: 34px;text-align: center}
  .service_Infos_Stats_Awards {grid-template-columns: repeat(1,minmax(220px,1fr));gap: 24px 24px;margin-bottom: 34px;text-align: center}
}






/* **************************** Page Philosophie **************************** */
.philo_Header { width: 100%; height: 70vh; background-image: url('../Images/Philosophie/image.png'); background-size: cover; background-position: center center; background-repeat: no-repeat; position: relative; overflow: hidden; margin-top: 0; z-index: 0; }
.philo_Header::after { content: ""; position: absolute; left: 0; right: 0; top: 0; bottom: 0; pointer-events: none; z-index: 1; }
.menu_PhiloMainTitle { text-align: center; line-height: 1.02; font-size: clamp(48px, 12vw, 130px); display: block; position: relative; z-index: 2; margin-top: clamp(-400px, -15vw, -40px); padding: 0 10px; }

/* **************************** Section d'Intro  **************************** */
.philo_Container { line-height: 1.55; font-weight: 400; max-width: 900px; }
.philo_Intro_Images { display: flex; align-items: flex-end; justify-content: center; flex-wrap: wrap; margin: 0 auto 3rem; gap: 30px; margin-bottom: 1rem; }
.philo_Intro_Images img { object-fit: contain; }
.philo_Slogan { margin: 1rem 0 0; text-align: center; font-size: clamp(20px, 4vw, 32px); color: #F6A85D; font-weight: 700;}

.philo_Logo_And_Plane { position: relative; align-items: center; width: 100%; overflow: visible; }
.philo_PlaneWrapper {position: absolute;left: 60%;top: 70%;transform: translateY(-50%); display: flex;align-items: center;justify-content: center;overflow: visible;}
.babily_Logo { height: 60px; width: auto; display: block; position: relative; z-index: 2; }
.philo_PlaneTrail {position: absolute;width: clamp(180px, 30vw, 400px);height: auto;left: 100%;top: 50%;transform: translate(-38%, -40%);opacity: 0.7;pointer-events: none;z-index: 0;overflow: visible;}
.babily_Plane { height: clamp(60px, 15vw, 160px);width: auto;transform: rotate(170deg) scale(1.05);filter: drop-shadow(0 12px 22px rgba(0, 0, 0, 0.14));pointer-events: none;position: relative;z-index: 1;}


/* **************************** Section Split Image + Texte  **************************** */
.philo_Split { display: flex; align-items: stretch; min-height: 500px; }
.philo_Tittle { display: flex; align-items: center; margin-bottom: 2rem; }
.philo_Split_Text { padding: clamp(2rem, 5vw, 4rem); display: flex; flex-direction: column; justify-content: center; }
.philo_Split_Image { background-size: cover; background-position: center; background-repeat: no-repeat; z-index: 100; }
.philo_Split_Text p { font-size: 16px; line-height: 1.6; margin-bottom: 1.2rem; }
.philo_Icon { display: inline-block; width: 50px; height: 50px; vertical-align: -8px; margin-right: 15px; flex-shrink: 0; }
.philo_Icon svg { width: 100%; height: 100%; display: block; }
.philo_Icon svg * { stroke-width: 8px; }
.sous_titre_blocs {
  font-family: MtSrtAltXBI;
}

/* **************************** Section Equipe  **************************** */
.philo_Team { max-width: 1200px; margin: 0 auto; padding: 5rem 0 5rem; }
.philo_TeamGrid { display: grid; grid-template-columns: repeat(4, 1fr); gap: clamp(10px, 2.5vw, 30px); row-gap: clamp(40px, 6vw, 60px); align-items: start; }
.philo_TeamCard { text-align: center; padding: 24px;}
.philo_TeamPhoto { width: 100%; aspect-ratio: 5 / 5; object-fit: cover; border-radius: 50px; background: #f6f1ec; display: block; transform-origin: 50% 50%; box-shadow: 0 10px 22px rgba(0, 0, 0, 0.08); transition: filter 0.3s ease; }
.philo_TeamCard:nth-child(odd) .philo_TeamPhoto { transform: rotate(3.25deg); }
.philo_TeamCard:nth-child(even) .philo_TeamPhoto { transform: rotate(-3.25deg); }


.philo_TeamCard h1.bis { margin: 1.2rem 0 0.25rem; text-align: center; }
.philo_TeamRole { font-size: 18px; line-height: 1.25; opacity: 0.9; font-family: MtSrtAltSB, "Arial Black", sans-serif; font-weight: 100;}

/* **************************** Responsive  **************************** */
@media (max-width: 900px) { .philo_Plane { right: -4vw; height: clamp(56px, 9vw, 140px); top: 6%; } }
@media (max-width: 680px) { .philo_LogoPlane { flex-direction: column; } .philo_Plane { position: relative; right: 0; top: 0; transform: rotate(0); margin-top: 12px; height: 46px; } .philo_Intro_Images { gap: 20px; } .philo_Split { flex-direction: column; min-height: auto; } .philo_Split_Image { min-height: 300px; order: 1; } .philo_Split_Text { padding: clamp(1.5rem, 4vw, 2rem); } .philo_Icon { width: 28px; height: 28px; margin-right: 12px; vertical-align: -6px; } .philo_Icon svg * { stroke-width: 5px; } .philo_TeamGrid { grid-template-columns: 1fr; gap: clamp(20px, 4vw, 30px); row-gap: clamp(30px, 6vw, 40px); } .philo_TeamCard:nth-child(odd) .philo_TeamPhoto { transform: rotate(2deg); } .philo_TeamCard:nth-child(even) .philo_TeamPhoto { transform: rotate(-2deg); } }

@media (max-width: 1100px) and (min-width: 900px) { .philo_TeamGrid { grid-template-columns: repeat(3, 1fr); gap: clamp(30px, 3.8vw, 38px); row-gap: clamp(45px, 5.2vw, 52px); } }
@media (max-width: 900px) and (min-width: 680px) { .philo_TeamGrid { grid-template-columns: repeat(2, 1fr); gap: clamp(25px, 4vw, 35px); row-gap: clamp(40px, 5.5vw, 50px); } }