.px-gallery{margin:0 0 32px;max-width:100%;}.px-gallery-stage{position:relative;overflow:hidden;border-radius:9px;background:#e8ece7;}.px-slide{margin:0;position:relative;}.px-slide[hidden]{display:none!important}.px-slide img{display:block;width:100%;max-height:480px;aspect-ratio:16/10;object-fit:cover}.px-slide figcaption{color:#254438;font-size:13px;background:#ecf2ee;padding:10px 15px}.px-slide figcaption:empty{display:none}.px-gallery-prev,.px-gallery-next{position:absolute;top:50%;transform:translateY(-50%);z-index:2;display:grid;place-items:center;width:40px;height:40px;border:0;background:#fffdf2ee;color:#172c29;border-radius:50%;font-size:32px;cursor:pointer;box-shadow:0 2px 10px #0002}.px-gallery-prev{left:12px}.px-gallery-next{right:12px}.px-gallery-dots{display:flex;gap:8px;justify-content:center;padding:12px 0}.px-gallery-dots button{width:10px;height:10px;border:0;border-radius:50%;background:#b5c4b7;cursor:pointer}.px-gallery-dots button[aria-current="true"]{background:#245744;transform:scale(1.2)}.px-gallery button:focus-visible{outline:3px solid #2b7454;outline-offset:2px}.px-visit-intro{margin:20px 0}.px-visit-link{margin:18px 0}.px-visit-form{margin-top:20px}.px-visit-form label{display:block}

/* V1.20.1ak — Champ « Espace à découvrir » : liste moderne, native et accessible. */
.px-visit-form .px-visit-space-label{min-width:0;width:100%}
.px-visit-form .px-visit-space-control{position:relative;display:block;margin-top:9px}
.px-visit-form .px-visit-space-control select{
  -webkit-appearance:none;appearance:none;display:block;width:100%;min-width:0;min-height:57px;
  margin:0;padding:14px 65px 14px 18px;border:1px solid #c1d4c8;border-radius:12px;
  background:linear-gradient(180deg,#ffffff 0%,#f7faf7 100%);
  box-shadow:0 2px 6px rgba(27,61,46,.055);
  font-size:14px;font-weight:650;line-height:1.5;letter-spacing:0;color:#244a39;
  cursor:pointer;transition:border-color .18s,box-shadow .18s,background-color .18s;
}
.px-visit-form .px-visit-space-control select:invalid{color:#74877a}
.px-visit-form .px-visit-space-control select:hover{border-color:#739f86;background:#fff}
.px-visit-form .px-visit-space-control select:focus-visible{
  outline:3px solid #a8cbb6;outline-offset:2px;border-color:#2e7558;
  box-shadow:0 0 0 1px rgba(46,117,88,.12),0 5px 15px rgba(27,61,46,.09);
}
.px-visit-form .px-visit-space-control select option{background:#fff;color:#254a3b;font-weight:500}
.px-visit-form .px-visit-space-control::before{
  content:"";position:absolute;right:51px;top:12px;bottom:12px;width:1px;
  background:#e0eae3;pointer-events:none;
}
.px-visit-form .px-visit-space-chevron{
  position:absolute;right:20px;top:50%;width:11px;height:11px;
  border-right:2px solid #43745a;border-bottom:2px solid #43745a;
  transform:translateY(-68%) rotate(45deg);pointer-events:none;
}
.px-visit-form .px-visit-space-help{
  display:block;margin-top:7px;color:#789084;font-size:11px;font-weight:400;
  letter-spacing:0;line-height:1.55;
}
@media (max-width:640px){
  .px-visit-form .px-visit-space-control select{min-height:54px;font-size:16px}
}


/* V1.20.1al — Photo indépendante dans le hero de chaque page éditable. */
.page-hero--has-image .page-hero-grid{
  position:relative;z-index:1;
  grid-template-columns:minmax(0,1.55fr) minmax(260px,.95fr);gap:clamp(22px,4.5vw,64px);
}
.page-hero--has-image .page-hero-copy{min-width:0}
.page-hero--has-image .page-hero-photo{
  position:relative;width:100%;aspect-ratio:5/4;min-height:220px;max-height:345px;overflow:hidden;
  border-radius:48% 48% 19px 19px / 42% 42% 19px 19px;
  background:#d3e1d9;box-shadow:0 18px 40px rgba(25,55,41,.13);
}
.page-hero--has-image .page-hero-photo img{
  display:block;width:100%;height:100%;object-fit:cover;object-position:center;
}
@media(max-width:840px){
  .page-hero--has-image .page-hero-grid{grid-template-columns:1fr;gap:28px}
  .page-hero--has-image .page-hero-photo{width:min(100%,500px);margin:0 auto;min-height:0;aspect-ratio:16/10}
}
@media(max-width:640px){
  .page-hero--has-image{padding:48px 0 58px}
  .page-hero--has-image .page-hero-photo{aspect-ratio:16/10;border-radius:38% 38% 15px 15px / 43% 43% 15px 15px}
}
