.visit-guide{background:#fff}.visit-lead{max-width:760px;color:#4f6760;line-height:1.7}.visit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:32px 0}.visit-grid article{padding:28px;background:#f0f8f5;border-top:3px solid #08775f}.visit-grid h3,.visit-help h3{color:#164f43;margin-top:0}.visit-grid p,.visit-help p{line-height:1.7}.visit-grid a,.visit-links a{color:#08775f;text-decoration:underline;text-underline-offset:4px}.visit-help{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px;border:1px solid #d8e5df}.visit-help .button{flex-shrink:0}.visit-links{display:flex;flex-wrap:wrap;gap:24px;margin-top:28px}#orthopedie{padding:60px 9%;background:#f7faf7}#orthopedie>div{max-width:1180px;margin:auto}#orthopedie p{font-size:18px;line-height:1.6;color:#39463f}.vaccination-main>img{display:block;float:left;width:240px!important;height:184px!important;max-width:100%!important;object-fit:contain;margin:6px 18px 10px 0;border-radius:12px}a:focus-visible,summary:focus-visible{outline:3px solid #d20b72;outline-offset:5px}@media(max-width:640px){.visit-grid{grid-template-columns:1fr}.visit-help{display:block}.visit-help .button{margin-top:12px}.visit-grid article,.visit-help{padding:22px}.vaccination-main>img{float:none;margin:0 0 20px}#orthopedie{padding:40px 6%}}

.baby-section{background:#fff5f9}.baby-section .eyebrow{color:#d20b72}.baby-section .visit-grid article{background:#fff;border-top-color:#d20b72}.header nav{flex-wrap:wrap;gap:1rem}

.baby-photo{margin:32px 0}.baby-photo img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;border-radius:16px}.baby-photo figcaption{font-size:.8rem;color:#4f6760;margin-top:8px}@media(max-width:640px){.baby-photo img{max-height:none;border-radius:10px}}

/* Vignette bébé, même largeur que la photo de vaccination. */
.baby-section .baby-photo{width:240px;max-width:100%;margin:20px 0}.baby-section .baby-photo img{width:100%;height:auto;max-height:none;border-radius:12px}

#orthopedie .orthopedie-photo{width:240px;max-width:100%;margin:20px 0}#orthopedie .orthopedie-photo img{display:block;width:100%;height:auto;border-radius:12px}

.parking-section{background:#f0f8f5}.parking-section>p{max-width:680px;line-height:1.7}.parking-photo{width:480px;max-width:100%;margin:24px 0}.parking-photo img{display:block;width:100%;height:auto;border-radius:12px}.parking-photo figcaption{font-size:.85rem;line-height:1.5;color:#4f6760;margin-top:10px}

.local-map{width:480px;max-width:100%;margin:28px 0;padding:20px;border:1px solid #d8e5df;border-radius:12px;background:#fff;box-sizing:border-box}.local-map iframe{display:block;border:0;width:100%;height:280px;border-radius:8px}.local-map .map-notice{font-size:.8rem;line-height:1.5;color:#4f6760}.local-map [hidden]{display:none}

.medical-section{background:#f0f8f5}.medical-section>p{max-width:850px;line-height:1.7}.medical-photo{width:480px;max-width:100%;margin:20px 0}.medical-photo img{display:block;width:100%;height:auto;border-radius:12px}

/* Largeur commune aux illustrations des services et du parking. */
.baby-section .baby-photo,#orthopedie .orthopedie-photo,.medical-photo,.parking-photo{width:480px;max-width:100%}
.vaccination-main>img{float:none;width:480px!important;height:auto!important;max-width:100%!important;margin:20px 0;border-radius:12px}

.pharmacy-film{display:grid;grid-template-columns:minmax(0,1fr) 190px;align-items:center;gap:clamp(2rem,7vw,6rem);border-bottom:1px solid #dce5df;padding-top:1.8rem;padding-bottom:1.8rem}
.pharmacy-film-copy{max-width:36rem}.pharmacy-film-copy h2{margin-bottom:1rem}.pharmacy-film-copy>p:not(.eyebrow){color:#56665f;line-height:1.7}.pharmacy-film-duration{font-size:.9rem;font-weight:700;color:#08775f!important}
.pharmacy-film-media{justify-self:center;width:100%;max-width:190px}.pharmacy-film video{display:block;width:100%;height:auto;aspect-ratio:3/5;object-fit:cover;border-radius:12px;box-shadow:0 16px 35px rgba(6,61,54,.18);background:#173c35}
@media(max-width:700px){.pharmacy-film{grid-template-columns:1fr;gap:1.3rem;padding-top:2.5rem;padding-bottom:2.8rem}.pharmacy-film-media{max-width:180px}}

/* ===== Bandeau actualités NOTO ===== */
.newsbar{
  width:100%;
  background:#D41473;
  color:#fff;
  overflow:hidden;
  border-bottom:1px solid rgba(255,255,255,.15);
}

.newsbar-track{
  display:flex;
  width:max-content;
  animation:noto-news-scroll 34s linear infinite;
  will-change:transform;
}

.newsbar:hover .newsbar-track{
  animation-play-state:paused;
}

.newsbar-item{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:10px 34px;
  font-size:14px;
  font-weight:600;
  white-space:nowrap;
}

.newsbar-item.octobre{
  background:rgba(245,214,223,.11);
}

@keyframes noto-news-scroll{
  from{transform:translateX(0)}
  to{transform:translateX(-50%)}
}

/* ===== Vidéo à gauche / texte à droite ===== */
.pharmacy-film{
  display:grid !important;
  grid-template-columns:minmax(280px, .85fr) minmax(320px, 1.15fr) !important;
  grid-template-areas:"media copy";
  align-items:center;
  gap:clamp(36px,6vw,90px);
}

.pharmacy-film-media{
  grid-area:media;
}

.pharmacy-film-copy{
  grid-area:copy;
}

.pharmacy-film-media video{
  display:block;
  width:100%;
  max-width:440px;
  height:auto;
  margin:0 auto;
  border-radius:22px;
}

@media(max-width:760px){
  .newsbar-item{
    padding:9px 24px;
    font-size:13px;
  }

  .pharmacy-film{
    grid-template-columns:1fr !important;
    grid-template-areas:
      "media"
      "copy";
    gap:28px;
  }

  .pharmacy-film-media video{
    max-width:360px;
  }
}

@media(prefers-reduced-motion:reduce){
  .newsbar-track{
    animation:none;
  }
}

/* ===== Parapharmacie prix bas ===== */
.para-price-banner{
  width:100%;
  background:#D41473;
  color:#fff;
  text-align:center;
  padding:38px 24px 44px;
  margin:0;
}

.para-price-banner h2{
  margin:0 0 12px;
  color:#fff;
  font-size:clamp(2rem,4vw,3.2rem);
  font-weight:800;
  letter-spacing:.015em;
}

.para-price-banner p{
  margin:0 0 26px;
  color:#fff;
  font-size:clamp(1rem,1.8vw,1.35rem);
  font-weight:700;
}

.para-price-banner strong{
  display:block;
  color:#fff;
  font-size:clamp(1.25rem,2.4vw,1.7rem);
  letter-spacing:.08em;
}

@media(max-width:700px){
  .para-price-banner{
    padding:30px 18px 34px;
  }
}

/* Correction : encart parapharmacie centré */
.para-price-banner{
  width:calc(100% - 40px) !important;
  max-width:820px !important;
  margin:36px auto 44px !important;
  border-radius:24px !important;
  padding:34px 30px 38px !important;
  box-shadow:0 14px 34px rgba(0,0,0,.10);
}

@media(max-width:700px){
  .para-price-banner{
    width:calc(100% - 28px) !important;
    margin:26px auto 32px !important;
    border-radius:20px !important;
    padding:28px 18px 32px !important;
  }
}

/* Bandeau défilant - version universelle */
.newsbar{
  width:100%;
  overflow:hidden;
  background:#D41473;
  color:#fff;
}

.newsbar-track{
  display:flex !important;
  flex-wrap:nowrap !important;
  width:max-content !important;
  animation:notoTicker 32s linear infinite !important;
  -webkit-animation:notoTicker 32s linear infinite !important;
  transform:translate3d(0,0,0);
  -webkit-transform:translate3d(0,0,0);
  will-change:transform;
}

.newsbar-item{
  flex:0 0 auto;
  white-space:nowrap;
}

.newsbar:hover .newsbar-track{
  animation-play-state:paused !important;
  -webkit-animation-play-state:paused !important;
}

@keyframes notoTicker{
  from{
    transform:translate3d(0,0,0);
  }
  to{
    transform:translate3d(-50%,0,0);
  }
}

@-webkit-keyframes notoTicker{
  from{
    -webkit-transform:translate3d(0,0,0);
  }
  to{
    -webkit-transform:translate3d(-50%,0,0);
  }
}


/* DEBUT PARA HIGHLIGHT */

.para-highlight{
  max-width:980px;
  margin:26px auto 34px;
  padding:28px 28px 24px;
  border-radius:22px;
  background:#D41473;
  color:#ffffff;
  text-align:center;
  box-shadow:0 18px 40px rgba(212,20,115,.30);
}

.para-highlight-title{
  display:inline-block;
  font-size:42px;
  line-height:1;
  font-weight:900;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:#ffffff;
  margin-bottom:14px;
  padding:0 6px 4px;
  box-shadow:inset 0 -14px 0 transparent;
}

.para-highlight-cats{
  font-size:26px;
  line-height:1.22;
  font-weight:800;
  color:#ffffff;
  margin-bottom:14px;
}

.para-highlight-brands{
  display:inline-block;
  font-size:18px;
  line-height:1.4;
  font-weight:700;
  color:#ffffff;
  margin-bottom:18px;
  padding:3px 10px 5px;
  border-radius:10px;
  background:rgba(255,255,255,.12);
}

.para-highlight-price{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:10px;
  padding:12px 18px;
  border-radius:999px;
  background:#C21872;
}

.para-highlight-price strong{
  color:#ffffff;
  font-size:15px;
  font-weight:900;
  letter-spacing:.10em;
  text-transform:uppercase;
  background:transparent;
  padding:4px 8px;
  border-radius:6px;
}

.para-highlight-price span{
  color:#ffffff;
  font-size:17px;
  font-weight:800;
}

@media (max-width:700px){

  .para-highlight{
    max-width:none;
    margin:18px 14px 24px;
    padding:20px 16px 18px;
    border-radius:18px;
  }

  .para-highlight-title{
    font-size:28px;
    margin-bottom:10px;
    box-shadow:none;
  }

  .para-highlight-cats{
    font-size:18px;
    margin-bottom:10px;
  }

  .para-highlight-brands{
    font-size:13.5px;
    margin-bottom:14px;
    padding:4px 8px;
  }

  .para-highlight-price{
    gap:8px;
    padding:10px 12px;
    border-radius:14px;
  }

  .para-highlight-price strong{
    font-size:11.5px;
    padding:3px 6px;
  }

  .para-highlight-price span{
    font-size:13px;
  }

}

/* FIN PARA HIGHLIGHT */

/* Actualités : défilement de gauche vers la droite. */
.newsbar-track{animation-direction:reverse !important;-webkit-animation-direction:reverse !important;}

/* Un seul rose pour tout l’encart parapharmacie. */
.para-highlight-price,.para-highlight-price strong{background:transparent;}
