:root{--v171-paper:#f5f1e8;--v171-ink:#0d141b;--v171-blue:#9dbfe6;--v171-line:rgba(13,20,27,.18)}

/* V17.1 — lisibilité, navigation et conversion */
.nav{font-size:11px!important;gap:24px!important}
.nav a{white-space:nowrap}
.nav a[href*="doctolib.fr"]{display:inline-flex;align-items:center;min-height:36px;padding:0 14px!important;background:var(--v171-ink);color:var(--v171-paper);border:1px solid var(--v171-ink)}
.footer,.footer a{font-size:10px!important;line-height:1.5}
.breadcrumb{font-size:10px!important}
.chapter-row a{font-size:9px!important}
.chapter-row a span{font-size:8px!important}
.plate figcaption,.visual figcaption,.venue-image figcaption{font-size:12px!important}
.aside h3,.subhead,.eyebrow{font-size:10px!important}
.aside p,.aside li{font-size:13px!important}
.btn,.seo-action,.pss-link,.place-seo-link,.path-sheet-link{font-size:10px!important}

/* CTA situé dans le premier écran */
.seo-hero-rdv{display:inline-flex;align-items:center;justify-content:center;align-self:flex-start;min-height:44px;margin-top:22px;padding:0 18px;background:var(--v171-ink);color:var(--v171-paper)!important;border:1px solid var(--v171-ink);font:600 10px/1 "Avenir Next","Helvetica Neue",Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase}
.seo-review-top{margin:13px 0 0!important;font:500 11px/1.5 "Avenir Next","Helvetica Neue",Arial,sans-serif!important;letter-spacing:.02em;color:#5f666c!important}
.seo-review-top a{border-bottom:1px solid var(--v171-blue)}

/* Menu compact et rendez-vous mobile */
.seo-mobile-menu,.seo-mobile-rdv{display:none}
.seo-mobile-menu{position:fixed;z-index:95;right:18px;top:18px}
.seo-mobile-menu summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:center;width:54px;height:38px;border:1px solid var(--v171-ink);background:rgba(245,241,232,.98);font:600 9px/1 sans-serif;letter-spacing:.12em}
.seo-mobile-menu summary::-webkit-details-marker{display:none}
.seo-mobile-menu[open] summary{background:var(--v171-ink);color:var(--v171-paper)}
.seo-mobile-panel{position:absolute;top:45px;right:0;width:min(310px,86vw);padding:14px;background:rgba(245,241,232,.99);border:1px solid var(--v171-ink);box-shadow:0 14px 38px rgba(13,20,27,.14)}
.seo-mobile-panel a{display:block;padding:13px 8px;border-bottom:1px solid var(--v171-line);font:500 12px/1.25 "Avenir Next","Helvetica Neue",Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase}
.seo-mobile-panel a:last-child{border:0;background:var(--v171-ink);color:var(--v171-paper);margin-top:8px;padding:14px}
.seo-mobile-rdv{position:fixed;z-index:90;left:14px;right:14px;bottom:12px;min-height:48px;align-items:center;justify-content:center;background:var(--v171-ink);color:var(--v171-paper)!important;border:1px solid var(--v171-paper);box-shadow:0 8px 30px rgba(13,20,27,.22);font:600 11px/1 sans-serif;letter-spacing:.13em;text-transform:uppercase}

/* Accueil : cartes et portes d'entrée */
.path-card,.place{cursor:pointer}
.place-rdv{display:inline-block;margin:10px 0 0 12px;padding:7px 9px;background:var(--v171-ink);color:var(--v171-paper)!important;font:600 9px/1 sans-serif;letter-spacing:.1em;text-transform:uppercase;position:relative;z-index:2}
.path-card:focus-visible,.place:focus-visible,.seo-mobile-menu summary:focus-visible,a:focus-visible,button:focus-visible{outline:3px solid var(--v171-blue)!important;outline-offset:3px}
.pathology-group-head a{font-size:10px!important;padding:8px 0!important}
.pathology-group-head a::before{content:"Explorer ";color:#5f666c}

/* La carte et les logos au trait ne doivent pas être affadis */
.map-card{min-width:330px!important;padding:8px 0 8px 18px!important}
.map-card img{width:100%!important;opacity:1!important;mix-blend-mode:normal!important;filter:contrast(1.18) saturate(.95)!important;image-rendering:auto}
.pss-block{grid-template-columns:minmax(0,1fr) minmax(280px,360px)!important}
.pss-logo{max-width:360px!important}
.pss-logo img{width:100%!important;opacity:1!important;mix-blend-mode:normal!important;filter:none!important}
.pss-logo::after{content:"PARIS SHOULDER SCHOOL";display:block;margin-top:8px;text-align:center;font:600 10px/1.3 "Avenir Next","Helvetica Neue",Arial,sans-serif;letter-spacing:.22em;color:var(--v171-ink)}

/* Pages de lieux */
.venue-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--v171-line);border-left:1px solid var(--v171-line);margin:24px 0}
.venue-fact{padding:22px;border-right:1px solid var(--v171-line);border-bottom:1px solid var(--v171-line)}
.venue-fact strong{display:block;margin-bottom:8px;font-size:17px;font-weight:500}
.venue-fact span{font-size:13px;line-height:1.6;color:#62686d}
.source-note a{border-bottom:1px solid var(--v171-blue)}

@media(max-width:900px){
  body{padding-bottom:72px}
  header .nav{display:none!important}
  header .langs{margin-right:64px}
  .seo-mobile-menu{display:block}
  .seo-mobile-rdv{display:flex}
  .hero-sub,.content p,.content li,.definition,.lexicon-definition{font-size:16px!important;line-height:1.7!important}
  .aside p,.aside li{font-size:14px!important}
  .pathology-group-head::after{content:"GLISSER POUR VOIR LES FICHES  →";display:block;margin-left:auto;font:600 8px/1.3 sans-serif;letter-spacing:.1em;color:#66717a}
  .pathology-group-head a{margin-left:12px!important}
  .map-card{display:flex!important;min-width:0!important;border-left:0!important;border-top:1px solid var(--v171-line);padding:20px 0 0!important}
  .map-card img{max-height:330px;object-fit:contain}
  .pss-block{grid-template-columns:1fr!important;padding-right:0!important}
  .pss-logo{max-width:300px!important;margin:8px auto 0}
  .venue-facts{grid-template-columns:1fr}
}

@media(min-width:901px){
  .seo-mobile-menu,.seo-mobile-rdv{display:none!important}
}
