/* ===================== Notre mission ===================== */
.ms-hero{position:relative;min-height:clamp(560px,86svh,860px);display:flex;align-items:flex-end;padding:calc(var(--hdr) + 80px) 0 clamp(64px,8vw,120px);background:var(--umber-deep) url(../img/tex-medecin.webp) center/cover no-repeat;color:var(--on-dark);overflow:hidden}
.ms-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgba(18,18,17,.35),rgba(18,18,17,.8))}
.ms-hero-in{position:relative;display:flex;flex-direction:column;gap:22px}
.ms-hero .h1{font-size:clamp(52px,8.4vw,132px);max-width:11ch;line-height:.98}
.ms-hero .h1 .w{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.08em;margin-bottom:-.08em}
.ms-hero .h1 .w>span{display:inline-block;animation:msUp 1.1s var(--ease) both}
@keyframes msUp{from{transform:translateY(105%)}to{transform:none}}
.ms-hero-sub{font-size:clamp(24px,2.6vw,38px);line-height:1.2;color:var(--on-dark-muted);max-width:30ch}
.ms-col{max-width:700px;margin:0 auto;display:flex;flex-direction:column;gap:22px}
.ms-col p{font-size:clamp(17px,1.25vw,19px);line-height:1.75;color:var(--muted)}
.ms-state{position:relative;padding:clamp(96px,11vw,170px) 0;background:var(--white);border-top:1px solid var(--line);border-bottom:1px solid var(--line);text-align:center}
.ms-state .wrap{display:flex;flex-direction:column;align-items:center;gap:clamp(22px,2.4vw,34px)}
.ms-state-t{font-family:var(--serif);font-size:clamp(28px,3.1vw,46px);line-height:1.22;letter-spacing:-.01em;color:var(--subtle);max-width:30ch}
.ms-state-b{font-family:var(--serif);font-size:clamp(28px,3.1vw,46px);line-height:1.22;letter-spacing:-.01em;color:var(--ink);max-width:30ch}
.ms-state-k{font-family:var(--serif);font-size:clamp(34px,4.2vw,64px);line-height:1.08;letter-spacing:-.015em;color:var(--ink);max-width:22ch;padding-top:clamp(22px,2.4vw,34px);border-top:1px solid var(--line)}
.ms-mani-2{padding-top:clamp(80px,9vw,140px)}
.ms-mani-2 .ms-conv-1{margin-top:0}
.ms-mani:not(.ms-mani-2){padding-bottom:clamp(80px,9vw,140px)}
.ms-col .ms-push{font-family:var(--serif);font-size:clamp(22px,1.9vw,27px);line-height:1.4;color:var(--ink);margin-top:clamp(12px,1.5vw,20px)}
.ms-col .ms-lede{font-family:var(--serif);font-size:clamp(26px,2.4vw,34px);line-height:1.3;color:var(--ink)}
.ms-conv{font-family:var(--serif);font-size:clamp(34px,3.6vw,52px);line-height:1.08;letter-spacing:-.015em;margin-top:clamp(36px,4vw,56px)}
.ms-tests{list-style:none;margin:4px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.ms-tests li{font-size:13.5px;padding:9px 15px;border-radius:999px;background:var(--white);border:1px solid var(--line);color:var(--ink)}
.ms-close{margin-top:clamp(28px,3vw,44px);padding-top:clamp(28px,3vw,44px);border-top:1px solid var(--line)}
.ms-col .ms-sign{font-size:clamp(30px,3vw,42px);line-height:1.1;color:var(--ink)}
.ms-trust{padding-top:0}
.ms-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:clamp(36px,4vw,56px)}
.ms-head .h2{max-width:16ch}
.ms-link{display:inline-flex;align-items:center;gap:10px;font-size:15px;color:var(--ink);text-decoration:none;padding-bottom:4px;border-bottom:1px solid currentColor}
.ms-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.ms-card{display:flex;flex-direction:column;gap:12px;padding:clamp(26px,2.4vw,36px);border-radius:22px;background:var(--white);border:1px solid var(--line);transition:translate .5s var(--ease),box-shadow .5s var(--ease)}
.ms-card h3{font-family:var(--serif);font-size:clamp(23px,1.9vw,27px);line-height:1.15;margin-top:18px}
.ms-card p{font-size:15px;line-height:1.6;color:var(--muted)}
.ms-ic{width:52px;height:52px;border-radius:999px;background:var(--paper);display:flex;align-items:center;justify-content:center;color:var(--ink)}
.ms-card-dark{background:var(--umber);border-color:var(--umber);color:var(--on-dark)}
.ms-card-dark p{color:var(--on-dark-muted)}
.ms-card-dark .ms-ic{background:rgba(245,244,241,.1);color:var(--on-dark)}
@media (hover:hover){.ms-card:hover{translate:0 -4px;box-shadow:0 24px 48px -28px rgba(18,18,17,.35)}}
.ms-f{position:relative;padding:var(--sec) 0;background:var(--umber-deep) url(../img/tex-systeme.webp) center bottom/cover no-repeat;overflow:hidden}
.ms-f:before{content:"";position:absolute;inset:0;background:rgba(18,18,17,.72)}
.ms-f-in{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(48px,7vw,120px);align-items:start}
.ms-f-l{display:flex;flex-direction:column;gap:24px}
.ms-f-logo{display:inline-block;width:clamp(220px,22vw,300px);margin-bottom:clamp(8px,1.5vw,20px);transition:opacity .3s}
.ms-f-logo img{width:100%;height:auto}
@media (hover:hover){.ms-f-logo:hover{opacity:.85}}
.ms-link svg{flex:0 0 auto}
.ms-link-light{color:var(--on-dark);align-self:flex-start;margin-top:8px}
.ms-f .h2{max-width:14ch}
.ms-f-k{font-size:14px;color:var(--on-dark-muted);padding-bottom:18px;border-bottom:1px solid var(--line-dark)}
.ms-ben{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.ms-ben li{display:flex;gap:24px;padding:30px 0;border-bottom:1px solid var(--line-dark)}
.ms-n{font-family:var(--serif);font-size:20px;color:var(--on-dark-muted);min-width:34px;padding-top:2px}
.ms-ben h3{font-size:19px;font-weight:500;line-height:1.35;margin-bottom:8px}
.ms-ben p{font-size:15.5px;line-height:1.6;color:var(--on-dark-muted)}
.ms-vids .ms-head{align-items:flex-end}
.ms-vids .ms-head .lead{max-width:44ch}
.ms-vgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,1.6vw,24px)}
.ms-v{display:flex;flex-direction:column;gap:16px;width:100%;padding:0;border:0;background:none;text-align:left;cursor:pointer;color:var(--ink);font:inherit}
.ms-v-media{position:relative;display:block;width:100%;aspect-ratio:16/9;border-radius:20px;overflow:hidden;background:var(--umber);isolation:isolate;box-shadow:0 30px 60px -36px rgba(18,18,17,.5)}
.ms-v-media img{width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease)}
.ms-v-media:after{content:"";position:absolute;inset:0;background:rgba(18,18,17,.06);transition:background-color .5s var(--ease)}
.ms-v-play{position:absolute;z-index:1;right:clamp(12px,1.4vw,18px);top:clamp(12px,1.4vw,18px);width:54px;height:54px;border-radius:999px;background:rgba(245,244,241,.92);color:var(--ink);display:flex;align-items:center;justify-content:center;padding-left:3px;box-shadow:0 12px 30px -8px rgba(18,18,17,.5);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:transform .5s var(--ease)}
.ms-v-cap{display:flex;flex-direction:column;gap:4px;padding:0 2px}
.ms-v-name{font-family:var(--serif);font-size:clamp(22px,1.9vw,26px);line-height:1.1}
.ms-v-meta{font-size:13.5px;color:var(--subtle)}
@media (hover:hover){.ms-v:hover img{transform:scale(1.04)}.ms-v:hover .ms-v-media:after{background:rgba(18,18,17,.2)}.ms-v:hover .ms-v-play{transform:scale(1.1)}}
.ms-v:focus-visible{outline:none}.ms-v:focus-visible .ms-v-media{outline:2px solid var(--ink);outline-offset:4px}
.ms-modal{border:0;padding:0;margin:auto;background:transparent;width:min(1120px,calc(100vw - 32px));max-width:none;max-height:none;overflow:visible;color:var(--on-dark)}
.ms-modal::backdrop{background:rgba(12,12,11,.86);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.ms-modal[open]{animation:msPop .45s var(--ease) both}
.ms-modal[open]::backdrop{animation:msFade .35s ease both}
@keyframes msPop{from{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:none}}
@keyframes msFade{from{opacity:0}to{opacity:1}}
.ms-modal-in{position:relative}
.ms-modal-frame{position:relative;aspect-ratio:16/9;border-radius:18px;overflow:hidden;background:#000;box-shadow:0 40px 100px -30px rgba(0,0,0,.7)}
.ms-modal-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.ms-modal-x{position:absolute;right:0;top:-58px;width:46px;height:46px;border-radius:999px;border:1px solid rgba(245,244,241,.3);background:rgba(245,244,241,.08);color:var(--on-dark);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color .3s}
.ms-modal-x:hover{background:rgba(245,244,241,.18)}
.ms-modal-x:focus-visible{outline:2px solid var(--on-dark);outline-offset:2px}
html.ms-lock{overflow:hidden}
@media (max-width:900px){.ms-vgrid{grid-template-columns:minmax(0,1fr)}}
@media (prefers-reduced-motion:reduce){.ms-hero .h1 .w>span,.ms-modal[open],.ms-modal[open]::backdrop{animation:none}}
.ms-cta-in{display:flex;flex-direction:column;align-items:center;text-align:center;gap:22px}
.ms-cta .h2{max-width:16ch}
.ms-btns{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:8px}
@media (max-width:1100px){.ms-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:900px){.ms-f-in{grid-template-columns:minmax(0,1fr)}}
@media (max-width:640px){
  .ms-cards{grid-template-columns:minmax(0,1fr)}
  .ms-hero{min-height:560px}
  .ms-ben li{gap:16px;padding:24px 0}
  .ms-btns{flex-direction:column;align-items:stretch}
  .ms-btns .pill{justify-content:space-between}
  .ms-btns .wa-pill{justify-content:center}
}
