@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600&family=Manrope:wght@400;500;600&display=swap");:root{--ivory:#F9F1EC;--green:#6A6A4F;--deep:#53573A;--brown:#A88C6B;--sage:#AFA792;--beige:#D5C6B6;--ink:#414234}*{box-sizing:border-box}body{margin:0;background:var(--ivory);color:var(--ink);font:15px/1.8 Manrope,sans-serif}h1,h2,h3{font-family:"Cormorant Garamond",serif;color:var(--deep);font-weight:500;line-height:1.03;margin:0 0 24px}h1{font-size:clamp(46px,5vw,62px)}h2{font-size:clamp(36px,3.5vw,46px)}h3{font-size:clamp(28px,2.6vw,34px)}.wrap{width:min(1160px,calc(100% - 64px));margin:auto}.narrow{width:min(800px,calc(100% - 64px));margin:auto}header{height:92px;padding:12px max(32px,calc((100vw - 1160px)/2));display:flex;align-items:center;gap:28px;border-bottom:1px solid #d9cec4;position:sticky;top:0;background:#f9f1ecf2;z-index:5}.logo{margin-right:auto;border:1px dashed var(--sage);padding:7px 12px;color:var(--green);line-height:1.3}.logo small{color:var(--brown)}nav{font-size:12px;white-space:nowrap}.btn{display:inline-block;background:var(--deep);color:var(--ivory);padding:11px 21px;border-radius:30px;text-decoration:none;font-size:12px}.outline{background:transparent;color:var(--deep);border:1px solid var(--deep)}.hero{min-height:650px;display:grid;grid-template-columns:1.05fr .95fr;gap:75px;align-items:center;padding:70px 0}.ey{display:block;color:var(--brown);font-size:11px;letter-spacing:.18em;margin-bottom:18px}.actions{display:flex;gap:12px;margin-top:30px}.ph{min-height:390px;border:1px dashed var(--sage);display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:35px;color:var(--green);background:#d5c6b625}.ph span{font-family:"Cormorant Garamond";font-size:25px;margin:10px}.hero .ph{min-height:460px;border-radius:46% 46% 4px 4px}.quiet{padding:130px 0;background:#f4e9e2;text-align:center}.quiet em{display:block;color:var(--brown);font-family:"Cormorant Garamond";font-size:26px;margin-top:30px}.approaches{padding:130px 0}.approaches>p{max-width:800px;margin-left:auto;margin-right:auto}.approaches>h2{max-width:820px;margin-left:auto;margin-right:auto}.approaches>.ey{text-align:center}.approaches>h2,.approaches>p{text-align:center}.cols{display:grid;grid-template-columns:1fr 1fr;margin-top:60px;border-block:1px solid #d9cec4}.cols article{padding:55px 55px 55px 0}.cols article+article{border-left:1px solid #d9cec4;padding-left:55px}.cols a,.hippo a,.vision a,.cabinet a,.team a{display:block;color:var(--deep);font-weight:600;font-size:12px;margin-top:22px}.cols small,.team small{display:block;color:var(--brown);margin-top:20px}.hippo{padding:72px 0;background:var(--ivory);color:var(--ink)}.hippo>.wrap{background:var(--deep);padding:44px 52px;border-radius:6px}.split{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center}.hippo h2,.hippo a{color:var(--ivory)}.hippo p{color:var(--ivory)}.dark{border-color:#f9f1ec66;background:#ffffff08;color:var(--ivory);min-height:280px}.vision{padding:140px 0}.words{font:26px "Cormorant Garamond";color:var(--green);margin:30px 0}.cabinet{padding:130px 0;background:#efe3db}.cabinet p{max-width:700px}.wide{margin-top:50px;min-height:480px}.team{padding:130px 0;text-align:center}.names{display:flex;justify-content:center;gap:100px;margin:35px}.names strong{font:28px "Cormorant Garamond";color:var(--deep)}.flower{display:inline-block;border:1px dashed var(--sage);padding:8px 12px;color:var(--brown);font-size:11px;margin-bottom:30px}.contact .btn{margin-top:20px}footer{padding:65px 0;background:var(--deep);color:var(--ivory);text-align:center}@media(max-width:900px){nav{display:none}.hero,.split,.cols{grid-template-columns:1fr}.cols article+article{border-left:0;border-top:1px solid #d9cec4;padding-left:0}.hero{gap:40px}.names{flex-direction:column;gap:10px}}
.hippo .split{gap:42px}.hippo .ey{margin-bottom:12px}.hippo h2{margin-bottom:18px}.hippo a{margin-top:14px}
@media(max-width:900px){.hippo>.wrap{padding:42px 32px}}@media(max-width:620px){.hippo>.wrap{width:min(100% - 28px,1160px);padding:36px 24px}}

.cols article{display:flex;flex-direction:column}
.cols article>p:not(.note){min-height:108px}
.cols article>a{margin-top:auto}
.cols article>small{margin-top:18px}

.vision{grid-template-columns:1.3fr .7fr}
.vision .ph{min-height:270px}

@media(max-width:900px){
  .vision{grid-template-columns:1fr}
  .cols article>p:not(.note){min-height:auto}
}

/* V4 — intégration des visuels réels, sans changement de structure */
.logo{border:0;padding:0;width:150px;height:66px;display:flex;align-items:center;overflow:hidden}
.logo img{display:block;width:100%;height:100%;object-fit:contain}
.hippo-photo{min-height:280px;height:280px;overflow:hidden;border-radius:3px}
.hippo-photo img{width:100%;height:100%;display:block;object-fit:cover;object-position:center 58%}
@media(max-width:900px){.hippo-photo{height:320px}.logo{width:140px;height:62px}}

/* V4.1 — unique correction : taille du vrai logo dans le header */
header .logo img,
.site-header .brand img,
header .brand img {
  width: 270px !important;
  max-width: 270px !important;
  height: auto !important;
  object-fit: contain !important;
}

/* V4.2 — correction strictement limitée au header */
header{
  height:auto;
  min-height:156px;
  padding-top:8px;
  padding-bottom:8px;
  overflow:visible;
}
header .logo{
  width:220px;
  height:auto;
  min-width:220px;
  margin-right:auto;
  padding:0;
  border:0;
  overflow:visible;
  display:flex;
  align-items:center;
  justify-content:center;
}
header .logo img,
.site-header .brand img,
header .brand img{
  display:block;
  width:220px !important;
  max-width:220px !important;
  height:auto !important;
  max-height:none !important;
  object-fit:contain !important;
  object-position:center !important;
}

/* V4.3 : variante horizontale — header uniquement */
header{height:auto!important;min-height:112px!important;overflow:visible!important}
header .logo{border:0!important;padding:0!important;width:390px!important;max-width:39vw!important;height:auto!important;overflow:visible!important;display:flex!important;align-items:center!important}
header .logo img,header .brand img,.site-header .brand img{display:block!important;width:390px!important;max-width:100%!important;height:auto!important;object-fit:contain!important}
@media(max-width:900px){header .logo{width:300px!important;max-width:55vw!important}header .logo img,header .brand img,.site-header .brand img{width:300px!important}}

/* V4.4 — suppression du cadre/fond autour du logo uniquement */
header .logo,
header .logo img,
header .brand,
header .brand img,
.site-header .brand,
.site-header .brand img {
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
  background: transparent !important;
}

/* V4.5 — le fond du logo correspond exactement au fond ivoire du header */
header .logo,
header .logo img {
  background: #F9F1EC !important;
}

/* V4.6 — Hero uniquement */
.hero {
  grid-template-columns: 1.1fr .9fr !important;
  gap: 64px !important;
  min-height: 620px !important;
  padding-top: 58px !important;
  padding-bottom: 64px !important;
}
.hero .ph,
.hero .hero-photo {
  min-height: 440px !important;
  border-radius: 12px !important;
}
@media(max-width:900px){
  .hero {
    grid-template-columns: 1fr !important;
    gap: 40px !important;
    min-height: auto !important;
  }
}

/* V4.7 — ajustements header + hero uniquement */

/* 1. Navigation du header : un peu plus lisible, sans devenir dominante */
header nav {
  font-size: 13.5px !important;
  color: var(--deep) !important;
  letter-spacing: .01em !important;
}
header nav a,
header nav button {
  color: var(--deep) !important;
}

/* 2. Boutons du hero : groupe centré dans la colonne texte */
.hero .actions {
  justify-content: center !important;
}

/* 3. H1 du hero : légèrement plus petit */
.hero h1 {
  font-size: clamp(44px, 4.5vw, 56px) !important;
}

/* Espacement un peu plus généreux entre les entrées de navigation */
header nav {
  word-spacing: 2px;
}

/* V4.8 — seule correction : centrage de la phrase d'accroche du hero */
.hero h1 {
  text-align: center !important;
}

/* V4.9 — Hero, option A : titre à gauche, plus étroit et plus discret */
.hero h1 {
  text-align: left !important;
  font-size: clamp(42px, 4.2vw, 54px) !important;
  max-width: 550px !important;
}

/* V5.0 — logo uniquement : présence légèrement renforcée */
header .logo {
  width: 418px !important;
  max-width: 42vw !important;
}
header .logo img,
header .brand img,
.site-header .brand img {
  width: 418px !important;
  max-width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
}
@media(max-width:900px){
  header .logo{width:320px!important;max-width:58vw!important}
  header .logo img,
  header .brand img,
  .site-header .brand img{width:320px!important}
}

/* V5.2 — micro-ajustements de la section "Le motif de consultation..." */
.statement,
.quiet {
  padding-top: 120px !important;
  padding-bottom: 120px !important;
}
.statement .signature,
.quiet em {
  font-size: 24px !important;
  margin-top: 28px !important;
}

/* V5.3 — alignement visuel des deux blocs "Nos approches" uniquement */
.cols {
  align-items: stretch !important;
}
.cols article {
  display: grid !important;
  grid-template-rows: auto 86px 118px auto auto !important;
  align-content: start !important;
  row-gap: 14px !important;
}
.cols article .ey {
  margin-bottom: 0 !important;
}
.cols article h3 {
  margin: 0 !important;
  align-self: start !important;
}
.cols article > p:not(.note) {
  min-height: 0 !important;
  margin: 0 !important;
}
.cols article > a {
  margin-top: 0 !important;
  align-self: start !important;
}
.cols article > small {
  margin-top: 0 !important;
  align-self: start !important;
}
.cols article {
  padding-right: 72px !important;
}
.cols article + article {
  padding-left: 72px !important;
}
@media(max-width:900px){
  .cols article {
    display: block !important;
    padding-right: 0 !important;
  }
  .cols article + article {
    padding-left: 0 !important;
  }
}

/* V5.5 — test éditorial de la section "Notre vision de la santé" uniquement */
.vision {
  grid-template-columns: 1fr !important;
  gap: 0 !important;
  max-width: 920px !important;
}
.vision > div:first-child {
  max-width: 820px !important;
}
.vision .words {
  margin-top: 40px !important;
  margin-bottom: 30px !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 18px 28px !important;
  align-items: center !important;
  font-size: 28px !important;
}

/* V5.6 — recentrage subtil de la section "Notre vision de la santé" uniquement */
.vision {
  max-width: 800px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
.vision h2 {
  text-align: center !important;
}
.vision > div:first-child > p {
  text-align: left !important;
}
.vision .words {
  justify-content: center !important;
  text-align: center !important;
}
.vision > div:first-child > a {
  margin-left: auto !important;
  margin-right: auto !important;
}

/* V5.7 — affinage léger de la section "Notre vision de la santé" uniquement */
.vision {
  max-width: 850px !important;
}

.vision > div:first-child {
  max-width: 760px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.vision .words {
  margin-top: 34px !important;
  margin-bottom: 20px !important;
  gap: 14px 24px !important;
  font-size: 24px !important;
  line-height: 1.35 !important;
}

.vision > div:first-child > a {
  margin-top: 8px !important;
}

/* V5.8 — respiration supplémentaire entre l'intitulé et le titre de la section vision */
.vision .eyebrow {
  margin-bottom: 14px !important;
}

/* V5.9 — test visuel de la section Cabinet uniquement */
.cabinet-v59 {
  grid-template-columns: minmax(0, 0.88fr) minmax(0, 1.12fr) !important;
  gap: clamp(46px, 6vw, 82px) !important;
  align-items: center !important;
}

.cabinet-v59 > div:first-child {
  max-width: 520px;
}

.cabinet-v59 .cabinet-visual {
  display: grid;
  grid-template-columns: 1fr 0.42fr;
  gap: 16px;
  align-items: end;
}

.cabinet-v59 .cabinet-photo-main {
  min-height: 390px !important;
  aspect-ratio: 1.18 / 1;
}

.cabinet-v59 .cabinet-photo-detail {
  min-height: 180px !important;
  aspect-ratio: 0.86 / 1;
  transform: translateY(22px);
}

@media (max-width: 820px) {
  .cabinet-v59 {
    grid-template-columns: 1fr !important;
    gap: 34px !important;
  }

  .cabinet-v59 > div:first-child {
    max-width: none;
  }

  .cabinet-v59 .cabinet-visual {
    grid-template-columns: 1fr 0.38fr;
  }

  .cabinet-v59 .cabinet-photo-main {
    min-height: 300px !important;
  }

  .cabinet-v59 .cabinet-photo-detail {
    min-height: 145px !important;
    transform: translateY(14px);
  }
}

/* V5.10 — Cabinet : texte et photo alignés sur une même ligne */
.cabinet-v510 .cabinet-row {
  display: grid;
  grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
  gap: clamp(48px, 6vw, 82px);
  align-items: start;
}

.cabinet-v510 .cabinet-copy {
  max-width: 520px;
}

.cabinet-v510 .cabinet-photo {
  width: 100%;
  min-height: 355px;
  margin: 0;
  aspect-ratio: 1.35 / 1;
}

@media (max-width: 820px) {
  .cabinet-v510 .cabinet-row {
    grid-template-columns: 1fr;
    gap: 32px;
  }

  .cabinet-v510 .cabinet-copy {
    max-width: none;
  }

  .cabinet-v510 .cabinet-photo {
    min-height: 290px;
  }
}

/* V5.11 — affinage léger de la fin de page : Contact + Footer uniquement */
.contact-v511 {
  padding-top: 118px !important;
  padding-bottom: 112px !important;
}

.contact-v511 .wrap {
  max-width: 780px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
}

.contact-v511 h2 {
  max-width: 680px;
  margin-left: auto !important;
  margin-right: auto !important;
}

.contact-v511 p {
  max-width: 650px;
  margin-left: auto !important;
  margin-right: auto !important;
}

.contact-v511 a,
.contact-v511 .button,
.contact-v511 .btn {
  margin-left: auto !important;
  margin-right: auto !important;
}

.footer-v511 {
  padding-top: 42px !important;
  padding-bottom: 34px !important;
}

.footer-v511 .wrap {
  max-width: 1120px !important;
}

.footer-v511,
.footer-v511 a,
.footer-v511 p,
.footer-v511 li {
  line-height: 1.6;
}

@media (max-width: 820px) {
  .contact-v511 {
    padding-top: 86px !important;
    padding-bottom: 82px !important;
  }

  .footer-v511 {
    padding-top: 34px !important;
    padding-bottom: 28px !important;
  }
}


/* =========================================================
   V6.0 — PAGE PHYSIOTHÉRAPIE
   Nouvelle page uniquement. L'accueil V5.11 reste inchangé.
   ========================================================= */

header nav a{
  color:inherit;
  text-decoration:none;
}
header .logo a{display:block;width:100%}
.nav-active{color:var(--deep);font-weight:600}

.physio-page .physio-hero{
  min-height:620px;
  display:grid;
  grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);
  gap:76px;
  align-items:center;
  padding:76px 0 82px;
}
.physio-page .physio-hero-copy{max-width:610px}
.physio-page .physio-hero h1{
  font-size:clamp(46px,4.8vw,58px);
  max-width:610px;
}
.physio-page .lead{
  font-size:17px;
  line-height:1.75;
  color:var(--deep);
  font-weight:500;
}
.physio-page .physio-hero-photo{
  min-height:430px;
  border-radius:8px;
}
.physio-page .physio-intro .ey{
  margin-bottom:20px;
}
.physio-page .physio-intro h2{
  max-width:690px;
  margin-left:auto;
  margin-right:auto;
}
.physio-page .physio-principles{
  padding:132px 0 138px;
}
.physio-page .physio-principles>.ey,
.physio-page .physio-principles>h2{
  text-align:center;
}
.physio-page .physio-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  margin-top:58px;
  border-top:1px solid #d9cec4;
  border-bottom:1px solid #d9cec4;
}
.physio-page .physio-grid article{
  padding:48px 42px 50px;
}
.physio-page .physio-grid article+article{
  border-left:1px solid #d9cec4;
}
.physio-page .physio-number{
  display:block;
  margin-bottom:22px;
  color:var(--brown);
  font-size:11px;
  letter-spacing:.18em;
}
.physio-page .physio-grid h3{
  margin-bottom:18px;
}
.physio-page .physio-participation{
  padding:112px 0;
  background:var(--deep);
}
.physio-page .physio-participation-grid{
  display:grid;
  grid-template-columns:.92fr 1.08fr;
  gap:82px;
  align-items:start;
}
.physio-page .physio-participation h2,
.physio-page .physio-participation p{
  color:var(--ivory);
}
.physio-page .physio-participation .ey{
  color:#d2b89a;
}
.physio-page .physio-publics{
  padding:132px 0 138px;
}
.physio-page .physio-publics>.ey,
.physio-page .physio-publics>h2,
.physio-page .physio-publics>.section-intro{
  text-align:center;
  margin-left:auto;
  margin-right:auto;
}
.physio-page .physio-publics>h2{
  max-width:820px;
}
.physio-page .section-intro{
  max-width:790px;
}
.physio-page .physio-public-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:26px;
  margin-top:56px;
}
.physio-page .physio-public-card{
  padding:48px 50px 50px;
  border:1px solid #d9cec4;
  border-radius:5px;
  background:#ffffff20;
}
.physio-page .pediatric-card{
  background:#efe3db;
}
.physio-page .future-link{
  display:block;
  color:var(--deep);
  font-weight:600;
  font-size:12px;
  margin-top:24px;
}
.physio-page .future-link small{
  color:var(--brown);
  font-weight:400;
  margin-left:6px;
}
.physio-page .physio-context h2{
  max-width:720px;
  margin-left:auto;
  margin-right:auto;
}
.physio-page .physio-bridge{
  padding:118px 0 124px;
  display:grid;
  grid-template-columns:1.2fr .8fr;
  gap:90px;
  align-items:center;
}
.physio-page .physio-bridge>div:first-child{
  max-width:650px;
}
.physio-page .physio-bridge-note{
  border-left:1px solid var(--brown);
  padding:8px 0 8px 34px;
}
.physio-page .physio-bridge-note p{
  margin:0 0 12px;
}
.physio-page .physio-bridge-note p:last-child{
  margin-bottom:0;
}
.physio-page .contact-v511 .flower{
  display:none;
}

@media(max-width:900px){
  .physio-page .physio-hero,
  .physio-page .physio-participation-grid,
  .physio-page .physio-public-grid,
  .physio-page .physio-bridge{
    grid-template-columns:1fr;
  }
  .physio-page .physio-hero{
    gap:38px;
    padding:56px 0 70px;
  }
  .physio-page .physio-grid{
    grid-template-columns:1fr;
  }
  .physio-page .physio-grid article+article{
    border-left:0;
    border-top:1px solid #d9cec4;
  }
  .physio-page .physio-participation-grid,
  .physio-page .physio-bridge{
    gap:38px;
  }
}
@media(max-width:620px){
  .physio-page .physio-grid article,
  .physio-page .physio-public-card{
    padding:38px 28px;
  }
}

/* V6.4 — Hero physiothérapie : rythme visuel plus équilibré */
.physio-page .physio-hero {
  min-height: 575px;
  gap: 58px;
  padding-top: 66px;
  padding-bottom: 70px;
}

.physio-page .physio-hero-copy {
  max-width: 585px;
}

.physio-page .physio-hero-copy .lead {
  margin-bottom: 14px;
}

.physio-page .physio-hero-copy .hero-secondary {
  max-width: 540px;
  margin-top: 0;
  margin-bottom: 24px;
  line-height: 1.72;
}

.physio-page .physio-hero-copy .actions {
  margin-top: 8px;
}

.physio-page .physio-hero-photo {
  min-height: 395px;
}

@media(max-width:900px){
  .physio-page .physio-hero {
    min-height: auto;
    gap: 34px;
    padding-top: 54px;
    padding-bottom: 64px;
  }

  .physio-page .physio-hero-photo {
    min-height: 320px;
  }
}

/* V6.6 — affinage visuel de la section "Comprendre avant d’agir" uniquement */
.physio-page .physio-intro {
  padding-top: 104px !important;
  padding-bottom: 108px !important;
}

.physio-page .physio-intro .narrow {
  max-width: 760px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.physio-page .physio-intro .ey {
  margin-bottom: 24px !important;
  font-size: 11px !important;
  letter-spacing: .17em !important;
}

.physio-page .physio-intro h2 {
  max-width: 660px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  margin-bottom: 28px !important;
  font-size: clamp(38px, 4vw, 45px) !important;
  line-height: 1.08 !important;
}

.physio-page .physio-intro p {
  max-width: 700px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.physio-page .physio-intro p + p {
  margin-top: 16px !important;
}

@media (max-width: 820px) {
  .physio-page .physio-intro {
    padding-top: 82px !important;
    padding-bottom: 86px !important;
  }
}

/* V6.7 — affinage visuel de "Évaluer, accompagner, adapter" uniquement */
.physio-page .physio-principles {
  padding-top: 118px !important;
  padding-bottom: 124px !important;
}

.physio-page .physio-principles > .ey {
  margin-bottom: 18px !important;
}

.physio-page .physio-principles > h2 {
  max-width: 680px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.physio-page .physio-grid {
  margin-top: 50px !important;
  gap: 18px !important;
  border-top: 0 !important;
  border-bottom: 0 !important;
}

.physio-page .physio-grid article {
  padding: 34px 30px 36px !important;
  border: 1px solid #d9cec4 !important;
  border-radius: 6px !important;
  background: rgba(249, 241, 236, 0.55) !important;
}

.physio-page .physio-grid article + article {
  border-left: 1px solid #d9cec4 !important;
  border-top: 1px solid #d9cec4 !important;
}

.physio-page .physio-number {
  margin-bottom: 16px !important;
  font-size: 10px !important;
  letter-spacing: .16em !important;
}

.physio-page .physio-grid h3 {
  margin-bottom: 14px !important;
}

@media (max-width: 900px) {
  .physio-page .physio-grid {
    gap: 14px !important;
  }

  .physio-page .physio-grid article {
    padding: 30px 26px 32px !important;
  }
}

/* V6.8 — section "Une place active dans le soin" harmonisée avec le sauge Hippothérapie */
.physio-page .physio-participation {
  background: #E2E4D8 !important;
}

.physio-page .physio-participation h2,
.physio-page .physio-participation p {
  color: #53573A !important;
}

.physio-page .physio-participation .ey {
  color: #6A6A4F !important;
}

/* V6.9 — affinage visuel de la section "À chaque âge, des enjeux différents" uniquement */
.physio-page .physio-publics {
  padding-top: 118px !important;
  padding-bottom: 124px !important;
}

.physio-page .physio-publics > .ey {
  margin-bottom: 18px !important;
}

.physio-page .physio-publics > h2 {
  max-width: 760px !important;
  margin-bottom: 22px !important;
}

.physio-page .physio-publics > .section-intro {
  max-width: 730px !important;
}

.physio-page .physio-public-grid {
  gap: 22px !important;
  margin-top: 48px !important;
}

.physio-page .physio-public-card {
  padding: 42px 42px 44px !important;
  border: 1px solid #d9cec4 !important;
  border-radius: 6px !important;
  background: rgba(249, 241, 236, 0.42) !important;
}

.physio-page .physio-public-card h3 {
  margin-bottom: 16px !important;
}

.physio-page .pediatric-card {
  background: #E2E4D8 !important;
  border-color: #cfd3c1 !important;
}

.physio-page .future-link {
  margin-top: 22px !important;
  font-size: 12px !important;
}

@media(max-width:900px){
  .physio-page .physio-publics {
    padding-top: 94px !important;
    padding-bottom: 100px !important;
  }

  .physio-page .physio-public-grid {
    margin-top: 40px !important;
  }
}

/* V6.11 — affinage visuel de la section "Au-delà de la séance" uniquement */
.physio-page .physio-context {
  padding-top: 106px !important;
  padding-bottom: 112px !important;
}

.physio-page .physio-context .narrow {
  max-width: 780px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.physio-page .physio-context .ey {
  margin-bottom: 22px !important;
  font-size: 11px !important;
  letter-spacing: .17em !important;
}

.physio-page .physio-context h2 {
  max-width: 700px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  margin-bottom: 28px !important;
  font-size: clamp(38px, 4vw, 45px) !important;
  line-height: 1.08 !important;
}

.physio-page .physio-context p {
  max-width: 720px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.physio-page .physio-context p + p {
  margin-top: 16px !important;
}

@media(max-width:820px){
  .physio-page .physio-context {
    padding-top: 84px !important;
    padding-bottom: 90px !important;
  }
}

/* V6.12 — affinage visuel de la section "Au sein d’Althéa" uniquement */
.physio-page .physio-bridge {
  padding-top: 108px !important;
  padding-bottom: 114px !important;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr) !important;
  gap: 72px !important;
}

.physio-page .physio-bridge > div:first-child {
  max-width: 620px !important;
}

.physio-page .physio-bridge .ey {
  margin-bottom: 20px !important;
}

.physio-page .physio-bridge h2 {
  max-width: 590px !important;
  margin-bottom: 24px !important;
}

.physio-page .physio-bridge-note {
  padding: 24px 0 24px 30px !important;
  border-left: 1px solid #A88C6B !important;
}

.physio-page .physio-bridge-note p:first-child {
  font-size: 15px !important;
  margin-bottom: 10px !important;
}

.physio-page .physio-bridge-note p:last-child {
  max-width: 360px !important;
  line-height: 1.7 !important;
}

@media(max-width:900px){
  .physio-page .physio-bridge {
    padding-top: 88px !important;
    padding-bottom: 94px !important;
    gap: 34px !important;
  }

  .physio-page .physio-bridge-note {
    padding-left: 24px !important;
  }
}

/* V6.13 — affinage de la conclusion / contact de la page Physiothérapie */
.physio-page .contact-v511 {
  padding-top: 102px !important;
  padding-bottom: 106px !important;
}

.physio-page .contact-v511 .narrow {
  max-width: 760px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
}

.physio-page .contact-v511 h2 {
  max-width: 680px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  margin-bottom: 22px !important;
}

.physio-page .contact-v511 p {
  max-width: 620px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  margin-bottom: 26px !important;
}

.physio-page .contact-v511 .btn {
  margin-left: auto !important;
  margin-right: auto !important;
}

@media(max-width:820px){
  .physio-page .contact-v511 {
    padding-top: 82px !important;
    padding-bottom: 86px !important;
  }
}


/* =========================================================
   V7.0 — PAGE PHYSIOTHÉRAPIE PÉDIATRIQUE
   ========================================================= */
.pediatrie-page .pediatrie-hero{
  min-height:590px;
  display:grid;
  grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);
  gap:62px;
  align-items:center;
  padding:66px 0 74px;
}
.pediatrie-page .pediatrie-hero-copy{max-width:590px}
.pediatrie-page .pediatrie-hero h1{
  font-size:clamp(48px,5vw,60px);
  max-width:560px;
}
.pediatrie-page .pediatrie-hero .lead{
  font-size:17px;
  line-height:1.75;
  color:var(--deep);
  font-weight:500;
  margin-bottom:14px;
}
.pediatrie-page .pediatrie-hero-photo{
  min-height:400px;
  border-radius:8px;
}

.pediatrie-page .pediatrie-intro{
  padding:106px 0 112px;
}
.pediatrie-page .pediatrie-intro .narrow{
  max-width:760px;
  margin:auto;
}
.pediatrie-page .pediatrie-intro h2{
  max-width:690px;
  margin-left:auto;
  margin-right:auto;
}
.pediatrie-page .pediatrie-intro .ey{
  margin-bottom:22px;
}

.pediatrie-page .pediatrie-jeu{
  padding:118px 0 124px;
  display:grid;
  grid-template-columns:1.15fr .85fr;
  gap:82px;
  align-items:center;
}
.pediatrie-page .pediatrie-jeu-copy{
  max-width:650px;
}
.pediatrie-page .pediatrie-keywords{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.pediatrie-page .pediatrie-keywords span{
  padding:30px 22px;
  border:1px solid #d9cec4;
  border-radius:6px;
  text-align:center;
  font-family:"Cormorant Garamond",serif;
  font-size:27px;
  color:var(--deep);
  background:rgba(249,241,236,.45);
}

.pediatrie-page .pediatrie-famille{
  padding:112px 0;
  background:#E2E4D8;
}
.pediatrie-page .pediatrie-famille-grid{
  display:grid;
  grid-template-columns:.88fr 1.12fr;
  gap:78px;
  align-items:start;
}
.pediatrie-page .pediatrie-famille h2,
.pediatrie-page .pediatrie-famille p{
  color:#53573A;
}
.pediatrie-page .pediatrie-famille .ey{
  color:#6A6A4F;
}
.pediatrie-page .pediatrie-famille p:first-child{
  margin-top:0;
}

.pediatrie-page .pediatrie-consult{
  padding:122px 0 128px;
}
.pediatrie-page .pediatrie-consult>.ey,
.pediatrie-page .pediatrie-consult>h2,
.pediatrie-page .pediatrie-consult>.section-intro{
  text-align:center;
  margin-left:auto;
  margin-right:auto;
}
.pediatrie-page .pediatrie-consult>h2{
  max-width:760px;
}
.pediatrie-page .pediatrie-consult>.section-intro{
  max-width:810px;
}
.pediatrie-page .pediatrie-consult-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
  margin-top:50px;
}
.pediatrie-page .pediatrie-consult-grid article{
  padding:34px 30px 36px;
  border:1px solid #d9cec4;
  border-radius:6px;
  background:rgba(249,241,236,.45);
}
.pediatrie-page .pediatrie-consult-grid h3{
  font-size:26px;
  margin-bottom:14px;
}
.pediatrie-page .pediatrie-consult-note{
  max-width:820px;
  margin:38px auto 0;
  padding:26px 30px;
  border-left:1px solid #A88C6B;
}
.pediatrie-page .pediatrie-consult-note p{
  margin:0 0 10px;
}
.pediatrie-page .pediatrie-consult-note p:last-child{
  margin-bottom:0;
}

.pediatrie-page .pediatrie-interdisc{
  padding:104px 0 110px;
}
.pediatrie-page .pediatrie-interdisc .narrow{
  max-width:780px;
  margin:auto;
}
.pediatrie-page .pediatrie-interdisc h2{
  max-width:690px;
  margin-left:auto;
  margin-right:auto;
}

.pediatrie-page .pediatrie-bridges{
  padding:112px 0 118px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:22px;
}
.pediatrie-page .pediatrie-bridge-card{
  padding:42px 42px 44px;
  border:1px solid #d9cec4;
  border-radius:6px;
}
.pediatrie-page .hippo-bridge{
  background:#E2E4D8;
  border-color:#cfd3c1;
}
.pediatrie-page .naturo-bridge{
  background:rgba(249,241,236,.42);
}
.pediatrie-page .pediatrie-bridge-card h3{
  font-size:30px;
  margin-bottom:16px;
}

@media(max-width:900px){
  .pediatrie-page .pediatrie-hero,
  .pediatrie-page .pediatrie-jeu,
  .pediatrie-page .pediatrie-famille-grid,
  .pediatrie-page .pediatrie-bridges{
    grid-template-columns:1fr;
  }
  .pediatrie-page .pediatrie-consult-grid{
    grid-template-columns:1fr 1fr;
  }
  .pediatrie-page .pediatrie-hero,
  .pediatrie-page .pediatrie-jeu,
  .pediatrie-page .pediatrie-famille-grid{
    gap:36px;
  }
}
@media(max-width:620px){
  .pediatrie-page .pediatrie-consult-grid,
  .pediatrie-page .pediatrie-keywords{
    grid-template-columns:1fr;
  }
  .pediatrie-page .pediatrie-consult-grid article,
  .pediatrie-page .pediatrie-bridge-card{
    padding:32px 26px;
  }
}

/* V7.1 — affinage visuel de "Bien plus qu’un mouvement à corriger" uniquement */
.pediatrie-page .pediatrie-intro {
  padding-top: 102px !important;
  padding-bottom: 108px !important;
}

.pediatrie-page .pediatrie-intro .narrow {
  max-width: 770px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.pediatrie-page .pediatrie-intro .ey {
  margin-bottom: 24px !important;
  font-size: 11px !important;
  letter-spacing: .17em !important;
}

.pediatrie-page .pediatrie-intro h2 {
  max-width: 670px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  margin-bottom: 28px !important;
  font-size: clamp(38px, 4vw, 45px) !important;
  line-height: 1.08 !important;
}

.pediatrie-page .pediatrie-intro p {
  max-width: 710px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.pediatrie-page .pediatrie-intro p + p {
  margin-top: 16px !important;
}

@media(max-width:820px){
  .pediatrie-page .pediatrie-intro {
    padding-top: 82px !important;
    padding-bottom: 88px !important;
  }
}

/* V7.2 — affinage visuel de "La famille comme partenaire" uniquement */
.pediatrie-page .pediatrie-famille {
  padding-top: 106px !important;
  padding-bottom: 110px !important;
}

.pediatrie-page .pediatrie-famille-grid {
  grid-template-columns: minmax(0, .84fr) minmax(0, 1.16fr) !important;
  gap: 72px !important;
  align-items: start !important;
}

.pediatrie-page .pediatrie-famille-grid > div:first-child {
  max-width: 470px !important;
}

.pediatrie-page .pediatrie-famille .ey {
  margin-bottom: 20px !important;
}

.pediatrie-page .pediatrie-famille h2 {
  max-width: 450px !important;
  font-size: clamp(38px, 4vw, 45px) !important;
  line-height: 1.08 !important;
}

.pediatrie-page .pediatrie-famille-grid > div:last-child {
  max-width: 690px !important;
}

.pediatrie-page .pediatrie-famille p {
  line-height: 1.78 !important;
  margin-bottom: 18px !important;
}

.pediatrie-page .pediatrie-famille p:last-child {
  margin-bottom: 0 !important;
}

@media(max-width:900px){
  .pediatrie-page .pediatrie-famille {
    padding-top: 86px !important;
    padding-bottom: 92px !important;
  }

  .pediatrie-page .pediatrie-famille-grid {
    grid-template-columns: 1fr !important;
    gap: 34px !important;
  }

  .pediatrie-page .pediatrie-famille-grid > div:first-child,
  .pediatrie-page .pediatrie-famille-grid > div:last-child,
  .pediatrie-page .pediatrie-famille h2 {
    max-width: none !important;
  }
}

/* V7.3 — affinage visuel de la section "Quand consulter ?" uniquement */
.pediatrie-page .pediatrie-consult {
  padding-top: 114px !important;
  padding-bottom: 120px !important;
}

.pediatrie-page .pediatrie-consult > .ey {
  margin-bottom: 20px !important;
}

.pediatrie-page .pediatrie-consult > h2 {
  max-width: 720px !important;
  margin-bottom: 24px !important;
  font-size: clamp(38px, 4vw, 45px) !important;
  line-height: 1.08 !important;
}

.pediatrie-page .pediatrie-consult > .section-intro {
  max-width: 780px !important;
  line-height: 1.78 !important;
}

.pediatrie-page .pediatrie-consult-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 18px 22px !important;
  margin-top: 46px !important;
}

.pediatrie-page .pediatrie-consult-grid article {
  padding: 30px 32px 32px !important;
  background: rgba(249, 241, 236, 0.48) !important;
  border: 1px solid #d9cec4 !important;
  border-radius: 7px !important;
}

.pediatrie-page .pediatrie-consult-grid h3 {
  font-size: 25px !important;
  margin-bottom: 12px !important;
}

.pediatrie-page .pediatrie-consult-grid p {
  line-height: 1.72 !important;
  margin-bottom: 0 !important;
}

.pediatrie-page .pediatrie-consult-note {
  max-width: 780px !important;
  margin-top: 34px !important;
  padding: 24px 28px !important;
  background: #E2E4D8 !important;
  border-left: 0 !important;
  border-radius: 7px !important;
}

.pediatrie-page .pediatrie-consult-note p {
  color: #53573A !important;
  line-height: 1.72 !important;
}

@media(max-width:760px){
  .pediatrie-page .pediatrie-consult {
    padding-top: 90px !important;
    padding-bottom: 96px !important;
  }

  .pediatrie-page .pediatrie-consult-grid {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }

  .pediatrie-page .pediatrie-consult-grid article {
    padding: 28px 26px 30px !important;
  }
}

/* V7.4 — affinage visuel de la section "Grandir ensemble / collaboration interdisciplinaire" uniquement */
.pediatrie-page .pediatrie-interdisc {
  padding-top: 100px !important;
  padding-bottom: 106px !important;
}

.pediatrie-page .pediatrie-interdisc .narrow {
  max-width: 760px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.pediatrie-page .pediatrie-interdisc .ey {
  margin-bottom: 22px !important;
  font-size: 11px !important;
  letter-spacing: .17em !important;
}

.pediatrie-page .pediatrie-interdisc h2 {
  max-width: 660px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  margin-bottom: 26px !important;
  font-size: clamp(38px, 4vw, 45px) !important;
  line-height: 1.08 !important;
}

.pediatrie-page .pediatrie-interdisc p {
  max-width: 700px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  line-height: 1.76 !important;
}

.pediatrie-page .pediatrie-interdisc p + p {
  margin-top: 16px !important;
}

@media(max-width:820px){
  .pediatrie-page .pediatrie-interdisc {
    padding-top: 82px !important;
    padding-bottom: 88px !important;
  }
}

/* V7.5 — affinage visuel des ponts Hippothérapie / autres approches uniquement */
.pediatrie-page .pediatrie-bridges {
  padding-top: 104px !important;
  padding-bottom: 110px !important;
  gap: 22px !important;
}

.pediatrie-page .pediatrie-bridge-card {
  padding: 40px 40px 42px !important;
  border-radius: 7px !important;
}

.pediatrie-page .pediatrie-bridge-card .ey {
  margin-bottom: 18px !important;
}

.pediatrie-page .pediatrie-bridge-card h3 {
  font-size: 29px !important;
  line-height: 1.12 !important;
  margin-bottom: 16px !important;
}

.pediatrie-page .pediatrie-bridge-card p {
  line-height: 1.74 !important;
  margin-bottom: 20px !important;
}

.pediatrie-page .hippo-bridge {
  background: #E2E4D8 !important;
  border-color: #cfd3c1 !important;
}

.pediatrie-page .naturo-bridge {
  background: rgba(249,241,236,.52) !important;
}

.pediatrie-page .pediatrie-bridge-card .future-link {
  margin-top: 18px !important;
  font-size: 12px !important;
}

@media(max-width:900px){
  .pediatrie-page .pediatrie-bridges {
    padding-top: 86px !important;
    padding-bottom: 92px !important;
  }
}

/* V7.6 — affinage de la conclusion / contact de la page pédiatrique uniquement */
.pediatrie-page .contact-v511 {
  padding-top: 100px !important;
  padding-bottom: 104px !important;
}

.pediatrie-page .contact-v511 .narrow {
  max-width: 760px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
}

.pediatrie-page .contact-v511 h2 {
  max-width: 690px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  margin-bottom: 22px !important;
  font-size: clamp(38px, 4vw, 45px) !important;
  line-height: 1.08 !important;
}

.pediatrie-page .contact-v511 p {
  max-width: 640px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  margin-bottom: 26px !important;
  line-height: 1.74 !important;
}

.pediatrie-page .contact-v511 .btn {
  margin-left: auto !important;
  margin-right: auto !important;
}

@media(max-width:820px){
  .pediatrie-page .contact-v511 {
    padding-top: 82px !important;
    padding-bottom: 86px !important;
  }
}


/* =========================================================
   V8.0 — PAGE NATUROPATHIE
   ========================================================= */
.naturo-page .naturo-hero{
  min-height:590px;
  display:grid;
  grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);
  gap:62px;
  align-items:center;
  padding:66px 0 74px;
}
.naturo-page .naturo-hero-copy{max-width:590px}
.naturo-page .naturo-hero h1{
  font-size:clamp(48px,5vw,60px);
  max-width:580px;
}
.naturo-page .naturo-hero .lead{
  font-size:17px;
  line-height:1.75;
  color:var(--deep);
  font-weight:500;
  margin-bottom:14px;
}
.naturo-page .naturo-hero-photo{
  min-height:400px;
  border-radius:8px;
}
.naturo-page .naturo-coming{
  margin-top:26px;
  padding:18px 20px;
  background:#E2E4D8;
  border-radius:6px;
  display:flex;
  flex-direction:column;
  gap:5px;
  max-width:480px;
}
.naturo-page .naturo-coming strong{
  color:#53573A;
  font-size:13px;
}
.naturo-page .naturo-coming span{
  color:#53573A;
  font-size:13px;
  line-height:1.6;
}

.naturo-page .naturo-intro{
  padding:102px 0 108px;
}
.naturo-page .naturo-intro .narrow{
  max-width:770px;
  margin:auto;
}
.naturo-page .naturo-intro .ey{
  margin-bottom:24px;
}
.naturo-page .naturo-intro h2{
  max-width:670px;
  margin-left:auto;
  margin-right:auto;
  margin-bottom:28px;
  font-size:clamp(38px,4vw,45px);
  line-height:1.08;
}

.naturo-page .naturo-axes{
  padding:114px 0 120px;
}
.naturo-page .naturo-axes>.ey,
.naturo-page .naturo-axes>h2{
  text-align:center;
}
.naturo-page .naturo-axes>h2{
  max-width:700px;
  margin-left:auto;
  margin-right:auto;
}
.naturo-page .naturo-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px;
  margin-top:50px;
}
.naturo-page .naturo-grid article{
  padding:32px 34px 34px;
  border:1px solid #d9cec4;
  border-radius:7px;
  background:rgba(249,241,236,.48);
}
.naturo-page .naturo-number{
  display:block;
  margin-bottom:15px;
  color:var(--brown);
  font-size:10px;
  letter-spacing:.16em;
}
.naturo-page .naturo-grid h3{
  margin-bottom:12px;
}

.naturo-page .naturo-participation{
  padding:108px 0 112px;
  background:#E2E4D8;
}
.naturo-page .naturo-participation-grid{
  display:grid;
  grid-template-columns:.88fr 1.12fr;
  gap:76px;
  align-items:start;
}
.naturo-page .naturo-participation h2,
.naturo-page .naturo-participation p{
  color:#53573A;
}
.naturo-page .naturo-participation .ey{
  color:#6A6A4F;
}

.naturo-page .naturo-publics{
  padding:116px 0 122px;
}
.naturo-page .naturo-publics>.ey,
.naturo-page .naturo-publics>h2,
.naturo-page .naturo-publics>.section-intro{
  text-align:center;
  margin-left:auto;
  margin-right:auto;
}
.naturo-page .naturo-publics>h2{
  max-width:760px;
}
.naturo-page .naturo-publics>.section-intro{
  max-width:730px;
}
.naturo-page .naturo-public-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
  margin-top:46px;
}
.naturo-page .naturo-public-grid article{
  padding:32px 30px 34px;
  border:1px solid #d9cec4;
  border-radius:7px;
  background:rgba(249,241,236,.46);
}
.naturo-page .naturo-public-grid h3{
  font-size:28px;
  margin-bottom:13px;
}

.naturo-page .naturo-limits{
  padding:100px 0 106px;
}
.naturo-page .naturo-limits .narrow{
  max-width:760px;
  margin:auto;
}
.naturo-page .naturo-limits h2{
  max-width:690px;
  margin-left:auto;
  margin-right:auto;
}

.naturo-page .naturo-bridge{
  padding:106px 0 112px;
  display:grid;
  grid-template-columns:1.15fr .85fr;
  gap:72px;
  align-items:center;
}
.naturo-page .naturo-bridge>div:first-child{
  max-width:620px;
}
.naturo-page .naturo-bridge-note{
  padding:24px 0 24px 30px;
  border-left:1px solid #A88C6B;
}
.naturo-page .naturo-bridge-note p{
  margin:0 0 10px;
}
.naturo-page .naturo-bridge-note p:last-child{
  margin-bottom:0;
}

.naturo-page .naturo-coming-section{
  padding:100px 0 104px;
}
.naturo-page .naturo-coming-section .narrow{
  max-width:760px;
  margin:auto;
  text-align:center;
}
.naturo-page .naturo-coming-section h2{
  max-width:680px;
  margin-left:auto;
  margin-right:auto;
  margin-bottom:22px;
}
.naturo-page .naturo-coming-section p{
  max-width:630px;
  margin-left:auto;
  margin-right:auto;
  margin-bottom:26px;
}

@media(max-width:900px){
  .naturo-page .naturo-hero,
  .naturo-page .naturo-participation-grid,
  .naturo-page .naturo-bridge{
    grid-template-columns:1fr;
  }
  .naturo-page .naturo-public-grid{
    grid-template-columns:1fr 1fr;
  }
  .naturo-page .naturo-hero,
  .naturo-page .naturo-participation-grid,
  .naturo-page .naturo-bridge{
    gap:36px;
  }
}
@media(max-width:620px){
  .naturo-page .naturo-grid,
  .naturo-page .naturo-public-grid{
    grid-template-columns:1fr;
  }
  .naturo-page .naturo-grid article,
  .naturo-page .naturo-public-grid article{
    padding:30px 26px 32px;
  }
}


/* =========================================================
   V9.0 — PAGE HIPPOTHÉRAPIE-K®
   ========================================================= */
.hippo-page .hippo-page-hero{
  min-height:590px;
  display:grid;
  grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);
  gap:62px;
  align-items:center;
  padding:66px 0 74px;
}
.hippo-page .hippo-page-hero-copy{max-width:590px}
.hippo-page .hippo-page-hero h1{
  font-size:clamp(48px,5vw,60px);
  max-width:590px;
}
.hippo-page .hippo-page-hero .lead{
  font-size:17px;
  line-height:1.75;
  color:var(--deep);
  font-weight:500;
  margin-bottom:14px;
}
.hippo-page .hippo-page-photo{
  min-height:400px;
  border-radius:8px;
  overflow:hidden;
}
.hippo-page .hippo-page-photo img{
  width:100%;
  height:100%;
  min-height:400px;
  object-fit:cover;
  display:block;
}

.hippo-page .hippo-page-intro{
  padding:102px 0 108px;
}
.hippo-page .hippo-page-intro .narrow{
  max-width:770px;
  margin:auto;
}
.hippo-page .hippo-page-intro .ey{
  margin-bottom:24px;
}
.hippo-page .hippo-page-intro h2{
  max-width:680px;
  margin-left:auto;
  margin-right:auto;
  margin-bottom:28px;
  font-size:clamp(38px,4vw,45px);
  line-height:1.08;
}

.hippo-page .hippo-page-patient{
  padding:114px 0 120px;
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:78px;
  align-items:center;
}
.hippo-page .hippo-page-patient>div:first-child{
  max-width:650px;
}
.hippo-page .hippo-page-keywords{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.hippo-page .hippo-page-keywords span{
  padding:30px 22px;
  border:1px solid #d9cec4;
  border-radius:6px;
  text-align:center;
  font-family:"Cormorant Garamond",serif;
  font-size:27px;
  color:var(--deep);
  background:rgba(249,241,236,.45);
}

.hippo-page .hippo-collaboration{
  padding:110px 0 116px;
  background:#E2E4D8;
}
.hippo-page .hippo-collaboration-head{
  max-width:790px;
  margin:0 auto 48px;
  text-align:center;
}
.hippo-page .hippo-collaboration-head .ey{
  color:#6A6A4F;
  margin-bottom:20px;
}
.hippo-page .hippo-collaboration-head h2{
  color:#53573A;
  max-width:730px;
  margin-left:auto;
  margin-right:auto;
}
.hippo-page .hippo-role-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:22px;
}
.hippo-page .hippo-role-grid article{
  padding:40px 40px 42px;
  border:1px solid #cfd3c1;
  border-radius:7px;
  background:rgba(249,241,236,.48);
}
.hippo-page .hippo-role-grid article .ey{
  color:#6A6A4F;
  margin-bottom:18px;
}
.hippo-page .hippo-role-grid h3,
.hippo-page .hippo-role-grid p{
  color:#53573A;
}
.hippo-page .hippo-role-grid h3{
  font-size:30px;
  margin-bottom:16px;
}

.hippo-page .hippo-horse{
  padding:114px 0 120px;
  display:grid;
  grid-template-columns:.94fr 1.06fr;
  gap:70px;
  align-items:center;
}
.hippo-page .hippo-horse-copy{
  max-width:570px;
}
.hippo-page .hippo-horse-photo{
  min-height:350px;
  border-radius:8px;
}

.hippo-page .hippo-outside{
  padding:100px 0 106px;
}
.hippo-page .hippo-outside .narrow{
  max-width:780px;
  margin:auto;
}
.hippo-page .hippo-outside h2{
  max-width:690px;
  margin-left:auto;
  margin-right:auto;
}
.hippo-page .hippo-outside .btn{
  margin-top:18px;
}

.hippo-page .hippo-bridge{
  padding:106px 0 112px;
  display:grid;
  grid-template-columns:1.15fr .85fr;
  gap:72px;
  align-items:center;
}
.hippo-page .hippo-bridge>div:first-child{
  max-width:620px;
}
.hippo-page .hippo-bridge-note{
  padding:24px 0 24px 30px;
  border-left:1px solid #A88C6B;
}
.hippo-page .hippo-bridge-note p{
  margin:0 0 10px;
}
.hippo-page .hippo-bridge-note p:last-child{
  margin-bottom:0;
}

@media(max-width:900px){
  .hippo-page .hippo-page-hero,
  .hippo-page .hippo-page-patient,
  .hippo-page .hippo-horse,
  .hippo-page .hippo-bridge{
    grid-template-columns:1fr;
  }
  .hippo-page .hippo-role-grid{
    grid-template-columns:1fr;
  }
  .hippo-page .hippo-page-hero,
  .hippo-page .hippo-page-patient,
  .hippo-page .hippo-horse,
  .hippo-page .hippo-bridge{
    gap:36px;
  }
}
@media(max-width:620px){
  .hippo-page .hippo-page-keywords{
    grid-template-columns:1fr;
  }
  .hippo-page .hippo-role-grid article{
    padding:32px 26px;
  }
}


/* =========================================================
   V10.0 — PAGE LE CABINET
   ========================================================= */
.cabinet-page .cabinet-page-hero{
  min-height:570px;
  display:grid;
  grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
  gap:68px;
  align-items:center;
  padding:64px 0 72px;
}
.cabinet-page .cabinet-page-copy{max-width:560px}
.cabinet-page .cabinet-page-hero h1{
  font-size:clamp(48px,5vw,60px);
  max-width:570px;
}
.cabinet-page .cabinet-page-hero .lead{
  font-size:17px;
  line-height:1.75;
  color:var(--deep);
  font-weight:500;
  margin-bottom:14px;
}
.cabinet-page .cabinet-page-photo{
  min-height:390px;
  border-radius:8px;
}

.cabinet-page .cabinet-page-intro{
  padding:100px 0 106px;
}
.cabinet-page .cabinet-page-intro .narrow{
  max-width:770px;
  margin:auto;
}
.cabinet-page .cabinet-page-intro .ey{
  margin-bottom:22px;
}
.cabinet-page .cabinet-page-intro h2{
  max-width:690px;
  margin-left:auto;
  margin-right:auto;
  font-size:clamp(38px,4vw,45px);
  line-height:1.08;
}

.cabinet-page .cabinet-page-spaces{
  padding:112px 0 118px;
}
.cabinet-page .cabinet-page-spaces>.ey,
.cabinet-page .cabinet-page-spaces>h2{
  text-align:center;
}
.cabinet-page .cabinet-page-spaces>h2{
  max-width:720px;
  margin-left:auto;
  margin-right:auto;
}
.cabinet-page .cabinet-space-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
  margin-top:46px;
}
.cabinet-page .cabinet-space-grid article{
  padding:32px 30px 34px;
  border:1px solid #d9cec4;
  border-radius:7px;
  background:rgba(249,241,236,.48);
}
.cabinet-page .cabinet-space-grid h3{
  font-size:28px;
  margin-bottom:13px;
}

.cabinet-page .cabinet-page-atmosphere{
  padding:106px 0 110px;
  background:#E2E4D8;
}
.cabinet-page .cabinet-page-atmosphere-grid{
  display:grid;
  grid-template-columns:.88fr 1.12fr;
  gap:74px;
  align-items:start;
}
.cabinet-page .cabinet-page-atmosphere h2,
.cabinet-page .cabinet-page-atmosphere p{
  color:#53573A;
}
.cabinet-page .cabinet-page-atmosphere .ey{
  color:#6A6A4F;
}

.cabinet-page .cabinet-page-location{
  padding:112px 0 118px;
  display:grid;
  grid-template-columns:.92fr 1.08fr;
  gap:68px;
  align-items:center;
}
.cabinet-page .cabinet-page-location>div:first-child{
  max-width:560px;
}
.cabinet-page .cabinet-detail-photo{
  min-height:330px;
  border-radius:8px;
}

@media(max-width:900px){
  .cabinet-page .cabinet-page-hero,
  .cabinet-page .cabinet-page-atmosphere-grid,
  .cabinet-page .cabinet-page-location{
    grid-template-columns:1fr;
    gap:36px;
  }
  .cabinet-page .cabinet-space-grid{
    grid-template-columns:1fr;
  }
}


/* =========================================================
   V11.0 — PAGE L’ÉQUIPE
   ========================================================= */
.equipe-page .equipe-hero{
  min-height:560px;
  display:grid;
  grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr);
  gap:66px;
  align-items:center;
  padding:62px 0 70px;
}
.equipe-page .equipe-hero-copy{max-width:570px}
.equipe-page .equipe-hero h1{
  font-size:clamp(48px,5vw,60px);
  max-width:570px;
}
.equipe-page .equipe-hero .lead{
  font-size:17px;
  line-height:1.75;
  color:var(--deep);
  font-weight:500;
  margin-bottom:14px;
}
.equipe-page .equipe-hero-photo{
  min-height:380px;
  border-radius:8px;
}

.equipe-page .equipe-profiles{
  padding:112px 0 118px;
  display:flex;
  flex-direction:column;
  gap:90px;
}
.equipe-page .equipe-profile{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:64px;
  align-items:center;
}
.equipe-page .equipe-profile-copy{
  max-width:610px;
}
.equipe-page .equipe-profile-copy .ey{
  margin-bottom:18px;
}
.equipe-page .equipe-profile-copy h2{
  font-size:clamp(38px,4vw,45px);
  line-height:1.08;
  margin-bottom:22px;
}
.equipe-page .equipe-profile-copy p{
  line-height:1.76;
}
.equipe-page .equipe-portrait{
  min-height:360px;
  border-radius:8px;
}

.equipe-page .equipe-vision{
  padding:106px 0 112px;
  background:#E2E4D8;
}
.equipe-page .equipe-vision-grid{
  display:grid;
  grid-template-columns:.88fr 1.12fr;
  gap:74px;
  align-items:start;
}
.equipe-page .equipe-vision h2,
.equipe-page .equipe-vision p{
  color:#53573A;
}
.equipe-page .equipe-vision .ey{
  color:#6A6A4F;
}

.equipe-page .equipe-values{
  padding:112px 0 118px;
}
.equipe-page .equipe-values>.ey,
.equipe-page .equipe-values>h2{
  text-align:center;
}
.equipe-page .equipe-values>h2{
  max-width:720px;
  margin-left:auto;
  margin-right:auto;
}
.equipe-page .equipe-values-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:18px;
  margin-top:46px;
}
.equipe-page .equipe-values-grid article{
  padding:32px 32px 34px;
  border:1px solid #d9cec4;
  border-radius:7px;
  background:rgba(249,241,236,.48);
}
.equipe-page .equipe-values-grid h3{
  font-size:28px;
  margin-bottom:13px;
}

@media(max-width:900px){
  .equipe-page .equipe-hero,
  .equipe-page .equipe-profile,
  .equipe-page .equipe-vision-grid{
    grid-template-columns:1fr;
    gap:36px;
  }
  .equipe-page .equipe-profile-reverse .equipe-profile-copy{
    order:2;
  }
  .equipe-page .equipe-profile-reverse .equipe-portrait{
    order:1;
  }
}
@media(max-width:620px){
  .equipe-page .equipe-values-grid{
    grid-template-columns:1fr;
  }
}


/* =========================================================
   V12.0 — PAGE INFOS PRATIQUES
   ========================================================= */
.infos-page .infos-hero{
  min-height:500px;
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);
  gap:72px;
  align-items:center;
  padding:62px 0 70px;
}
.infos-page .infos-hero-copy{max-width:600px}
.infos-page .infos-hero h1{
  font-size:clamp(48px,5vw,60px);
  max-width:590px;
}
.infos-page .infos-hero .lead{
  font-size:17px;
  line-height:1.75;
  color:var(--deep);
  font-weight:500;
  margin-bottom:14px;
}
.infos-page .infos-hero-card{
  padding:42px 40px;
  background:#E2E4D8;
  border-radius:8px;
  border:1px solid #cfd3c1;
}
.infos-page .infos-hero-card h3,
.infos-page .infos-hero-card p{
  color:#53573A;
}
.infos-page .infos-hero-card h3{
  font-size:32px;
  margin-bottom:14px;
}

.infos-page .infos-contact{
  padding:102px 0 108px;
}
.infos-page .infos-section-head{
  text-align:center;
  max-width:720px;
  margin:0 auto 46px;
}
.infos-page .infos-contact-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}
.infos-page .infos-contact-grid article{
  padding:32px 30px 34px;
  border:1px solid #d9cec4;
  border-radius:7px;
  background:rgba(249,241,236,.46);
}
.infos-page .infos-contact-grid h3{
  font-size:28px;
  margin-bottom:14px;
}
.infos-page .infos-contact-grid a{
  color:var(--deep);
}

.infos-page .infos-rdv{
  padding:108px 0 114px;
  display:grid;
  grid-template-columns:1.12fr .88fr;
  gap:72px;
  align-items:center;
}
.infos-page .infos-rdv>div:first-child{
  max-width:630px;
}
.infos-page .infos-note,
.infos-page .infos-hippo-note{
  padding:24px 0 24px 30px;
  border-left:1px solid #A88C6B;
}

.infos-page .infos-access{
  padding:106px 0 112px;
  background:#E2E4D8;
}
.infos-page .infos-access-grid{
  display:grid;
  grid-template-columns:.94fr 1.06fr;
  gap:68px;
  align-items:center;
}
.infos-page .infos-access h2,
.infos-page .infos-access p{
  color:#53573A;
}
.infos-page .infos-access .ey{
  color:#6A6A4F;
}
.infos-page .infos-map{
  min-height:330px;
  border-radius:8px;
}

.infos-page .infos-hippo{
  padding:108px 0 114px;
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:72px;
  align-items:center;
}
.infos-page .infos-hippo>div:first-child{
  max-width:650px;
}
.infos-page .infos-hippo .btn{
  margin-top:18px;
}

.infos-page .infos-admin{
  padding:96px 0 102px;
}
.infos-page .infos-admin .narrow{
  max-width:760px;
  margin:auto;
}
.infos-page .infos-admin h2{
  max-width:700px;
  margin-left:auto;
  margin-right:auto;
}

@media(max-width:900px){
  .infos-page .infos-hero,
  .infos-page .infos-rdv,
  .infos-page .infos-access-grid,
  .infos-page .infos-hippo{
    grid-template-columns:1fr;
    gap:36px;
  }
  .infos-page .infos-contact-grid{
    grid-template-columns:1fr;
  }
}


/* =========================================================
   V13.0 — PAGE CONTACT
   ========================================================= */
.contact-page .contact-page-hero{
  min-height:500px;
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);
  gap:72px;
  align-items:center;
  padding:62px 0 70px;
}
.contact-page .contact-page-hero-copy{max-width:600px}
.contact-page .contact-page-hero h1{
  font-size:clamp(48px,5vw,60px);
  max-width:590px;
}
.contact-page .contact-page-hero .lead{
  font-size:17px;
  line-height:1.75;
  color:var(--deep);
  font-weight:500;
  margin-bottom:14px;
}
.contact-page .contact-page-card{
  padding:42px 40px;
  background:#E2E4D8;
  border-radius:8px;
  border:1px solid #cfd3c1;
}
.contact-page .contact-page-card h3,
.contact-page .contact-page-card p,
.contact-page .contact-page-card a{
  color:#53573A;
}
.contact-page .contact-page-card h3{
  font-size:32px;
  margin-bottom:14px;
}

.contact-page .contact-direct{
  padding:102px 0 108px;
}
.contact-page .contact-direct-head{
  text-align:center;
  max-width:720px;
  margin:0 auto 46px;
}
.contact-page .contact-direct-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}
.contact-page .contact-direct-grid article{
  padding:32px 30px 34px;
  border:1px solid #d9cec4;
  border-radius:7px;
  background:rgba(249,241,236,.46);
}
.contact-page .contact-direct-grid h3{
  font-size:28px;
  margin-bottom:14px;
}
.contact-page .contact-direct-grid a{
  color:var(--deep);
}

.contact-page .contact-form-section{
  padding:112px 0 118px;
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:72px;
  align-items:start;
}
.contact-page .contact-form-intro{
  max-width:520px;
}
.contact-page .contact-form-note{
  margin-top:30px;
  padding:22px 0 22px 28px;
  border-left:1px solid #A88C6B;
}
.contact-page .contact-form-note p{
  margin:0 0 8px;
}
.contact-page .contact-form-note p:last-child{
  margin-bottom:0;
}
.contact-page .contact-form{
  padding:38px 38px 40px;
  border:1px solid #d9cec4;
  border-radius:8px;
  background:rgba(249,241,236,.48);
}
.contact-page .contact-form label{
  display:block;
  margin-bottom:20px;
}
.contact-page .contact-form label>span{
  display:block;
  margin-bottom:8px;
  font-size:12px;
  font-weight:600;
  color:var(--deep);
}
.contact-page .contact-form input,
.contact-page .contact-form select,
.contact-page .contact-form textarea{
  width:100%;
  box-sizing:border-box;
  padding:13px 14px;
  border:1px solid #d1c5ba;
  border-radius:5px;
  background:#fffdfa;
  font:inherit;
  color:#454536;
}
.contact-page .contact-form textarea{
  resize:vertical;
}
.contact-page .contact-form-row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
}
.contact-page .contact-consent{
  display:flex !important;
  gap:10px;
  align-items:flex-start;
}
.contact-page .contact-consent input{
  width:auto;
  margin-top:4px;
}
.contact-page .contact-consent span{
  margin-bottom:0 !important;
  font-weight:400 !important;
  line-height:1.6;
}
.contact-page .hidden-field{
  display:none;
}

.contact-page .contact-response{
  padding:104px 0 110px;
  background:#E2E4D8;
}
.contact-page .contact-response-grid{
  display:grid;
  grid-template-columns:.88fr 1.12fr;
  gap:74px;
  align-items:start;
}
.contact-page .contact-response h2,
.contact-page .contact-response p{
  color:#53573A;
}
.contact-page .contact-response .ey{
  color:#6A6A4F;
}

.contact-page .contact-reminder{
  padding:96px 0 102px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:44px;
}
.contact-page .contact-reminder>div{
  max-width:650px;
}
.contact-page .contact-reminder h2{
  margin-bottom:14px;
}

@media(max-width:900px){
  .contact-page .contact-page-hero,
  .contact-page .contact-form-section,
  .contact-page .contact-response-grid{
    grid-template-columns:1fr;
    gap:36px;
  }
  .contact-page .contact-direct-grid{
    grid-template-columns:1fr;
  }
  .contact-page .contact-reminder{
    align-items:flex-start;
    flex-direction:column;
  }
}
@media(max-width:620px){
  .contact-page .contact-form-row{
    grid-template-columns:1fr;
    gap:0;
  }
  .contact-page .contact-form{
    padding:30px 24px 32px;
  }
}


/* =========================================================
   V13.1 — CONTACT SIMPLIFIÉ
   Une page dédiée uniquement à la prise de contact.
   ========================================================= */
.contact-page .contact-page-hero-simple{
  min-height:auto !important;
  display:block !important;
  padding-top:92px !important;
  padding-bottom:94px !important;
}
.contact-page .contact-page-hero-simple .contact-page-hero-copy{
  max-width:760px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  text-align:center !important;
}
.contact-page .contact-page-hero-simple h1{
  max-width:680px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
.contact-page .contact-page-hero-simple .lead,
.contact-page .contact-page-hero-simple p{
  max-width:650px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
.contact-page .contact-infos-link{
  display:inline-block;
  margin-top:16px;
  color:var(--deep);
  font-size:12px;
  font-weight:600;
  text-decoration:none;
}
.contact-page .contact-direct{
  padding-top:92px !important;
  padding-bottom:98px !important;
}
.contact-page .contact-form-section{
  padding-top:102px !important;
  padding-bottom:108px !important;
}
@media(max-width:820px){
  .contact-page .contact-page-hero-simple{
    padding-top:72px !important;
    padding-bottom:76px !important;
  }
}

/* V13.2 — Infos pratiques : suppression des coordonnées redondantes */
.infos-page .contact-infos-link{
  display:inline-block;
  margin-top:16px;
  color:var(--deep);
  font-size:12px;
  font-weight:600;
  text-decoration:none;
}


/* =========================================================
   V14.0 — NAVIGATION, LIENS, MOBILE & FOOTER FINALISÉS
   ========================================================= */
html{scroll-behavior:smooth}
section[id]{scroll-margin-top:130px}

.site-header{
  position:sticky;
  top:0;
  z-index:50;
  display:flex;
  align-items:center;
  gap:24px;
  min-height:112px !important;
  padding:8px max(32px,calc((100vw - 1160px)/2));
  overflow:visible !important;
  background:rgba(249,241,236,.96);
  backdrop-filter:blur(8px);
  border-bottom:1px solid #d9cec4;
}
.site-header .logo{
  margin-right:auto;
}
.desktop-nav{
  display:flex;
  align-items:center;
  gap:21px;
  font-size:12.5px;
  white-space:nowrap;
}
.desktop-nav>a,
.nav-parent{
  color:var(--ink);
  text-decoration:none;
  transition:color .18s ease;
}
.desktop-nav>a:hover,
.nav-parent:hover,
.desktop-nav a:focus-visible,
.nav-parent:focus-visible{
  color:var(--deep);
}
.desktop-nav .nav-active,
.nav-parent.nav-active{
  color:var(--deep);
  font-weight:600;
}
.nav-dropdown{
  position:relative;
}
.nav-parent{
  display:inline-flex;
  align-items:center;
  gap:5px;
}
.dropdown-menu{
  position:absolute;
  top:100%;
  left:-18px;
  min-width:255px;
  padding:12px;
  border:1px solid #d9cec4;
  border-radius:8px;
  background:#fffaf6;
  box-shadow:0 16px 35px rgba(65,66,52,.10);
  opacity:0;
  visibility:hidden;
  transform:translateY(8px);
  pointer-events:none;
  transition:opacity .16s ease,transform .16s ease,visibility .16s ease;
}
.nav-dropdown:hover .dropdown-menu,
.nav-dropdown:focus-within .dropdown-menu{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
  pointer-events:auto;
}
.dropdown-menu a{
  display:block;
  padding:9px 10px;
  border-radius:5px;
  color:var(--ink);
  text-decoration:none;
  white-space:normal;
}
.dropdown-menu a:hover,
.dropdown-menu a:focus-visible{
  background:#E2E4D8;
  color:var(--deep);
}
.dropdown-menu a.nav-active{
  background:#E2E4D8;
  color:var(--deep);
  font-weight:600;
}
.header-cta{
  flex:0 0 auto;
}

.mobile-nav{
  display:none;
  position:relative;
}
.mobile-nav summary{
  list-style:none;
  cursor:pointer;
  color:var(--deep);
  font-size:12px;
  font-weight:600;
  padding:10px 16px;
  border:1px solid var(--deep);
  border-radius:30px;
}
.mobile-nav summary::-webkit-details-marker{display:none}
.mobile-menu{
  position:absolute;
  right:0;
  top:calc(100% + 12px);
  width:min(330px,calc(100vw - 32px));
  max-height:calc(100vh - 110px);
  overflow:auto;
  padding:16px;
  border:1px solid #d9cec4;
  border-radius:8px;
  background:#fffaf6;
  box-shadow:0 16px 35px rgba(65,66,52,.13);
}
.mobile-menu>a,
.mobile-menu-label{
  display:block;
  padding:9px 10px;
  color:var(--ink);
  text-decoration:none;
}
.mobile-menu-label{
  margin-top:4px;
  color:var(--brown);
  font-size:10px;
  font-weight:600;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.mobile-menu .mobile-contact-btn{
  margin-top:10px;
  color:var(--ivory);
  text-align:center;
}

.future-link{
  color:var(--deep);
  text-decoration:none;
  font-weight:600;
}
a.future-link:hover{text-decoration:underline}

.site-footer{
  padding:58px 0 28px !important;
  text-align:left !important;
  background:var(--deep);
  color:var(--ivory);
}
.footer-grid{
  display:grid;
  grid-template-columns:1.25fr 1fr 1.2fr .8fr;
  gap:44px;
}
.site-footer strong{
  display:block;
  margin-bottom:10px;
  color:var(--ivory);
  font-size:12px;
  letter-spacing:.08em;
}
.site-footer p{
  margin:0;
  color:rgba(249,241,236,.84);
  font-size:12px;
  line-height:1.75;
}
.site-footer a{
  color:var(--ivory);
  text-decoration:none;
}
.site-footer a:hover{text-decoration:underline}
.footer-brand strong{
  font-family:"Cormorant Garamond",serif;
  font-size:23px;
  letter-spacing:.04em;
}
.footer-bottom{
  display:flex;
  justify-content:space-between;
  gap:20px;
  margin-top:42px;
  padding-top:20px;
  border-top:1px solid rgba(249,241,236,.18);
  color:rgba(249,241,236,.62);
  font-size:10px;
}
.thanks-section{
  min-height:58vh;
  display:flex;
  align-items:center;
}
.thanks-section h1{
  max-width:620px;
  margin-left:auto;
  margin-right:auto;
}
.thanks-actions{
  justify-content:center;
}

@media(max-width:1080px){
  .desktop-nav{gap:14px;font-size:11.5px}
  .site-header{gap:16px}
  .site-header .logo{
    width:330px !important;
    max-width:34vw !important;
  }
  .site-header .logo img{
    width:330px !important;
  }
}
@media(max-width:900px){
  .site-header{
    min-height:86px !important;
    padding:8px 20px;
  }
  .desktop-nav,
  .header-cta{
    display:none !important;
  }
  .mobile-nav{
    display:block;
  }
  .site-header .logo{
    width:260px !important;
    max-width:66vw !important;
    min-width:0 !important;
  }
  .site-header .logo img{
    width:260px !important;
    max-width:100% !important;
  }
  .footer-grid{
    grid-template-columns:1fr 1fr;
    gap:34px 28px;
  }
}
@media(max-width:620px){
  .wrap,
  .narrow{
    width:min(100% - 36px,1160px);
  }
  .site-header{
    padding-left:16px;
    padding-right:16px;
  }
  .site-header .logo{
    width:215px !important;
  }
  .site-header .logo img{
    width:215px !important;
  }
  .footer-grid{
    grid-template-columns:1fr;
    gap:28px;
  }
  .footer-bottom{
    flex-direction:column;
    gap:4px;
  }
}


/* =========================================================
   V14.2 — NETTOYAGE PRÉ-PUBLICATION
   Suppression des notes de production visibles publiquement.
   ========================================================= */
.brand-placeholder{
  position:relative !important;
  overflow:hidden !important;
  border:1px solid rgba(106,106,79,.18) !important;
  background:
    linear-gradient(135deg, rgba(226,228,216,.82), rgba(249,241,236,.92)) !important;
}
.brand-placeholder::after{
  content:"";
  position:absolute;
  inset:0;
  background-image:url("assets/logo-althea.png");
  background-repeat:no-repeat;
  background-position:center;
  background-size:min(30%,150px) auto;
  opacity:.10;
  pointer-events:none;
}
.equipe-portrait.brand-placeholder::after{
  background-size:min(38%,135px) auto;
}
.infos-location-card{
  min-height:300px;
  box-sizing:border-box;
  padding:42px 40px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  border:1px solid rgba(106,106,79,.20);
  border-radius:8px;
  background:rgba(249,241,236,.62);
}
.infos-location-card h3{
  font-size:30px;
  margin:10px 0 14px;
  color:#53573A;
}
.infos-location-card p{
  color:#53573A !important;
}
.infos-location-card .btn{
  align-self:flex-start;
  margin-top:16px;
}
@media(max-width:620px){
  .infos-location-card{
    min-height:auto;
    padding:32px 26px;
  }
}
