
@font-face{font-family:"Cormorant Garamond";src:url(/fonts/cormorant-garamond-latin-var.woff2) format("woff2");font-weight:300 700;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Cormorant Garamond";src:url(/fonts/cormorant-garamond-italic-latin-var.woff2) format("woff2");font-weight:300 700;font-style:italic;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"EB Garamond";src:url(/fonts/eb-garamond-latin-var.woff2) format("woff2");font-weight:400 800;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Source Sans 3";src:url(/fonts/source-sans-3-latin-var.woff2) format("woff2");font-weight:200 900;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root{
  --ivoire:#F3EDE3;--ivoire-2:#ECE5D9;--pierre:#DDD3C6;--greige:#B9AE9F;--taupe:#938777;--taupe-texte:#655A4D;
  --anthracite:#172322;--nuit:#0f0f10;--paro:#202128;--noir:#000;--plan:#3c3c3c;--tartre:#303136;
  --gencive:#B5786C;--gencive-clair:#D8A79B;--clair-2:#D9D0C3;
  --f-texte:"Source Sans 3","Segoe UI",system-ui,sans-serif;
  --gout:clamp(16px,4vw,56px);--max:1320px;--r:14px;
  /* Essai B (par défaut) : Cormorant Garamond */
  --f-titre:"Cormorant Garamond","Cormorant",Garamond,"Times New Roman",serif;
  --t-poids:500;--t-poids-grand:400;--t-echelle:1.12;--t-interligne:1.04;--t-espace:-.005em;--nom-poids:500;--nom-taille:1.5rem;
}
html[data-typo="a"]{
  --f-titre:"EB Garamond",Garamond,"Times New Roman",serif;
  --t-poids:400;--t-poids-grand:400;--t-echelle:1;--t-interligne:1.06;--t-espace:-.008em;--nom-poids:400;--nom-taille:1.32rem;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--ivoire);color:var(--anthracite);font:400 17.5px/1.62 var(--f-texte);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
img,video{max-width:100%;display:block}
a{color:inherit;text-underline-offset:3px;text-decoration-thickness:1px}
:focus-visible{outline:2px solid var(--gencive);outline-offset:3px;border-radius:4px}
.media-protege{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
h1,h2,h3{font-family:var(--f-titre);font-weight:var(--t-poids);letter-spacing:var(--t-espace);text-wrap:balance;margin:0;font-kerning:normal;font-variant-ligatures:common-ligatures}
h1{font-size:calc(clamp(2.5rem,6.2vw,5.4rem)*var(--t-echelle));line-height:var(--t-interligne);font-weight:var(--t-poids-grand)}
h2{font-size:calc(clamp(2.05rem,4.3vw,3.5rem)*var(--t-echelle));line-height:1.08}
h3{font-size:calc(clamp(1.4rem,2.2vw,1.75rem)*var(--t-echelle));line-height:1.2}
@media (min-width:900px){h2{font-weight:var(--t-poids-grand)}}
p{margin:0}
.wrap{max-width:var(--max);margin-inline:auto;padding-inline:var(--gout)}
.etroit{max-width:820px;margin-inline:auto;padding-inline:var(--gout)}
.pile{display:grid;gap:1.1rem}
.lisible{max-width:62ch}
.sur-titre{font:600 .78rem/1.2 var(--f-texte);letter-spacing:.14em;text-transform:uppercase;color:var(--taupe-texte)}
.sombre .sur-titre{color:var(--greige)}
.legende,figcaption{font-size:.84rem;color:var(--taupe-texte);line-height:1.45}
.sombre figcaption,.sombre .legende{color:#B8AFA2}
.sombre{color:var(--ivoire)}
.sombre p,.sombre li{color:#E3DBCF}
.lien{font-weight:600;text-decoration:none;border-bottom:1px solid var(--gencive);padding-bottom:1px}
.sombre .lien{color:var(--ivoire)}
.bouton{display:inline-flex;align-items:center;gap:.6rem;font:600 .98rem/1 var(--f-texte);text-decoration:none;padding:.95rem 1.35rem;border-radius:999px;background:var(--ivoire);color:var(--anthracite);white-space:nowrap;border:0;cursor:pointer}
.bouton.fonce{background:var(--anthracite);color:var(--ivoire)}
.bouton.contour{background:transparent;border:1px solid currentColor;color:inherit}

/* Fonds de section */
.bg-nuit{background:var(--nuit)}.bg-paro{background:var(--paro)}.bg-noir{background:#000}.bg-plan{background:var(--plan)}
.bg-anth{background:var(--anthracite)}.bg-tartre{background:var(--tartre)}.bg-ivoire{background:var(--ivoire)}

/* Dégradés longs entre sections : 18 étapes OKLab, hauteur distincte téléphone / ordinateur, grain très léger anti-bandes */
.fondu{position:relative;height:clamp(170px,42vw,240px);margin:-1px 0}
@media (min-width:900px){.fondu{height:clamp(260px,24vw,400px)}}
.fondu.court{height:clamp(110px,26vw,150px)}
@media (min-width:900px){.fondu.court{height:clamp(150px,13vw,220px)}}
.fondu::after,.grain::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.05;mix-blend-mode:overlay;
 background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.f-nuit-paro{background:linear-gradient(180deg, #0f0f10 0.0%, #0f0f10 5.6%, #0f0f10 11.1%, #101011 16.7%, #101012 22.2%, #111113 27.8%, #121315 33.3%, #141417 38.9%, #161619 44.4%, #17181c 50.0%, #191a1e 55.6%, #1b1b21 61.1%, #1c1d23 66.7%, #1e1e25 72.2%, #1f2026 77.8%, #1f2027 83.3%, #202128 88.9%, #202128 94.4%, #202128 100.0%)}
.f-paro-noir{background:linear-gradient(180deg, #202128 0.0%, #202128 5.6%, #1f2027 11.1%, #1e1f26 16.7%, #1c1d23 22.2%, #18191f 27.8%, #14151a 33.3%, #101015 38.9%, #0a0b0f 44.4%, #060609 50.0%, #030304 55.6%, #010102 61.1%, #000001 66.7%, #000000 72.2%, #000000 77.8%, #000000 83.3%, #000000 88.9%, #000000 94.4%, #000000 100.0%)}
.f-noir-plan{background:linear-gradient(180deg, #000000 0.0%, #000000 5.6%, #000000 11.1%, #000000 16.7%, #000000 22.2%, #000000 27.8%, #010101 33.3%, #040404 38.9%, #090909 44.4%, #111111 50.0%, #191919 55.6%, #222222 61.1%, #292929 66.7%, #303030 72.2%, #353535 77.8%, #393939 83.3%, #3b3b3b 88.9%, #3c3c3c 94.4%, #3c3c3c 100.0%)}
.f-plan-noir{background:linear-gradient(180deg, #3c3c3c 0.0%, #3c3c3c 5.6%, #3b3b3b 11.1%, #393939 16.7%, #353535 22.2%, #303030 27.8%, #292929 33.3%, #222222 38.9%, #191919 44.4%, #111111 50.0%, #090909 55.6%, #040404 61.1%, #010101 66.7%, #000000 72.2%, #000000 77.8%, #000000 83.3%, #000000 88.9%, #000000 94.4%, #000000 100.0%)}
.f-noir-anth{background:linear-gradient(180deg, #000000 0.0%, #000000 5.6%, #000000 11.1%, #000000 16.7%, #000000 22.2%, #000000 27.8%, #000100 33.3%, #010101 38.9%, #020303 44.4%, #040707 50.0%, #060c0c 55.6%, #0a1111 61.1%, #0e1616 66.7%, #111b1a 72.2%, #131e1d 77.8%, #152120 83.3%, #162221 88.9%, #172322 94.4%, #172322 100.0%)}
.f-anth-ivoire{background:linear-gradient(180deg, #172322 0.0%, #172322 5.6%, #192524 11.1%, #1d2928 16.7%, #25302e 22.2%, #303a38 27.8%, #3f4845 33.3%, #515955 38.9%, #666c67 44.4%, #7c807b 50.0%, #949690 55.6%, #aaaba4 61.1%, #bfbeb6 66.7%, #d2cfc6 72.2%, #e0dcd2 77.8%, #eae5db 83.3%, #f0eae0 88.9%, #f3ede3 94.4%, #f3ede3 100.0%)}
.f-ivoire-tartre{background:linear-gradient(180deg, #f3ede3 0.0%, #f3ede3 5.6%, #f0ebe1 11.1%, #ebe6dc 16.7%, #e2ddd4 22.2%, #d6d1c9 27.8%, #c6c2bc 33.3%, #b4b0ab 38.9%, #a09d9a 44.4%, #8b8987 50.0%, #777676 55.6%, #646465 61.1%, #545457 66.7%, #47474b 72.2%, #3d3d42 77.8%, #36373b 83.3%, #323338 88.9%, #303136 94.4%, #303136 100.0%)}
.f-tartre-ivoire{background:linear-gradient(180deg, #303136 0.0%, #303136 5.6%, #323338 11.1%, #36373b 16.7%, #3d3d42 22.2%, #47474b 27.8%, #545457 33.3%, #646465 38.9%, #777676 44.4%, #8b8987 50.0%, #a09d9a 55.6%, #b4b0ab 61.1%, #c6c2bc 66.7%, #d6d1c9 72.2%, #e2ddd4 77.8%, #ebe6dc 83.3%, #f0ebe1 88.9%, #f3ede3 94.4%, #f3ede3 100.0%)}
.f-ivoire-anth{background:linear-gradient(180deg, #f3ede3 0.0%, #f3ede3 5.6%, #f0eae0 11.1%, #eae5db 16.7%, #e0dcd2 22.2%, #d2cfc6 27.8%, #bfbeb6 33.3%, #aaaba4 38.9%, #949690 44.4%, #7c807b 50.0%, #666c67 55.6%, #515955 61.1%, #3f4845 66.7%, #303a38 72.2%, #25302e 77.8%, #1d2928 83.3%, #192524 88.9%, #172322 94.4%, #172322 100.0%)}
.f-ivoire-noir{background:linear-gradient(180deg, #f3ede3 0.0%, #f2ede3 5.6%, #efe9e0 11.1%, #e8e2d8 16.7%, #dbd5cc 22.2%, #c8c3bb 27.8%, #b1ada6 33.3%, #97938d 38.9%, #7b7772 44.4%, #5e5c57 50.0%, #43413e 55.6%, #2b2927 61.1%, #161614 66.7%, #070706 72.2%, #010101 77.8%, #000000 83.3%, #000000 88.9%, #000000 94.4%, #000000 100.0%)}
.f-noir-ivoire{background:linear-gradient(180deg, #000000 0.0%, #000000 5.6%, #000000 11.1%, #000000 16.7%, #010101 22.2%, #070706 27.8%, #161614 33.3%, #2b2927 38.9%, #43413e 44.4%, #5e5c57 50.0%, #7b7772 55.6%, #97938d 61.1%, #b1ada6 66.7%, #c8c3bb 72.2%, #dbd5cc 77.8%, #e8e2d8 83.3%, #efe9e0 88.9%, #f2ede3 94.4%, #f3ede3 100.0%)}
.f-nuit-ivoire{background:linear-gradient(180deg, #0f0f10 0.0%, #0f0f10 5.6%, #111112 11.1%, #151516 16.7%, #1d1c1d 22.2%, #282727 27.8%, #373635 33.3%, #494846 38.9%, #5f5d5a 44.4%, #767470 50.0%, #8f8b86 55.6%, #a6a39c 61.1%, #bdb8b1 66.7%, #d0cbc2 72.2%, #dfd9d0 77.8%, #eae4da 83.3%, #f0eae0 88.9%, #f3ede3 94.4%, #f3ede3 100.0%)}

/* Fondu des bords d'un média dans la couleur de sa section */
.plume{--p:9%;--pv:9%;-webkit-mask-image:linear-gradient(to right, rgba(0,0,0,0.000) calc(var(--p) * 0.000), rgba(0,0,0,0.005) calc(var(--p) * 0.083), rgba(0,0,0,0.035) calc(var(--p) * 0.167), rgba(0,0,0,0.104) calc(var(--p) * 0.250), rgba(0,0,0,0.210) calc(var(--p) * 0.333), rgba(0,0,0,0.347) calc(var(--p) * 0.417), rgba(0,0,0,0.500) calc(var(--p) * 0.500), rgba(0,0,0,0.653) calc(var(--p) * 0.583), rgba(0,0,0,0.790) calc(var(--p) * 0.667), rgba(0,0,0,0.896) calc(var(--p) * 0.750), rgba(0,0,0,0.965) calc(var(--p) * 0.833), rgba(0,0,0,0.995) calc(var(--p) * 0.917), rgba(0,0,0,1.000) calc(var(--p) * 1.000), rgba(0,0,0,1.000) calc(100% - var(--p) * 1.000), rgba(0,0,0,0.995) calc(100% - var(--p) * 0.917), rgba(0,0,0,0.965) calc(100% - var(--p) * 0.833), rgba(0,0,0,0.896) calc(100% - var(--p) * 0.750), rgba(0,0,0,0.790) calc(100% - var(--p) * 0.667), rgba(0,0,0,0.653) calc(100% - var(--p) * 0.583), rgba(0,0,0,0.500) calc(100% - var(--p) * 0.500), rgba(0,0,0,0.347) calc(100% - var(--p) * 0.417), rgba(0,0,0,0.210) calc(100% - var(--p) * 0.333), rgba(0,0,0,0.104) calc(100% - var(--p) * 0.250), rgba(0,0,0,0.035) calc(100% - var(--p) * 0.167), rgba(0,0,0,0.005) calc(100% - var(--p) * 0.083), rgba(0,0,0,0.000) calc(100% - var(--p) * 0.000)), linear-gradient(to bottom, rgba(0,0,0,0.000) calc(var(--pv) * 0.000), rgba(0,0,0,0.005) calc(var(--pv) * 0.083), rgba(0,0,0,0.035) calc(var(--pv) * 0.167), rgba(0,0,0,0.104) calc(var(--pv) * 0.250), rgba(0,0,0,0.210) calc(var(--pv) * 0.333), rgba(0,0,0,0.347) calc(var(--pv) * 0.417), rgba(0,0,0,0.500) calc(var(--pv) * 0.500), rgba(0,0,0,0.653) calc(var(--pv) * 0.583), rgba(0,0,0,0.790) calc(var(--pv) * 0.667), rgba(0,0,0,0.896) calc(var(--pv) * 0.750), rgba(0,0,0,0.965) calc(var(--pv) * 0.833), rgba(0,0,0,0.995) calc(var(--pv) * 0.917), rgba(0,0,0,1.000) calc(var(--pv) * 1.000), rgba(0,0,0,1.000) calc(100% - var(--pv) * 1.000), rgba(0,0,0,0.995) calc(100% - var(--pv) * 0.917), rgba(0,0,0,0.965) calc(100% - var(--pv) * 0.833), rgba(0,0,0,0.896) calc(100% - var(--pv) * 0.750), rgba(0,0,0,0.790) calc(100% - var(--pv) * 0.667), rgba(0,0,0,0.653) calc(100% - var(--pv) * 0.583), rgba(0,0,0,0.500) calc(100% - var(--pv) * 0.500), rgba(0,0,0,0.347) calc(100% - var(--pv) * 0.417), rgba(0,0,0,0.210) calc(100% - var(--pv) * 0.333), rgba(0,0,0,0.104) calc(100% - var(--pv) * 0.250), rgba(0,0,0,0.035) calc(100% - var(--pv) * 0.167), rgba(0,0,0,0.005) calc(100% - var(--pv) * 0.083), rgba(0,0,0,0.000) calc(100% - var(--pv) * 0.000));mask-image:linear-gradient(to right, rgba(0,0,0,0.000) calc(var(--p) * 0.000), rgba(0,0,0,0.005) calc(var(--p) * 0.083), rgba(0,0,0,0.035) calc(var(--p) * 0.167), rgba(0,0,0,0.104) calc(var(--p) * 0.250), rgba(0,0,0,0.210) calc(var(--p) * 0.333), rgba(0,0,0,0.347) calc(var(--p) * 0.417), rgba(0,0,0,0.500) calc(var(--p) * 0.500), rgba(0,0,0,0.653) calc(var(--p) * 0.583), rgba(0,0,0,0.790) calc(var(--p) * 0.667), rgba(0,0,0,0.896) calc(var(--p) * 0.750), rgba(0,0,0,0.965) calc(var(--p) * 0.833), rgba(0,0,0,0.995) calc(var(--p) * 0.917), rgba(0,0,0,1.000) calc(var(--p) * 1.000), rgba(0,0,0,1.000) calc(100% - var(--p) * 1.000), rgba(0,0,0,0.995) calc(100% - var(--p) * 0.917), rgba(0,0,0,0.965) calc(100% - var(--p) * 0.833), rgba(0,0,0,0.896) calc(100% - var(--p) * 0.750), rgba(0,0,0,0.790) calc(100% - var(--p) * 0.667), rgba(0,0,0,0.653) calc(100% - var(--p) * 0.583), rgba(0,0,0,0.500) calc(100% - var(--p) * 0.500), rgba(0,0,0,0.347) calc(100% - var(--p) * 0.417), rgba(0,0,0,0.210) calc(100% - var(--p) * 0.333), rgba(0,0,0,0.104) calc(100% - var(--p) * 0.250), rgba(0,0,0,0.035) calc(100% - var(--p) * 0.167), rgba(0,0,0,0.005) calc(100% - var(--p) * 0.083), rgba(0,0,0,0.000) calc(100% - var(--p) * 0.000)), linear-gradient(to bottom, rgba(0,0,0,0.000) calc(var(--pv) * 0.000), rgba(0,0,0,0.005) calc(var(--pv) * 0.083), rgba(0,0,0,0.035) calc(var(--pv) * 0.167), rgba(0,0,0,0.104) calc(var(--pv) * 0.250), rgba(0,0,0,0.210) calc(var(--pv) * 0.333), rgba(0,0,0,0.347) calc(var(--pv) * 0.417), rgba(0,0,0,0.500) calc(var(--pv) * 0.500), rgba(0,0,0,0.653) calc(var(--pv) * 0.583), rgba(0,0,0,0.790) calc(var(--pv) * 0.667), rgba(0,0,0,0.896) calc(var(--pv) * 0.750), rgba(0,0,0,0.965) calc(var(--pv) * 0.833), rgba(0,0,0,0.995) calc(var(--pv) * 0.917), rgba(0,0,0,1.000) calc(var(--pv) * 1.000), rgba(0,0,0,1.000) calc(100% - var(--pv) * 1.000), rgba(0,0,0,0.995) calc(100% - var(--pv) * 0.917), rgba(0,0,0,0.965) calc(100% - var(--pv) * 0.833), rgba(0,0,0,0.896) calc(100% - var(--pv) * 0.750), rgba(0,0,0,0.790) calc(100% - var(--pv) * 0.667), rgba(0,0,0,0.653) calc(100% - var(--pv) * 0.583), rgba(0,0,0,0.500) calc(100% - var(--pv) * 0.500), rgba(0,0,0,0.347) calc(100% - var(--pv) * 0.417), rgba(0,0,0,0.210) calc(100% - var(--pv) * 0.333), rgba(0,0,0,0.104) calc(100% - var(--pv) * 0.250), rgba(0,0,0,0.035) calc(100% - var(--pv) * 0.167), rgba(0,0,0,0.005) calc(100% - var(--pv) * 0.083), rgba(0,0,0,0.000) calc(100% - var(--pv) * 0.000));-webkit-mask-composite:source-in;mask-composite:intersect}
.plume-x{--p:7%;--pv:0px}
.plume-photo{--p:3.5%;--pv:4.5%}
.plume-ovale{-webkit-mask-image:radial-gradient(ellipse closest-side at 50% 50%, rgba(0,0,0,1.000) 58.0%, rgba(0,0,0,0.995) 61.5%, rgba(0,0,0,0.965) 65.0%, rgba(0,0,0,0.896) 68.5%, rgba(0,0,0,0.790) 72.0%, rgba(0,0,0,0.653) 75.5%, rgba(0,0,0,0.500) 79.0%, rgba(0,0,0,0.347) 82.5%, rgba(0,0,0,0.210) 86.0%, rgba(0,0,0,0.104) 89.5%, rgba(0,0,0,0.035) 93.0%, rgba(0,0,0,0.005) 96.5%, rgba(0,0,0,0.000) 100.0%);mask-image:radial-gradient(ellipse closest-side at 50% 50%, rgba(0,0,0,1.000) 58.0%, rgba(0,0,0,0.995) 61.5%, rgba(0,0,0,0.965) 65.0%, rgba(0,0,0,0.896) 68.5%, rgba(0,0,0,0.790) 72.0%, rgba(0,0,0,0.653) 75.5%, rgba(0,0,0,0.500) 79.0%, rgba(0,0,0,0.347) 82.5%, rgba(0,0,0,0.210) 86.0%, rgba(0,0,0,0.104) 89.5%, rgba(0,0,0,0.035) 93.0%, rgba(0,0,0,0.005) 96.5%, rgba(0,0,0,0.000) 100.0%);-webkit-mask-composite:source-over;mask-composite:add}
.plume-doux{--p:5%;--pv:6%}
@media (max-width:700px){.plume{--p:6%;--pv:7%}}

/* En-tête */
.entete{position:absolute;inset:0 0 auto 0;z-index:6;padding-top:env(safe-area-inset-top,0px);color:var(--ivoire)}
.entete::before{content:"";position:absolute;inset:0 0 -60px 0;background:linear-gradient(180deg,rgba(15,15,16,.6),rgba(15,15,16,.32) 45%,rgba(15,15,16,0));pointer-events:none}
.entete.clair{position:relative;color:var(--anthracite)}
.entete.clair::before{display:none}
.entete .wrap{position:relative;display:flex;align-items:center;justify-content:space-between;gap:1.2rem;padding-block:18px}
.marque{display:grid;text-decoration:none;line-height:1.1}
.marque b{font-family:var(--f-titre);font-weight:var(--nom-poids);font-size:var(--nom-taille);letter-spacing:.005em}
.marque span{font-size:.78rem;opacity:.86;letter-spacing:.01em}
.nav{display:flex;gap:1.5rem;font-size:.93rem}
.nav a{text-decoration:none;padding-block:.25rem;border-bottom:1px solid transparent}
.nav a:hover,.nav a[aria-current="page"]{border-color:currentColor}
.outils{display:flex;align-items:center;gap:.9rem}
.langues{display:flex;gap:.15rem;font:600 .78rem/1 var(--f-texte);letter-spacing:.06em}
.langues a{padding:.45rem .45rem;text-decoration:none;opacity:.72}
.langues a[aria-current="true"]{opacity:1;box-shadow:inset 0 -1px 0 currentColor}
.tel{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600;font-size:.92rem;text-decoration:none;border:1px solid currentColor;padding:.48rem .9rem;border-radius:999px}
@media (max-width:1060px){.nav{display:none}}
@media (max-width:560px){.tel{display:none}.marque span{max-width:24ch}}

/* Héro : la vidéo rejoint exactement le fond de la section suivante (nuit) */
.hero{position:relative;min-height:clamp(600px,100svh,980px);display:flex;align-items:flex-end;color:var(--ivoire);background:var(--nuit);overflow:hidden}
.hero__media{position:absolute;inset:0}
.hero__media video{width:100%;height:100%;object-fit:cover;object-position:60% 30%}
.hero__media::after{content:"";position:absolute;inset:0;background:
  linear-gradient(0deg,#0f0f10 0%,rgba(15,15,16,.94) 7%,rgba(18,24,24,.84) 22%,rgba(20,30,30,.7) 42%,rgba(23,35,34,.38) 62%,rgba(23,35,34,.1) 76%,rgba(23,35,34,0) 86%),
  linear-gradient(90deg,rgba(15,15,16,.45) 0%,rgba(15,15,16,.2) 34%,rgba(15,15,16,0) 60%)}
.hero .wrap{position:relative;width:100%;padding-block:0 clamp(64px,10vh,120px);display:grid;gap:1.3rem}
.hero h1{max-width:13em}
.hero__bas{display:flex;flex-wrap:wrap;gap:1rem 2.4rem;align-items:flex-end;justify-content:space-between}
.hero__bas p{max-width:44ch;color:#EFE8DC}
@media (max-width:700px){.hero{min-height:100svh}.hero__media video{object-position:62% 20%}
 .hero__media::after{background:linear-gradient(0deg,#0f0f10 0%,rgba(15,15,16,.95) 10%,rgba(18,24,24,.86) 30%,rgba(20,30,30,.78) 50%,rgba(23,35,34,.4) 68%,rgba(23,35,34,.08) 82%,rgba(23,35,34,0) 90%)}}

/* Praticien */
.praticien{padding-block:clamp(16px,3vw,32px) clamp(48px,7vw,96px)}
.praticien__grille{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(28px,5vw,88px);align-items:center}
.portrait{position:relative;margin:0}
.portrait picture img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;--p:16%;--pv:14%}
.portrait .incrustation{position:absolute;right:-4%;bottom:6%;width:36%;aspect-ratio:4/5;border-radius:var(--r);overflow:hidden;box-shadow:0 18px 40px rgba(0,0,0,.45);background:#1d1c1b}
.portrait .incrustation video{width:100%;height:100%;object-fit:cover}
.titres-pro{display:grid;gap:.15rem;font-family:var(--f-titre);font-size:1.25rem;line-height:1.35;color:var(--clair-2)}
.parcours-court{list-style:none;margin:.6rem 0 0;padding:0;border-top:1px solid rgba(221,211,198,.16)}
.parcours-court li{display:grid;grid-template-columns:4.4rem minmax(0,1fr);gap:1rem;padding:.62rem 0;border-bottom:1px solid rgba(221,211,198,.16);font-size:.95rem}
.parcours-court time{font-family:var(--f-titre);font-size:1.12rem;color:var(--gencive-clair);font-variant-numeric:oldstyle-nums}
@media (max-width:900px){.praticien__grille{grid-template-columns:1fr}.portrait{max-width:520px}.portrait .incrustation{right:2%;width:34%}}

/* Chapitres sombres : texte, grand média sans cadre, légende, explication */
.chapitre{padding-block:clamp(40px,6vw,88px)}
.chapitre .intro{display:grid;gap:1rem;max-width:760px}
.media-grand{margin:clamp(28px,4vw,56px) auto 0;display:grid;gap:.8rem;max-width:1180px}
.media-grand video,.media-grand img{width:100%;height:auto}
.media-grand figcaption{max-width:760px;justify-self:center;text-align:center;padding-inline:var(--gout)}
.suite{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(20px,4vw,64px);margin-top:clamp(28px,4vw,48px);align-items:start}
@media (max-width:820px){.suite{grid-template-columns:1fr}}
.duo{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:clamp(24px,5vw,80px);align-items:center}
.duo.inverse{grid-template-columns:minmax(0,5fr) minmax(0,6fr)}
.duo.inverse > :first-child{order:2}
@media (max-width:860px){.duo,.duo.inverse{grid-template-columns:1fr}.duo.inverse > :first-child{order:0}}
.plan-video{max-width:760px;margin:clamp(24px,4vw,48px) auto 0}
.plan-video video{width:100%;aspect-ratio:1/1;object-fit:cover}
.media-grand video{aspect-ratio:16/9;object-fit:cover}
video[data-src$="perte-osseuse"]{aspect-ratio:4/3}
img{height:auto}
@media (max-height:520px) and (orientation:landscape){.hero,.t-hero{min-height:100svh}.hero h1{font-size:2.1rem}.t-hero .wrap{padding-top:90px}.hero__bas{padding-right:52px}.hero__bas p{font-size:.95rem}.hero .wrap{padding-bottom:28px}}
.etapes{list-style:none;counter-reset:e;margin:0;padding:0}
.etapes li{counter-increment:e;display:grid;grid-template-columns:2.2rem minmax(0,1fr);gap:.8rem;padding:.8rem 0;border-top:1px solid rgba(221,211,198,.16)}
.etapes li::before{content:counter(e);font-family:var(--f-titre);font-size:1.3rem;line-height:1.25;color:var(--gencive-clair)}
.etapes b{font-weight:600;color:var(--ivoire)}
.note{font-size:.92rem;border-left:2px solid var(--gencive-clair);padding:.2rem 0 .2rem 1rem}

/* Santé générale */
.sante{position:relative;overflow:hidden}
.sante__media{position:absolute;inset:0 0 0 36%}
.sante__media video{width:100%;height:100%;object-fit:cover}
.sante__media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#172322 0%,rgba(23,35,34,.8) 12%,rgba(23,35,34,.5) 30%,rgba(23,35,34,.18) 55%,rgba(23,35,34,0) 75%),linear-gradient(0deg,#172322 0%,rgba(23,35,34,.6) 12%,rgba(23,35,34,0) 32%),linear-gradient(180deg,#172322 0%,rgba(23,35,34,.6) 12%,rgba(23,35,34,0) 32%)}
.sante .wrap{position:relative;padding-block:clamp(56px,8vw,120px)}
.sante__texte{max-width:560px;display:grid;gap:1.1rem}
.themes{display:flex;flex-wrap:wrap;gap:.45rem;margin:.4rem 0 0;padding:0;list-style:none}
.themes li{font-size:.85rem;padding:.32rem .7rem;border:1px solid rgba(221,211,198,.3);border-radius:999px}
@media (max-width:760px){.sante__media{position:relative;inset:auto;height:62vw}.sante__media::after{background:linear-gradient(0deg,#172322 0%,rgba(23,35,34,.7) 18%,rgba(23,35,34,0) 50%),linear-gradient(180deg,#172322 0%,rgba(23,35,34,.6) 14%,rgba(23,35,34,0) 40%)}.sante .wrap{padding-top:0}}

/* Sections claires */
.bloc{padding-block:clamp(48px,7vw,104px)}
.illus-multiplie{mix-blend-mode:multiply}
.equip-grille{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(28px,4vw,56px) clamp(20px,3vw,48px);margin-top:2.4rem}
.equip{display:grid;gap:.8rem;align-content:start}
.equip img{width:100%;aspect-ratio:3/2;object-fit:cover}
.equip p{color:var(--taupe-texte)}
@media (max-width:700px){.equip-grille{grid-template-columns:1fr}}

/* Avis Google */
.avis{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:clamp(24px,5vw,80px);align-items:start}
.note-globale{display:grid;gap:.4rem}
.note-globale .chiffre{font-family:var(--f-titre);font-size:calc(4.2rem*var(--t-echelle));line-height:1}
.etoiles{color:#B9822E;letter-spacing:.1em;font-size:1.1rem}
.extraits{display:grid;gap:1.4rem;margin:0;padding:0;list-style:none}
.extraits blockquote{margin:0;font-family:var(--f-titre);font-size:calc(1.3rem*var(--t-echelle));line-height:1.4}
.extraits footer{font-size:.86rem;color:var(--taupe-texte);margin-top:.35rem}
.mention{font-size:.82rem;color:var(--taupe-texte)}
@media (max-width:800px){.avis{grid-template-columns:1fr}}

/* Articles */
.cartes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2vw,28px);margin-top:2rem}
.carte{display:grid;gap:.6rem;text-decoration:none;padding:1.4rem 1.4rem 1.6rem;background:var(--ivoire-2);border-radius:var(--r)}
.carte:hover{background:#E6DDCF}
.carte p{font-size:.95rem;color:var(--taupe-texte)}
.carte .etat{font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:#9A5B4F}
@media (max-width:860px){.cartes{grid-template-columns:1fr}}

/* FAQ (accordéon accessible : réponses présentes dans le HTML) */
.faq{display:grid;max-width:880px}
details.q{border-top:1px solid var(--pierre);padding:1rem 0}
details.q:last-of-type{border-bottom:1px solid var(--pierre)}
details.q summary{cursor:pointer;font-family:var(--f-titre);font-weight:var(--t-poids);font-size:calc(1.3rem*var(--t-echelle));line-height:1.3;list-style:none;display:flex;justify-content:space-between;gap:1rem;align-items:baseline}
details.q summary::-webkit-details-marker{display:none}
details.q summary::after{content:"+";color:var(--gencive);font-family:var(--f-texte);font-size:1.2rem}
details.q[open] summary::after{content:"–"}
details.q .rep{margin-top:.6rem;color:#4E463C;max-width:66ch;display:grid;gap:.6rem}
.sombre details.q{border-color:rgba(221,211,198,.2)}
.sombre details.q .rep{color:#E3DBCF}

/* Accès au cabinet */
.acces-photo{margin:0}
.acces-photo img{width:100%;aspect-ratio:16/9;object-fit:cover;--p:6%;--pv:8%}
.acces-grille{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,5vw,72px);margin-top:clamp(24px,4vw,48px)}
.acces-grille address{font-style:normal;font-size:1.1rem}
.acces-grille dl{margin:0;display:grid;gap:1rem}
.acces-grille dt{font-weight:600}
.acces-grille dd{margin:.2rem 0 0;color:#4E463C}
.carte-zone{position:relative;aspect-ratio:4/3;border-radius:var(--r);overflow:hidden;background:var(--ivoire-2);display:grid;place-items:center;text-align:center;padding:1.5rem}
.carte-zone iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.actions{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:.4rem}
@media (max-width:860px){.acces-grille{grid-template-columns:1fr}}

/* Rendez-vous (jardin en ambiance seulement) */
.rdv{position:relative;color:var(--ivoire);overflow:hidden;background:var(--anthracite)}
.rdv__fond{position:absolute;inset:0}
.rdv__fond img{width:100%;height:100%;object-fit:cover}
.rdv__fond::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg, #f3ede3 0.0%, #f3ede3 5.6%, #f0eae0 11.1%, #eae5db 16.7%, #e0dcd2 22.2%, #d2cfc6 27.8%, #bfbeb6 33.3%, #aaaba4 38.9%, #949690 44.4%, #7c807b 50.0%, #666c67 55.6%, #515955 61.1%, #3f4845 66.7%, #303a38 72.2%, #25302e 77.8%, #1d2928 83.3%, #192524 88.9%, #172322 94.4%, #172322 100.0%);opacity:.0}
.rdv__fond::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,#F3EDE3 0%,rgba(243,237,227,.82) 8%,rgba(243,237,227,.42) 18%,rgba(243,237,227,0) 30%),linear-gradient(90deg,rgba(23,35,34,.88) 0%,rgba(23,35,34,.62) 45%,rgba(23,35,34,.25) 100%),linear-gradient(0deg,#172322 0%,rgba(23,35,34,.7) 14%,rgba(23,35,34,0) 38%)}
.rdv .wrap{position:relative;z-index:2;padding-block:clamp(150px,18vw,260px) clamp(56px,8vw,100px);display:grid;gap:1rem}

/* Bandes sombres dans les pages intérieures */
.bande{padding-block:clamp(24px,4vw,56px)}

/* Pied */
.pied{padding-block:48px calc(48px + env(safe-area-inset-bottom,0px));font-size:.88rem;background:var(--anthracite);color:var(--ivoire)}
.pied .wrap{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem}
.pied a{display:block;text-decoration:none;color:var(--greige);padding:.15rem 0}
.pied a:hover{color:var(--ivoire)}
.note-maquette{grid-column:1/-1;color:var(--greige);border-top:1px solid rgba(221,211,198,.18);padding-top:1.1rem;font-size:.8rem}
.outils-maquette{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:.6rem 1.2rem;align-items:center;font-size:.82rem;color:var(--greige)}
.outils-maquette button{font:inherit;color:var(--ivoire);background:transparent;border:1px solid rgba(221,211,198,.35);border-radius:999px;padding:.35rem .8rem;cursor:pointer}
.outils-maquette button[aria-pressed="true"]{background:var(--ivoire);color:var(--anthracite)}
.seo-demo{grid-column:1/-1;font-size:.78rem;color:var(--greige)}
.seo-demo summary{cursor:pointer}
.seo-demo pre{white-space:pre-wrap;word-break:break-all;background:rgba(0,0,0,.25);padding:.8rem;border-radius:8px;color:#E3DBCF}

/* Bouton pause discret */
.pause{position:fixed;right:14px;bottom:calc(14px + env(safe-area-inset-bottom,0px));z-index:30;width:38px;height:38px;display:grid;place-items:center;color:var(--ivoire);background:rgba(23,35,34,.5);border:1px solid rgba(243,237,227,.35);border-radius:50%;cursor:pointer;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);padding:0}
.pause svg{width:12px;height:12px;fill:currentColor}
.pause .infobulle{position:absolute;right:46px;white-space:nowrap;font:600 .78rem/1 var(--f-texte);background:var(--anthracite);color:var(--ivoire);padding:.45rem .6rem;border-radius:6px;opacity:0;pointer-events:none;transition:opacity .15s}
.pause:hover .infobulle,.pause:focus-visible .infobulle{opacity:1}
.pause[aria-pressed="true"] .i-pause,.pause[aria-pressed="false"] .i-lire{display:none}

/* Pages intérieures */
.t-hero{position:relative;min-height:clamp(520px,82svh,800px);display:flex;align-items:flex-end;color:var(--ivoire);background:var(--anthracite);overflow:hidden}
.t-hero .hero__media::after{background:linear-gradient(0deg,#172322 0%,rgba(23,35,34,.9) 14%,rgba(23,35,34,.66) 42%,rgba(23,35,34,.3) 80%,rgba(23,35,34,.2) 100%)}
.t-hero .wrap{position:relative;width:100%;padding-block:150px 40px;display:grid;gap:1.1rem}
.fil{font-size:.86rem;color:var(--pierre)}
.fil a{text-decoration:none;border-bottom:1px solid rgba(243,237,227,.35)}
.chapo{font-size:clamp(1.08rem,1.6vw,1.26rem);max-width:52ch;color:#EFE8DC}
.en-bref{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem 2rem;margin:0;padding:1.4rem 0;border-top:1px solid var(--pierre);border-bottom:1px solid var(--pierre)}
.en-bref dt{font-weight:600;font-size:.9rem}
.en-bref dd{margin:.2rem 0 0;color:var(--taupe-texte);font-size:.93rem}
@media (max-width:800px){.en-bref{grid-template-columns:1fr 1fr}}
.sequence{list-style:none;margin:0;padding:0;counter-reset:s}
.sequence li{counter-increment:s;display:grid;grid-template-columns:3rem minmax(0,1fr);gap:1rem;padding:1.05rem 0;border-top:1px solid var(--pierre)}
.sequence li::before{content:counter(s);font-family:var(--f-titre);font-size:2rem;line-height:1;color:var(--gencive)}
.sequence h3{font-size:calc(1.3rem*var(--t-echelle));margin-bottom:.2rem}
.lecteur{background:var(--anthracite);color:var(--ivoire);border-radius:var(--r);overflow:hidden;max-width:1000px;margin-inline:auto}
.lecteur__ecran{position:relative;aspect-ratio:16/9;background:#000}
.lecteur__ecran video{width:100%;height:100%;object-fit:contain;background:#000}
.lecteur__voile{position:absolute;inset:0;display:grid;place-items:center;background:center/cover no-repeat}
.lecteur__voile::before{content:"";position:absolute;inset:0;background:rgba(23,35,34,.4)}
.bouton-lire{position:relative;display:flex;align-items:center;gap:.7rem;font:600 1rem/1 var(--f-texte);color:var(--anthracite);background:var(--ivoire);border:0;padding:.95rem 1.3rem;border-radius:999px;cursor:pointer}
.bouton-lire svg{width:14px;height:14px;fill:currentColor}
.lecteur__etat{position:absolute;inset:auto 0 0 0;padding:.9rem 1rem;font-size:.88rem;background:rgba(23,35,34,.92);margin:0}
.lecteur__etat[data-type="erreur"]{border-top:2px solid var(--gencive-clair)}
.lecteur__barre{display:flex;flex-wrap:wrap;gap:.6rem 1.2rem;align-items:center;justify-content:space-between;padding:.8rem 1rem;font-size:.82rem;color:var(--greige)}
.lecteur__barre select{font:inherit;background:#22302f;color:var(--ivoire);border:1px solid rgba(221,211,198,.35);padding:.25rem .4rem;border-radius:6px}

/* Essais typographiques */
.essais{display:grid;grid-template-columns:1fr 1fr;gap:clamp(20px,4vw,56px)}
.essai{display:grid;gap:1rem;padding:1.6rem;border-radius:var(--r);background:var(--ivoire-2);align-content:start}
.essai .titre-essai{font-size:clamp(2.2rem,4.4vw,3.6rem);line-height:1.05;margin:0;text-wrap:balance}
.essai .nom-essai{font-size:1.5rem;margin:0}
.essai .meta{font-size:.82rem;color:var(--taupe-texte)}
.essai.A .titre-essai,.essai.A .nom-essai{font-family:"EB Garamond",serif;font-weight:400;letter-spacing:-.008em}
.essai.B .titre-essai{font-family:"Cormorant Garamond",serif;font-weight:400;font-size:clamp(2.45rem,4.9vw,4rem);letter-spacing:-.005em}
.essai.B .nom-essai{font-family:"Cormorant Garamond",serif;font-weight:500;font-size:1.7rem}
.essai.B2 .titre-essai{font-family:"Cormorant Garamond",serif;font-weight:500;font-size:clamp(2.45rem,4.9vw,4rem)}
.diag{font:400 .8rem/1.5 ui-monospace,Menlo,Consolas,monospace;background:#fff;border-radius:8px;padding:.9rem;white-space:pre-wrap;overflow:auto}
@media (max-width:760px){.essais{grid-template-columns:1fr}}



@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* repris de la v2 : dossier et parcours */
/* ---------- Article ---------- */
.a-tete{padding-block:clamp(40px,6vw,80px) clamp(28px,4vw,48px);display:grid;gap:1.1rem;max-width:900px}
.a-meta{display:flex;flex-wrap:wrap;gap:.4rem 1.6rem;font-size:.88rem;color:var(--taupe-texte)}
.a-meta b{color:var(--anthracite);font-weight:600}
.statut{display:inline-block;font:600 .74rem/1 var(--f-texte);letter-spacing:.08em;text-transform:uppercase;padding:.45rem .65rem;border-radius:999px;background:#EAD7CF;color:#7C4337}
.resume{background:var(--ivoire-2);border-radius:var(--r);padding:1.3rem 1.5rem;display:grid;gap:.6rem}
.resume ul{margin:0;padding-left:1.1rem;display:grid;gap:.35rem}
.sommaire ol{margin:.4rem 0 0;padding-left:1.2rem;display:grid;gap:.25rem;font-size:.93rem}
.sommaire a{text-decoration:none;border-bottom:1px solid var(--greige)}
.figure{margin:0;display:grid;gap:.6rem}
.figure .cadre{border-radius:var(--r);overflow:hidden;background:#fff}
.figure.sombre-fond .cadre{background:var(--anthracite)}
.figure img,.figure video{width:100%;height:auto}
.figure figcaption b{color:var(--anthracite)}
.tableau{overflow-x:auto;border-radius:var(--r);border:1px solid var(--pierre)}
table{border-collapse:collapse;width:100%;min-width:760px;font-size:.9rem;line-height:1.45}
th,td{text-align:left;vertical-align:top;padding:.8rem .9rem;border-bottom:1px solid var(--pierre)}
thead th{background:var(--ivoire-2);font-weight:600;font-size:.82rem;letter-spacing:.02em}
tbody th{font-family:var(--f-titre);font-size:1.15rem;line-height:1.3;font-weight:var(--t-poids);width:15%}
td .niv{display:inline-block;font-size:.72rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;padding:.18rem .45rem;border-radius:4px;margin-bottom:.3rem}
.niv.etabli{background:#DCE6DE;color:#24432D}.niv.modere{background:#EFE3C8;color:#6A4C12}.niv.faible{background:#EBDAD3;color:#7C4337}.niv.inconnu{background:#E3E0DC;color:#4C4740}
@media (max-width:700px){table{min-width:0}thead{display:none}tbody tr{display:block;padding:.6rem 0;border-bottom:1px solid var(--pierre)}tbody th,tbody td{display:block;border:0;padding:.35rem .9rem;width:auto}td::before{content:attr(data-label);display:block;font-size:.72rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--taupe)}}
.biblio{margin:0;padding-left:1.4rem;display:grid;gap:.55rem;font-size:.88rem;color:var(--taupe-texte)}
.biblio a{word-break:break-all}
.a-pied{display:grid;gap:.5rem;font-size:.9rem;border-top:1px solid var(--pierre);padding-top:1.2rem;color:var(--taupe-texte)}

/* ---------- Parcours ---------- */
.p-grille{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:clamp(32px,6vw,96px);padding-block:clamp(48px,7vw,100px)}
.p-portrait{position:sticky;top:24px;align-self:start;display:grid;gap:1rem}
.p-portrait img{width:100%;border-radius:var(--r);aspect-ratio:4/5;object-fit:cover}
.frise{list-style:none;margin:0;padding:0;position:relative}
.frise::before{content:"";position:absolute;left:5.1rem;top:.6rem;bottom:.6rem;width:1px;background:var(--pierre)}
.frise li{display:grid;grid-template-columns:4.4rem minmax(0,1fr);gap:1.6rem;padding:.9rem 0;position:relative}
.frise li::after{content:"";position:absolute;left:calc(5.1rem - 4px);top:1.35rem;width:9px;height:9px;border-radius:50%;background:var(--ivoire);border:1.5px solid var(--gencive)}
.frise li.dip::after{background:var(--gencive)}
.frise time{font-family:var(--f-titre);font-size:1.25rem;line-height:1.3;color:var(--gencive);font-variant-numeric:oldstyle-nums;text-align:right}
.frise h3{font-size:1.18rem;font-weight:500}
.frise p{font-size:.92rem;color:var(--taupe-texte)}
.frise .type{font-size:.72rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--taupe)}
@media (max-width:860px){.p-grille{grid-template-columns:1fr}.p-portrait{position:static;max-width:420px}}


.corps{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:clamp(32px,6vw,96px);padding-block:clamp(48px,7vw,100px)}
.corps article{display:grid;gap:clamp(48px,6vw,84px);min-width:0}
.corps section{display:grid;gap:1.05rem}
.corps h2{font-size:calc(clamp(1.9rem,3.4vw,2.8rem)*var(--t-echelle))}
.aside{position:sticky;top:24px;align-self:start;display:grid;gap:.9rem;font-size:.93rem;background:var(--ivoire-2);border-radius:var(--r);padding:1.2rem 1.3rem}
.aside dl{margin:0;display:grid;gap:.7rem}.aside dt{font-weight:600}.aside dd{margin:0;color:var(--taupe-texte)}
.encadre{background:var(--ivoire-2);border-radius:var(--r);padding:1.1rem 1.3rem;font-size:.95rem}
.encadre.attention{border-left:3px solid var(--gencive)}
@media (max-width:900px){.corps{grid-template-columns:1fr}.aside{position:static;order:-1}}

/* ================= v4 : site multipage ================= */
.evitement{position:absolute;left:-9999px;top:8px;z-index:50;background:var(--anthracite);color:var(--ivoire);padding:.6rem 1rem;border-radius:8px}
.evitement:focus{left:8px}
/* En-tête : navigation à sous-menus */
.nav ul{display:flex;gap:1.35rem;list-style:none;margin:0;padding:0}
.nav li{position:relative}
.nav a{display:block}
.nav .sous{position:absolute;left:-1rem;top:100%;min-width:250px;padding:.7rem 1rem;background:rgba(23,35,34,.97);border-radius:12px;box-shadow:0 18px 40px rgba(0,0,0,.35);display:grid;gap:.1rem;opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .2s,transform .2s,visibility .2s}
.nav .sous a{padding:.45rem 0;color:var(--ivoire);border:0;font-size:.92rem}
.nav .sous a:hover{color:var(--gencive-clair)}
.nav .a-sous:hover .sous,.nav .a-sous:focus-within .sous{opacity:1;visibility:visible;transform:none}
.langue{font:600 .78rem/1 var(--f-texte);letter-spacing:.08em;text-decoration:none;padding:.5rem .55rem;border:1px solid rgba(243,237,227,.35);border-radius:999px}
.menu-mobile{display:none;position:relative}
.menu-mobile summary{list-style:none;cursor:pointer;width:42px;height:42px;display:grid;place-content:center;gap:5px;border:1px solid currentColor;border-radius:50%}
.menu-mobile summary::-webkit-details-marker{display:none}
.menu-mobile summary span{display:block;width:16px;height:1.5px;background:currentColor}
.menu-mobile .panneau{position:fixed;inset:72px 12px auto 12px;max-height:calc(100svh - 90px);overflow:auto;background:var(--anthracite);color:var(--ivoire);border-radius:16px;padding:1rem 1.2rem 1.4rem;display:grid;gap:.15rem;box-shadow:0 24px 60px rgba(0,0,0,.45)}
.menu-mobile .panneau a{text-decoration:none;padding:.5rem 0;color:#E3DBCF}
.menu-mobile .m-titre{margin-top:.7rem;font:600 .75rem/1 var(--f-texte);letter-spacing:.12em;text-transform:uppercase;color:var(--greige)}
.menu-mobile .m-top{font-family:var(--f-titre);font-size:1.35rem;color:var(--ivoire)}
.menu-mobile .bouton{margin-top:1rem;justify-content:center;background:var(--ivoire);color:var(--anthracite)}
@media (max-width:1180px){.nav{display:none}.menu-mobile{display:block}}
@media (max-width:560px){.tel{display:none}}

/* Héros */
.hero__qui{color:var(--pierre)}
.hero .actions{display:flex;flex-wrap:wrap;gap:.7rem}
.t-hero h1{max-width:15em}
.t-hero .hero__media img,.t-hero .hero__media video{width:100%;height:100%;object-fit:cover}
.t-hero--portrait .hero__media img{object-position:70% 22%}
.t-hero--portrait .hero__media::after{background:linear-gradient(0deg,#172322 0%,rgba(23,35,34,.92) 16%,rgba(23,35,34,.55) 44%,rgba(23,35,34,.1) 80%),linear-gradient(90deg,rgba(15,15,16,.75) 0%,rgba(15,15,16,.35) 40%,rgba(15,15,16,0) 65%)}

/* Corps des pages */
.tete-page{display:grid;gap:1.4rem;padding-top:clamp(8px,2vw,24px)}
.sec{display:grid;gap:1.05rem;padding-block:clamp(28px,4vw,48px) 0}
.sec.sec-suite{padding-top:0}
.etroit + .etroit .sec{padding-top:clamp(36px,5vw,64px)}
.sec h2{font-size:calc(clamp(1.9rem,3.4vw,2.7rem)*var(--t-echelle));margin-bottom:.2rem}
.sec p,.sec li{max-width:68ch}
.sec a:not(.bouton){font-weight:600;text-decoration-color:var(--gencive)}
.liste{margin:0;padding-left:1.2rem;display:grid;gap:.45rem}
.liste li::marker{color:var(--gencive)}
.appel{font-size:.7em;line-height:0;margin-left:.1em}
.appel a{text-decoration:none;font-weight:600;color:#8E4F44}
.meta-article{border-top:1px solid var(--pierre);border-bottom:1px solid var(--pierre);padding:.9rem 0;font-size:.9rem;color:var(--taupe-texte);display:grid;gap:.3rem}
.meta-article p:first-child{display:flex;flex-wrap:wrap;gap:.3rem 1.4rem}
.meta-article b{color:var(--anthracite);font-weight:600}
.meta-article .theme{font-size:.82rem;letter-spacing:.04em}
.resume{background:var(--ivoire-2);border-radius:var(--r);padding:1.2rem 1.4rem}
.resume ul{margin:.6rem 0 0;padding-left:1.2rem;display:grid;gap:.45rem}
.sommaire ol{margin:.6rem 0 0;padding-left:1.4rem;display:grid;gap:.3rem;columns:2;column-gap:2rem;display:block}
.sommaire li{break-inside:avoid;margin-bottom:.3rem}
.sommaire a{text-decoration:none;border-bottom:1px solid var(--pierre)}
@media (max-width:700px){.sommaire ol{columns:1}}
.tableau{overflow-x:auto;-webkit-overflow-scrolling:touch;margin-block:.4rem}
.tableau table{border-collapse:collapse;width:100%;min-width:560px;font-size:.92rem}
.tableau th{text-align:left;font-weight:600;padding:.6rem .7rem;border-bottom:2px solid var(--pierre);vertical-align:bottom}
.tableau td{padding:.6rem .7rem;border-bottom:1px solid var(--pierre);vertical-align:top}
.tableau tr:nth-child(even) td{background:rgba(236,229,217,.55)}

/* Médias dans le texte clair */
.media-texte{margin:.8rem auto;display:grid;gap:.6rem;width:100%}
.media-texte img,.media-texte video{width:100%;height:auto}
.st-photo img{--p:3.5%;--pv:4.5%}
.plume-clair{--p:7%;--pv:9%}
.media-texte figcaption{text-align:center;max-width:62ch;justify-self:center}
.bande{padding-block:clamp(8px,2vw,24px)}
.bande .media-grand{margin:0 auto}
.bande .lecteur{margin-inline:auto}
.lecteur{width:100%}

/* Rubriques : cartes illustrées */
.bloc-cartes{padding-block:clamp(28px,4vw,56px) 0}
.cartes{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:1rem}
.carte{padding:0;overflow:hidden;align-content:start;gap:0}
.carte__img{aspect-ratio:16/9;overflow:hidden;background:var(--pierre)}
.carte__img img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}
.carte:hover .carte__img img{transform:scale(1.035)}
.carte__texte{display:grid;gap:.45rem;padding:1.1rem 1.25rem 1.4rem}
.carte h3{font-size:calc(1.35rem*var(--t-echelle))}
@media (max-width:980px){.cartes{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.cartes{grid-template-columns:1fr}}
.themes-nav{display:flex;flex-wrap:wrap;gap:.5rem}
.themes-nav a{text-decoration:none;font-size:.9rem;padding:.4rem .85rem;border:1px solid var(--pierre);border-radius:999px}
.theme-bloc{scroll-margin-top:20px}

/* Références, liens, validation */
.references{margin:0;padding-left:1.6rem;display:grid;gap:.55rem;font-size:.86rem;color:#4E463C}
.references li{scroll-margin-top:24px}
.references li:target{background:#EFE2CC;border-radius:6px}
.references a{white-space:nowrap}
.a-lire{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center;padding-block:clamp(28px,4vw,48px) 0}
.a-lire .sur-titre{width:100%}
.a-lire a{text-decoration:none;padding:.55rem 1rem;border-radius:999px;background:var(--ivoire-2);font-weight:600;font-size:.92rem}
.a-lire a:hover{background:#E6DDCF}
.valider{margin-top:clamp(28px,4vw,48px);border:1px dashed #B9822E;border-radius:var(--r);padding:.9rem 1.1rem;font-size:.88rem;background:#FBF4E6}
.valider summary{cursor:pointer;font-weight:600;color:#7A5418}
.valider ul{padding-left:1.2rem;display:grid;gap:.35rem}

/* Parcours */
.diplomes{list-style:none;margin:0;padding:0;border-top:1px solid var(--pierre)}
.diplomes li{display:grid;grid-template-columns:4.6rem minmax(0,1fr);gap:1rem;padding:.85rem 0;border-bottom:1px solid var(--pierre)}
.diplomes time{font-family:var(--f-titre);font-size:1.45rem;line-height:1.1;color:var(--gencive);font-variant-numeric:oldstyle-nums}
.diplomes div{display:grid;gap:.1rem}
.diplomes .nature{font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--taupe-texte)}
.diplomes b{font-family:var(--f-titre);font-weight:var(--t-poids);font-size:calc(1.3rem*var(--t-echelle));line-height:1.25}
.diplomes .etab{font-size:.92rem;color:#4E463C}
.formations b{font-family:var(--f-texte);font-weight:600;font-size:1rem}

/* Accueil : praticien */
.parcours-court li span{color:#E3DBCF}
.liens-prat{display:flex;flex-wrap:wrap;gap:.8rem 1.6rem;align-items:baseline;margin-top:.4rem}
.note-google{font-size:.82rem;color:var(--greige);text-decoration:none;border-bottom:1px dotted rgba(185,174,159,.6)}
.pied .note-google{display:inline}
.liens-liste{list-style:none;margin:.2rem 0 0;padding:0;display:grid;gap:.15rem}
.liens-liste a{display:inline-block;padding:.35rem 0;text-decoration:none;border-bottom:1px solid rgba(216,167,155,.6);font-weight:600}
.liens-liste a::after{content:" →";color:var(--gencive-clair)}
.themes a{text-decoration:none}
.suite-lien{margin-top:1.6rem;text-align:center}

/* Accès, carte, transports, contact */
.adresse-bloc{display:grid;gap:1rem}
.adresse-bloc address{font-style:normal;font-size:1.1rem;line-height:1.55}
.acces-resume{margin:0;display:grid;gap:.75rem}
.acces-resume dt{font-weight:600}
.acces-resume dd{margin:.15rem 0 0;color:#4E463C}
.carte-zone{position:relative;min-height:380px;width:100%;min-width:0;border-radius:var(--r);overflow:hidden;background:#E4DCCD;color:#C9BBA6;display:grid;place-items:center;text-align:center;padding:1.5rem;box-shadow:inset 0 0 0 1px rgba(147,135,119,.25)}
.carte-fond{position:absolute;inset:0}
.carte-fond svg{width:100%;height:100%}
.carte-contenu{position:relative;display:grid;gap:.6rem;justify-items:center;color:var(--anthracite);max-width:40ch}
.carte-titre{display:flex;align-items:center;gap:.5rem;font-family:var(--f-titre);font-size:calc(1.6rem*var(--t-echelle))}
.carte-titre svg{width:30px;height:30px;fill:#B5473A}
.carte-zone .actions{justify-content:center}
.carte-zone iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.carte-zone .mention{font-size:.8rem;color:var(--taupe-texte)}
.transports{list-style:none;margin:0;padding:0;display:grid;gap:0;border-top:1px solid var(--pierre)}
.transports li{display:grid;grid-template-columns:4.2rem minmax(0,1fr);gap:1rem;padding:1rem 0;border-bottom:1px solid var(--pierre);align-items:start}
.transports p{margin-top:.15rem;color:#4E463C}
.badge{display:inline-grid;place-items:center;min-width:2.6rem;height:2.1rem;padding:0 .5rem;border-radius:8px;font:700 .82rem/1 var(--f-texte);color:#fff;background:#4E5B5A;justify-self:start}
.b-m3{background:#8D8B2E;border-radius:50%;width:2.3rem;min-width:0;height:2.3rem}
.b-rerc{background:#E3B505;color:#1d1d1b}
.b-rere{background:#BF4C93}
.b-94,.b-275{background:#3D7564}
.b-l{background:#8E5E9B}
.contact{display:grid;gap:1.4rem}
.contact__actions{display:flex;flex-wrap:wrap;gap:.7rem}
.horaires{border-collapse:collapse;min-width:280px;font-size:1rem}
.horaires caption{text-align:left;font-weight:600;padding-bottom:.5rem}
.horaires th{text-align:left;font-weight:400;padding:.45rem 2rem .45rem 0;border-bottom:1px solid var(--pierre)}
.horaires td{padding:.45rem 0;border-bottom:1px solid var(--pierre);font-variant-numeric:tabular-nums}

/* Bande rendez-vous */
.rdv{background:var(--anthracite)}
.rdv__grille{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1.6rem 3rem;align-items:end;padding-block:clamp(24px,4vw,56px) clamp(56px,8vw,100px)}
.rdv .actions{display:flex;flex-wrap:wrap;gap:.7rem}
.rdv .bouton.contour{color:var(--ivoire)}
@media (max-width:860px){.rdv__grille{grid-template-columns:1fr}}
.pied-nom{font-family:var(--f-titre);font-weight:var(--nom-poids);font-size:1.3rem}
.pied p{color:var(--greige);margin-top:.4rem}
.pied a.inline{display:inline;color:var(--ivoire)}
.outils-maquette a{display:inline;color:var(--ivoire)}
.clair-haut{padding-top:110px;background:var(--ivoire)}

/* grands visuels : photos et animations claires débordent la colonne de texte */
.media-texte.st-photo,.media-texte.st-clair{width:min(1120px,calc(100vw - 2*var(--gout)));max-width:none!important;margin-inline:calc(50% - min(560px,calc(50vw - var(--gout))))}
@media (min-width:1000px){.t-hero--portrait .hero__media{left:38%}.t-hero--portrait .hero__media img{object-position:50% 18%}
 .t-hero--portrait .hero__media::after{background:linear-gradient(90deg,#172322 0%,rgba(23,35,34,.85) 12%,rgba(23,35,34,.25) 40%,rgba(23,35,34,0) 70%),linear-gradient(0deg,#172322 0%,rgba(23,35,34,.7) 18%,rgba(23,35,34,0) 45%)}
 .t-hero--portrait{background:#101012}}

@media (min-width:861px){.carte-zone{aspect-ratio:4/3}}

.galerie{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(14px,2vw,28px);width:min(1120px,calc(100vw - 2*var(--gout)));margin-inline:calc(50% - min(560px,calc(50vw - var(--gout))));margin-block:.6rem}
.galerie figure{margin:0;display:grid;gap:.4rem}
.galerie img{width:100%;aspect-ratio:3/2;object-fit:cover}
@media (max-width:640px){.galerie{grid-template-columns:1fr}}

/* ================= v5 : médias complets, sans fondus latéraux ni recadrage ================= */
/* 1. Plus aucun fondu latéral : le masque ne travaille plus que le haut et le bas, sur une faible hauteur */
.plume,.plume-photo,.plume-doux,.plume-clair,.plume-x{--p:0px!important}
.plume{--pv:4%}
.plume-photo{--pv:2.5%}
.plume-ovale{-webkit-mask-image:none!important;mask-image:none!important}
.sans-masque{-webkit-mask-image:none!important;mask-image:none!important}

/* 2. Rapport largeur/hauteur d'origine : aucun recadrage automatique des médias de contenu */
.media-grand video,.media-grand img,.media-texte video,.media-texte img,.plan-video video,.equip img,.acces-photo img,.galerie img,.bande video,.bande img{
  aspect-ratio:auto!important;object-fit:contain!important;height:auto!important;width:100%}
video[data-src$="perte-osseuse"]{aspect-ratio:auto}
.plan-video{max-width:min(860px,100%)}

/* 3. Grandes largeurs : jusqu'à 1280 px sur ordinateur, pleine largeur d'écran sur téléphone */
.bande .media-grand{max-width:min(1280px,100%)!important;margin-inline:auto}
.bande .media-grand.portrait-media{max-width:min(860px,100%)!important}
.media-grand,.media-texte{border-radius:0}
.media-texte.st-photo,.media-texte.st-clair,.media-texte.st-ovale{width:min(1280px,calc(100vw - 2*var(--gout)));max-width:none!important;margin-inline:calc(50% - min(640px,calc(50vw - var(--gout))))}
.media-texte.st-ovale img{border-radius:10px}
.acces-photo{max-width:1280px;margin-inline:auto}
@media (max-width:700px){
  .bande{padding-inline:0}
  .bande .media-grand,.media-texte.st-photo,.media-texte.st-clair,.media-texte.st-ovale,.galerie,.acces-photo,.chapitre .media-grand,.plan-video{
    width:100vw!important;max-width:100vw!important;margin-inline:calc(50% - 50vw)!important}
  .bande figcaption,.media-texte figcaption,.chapitre figcaption,.galerie figcaption,.acces-photo figcaption{padding-inline:var(--gout)}
  .equip img{width:100vw;max-width:100vw;margin-inline:calc(-1*var(--gout))}
}
.galerie{align-items:start}

/* 4. Accueil : chapitres avec le média en grand sous le texte (au lieu d'une demi-colonne) */
.chapitre-grand .intro{max-width:760px}
.chapitre-grand .media-grand{margin-top:clamp(24px,4vw,48px)}
.chapitre-grand .liens-liste{margin-top:.6rem}

/* ================= v5 : Parcours universitaire ================= */
.pu{padding-block:clamp(56px,8vw,112px)}
.pu__tete{display:grid;gap:1rem;max-width:760px;margin-bottom:clamp(36px,5vw,64px)}
.pu__grille{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(40px,5vw,72px) clamp(32px,6vw,96px)}
@media (max-width:820px){.pu__grille{grid-template-columns:1fr}}
.pu__domaine h3{font-family:var(--f-texte);font-weight:600;font-size:.76rem;letter-spacing:.16em;text-transform:uppercase;color:var(--taupe-texte);margin-bottom:1.1rem}
.sombre .pu__domaine h3{color:var(--greige)}
.pu__liste{list-style:none;margin:0;padding:0;display:grid;gap:1.6rem}
.pu__titre{display:block;font-family:var(--f-titre);font-weight:400;font-size:calc(clamp(1.32rem,2vw,1.62rem)*var(--t-echelle));line-height:1.22;letter-spacing:-.003em;text-wrap:balance}
.pu__meta{display:block;margin-top:.35rem;font-size:.9rem;color:var(--taupe-texte);letter-spacing:.01em}
.sombre .pu__meta{color:#B8AFA2}
.pu__meta time{font-variant-numeric:lining-nums tabular-nums}
.pu__note{margin-top:clamp(32px,4vw,56px);font-size:.88rem;color:var(--taupe-texte);max-width:70ch}
.pu__liens{margin-top:1.4rem;display:flex;flex-wrap:wrap;gap:.8rem 1.6rem}
.pu-formations .pu__titre{font-size:calc(clamp(1.12rem,1.6vw,1.3rem)*var(--t-echelle))}
.formation-note{border-top:1px solid var(--pierre);border-bottom:1px solid var(--pierre);padding:1.2rem 0;margin-top:.6rem;display:grid;gap:.5rem}
.formation-note .sur-titre{margin:0}
.formation-note p{font-size:.98rem}

/* ================= v5 : blog ================= */
.auteur{display:grid;grid-template-columns:auto minmax(0,1fr);gap:1.1rem;align-items:center;padding:1.2rem 0;border-top:1px solid var(--pierre);border-bottom:1px solid var(--pierre)}
.auteur img{width:72px;height:72px;border-radius:50%;object-fit:cover}
.auteur p{font-size:.93rem;color:#4E463C}
.auteur b{font-family:var(--f-titre);font-weight:500;font-size:1.2rem;color:var(--anthracite)}
.cat-etiquette{display:inline-block;font:600 .74rem/1 var(--f-texte);letter-spacing:.12em;text-transform:uppercase;color:#8E4F44}
.parcours-patient{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;margin:0;padding:0;list-style:none;border-top:1px solid var(--pierre)}
.parcours-patient li{border-bottom:1px solid var(--pierre);padding:1rem .9rem 1rem 0}
.parcours-patient span{display:block;font-size:.74rem;letter-spacing:.12em;text-transform:uppercase;color:var(--taupe-texte)}
.parcours-patient a{font-family:var(--f-titre);font-size:calc(1.15rem*var(--t-echelle));text-decoration:none}
.parcours-patient a[aria-current]{color:#8E4F44}
@media (max-width:860px){.parcours-patient{grid-template-columns:1fr}}
.transcription{white-space:normal;max-height:none}
.transcription p{margin:0 0 .6rem}
/* hauteur maîtrisée : un média très haut ne dépasse pas 82 % de l'écran ; largeur déduite de ses proportions */
.media-grand video,.media-grand img,.plan-video video{width:auto!important;max-width:100%!important;max-height:82vh;margin-inline:auto;display:block}
.media-texte video,.media-texte img{max-height:86vh;width:auto!important;max-width:100%!important;margin-inline:auto;display:block}
.media-grand figcaption{max-width:760px}
/* Parcours : grille large, hors de la colonne de texte */
.sec .pu__grille{width:min(1120px,calc(100vw - 2*var(--gout)));margin-inline:calc(50% - min(560px,calc(50vw - var(--gout))));margin-block:.8rem 1.4rem}
.pu__liste .pu__meta + .pu__meta{font-size:.78rem;opacity:.85;margin-top:.2rem}
/* Héro du parcours : portrait sur toute la largeur, sans bloc rectangulaire */
@media (min-width:1000px){.t-hero--portrait .hero__media{left:0!important}.t-hero--portrait .hero__media img{object-position:78% 20%!important}
 .t-hero--portrait .hero__media::after{background:linear-gradient(90deg,#101012 0%,rgba(16,16,18,.92) 28%,rgba(16,16,18,.45) 52%,rgba(16,16,18,0) 72%),linear-gradient(0deg,#172322 0%,rgba(23,35,34,.75) 16%,rgba(23,35,34,0) 42%)!important}}
/* Intitulés de diplômes en EB Garamond (Garamond au sens strict) : accents circonflexes plus sobres que ceux de Cormorant */
.pu__titre{font-family:"EB Garamond",Garamond,"Times New Roman",serif!important;font-weight:400!important;font-size:calc(clamp(1.18rem,1.75vw,1.42rem)*var(--t-echelle))!important;line-height:1.3}
.pu-formations .pu__titre{font-size:calc(clamp(1.05rem,1.45vw,1.2rem)*var(--t-echelle))!important}
/* Domaines du parcours : initiales seulement (pas de capitales intégrales), en cohérence avec les intitulés */
.pu__domaine h3{text-transform:none!important;letter-spacing:0!important;font-family:"EB Garamond",Garamond,serif!important;font-style:normal;font-weight:400!important;font-size:1.08rem!important;color:var(--taupe-texte);border-bottom:1px solid var(--pierre);padding-bottom:.45rem;margin-bottom:1.3rem}
.sombre .pu__domaine h3{color:var(--greige)}
/* Parcours : l'intertitre de la liste des diplômes s'aligne sur la grille élargie */
.sec:has(> .pu__grille) > h2{width:min(1120px,calc(100vw - 2*var(--gout)));margin-inline:calc(50% - min(560px,calc(50vw - var(--gout))))}
.sec:has(> .pu__grille) > h2,.pu__tete h2{font-family:"EB Garamond",Garamond,serif;font-weight:400}

/* ================= v6 : sobriété de la première vue ================= */
.hero--sobre{align-items:flex-end}
.hero--sobre .hero__texte{padding-bottom:clamp(56px,11vh,120px);display:grid;gap:1.1rem;max-width:min(1200px,100%)}
.hero--sobre h1{font-family:"EB Garamond",Garamond,serif;font-weight:400;font-size:calc(clamp(2.4rem,5.6vw,4.6rem)*var(--t-echelle));line-height:1.04;letter-spacing:-.012em;max-width:14ch;text-wrap:balance}
.hero__chapo{max-width:46ch;font-size:clamp(1rem,1.25vw,1.12rem);line-height:1.6;color:#EDE6DA}
.hero__actions{display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.8rem;margin-top:.6rem}
/* Bouton fin : contour d'un pixel, graisse moyenne, sans aplat blanc */
.bouton-fin{display:inline-flex;align-items:center;min-height:46px;padding:.7rem 1.35rem;border:1px solid rgba(243,237,227,.72);border-radius:999px;color:var(--ivoire);font:500 .96rem/1 var(--f-texte);letter-spacing:.015em;text-decoration:none;background:rgba(16,16,18,.18);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);transition:background .2s,border-color .2s}
.bouton-fin:hover,.bouton-fin:focus-visible{background:rgba(243,237,227,.12);border-color:var(--ivoire)}
.lien-discret{color:#E4DCCF;font:400 .95rem/1.2 var(--f-texte);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.3em;text-decoration-color:rgba(228,220,207,.45)}
.lien-discret:hover{text-decoration-color:currentColor}
/* boutons « Prendre rendez-vous » ailleurs : même finesse */
.bande-rdv .bouton,.entete .bouton{font-weight:500}
@media (max-width:700px){.hero--sobre .hero__texte{padding-bottom:64px}.hero__chapo{font-size:1rem}.bouton-fin{min-height:48px}}

/* ================= v6 : parcours universitaire, esprit carte de visite ================= */
.carte-pu{padding-block:clamp(64px,9vw,128px)}
.carte-pu h2{font-family:"EB Garamond",Garamond,serif;font-weight:400;font-size:calc(clamp(1.9rem,3.2vw,2.6rem)*var(--t-echelle));margin-bottom:clamp(32px,4vw,56px)}
.carte-pu__grille{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(36px,5vw,80px)}
@media (max-width:900px){.carte-pu__grille{grid-template-columns:1fr;gap:40px}}
.carte-pu__groupe h3{font-family:"EB Garamond",Garamond,serif;font-style:normal;font-weight:400;font-size:1.05rem;color:var(--taupe-texte);padding-bottom:.55rem;border-bottom:1px solid var(--pierre);margin-bottom:1.1rem}
.carte-pu__groupe ul{list-style:none;margin:0;padding:0;display:grid;gap:1rem}
.carte-pu__groupe li{font-family:"EB Garamond",Garamond,serif;font-size:calc(clamp(1.08rem,1.4vw,1.22rem)*var(--t-echelle));line-height:1.32;color:var(--anthracite);text-wrap:balance}
.carte-pu__lien{margin-top:clamp(32px,4vw,52px)}

/* ================= v6 : l'approche ================= */
.approche{padding-block:clamp(40px,6vw,96px) clamp(64px,9vw,128px)}
.approche__tete{max-width:760px;display:grid;gap:1rem}
.approche__tete h2{font-family:"EB Garamond",Garamond,serif;font-weight:400;font-size:calc(clamp(1.9rem,3.2vw,2.6rem)*var(--t-echelle));line-height:1.12}
.approche__video{margin:clamp(28px,4vw,52px) auto 0;max-width:1100px}
.approche__video video,.video-lecture{display:block;width:100%;height:auto;aspect-ratio:16/9;background:#E9D9D6;border-radius:4px}
.approche__video figcaption{margin-top:.7rem;font-size:.9rem;color:var(--taupe-texte);max-width:70ch}
.approche__etapes{list-style:none;counter-reset:etape;margin:clamp(40px,5vw,72px) 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(28px,3.5vw,56px) clamp(28px,4vw,64px)}
@media (max-width:980px){.approche__etapes{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.approche__etapes{grid-template-columns:1fr;gap:30px}}
.approche__etapes li{counter-increment:etape;display:grid;gap:.45rem;align-content:start;padding-top:1rem;border-top:1px solid var(--pierre)}
.approche__etapes h3{font-family:"EB Garamond",Garamond,serif;font-weight:400;font-size:calc(1.3rem*var(--t-echelle));line-height:1.2}
.approche__etapes h3::before{content:counter(etape) ". ";color:#8E4F44}
.approche__etapes p{font-size:.97rem;line-height:1.6;color:#4E463C}
.lien-fin{font-size:.88rem;color:#6B3D34;text-decoration:underline;text-underline-offset:.25em;text-decoration-thickness:1px;justify-self:start}
@media (max-width:700px){.approche__video{width:100vw;max-width:100vw;margin-inline:calc(50% - 50vw)}.approche__video figcaption{padding-inline:var(--gout)}.approche__video video{border-radius:0}}

/* ================= v6 : au cabinet (présence humaine d'abord) ================= */
.cabinet-v6 .wrap{display:grid;gap:1.2rem}
.cabinet-v6 h2{font-family:"EB Garamond",Garamond,serif;font-weight:400;font-size:calc(clamp(1.9rem,3.2vw,2.6rem)*var(--t-echelle))}
.cabinet-v6 figure img{display:block;width:100%!important;max-width:100%!important;height:auto!important;max-height:none!important;border-radius:3px}
.cabinet-v6 figcaption{margin-top:.55rem;font-size:.9rem;color:var(--taupe-texte)}
.cabinet-v6__grand{margin-top:clamp(12px,2vw,24px)}
.cabinet-v6__duo{display:grid;grid-template-columns:1fr 1fr;gap:clamp(16px,2.4vw,32px);margin-top:clamp(20px,3vw,40px)}
.cabinet-v6__mini{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(12px,1.8vw,24px);margin-top:clamp(20px,3vw,40px)}
.cabinet-v6__mini figcaption{font-size:.82rem}
@media (max-width:700px){.cabinet-v6__duo{grid-template-columns:1fr}.cabinet-v6__mini{grid-template-columns:1fr 1fr}.cabinet-v6__mini figure:last-child{display:none}
 .cabinet-v6__grand{width:100vw;margin-inline:calc(50% - 50vw)}.cabinet-v6__grand img{border-radius:0}.cabinet-v6__grand figcaption{padding-inline:var(--gout)}}

/* ================= v6 : Mon Cabinet Dentaire en fin d'accueil ================= */
.mcd{padding-block:clamp(64px,9vw,128px)}
.mcd .wrap{display:grid;gap:clamp(20px,3vw,36px)}
.mcd h2{font-family:"EB Garamond",Garamond,serif;font-weight:400;font-size:calc(clamp(1.9rem,3.2vw,2.6rem)*var(--t-echelle))}
.mcd__photo img{display:block;width:100%!important;max-width:100%!important;height:auto!important;max-height:none!important;border-radius:3px}
.mcd__photo figcaption{margin-top:.55rem;font-size:.9rem;color:var(--taupe-texte)}
.mcd__texte{display:grid;gap:1rem;max-width:760px}
@media (max-width:700px){.mcd__photo{width:100vw;margin-inline:calc(50% - 50vw)}.mcd__photo img{border-radius:0}.mcd__photo figcaption{padding-inline:var(--gout)}}

/* ================= v6 : tarifs ================= */
.tarifs-table td:last-child{white-space:nowrap;color:var(--taupe-texte)}
/* Tous les boutons : graisse moyenne, contour fin ; plus d'aplat blanc massif */
.bouton{font-weight:500!important;padding:.78rem 1.25rem;letter-spacing:.01em}
.rdv .bouton:not(.contour){background:transparent!important;border:1px solid rgba(243,237,227,.75)!important;color:var(--ivoire)!important}
.rdv .bouton.contour{border-color:rgba(243,237,227,.4)}
.cabinet-v6 figure,.mcd figure,.approche figure{margin:0}
.cabinet-v6__grand,.mcd__photo,.approche__video{margin-top:clamp(12px,2vw,24px)}
.cabinet-v6 .wrap>*,.mcd .wrap>*{min-width:0}
@media (max-width:700px){
 .approche__video,.cabinet-v6__grand,.mcd__photo{width:100vw!important;max-width:100vw!important;margin-left:calc(50% - 50vw)!important;margin-right:0!important}
 .cabinet-v6 .wrap,.mcd .wrap{display:block}
 .cabinet-v6 .wrap>*+*,.mcd .wrap>*+*{margin-top:1.2rem}
}
.approche figure.approche__video{margin-top:clamp(28px,4vw,52px)!important}
.sec .video-lecture-fig{margin:1.6rem 0}
.sec .video-lecture-fig figcaption{margin-top:.55rem;font-size:.9rem;color:var(--taupe-texte)}
@media (max-width:700px){.sec .video-lecture-fig{width:100vw;margin-left:calc(50% - 50vw)}.sec .video-lecture-fig video{border-radius:0}.sec .video-lecture-fig figcaption{padding-inline:var(--gout)}}
.tarifs{margin:1.2rem 0;border-top:1px solid var(--pierre)}
.tarifs div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.3rem 1.5rem;padding:.85rem 0;border-bottom:1px solid var(--pierre);align-items:baseline}
.tarifs dt{font-family:"EB Garamond",Garamond,serif;font-size:1.12rem;line-height:1.3}
.tarifs dd{margin:0;font-size:.9rem;color:var(--taupe-texte);white-space:nowrap}
@media (max-width:520px){.tarifs div{grid-template-columns:1fr}.tarifs dd{white-space:normal}}

/* ================= v7 : chronologie surfaçage → laser ================= */
.chrono{display:grid;gap:clamp(18px,2.6vw,30px);margin-top:clamp(36px,5vw,64px)}
.chrono__etape{max-width:760px;display:grid;gap:.5rem}
.chrono__etape + .demo{margin-top:-.2rem}
.demo + .chrono__etape{margin-top:clamp(20px,3vw,40px)}
.chrono__num{font:500 .82rem/1.2 var(--f-texte);letter-spacing:.06em;color:#8E4F44}
.chrono h3{font-family:"EB Garamond",Garamond,serif;font-weight:400;font-size:calc(clamp(1.5rem,2.4vw,1.9rem)*var(--t-echelle))}
.demo{margin:0;max-width:1100px}
.demo__cadre{position:relative}
.demo__cadre video{display:block;width:100%!important;max-width:100%!important;height:auto!important;max-height:none!important;aspect-ratio:16/9!important;object-fit:contain!important}
.demo figcaption{margin-top:.6rem;font-size:.9rem;color:var(--taupe-texte);max-width:70ch}
.lire-demo{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:56px;height:56px;border-radius:50%;border:1px solid rgba(255,255,255,.8);background:rgba(20,20,22,.35);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:grid;place-items:center;cursor:pointer;color:#fff}
.lire-demo svg{width:16px;height:16px;fill:currentColor;margin-left:3px}
.lire-demo[hidden]{display:none}
.approche__autour{font-family:"EB Garamond",Garamond,serif;font-style:normal;font-weight:400;font-size:1.1rem;color:var(--taupe-texte);margin-top:clamp(48px,6vw,80px)}
.approche__autour + .approche__etapes{margin-top:1.2rem}
@media (max-width:700px){.demo{width:100vw;margin-left:calc(50% - 50vw)}.demo figcaption{padding-inline:var(--gout)}}
/* fondus légers en haut et en bas seulement */
.demo__video.plume{-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 5%,#000 95%,transparent 100%)!important;mask-image:linear-gradient(180deg,transparent 0,#000 5%,#000 95%,transparent 100%)!important}

/* ================= v7 : diplômes en deux groupes ================= */
.carte-pu--2 .carte-pu__grille{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}
@media (max-width:900px){.carte-pu--2 .carte-pu__grille{grid-template-columns:1fr}}

/* ================= v7 : cadrage de la vidéo d'accueil ================= */
/* Ordinateur : le texte passe à droite, le visage (à gauche dans les trois séquences) reste dégagé */
@media (min-width:901px){
 .hero--sobre .hero__texte{margin-left:auto;margin-right:0;max-width:520px;padding-right:clamp(24px,4vw,72px)}
 .hero--sobre .hero__media video{object-position:30% 30%!important}
 .hero--sobre .hero__media::after{content:"";position:absolute;inset:0;background:linear-gradient(270deg,rgba(14,14,16,.82) 0%,rgba(14,14,16,.6) 30%,rgba(14,14,16,0) 58%),linear-gradient(0deg,rgba(14,14,16,.55) 0%,rgba(14,14,16,0) 35%);pointer-events:none}
}
/* Téléphone : la vidéo occupe le haut de l'écran sous l'en-tête, presque entière ; le texte est en dessous, sur fond sombre */
@media (max-width:900px){
 .hero--sobre{min-height:100svh;align-items:flex-end;background:#121214}
 .hero--sobre .hero__media{top:76px;bottom:auto;height:min(64svh,calc(100vw * 1.333));left:0;right:0}
 .hero--sobre .hero__media video{width:100%;height:100%;object-fit:cover;object-position:50% 22%!important}
 .hero--sobre .hero__media::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#121214 0%,rgba(18,18,20,.85) 14%,rgba(18,18,20,0) 34%),linear-gradient(180deg,#121214 0%,rgba(18,18,20,0) 10%);pointer-events:none}
 .hero--sobre .hero__texte{position:relative;padding-bottom:40px}
 .hero--sobre h1{font-size:2.6rem}
}
@media (min-width:901px){.hero--sobre .hero__texte{max-width:600px}.hero--sobre h1{font-size:calc(clamp(2.6rem,4.6vw,4.1rem)*var(--t-echelle));max-width:none}}
/* Ordinateur : la vidéo occupe les deux tiers gauches, le texte un panneau sombre à droite (visage et loupes jamais sous le texte) */
@media (min-width:901px){
 .hero--sobre{background:#121214}
 .hero--sobre .hero__media{right:34%!important;left:0!important}
 .hero--sobre .hero__media video{object-position:42% 30%!important}
 .hero--sobre .hero__media::after{background:linear-gradient(270deg,#121214 0%,rgba(18,18,20,.55) 12%,rgba(18,18,20,0) 30%),linear-gradient(0deg,rgba(18,18,20,.5) 0%,rgba(18,18,20,0) 25%)!important}
 .hero--sobre .hero__texte{max-width:min(34vw,520px)!important;margin-right:0;padding-right:clamp(24px,3.5vw,64px)}
 .hero--sobre .hero__texte h1{font-size:calc(clamp(2.4rem,3.8vw,3.6rem)*var(--t-echelle))}
 .hero--sobre .hero__chapo{font-size:1rem}
}
.chrono>*{min-width:0}
@media (max-width:700px){.chrono{display:block}.chrono>*+*{margin-top:1.2rem}.approche figure.demo{width:100vw!important;max-width:100vw!important;margin-left:calc(50% - 50vw)!important;margin-right:0!important}.demo + .chrono__etape{margin-top:2.2rem!important}}
@media (max-width:700px){.chrono__etape + .demo{margin-top:2rem!important}}
.sec .demo{margin:1.6rem 0}
@media (max-width:700px){.sec .demo{width:100vw!important;margin-left:calc(50% - 50vw)!important}}

/* ================= v8 : vidéo d'accueil, nouveau montage (cadre entier, jamais sous le texte) ================= */
@media (min-width:901px){
 .hero--sobre{min-height:min(100svh,940px);align-items:center;background:#121214}
 .hero--sobre .hero__media{position:absolute;left:auto!important;right:clamp(24px,3vw,56px)!important;top:50%!important;bottom:auto!important;transform:translateY(-44%);width:min(60vw,1100px);height:auto!important;aspect-ratio:16/9}
 .hero--sobre .hero__media video{width:100%!important;height:100%!important;object-fit:contain!important;object-position:50% 50%!important}
 .hero--sobre .hero__media::after{display:none!important}
 .hero--sobre .hero__texte{margin-left:0!important;margin-right:auto!important;max-width:min(31vw,470px)!important;padding:0!important;align-self:center;position:relative}
}
@media (max-width:900px){
 .hero--sobre .hero__media{top:76px!important;height:100vw!important;max-height:62svh}
 .hero--sobre .hero__media video{object-fit:cover!important;object-position:50% 50%!important}
 .hero--sobre .hero__media::after{background:linear-gradient(0deg,#121214 0%,rgba(18,18,20,0) 18%)!important}
}

/* ================= v8 : diplômes, esprit carte de visite ================= */
.carte-pu--2{padding-block:clamp(80px,11vw,160px)}
.carte-pu--2 .wrap{max-width:1080px}
.carte-pu--2 h2{text-align:center;font-size:calc(clamp(1.6rem,2.4vw,2rem)*var(--t-echelle));letter-spacing:.01em;margin-bottom:clamp(44px,6vw,80px)}
.carte-pu--2 .carte-pu__grille{grid-template-columns:1fr 1px 1fr!important;gap:0 clamp(32px,5vw,72px);align-items:start}
.carte-pu--2 .carte-pu__grille::before{content:"";grid-column:2;grid-row:1;align-self:stretch;background:var(--pierre)}
.carte-pu--2 .carte-pu__groupe:first-child{grid-column:1;grid-row:1}
.carte-pu--2 .carte-pu__groupe:last-child{grid-column:3;grid-row:1}
.carte-pu--2 .carte-pu__groupe{text-align:center}
.carte-pu--2 .carte-pu__groupe h3{border:0;padding:0;margin-bottom:clamp(22px,3vw,34px);font-size:.98rem;letter-spacing:.02em;color:#8E7C6A}
.carte-pu--2 .carte-pu__groupe ul{gap:0}
.carte-pu--2 .carte-pu__groupe li{font-size:calc(clamp(1.08rem,1.35vw,1.2rem)*var(--t-echelle));line-height:1.38;color:#24221F;padding:0 .4rem;text-wrap:balance}
.carte-pu--2 .carte-pu__groupe li + li::before{content:"";display:block;width:22px;height:1px;background:#C9B9A6;margin:1.05rem auto}
.carte-pu--2 .carte-pu__lien{text-align:center;margin-top:clamp(48px,6vw,80px)}
@media (max-width:900px){
 .carte-pu--2 .carte-pu__grille{grid-template-columns:1fr!important;gap:56px}
 .carte-pu--2 .carte-pu__grille::before{display:none}
 .carte-pu--2 .carte-pu__groupe:first-child,.carte-pu--2 .carte-pu__groupe:last-child{grid-column:1;grid-row:auto}
}
/* v8 : fondus plus progressifs, uniquement dans la marge prolongée ajoutée à l'encodage (l'image d'origine reste entière) */
.demo__cadre video.demo__video--marge{aspect-ratio:auto!important;-webkit-mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.18) 2.5%,rgba(0,0,0,.5) 5.5%,rgba(0,0,0,.85) 8.5%,#000 10.9%,#000 89.1%,rgba(0,0,0,.85) 91.5%,rgba(0,0,0,.5) 94.5%,rgba(0,0,0,.18) 97.5%,transparent 100%)!important;mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.18) 2.5%,rgba(0,0,0,.5) 5.5%,rgba(0,0,0,.85) 8.5%,#000 10.9%,#000 89.1%,rgba(0,0,0,.85) 91.5%,rgba(0,0,0,.5) 94.5%,rgba(0,0,0,.18) 97.5%,transparent 100%)!important}
.chrono__etape + .demo{margin-top:-1.2rem!important}
.demo + .chrono__etape{margin-top:.6rem!important}

/* ================= v9 : en-tête sur trois lignes ================= */
.marque{display:grid;gap:0;line-height:1.15}
.marque .marque__nom{white-space:nowrap;margin-bottom:.22rem}
.marque .marque__ligne{font-size:.74rem;opacity:.74;letter-spacing:.02em;white-space:nowrap;max-width:none}
.marque .marque__ligne + .marque__ligne{opacity:.6}
.nom-court{display:none}
@media (max-width:1180px){.nom-long{display:none}.nom-court{display:inline}}
@media (max-width:560px){.marque .marque__nom{font-size:1.24rem}.marque .marque__ligne{font-size:.7rem}}
@media (max-width:359px){.marque .marque__nom{font-size:1.12rem}}

/* ================= v9 : titre d'accueil sur une ligne ================= */
.hero--sobre h1{white-space:nowrap;max-width:none!important;text-wrap:nowrap}

/* Ordinateur : titre dimensionné pour tenir dans la colonne de texte */
@media (min-width:901px){
 .hero--sobre{--bord:calc(max(0px, (100vw - var(--max)) / 2) + var(--gout));--col:calc((100vw - 2 * var(--bord)) * .38)}
 .hero--sobre .hero__media{right:var(--bord)!important;width:calc((100vw - 2 * var(--bord)) * .62 - 40px)!important;max-width:none}
 .hero--sobre .hero__texte{margin-left:var(--bord)!important;margin-right:0!important;width:var(--col);max-width:var(--col)!important;padding:0!important}
 .hero--sobre .hero__texte h1{font-size:min(3.6rem, calc(var(--col) / 8))!important}
}

/* Téléphone : la vidéo est dans le flux, sous l'en-tête ; le texte vient après, jamais par-dessus */
@media (max-width:900px){
 .hero--sobre{display:block!important;min-height:0!important;padding-top:var(--entete-h,108px);background:#121214}
 .hero--sobre .hero__media{position:relative!important;inset:auto!important;top:auto!important;transform:none!important;width:100%!important;height:auto!important;max-height:none!important;aspect-ratio:1/1;margin:0 auto;max-width:min(100%,60svh)}
 .hero--sobre .hero__media video{position:absolute;inset:0;width:100%!important;height:100%!important;object-fit:cover!important}
 .hero--sobre .hero__media::after{background:linear-gradient(0deg,#121214 0%,rgba(18,18,20,0) 12%)!important}
 .hero--sobre .hero__texte{position:relative;padding-top:1.4rem!important;padding-bottom:44px!important}
 .hero--sobre .hero__texte h1{font-size:min(2.9rem, calc((100vw - 2 * var(--gout, 20px)) / 8))!important;line-height:1.08}
}
/* Le préfixe « Docteur / Dr » garde la taille du nom (les autres span de la marque sont plus petits) */
.marque .marque__nom span{font-size:inherit;opacity:1;letter-spacing:inherit;max-width:none}
/* Téléphone : bouton de pause des animations plus discret, et jamais sur les boutons d'accueil */
@media (max-width:700px){
 .pause{width:32px;height:32px;right:10px;bottom:calc(10px + env(safe-area-inset-bottom,0px));background:rgba(23,35,34,.38);border-color:rgba(243,237,227,.25)}
 .pause svg{width:10px;height:10px}
 .hero--sobre .hero__actions{padding-right:40px;row-gap:.9rem;flex-wrap:wrap}
}

/* ================= v10 : respiration entre le texte et les vidéos à fondus ================= */
.chrono__etape + .demo{margin-top:.9rem!important}
.sec p + .demo,.sec .lisible + .demo{margin-top:2.1rem}
@media (max-width:700px){
 .chrono__etape + .demo{margin-top:2rem!important}
 /* accueil : titre rapproché de la vidéo */
 .hero--sobre .hero__texte{padding-top:.35rem!important}
 .hero--sobre .hero__media::after{background:linear-gradient(0deg,#121214 0%,rgba(18,18,20,0) 9%)!important}
}

/* ================= v11 : paires avant / après ================= */
.avant-apres{margin:2rem 0;display:grid;gap:.7rem}
.avant-apres__paire{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.avant-apres__vue{position:relative;min-width:0;overflow:hidden;border-radius:2px}
.avant-apres__vue img{display:block;width:100%;height:auto}
.avant-apres__etiquette{position:absolute;left:10px;bottom:10px;font:600 .68rem/1 var(--f-texte,system-ui);letter-spacing:.14em;text-transform:uppercase;color:#f3ede3;background:rgba(18,18,20,.55);padding:.45em .6em;border-radius:2px}
.avant-apres figcaption{font-size:.9rem;color:var(--taupe-texte,#6b625a);max-width:70ch}
.avant-apres--sombre{max-width:1100px;margin:clamp(28px,4vw,48px) auto 0}
.avant-apres--sombre figcaption{color:rgba(243,237,227,.72)}
.suite-greffe{margin-top:1.4rem}
@media (max-width:700px){.avant-apres__paire{grid-template-columns:1fr}.avant-apres__etiquette{font-size:.62rem}}

/* ================= v12 : tarifs avec contenu de chaque acte ; image clinique sans agrandissement ================= */
.tarifs dt b{font-weight:500;display:block}
.tarifs dt span{display:block;font-family:var(--f-texte,"Source Sans 3",system-ui);font-size:.9rem;line-height:1.5;color:var(--taupe-texte);margin-top:.25rem}
.tarifs dd{font-size:1rem;color:var(--encre,#1d2321);font-variant-numeric:tabular-nums}
@media (max-width:560px){.tarifs div{grid-template-columns:1fr}.tarifs dd{white-space:normal}}
.media-protege img[width="675"]{max-width:675px;margin-inline:auto}
/* v12 : paires avant/après mises en valeur, plus larges que la colonne de texte sur ordinateur */
@media (min-width:901px){main .avant-apres:not(.avant-apres--sombre){width:min(980px,calc(100vw - 2 * var(--gout) - 40px));max-width:none}}
figure img[width="675"]{max-width:675px!important;width:100%!important;margin-inline:auto;display:block}

/* v12 : planification implantaire — sur téléphone, la vidéo d'ouverture est entière (carrée), le texte vient dessous */
@media (max-width:700px){
 .p-implants-chirurgie-guidee .t-hero{display:block;min-height:0;padding-top:var(--entete-h,108px)}
 .p-implants-chirurgie-guidee .t-hero .hero__media{position:relative;inset:auto;aspect-ratio:1/1;width:100%}
 .p-implants-chirurgie-guidee .t-hero .hero__media video{position:absolute;inset:0;object-fit:contain}
 .p-implants-chirurgie-guidee .t-hero .hero__media::after{background:linear-gradient(0deg,var(--anthracite,#172322) 0%,rgba(23,35,34,0) 10%)}
 .p-implants-chirurgie-guidee .t-hero .wrap{padding-block:20px 40px}
}
/* v12 : « Parodontiste », activité centrale, plus lisible que la ligne de chirurgie */
.marque .marque__ligne{opacity:.72}
.marque .marque__ligne + .marque__ligne{opacity:.95;font-weight:600;letter-spacing:.06em}
/* v14 : section « Le cabinet et l'équipe » */
.mcd__liens{display:flex;flex-wrap:wrap;gap:1rem 1.5rem;align-items:center}
.mcd__photo img{background:#0a0a0a}

/* ---- v20 : questionnaire « Et vos gencives ? » ---- */
.qg__boite{max-width:760px;margin-inline:auto;border-top:1px solid var(--pierre);border-bottom:1px solid var(--pierre);padding-block:clamp(28px,4vw,48px)}
.qg__tete{display:grid;gap:.5rem;margin-bottom:1.4rem}
.qg__intro{margin:0;color:var(--taupe-texte);max-width:52ch}
.qg__corps{min-height:12rem}
.qg__go,.qg__suite{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:.8rem 1.5rem;border-radius:999px;border:0;background:var(--anthracite);color:var(--ivoire);font:600 .98rem/1 var(--f-texte);cursor:pointer}
.qg__suite:disabled{opacity:.35;cursor:default}
.qg__reprise{margin:0 0 1rem;color:var(--taupe-texte);font-size:.95rem}
.qg__haut{display:flex;align-items:center;gap:1rem;margin-bottom:1.1rem}
.qg__num{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.qg__prog{flex:1;height:1px;background:var(--pierre);position:relative}
.qg__prog span{position:absolute;inset:0 auto 0 0;background:var(--anthracite);transition:width .35s cubic-bezier(.2,.7,.2,1)}
.qg__q{border:0;margin:0;padding:0;min-width:0}
.qg__libelle{font-family:var(--f-titre);font-weight:var(--t-poids);font-size:calc(clamp(1.35rem,2.4vw,1.7rem)*var(--t-echelle));line-height:1.22;padding:0;margin:0 0 1.1rem;text-wrap:balance}
.qg__note{margin:-.5rem 0 1rem;font-size:.9rem;color:var(--taupe-texte)}
.qg__opts{display:flex;flex-wrap:wrap;gap:.55rem}
.qg__opt{min-height:46px;padding:.65rem 1.15rem;border-radius:999px;border:1px solid var(--greige);background:transparent;color:var(--anthracite);font:500 .98rem/1.25 var(--f-texte);cursor:pointer;text-align:left;transition:background-color .2s,border-color .2s,color .2s}
.qg__opt:hover{border-color:var(--anthracite)}
.qg__opt[aria-pressed="true"]{background:var(--anthracite);border-color:var(--anthracite);color:var(--ivoire)}
.qg__nav{display:flex;align-items:center;gap:1.2rem;margin-top:1.4rem}
.qg__retour{background:none;border:0;padding:.4rem 0;font:500 .92rem/1.3 var(--f-texte);color:var(--taupe-texte);text-decoration:underline;text-decoration-color:var(--greige);text-underline-offset:4px;cursor:pointer}
.qg__retour:hover{color:var(--anthracite)}
.qg__mention{margin:1.4rem 0 0;font-size:.82rem;line-height:1.5;color:var(--taupe-texte);max-width:62ch}
.qg__msg{margin:0;max-width:58ch;font-size:1.04rem}
.qg__rdv-l{margin:.8rem 0 0}
.qg-rdv{display:inline-flex;align-items:center;gap:.5rem;font-weight:600;text-decoration:none;border-bottom:1px solid var(--gencive);padding-bottom:1px}
.qg-rdv svg,.qg-res__fl svg,.qg-res__lire svg{fill:none;stroke:currentColor;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round}
.qg-rdv svg{width:18px;height:18px}
.qg__titre-res{font-family:var(--f-texte);font-size:.82rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--taupe-texte);margin:1.8rem 0 .9rem}
.qg__grille{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}
.qg-res{display:grid;align-content:start;gap:.3rem;margin:0;background:var(--ivoire-2);border-radius:var(--r);text-decoration:none;color:inherit;position:relative;overflow:hidden}
.qg-res--lien{padding:1.1rem 2.8rem 1.15rem 1.15rem;transition:background-color .2s}
.qg-res--lien:hover{background:var(--pierre)}
.qg-res__sur{font-size:.78rem;color:var(--taupe-texte)}
.qg-res__titre{font-family:var(--f-titre);font-size:calc(1.32rem*var(--t-echelle));line-height:1.15;font-weight:var(--t-poids)}
.qg-res__texte{font-size:.92rem;line-height:1.45;color:var(--taupe-texte)}
.qg-res__conseil{display:block;font-size:.9rem;line-height:1.45;margin-top:.35rem;padding-top:.5rem;border-top:1px solid var(--pierre)}
.qg-res__fl{position:absolute;right:1rem;top:1.15rem;width:20px;height:20px}
.qg-res__fl svg{width:20px;height:20px}
.qg-res--video figcaption{display:grid;gap:.3rem;padding:.85rem 1.15rem 1.1rem}
.qg-res__cadre{position:relative;aspect-ratio:16/9;background:#1b1b1d}
.qg-res__cadre video{width:100%;height:100%;object-fit:cover}
.qg-res__lire{position:absolute;inset:0;display:grid;place-items:center;border:0;background:none;padding:0;color:var(--ivoire);cursor:pointer;overflow:hidden}
.qg-res__lire img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.qg-res__lire::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,15,16,0) 45%,rgba(15,15,16,.32))}
.qg-res__lire svg{position:relative;z-index:1;width:52px;height:52px;stroke-width:1.1;filter:drop-shadow(0 1px 6px rgba(0,0,0,.4))}
.qg-res__lire:hover svg{transform:scale(1.04)}
.qg__nav--fin{margin-top:1.6rem}
.qg-logique{max-width:760px;margin:1.4rem auto 0}
@media (max-width:560px){
  .qg__opts{flex-direction:column}
  .qg__opt{width:100%;border-radius:12px}
  .qg__corps{min-height:15rem}
}
@media (prefers-reduced-motion:reduce){.qg__prog span{transition:none}}

/* Essai v16 — fonctions mobiles discrètes et ouverture animée. Portée limitée aux pages marquées .essai-v16. */
.essai-v16 .ico{width:18px;height:18px;flex:none;fill:none;stroke:currentColor;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round}
.essai-v16 .bouton-fin,.essai-v16 .lien-discret,.essai-v16 .rdv .bouton{gap:.55rem}
.essai-v16 .lien-discret{display:inline-flex;align-items:center}
.essai-v16 .rdv .bouton{display:inline-flex;align-items:center}

/* Commande des animations : rangée dans l'en-tête, plus de bouton flottant */
.essai-v16 .outils .pause{position:relative;inset:auto;right:auto;bottom:auto;width:36px;height:36px;background:transparent;border-color:rgba(243,237,227,.38);backdrop-filter:none;-webkit-backdrop-filter:none}
.essai-v16 .outils .pause::before{content:"";position:absolute;inset:-4px}
.essai-v16 .outils .pause .infobulle{right:auto;left:50%;top:calc(100% + 8px);transform:translateX(-50%)}

/* Bouton d'appel (téléphone uniquement) */
.appel{display:none}
@media (max-width:700px){
 .appel{display:grid;place-items:center;position:fixed;right:max(16px,env(safe-area-inset-right,0px));bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:40;
  width:52px;height:52px;border-radius:50%;color:var(--ivoire);background:rgba(23,35,34,.86);border:1px solid rgba(243,237,227,.55);
  box-shadow:0 6px 18px rgba(0,0,0,.28);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
  opacity:0;visibility:hidden;transform:translateY(10px) scale(.94);transition:opacity .22s ease,transform .22s cubic-bezier(.2,.7,.2,1),visibility 0s linear .22s;-webkit-tap-highlight-color:transparent}
 .appel[data-visible="1"]{opacity:1;visibility:visible;transform:none;transition:opacity .22s ease,transform .22s cubic-bezier(.2,.7,.2,1),visibility 0s}
 .appel svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}
 .appel:active{transform:scale(.96)}
 .appel:focus-visible{outline:2px solid var(--ivoire);outline-offset:3px}
 .essai-v16 .pied{padding-bottom:calc(84px + env(safe-area-inset-bottom,0px))}
}
@media (prefers-reduced-motion:reduce){.appel,.appel[data-visible="1"]{transition:none}}

/* Ouverture de l'accueil : une seule séquence (titre, puis texte et actions) */
.js-anim .hero--sobre h1,.js-anim .hero--sobre .hero__chapo,.js-anim .hero--sobre .hero__actions{opacity:0;animation:essai-secours 0s 1.8s forwards}
@keyframes essai-secours{to{opacity:1}}

/* Sommaire repliable */
.essai-v16 details.sommaire{border-top:1px solid var(--pierre);border-bottom:1px solid var(--pierre);padding:0}
.essai-v16 details.sommaire summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:48px;padding:.4rem 0;font:600 .95rem/1.2 var(--f-texte);color:var(--anthracite)}
.essai-v16 details.sommaire summary::-webkit-details-marker{display:none}
.essai-v16 details.sommaire summary small{font-weight:400;color:var(--taupe-texte);margin-left:.5rem}
.essai-v16 details.sommaire summary .ico{transition:transform .25s cubic-bezier(.2,.7,.2,1)}
.essai-v16 details.sommaire[open] summary .ico{transform:rotate(180deg)}
.essai-v16 details.sommaire ol{margin:0 0 1rem;overflow:hidden}
.essai-v16 details.sommaire summary:focus-visible{outline:2px solid var(--anthracite);outline-offset:4px}

/* Retour en haut, en fin d'article */
.haut-page{margin:2.5rem 0 0;display:flex;justify-content:flex-end}
.haut-page a{display:inline-flex;align-items:center;gap:.45rem;min-height:44px;padding:0 .2rem;font:500 .92rem/1 var(--f-texte);color:var(--taupe-texte);text-decoration:none;border-bottom:1px solid transparent}
.haut-page a:hover{color:var(--anthracite);border-bottom-color:var(--greige)}

/* Questions sous l'article : repliées, discrètes */
.questions{margin:3rem 0 0;border-top:1px solid var(--pierre)}
.questions summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:1rem;min-height:52px;font:500 1.02rem/1.3 var(--f-texte);color:var(--anthracite)}
.questions summary::-webkit-details-marker{display:none}
.questions summary .ico{transition:transform .25s cubic-bezier(.2,.7,.2,1)}
.questions details[open] summary .ico{transform:rotate(180deg)}
.questions summary:focus-visible{outline:2px solid var(--anthracite);outline-offset:4px}
.q-note{font-size:.92rem;color:var(--taupe-texte);max-width:60ch;margin:.2rem 0 1rem}
.q-form{display:grid;gap:.45rem;max-width:36rem;padding-bottom:1rem}
.q-form label{font:500 .9rem/1.3 var(--f-texte);color:var(--anthracite);margin-top:.5rem}
.q-form textarea,.q-form input:not([type=checkbox]){font:400 1rem/1.5 var(--f-texte);color:var(--anthracite);background:#fffdf9;border:1px solid var(--greige);border-radius:8px;padding:.7rem .8rem;min-height:44px}
.q-form textarea:focus,.q-form input:focus{outline:2px solid var(--anthracite);outline-offset:1px}
.q-accord{display:flex;gap:.6rem;align-items:flex-start;font-weight:400!important;font-size:.88rem!important;color:var(--taupe-texte)!important}
.q-accord input{width:20px;height:20px;margin-top:.1rem;flex:none;accent-color:var(--anthracite)}
.q-piege{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.bouton-q{justify-self:start;margin-top:.6rem;min-height:46px;padding:.65rem 1.3rem;border-radius:999px;border:1px solid var(--anthracite);background:var(--anthracite);color:var(--ivoire);font:500 .95rem/1 var(--f-texte);cursor:pointer}
.bouton-q:focus-visible{outline:2px solid var(--anthracite);outline-offset:3px}
.q-etat{font-size:.92rem;color:var(--anthracite);margin:.4rem 0 0}
.q-etat[data-type="erreur"]{color:#8a2d1f}

/* ---- v22 : commande discrète des animations (lecture bloquée ou animations réduites) ---- */
.lire-demo--discret{width:44px;height:44px;left:auto;top:auto;right:14px;bottom:14px;transform:none;opacity:.88;border-color:rgba(255,255,255,.65);background:rgba(20,20,22,.28)}
.lire-demo--discret:hover,.lire-demo--discret:focus-visible{opacity:1;background:rgba(20,20,22,.45)}
.lire-demo--discret svg{width:13px;height:13px}
.lecteur[data-auto="1"] .lecteur__voile .bouton-lire[hidden]{display:none}
.lecteur[data-auto="1"] .video-protegee{object-fit:cover}

/* ================= v23 : présentation épurée (demande du Dr Hazout, 5 octobre 2026, 18 h 48) =================
   1. En-tête : plus aucun cercle autour de EN, du téléphone, de la pause et du menu.
   2. Actions : plus de boutons à contour ; liens typographiques avec icône et soulignement fin.
   3. Ordinateur : vidéo d'accueil plus large.
   4. Ordinateur : vidéos pédagogiques et grandes vidéos alignées sur le bord gauche du texte, une seule largeur.
   Le téléphone garde sa mise en page (seuls les cercles et contours disparaissent, comme sur ordinateur). */

/* 1. En-tête sans cercles */
.entete .langue,.entete .tel,.entete .pause,.essai-v16 .outils .pause,.menu-mobile summary{
  border:0!important;background:transparent!important;border-radius:0!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
.entete .langue{padding:.55rem .25rem!important;opacity:.8;letter-spacing:.1em}
.entete .tel{padding:.55rem 0!important;font-weight:500!important;letter-spacing:.03em;
  text-decoration:none;border-bottom:0!important}
.entete .tel::before{content:"";display:inline-block;vertical-align:-3px;margin-right:.5rem;width:16px;height:16px;background:currentColor;opacity:.85;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.35' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 16.9v3a2 2 0 0 1-2.2 2 19.8 19.8 0 0 1-8.6-3.1 19.5 19.5 0 0 1-6-6A19.8 19.8 0 0 1 1.1 4.2 2 2 0 0 1 3.1 2h3a2 2 0 0 1 2 1.7c.1.9.4 1.8.7 2.7a2 2 0 0 1-.5 2.1L7.1 9.8a16 16 0 0 0 6 6l1.3-1.3a2 2 0 0 1 2.1-.4c.9.3 1.8.6 2.7.7a2 2 0 0 1 1.8 2z'/%3E%3C/svg%3E") center/contain no-repeat;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.35' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 16.9v3a2 2 0 0 1-2.2 2 19.8 19.8 0 0 1-8.6-3.1 19.5 19.5 0 0 1-6-6A19.8 19.8 0 0 1 1.1 4.2 2 2 0 0 1 3.1 2h3a2 2 0 0 1 2 1.7c.1.9.4 1.8.7 2.7a2 2 0 0 1-.5 2.1L7.1 9.8a16 16 0 0 0 6 6l1.3-1.3a2 2 0 0 1 2.1-.4c.9.3 1.8.6 2.7.7a2 2 0 0 1 1.8 2z'/%3E%3C/svg%3E") center/contain no-repeat}
.entete .pause,.essai-v16 .outils .pause{opacity:.72}
.entete .langue:hover,.entete .langue:focus-visible,.entete .pause:hover,.entete .pause:focus-visible{opacity:1}
.entete .tel:hover,.entete .tel:focus-visible{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.35em;text-decoration-color:rgba(243,237,227,.5)}
.essai-v16 .outils .pause svg{width:11px;height:11px}
@media (min-width:901px){.entete .outils{gap:1.5rem}}

/* 2. Actions sans contour : icône + texte, soulignement fin (accent gencive pour l'action principale) */
.bouton-fin,.bouton.contour{
  border:0!important;background:transparent!important;border-radius:0!important;box-shadow:none!important;
  padding:.75rem 0!important;min-height:46px;color:inherit;font-weight:500;letter-spacing:.015em;
  text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.42em;text-decoration-color:var(--gencive)}
.sombre .bouton.contour,.bouton-fin{text-decoration-color:var(--gencive-clair)}
.bouton-fin:hover,.bouton-fin:focus-visible,.bouton.contour:hover,.bouton.contour:focus-visible{background:transparent!important;text-decoration-color:currentColor}
.hero__actions{gap:.4rem 2.2rem}
.hero__actions .lien-discret{text-decoration-color:rgba(228,220,207,.4)}

/* 3. Ordinateur : vidéo d'accueil plus large (colonne de texte 34 %, vidéo jusqu'à la marge droite de l'écran) */
@media (min-width:901px){
  .hero--sobre{--col:calc((100vw - 2 * var(--bord)) * .34);--marge-d:clamp(16px,2vw,40px);--ecart:clamp(32px,3vw,56px)}
  .hero--sobre .hero__media{right:var(--marge-d)!important;width:calc(100vw - var(--bord) - var(--col) - var(--marge-d) - var(--ecart))!important}
}

/* 4. Ordinateur : vidéos de contenu alignées sur le texte, une seule largeur */
@media (min-width:901px){
  :root{--media-l:min(880px, calc(100vw - 2 * var(--bord, 56px)))}
  /* vidéos pédagogiques (surfaçage, lasers…) */
  figure.demo,.approche figure.demo,.sec figure.demo{width:var(--media-l)!important;max-width:none!important;margin-left:0!important;margin-right:0!important}
  figure.demo figcaption{padding-inline:0!important;max-width:62ch}
  figure.demo .demo__cadre video{width:100%!important;height:auto!important}
  /* grandes vidéos des chapitres (implants, greffes, grille…) */
  .chapitre .media-grand,.chapitre-grand .media-grand{width:var(--media-l)!important;max-width:none!important;margin-left:0!important;margin-right:0!important;justify-items:start}
  .chapitre .media-grand video,.chapitre .media-grand img,.chapitre-grand .media-grand video,.chapitre-grand .media-grand img{width:100%!important;max-width:100%!important;max-height:none!important;margin-inline:0!important;height:auto!important;object-fit:contain!important}
  .chapitre .media-grand figcaption,.chapitre-grand .media-grand figcaption{justify-self:start;text-align:left;padding-inline:0!important;max-width:62ch}
}

/* 5. Ordinateur, pages intérieures : la colonne de texte est centrée ; vidéos et grandes illustrations
      prennent une seule largeur (880 px) centrée sur cette colonne, au lieu de 1280 px pleine largeur. */
@media (min-width:901px){
  body:not(.p-accueil) .etroit figure.demo,body:not(.p-accueil) .sec figure.demo{
    width:var(--media-l)!important;margin-left:calc((100% - var(--media-l)) / 2)!important;margin-right:0!important}
  body:not(.p-accueil) figure.demo figcaption{margin-inline:auto;text-align:center}
  body:not(.p-accueil) .bande .media-grand:not(.portrait-media),
  body:not(.p-accueil) .etroit .media-grand:not(.portrait-media){
    width:var(--media-l)!important;max-width:var(--media-l)!important;margin-left:auto!important;margin-right:auto!important;justify-items:center}
  body:not(.p-accueil) .etroit .media-grand:not(.portrait-media){margin-left:calc((100% - var(--media-l)) / 2)!important;margin-right:0!important}
  body:not(.p-accueil) .bande .media-grand:not(.portrait-media) video,body:not(.p-accueil) .bande .media-grand:not(.portrait-media) img,
  body:not(.p-accueil) .etroit .media-grand:not(.portrait-media) video,body:not(.p-accueil) .etroit .media-grand:not(.portrait-media) img{
    width:100%!important;max-width:100%!important;max-height:none!important;height:auto!important;margin-inline:auto!important}
  body:not(.p-accueil) .bande .media-grand.portrait-media{max-width:min(560px,100%)!important}
}

/* ================= v24 : haut de page recomposé (demande du Dr Hazout, 6 octobre 2026) =================
   1. Plus de bouton pause (retiré du HTML) : les animations courtes jouent en boucle à l'écran ;
      la préférence « réduire les animations » de l'appareil reste respectée (site.js).
   2. « Prendre rendez-vous » / « Accès au cabinet » : sans soulignement permanent, icône fine,
      trait fin qui apparaît seulement au survol ou à la sélection clavier.
   3. Ordinateur : vidéo centrée en haut, format généreux, entière (16:9, non rognée), sans cadre,
      fondus très courts sur les bords ; texte centré dessous, largeur de lecture maîtrisée.
      Téléphone : même logique (vidéo puis texte), proportions existantes conservées. */

/* 2. Actions du haut de page */
.hero__actions{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem 2.6rem!important}
.hero__actions .bouton-fin,.hero__actions .lien-discret{
  position:relative;display:inline-flex!important;align-items:center;gap:.65rem!important;
  min-height:44px;padding:.55rem .1rem!important;border:0!important;border-radius:0!important;background:none!important;box-shadow:none!important;
  text-decoration:none!important;color:var(--ivoire)!important;
  font:500 .94rem/1.2 var(--f-texte)!important;letter-spacing:.045em!important;
  transition:color .25s ease,opacity .25s ease}
.hero__actions .lien-discret{color:rgba(243,237,227,.74)!important;font-weight:400!important}
.hero__actions a .ico{width:17px!important;height:17px!important;flex:none;opacity:.78;stroke-width:1.3}
.hero__actions a::after{content:"";position:absolute;left:calc(17px + .65rem);right:.1rem;bottom:.38rem;height:1px;
  background:currentColor;opacity:0;transform:scaleX(.4);transform-origin:left center;transition:opacity .3s ease,transform .3s cubic-bezier(.2,.7,.2,1)}
.hero__actions a:hover,.hero__actions a:focus-visible{color:#fff!important}
.hero__actions a:hover::after,.hero__actions a:focus-visible::after{opacity:.5;transform:scaleX(1)}
.hero__actions a:hover .ico,.hero__actions a:focus-visible .ico{opacity:1}
.hero__actions a:focus-visible{outline:1px solid rgba(243,237,227,.45);outline-offset:5px}
.hero__actions a:active{opacity:.7}
@media (prefers-reduced-motion:reduce){.hero__actions a,.hero__actions a::after{transition:none}}

/* 3. Ordinateur : vidéo centrée puis texte */
@media (min-width:901px){
  .hero.hero--sobre{display:flex!important;flex-direction:column;align-items:center;justify-content:flex-start;
    min-height:0!important;padding:clamp(104px,12.5vh,132px) 0 clamp(64px,10vh,112px)!important;background:#121214!important}
  .hero--sobre .hero__media{position:relative!important;inset:auto!important;top:auto!important;right:auto!important;left:auto!important;bottom:auto!important;
    transform:none!important;margin:0 auto!important;max-width:none!important;max-height:none!important;height:auto!important;aspect-ratio:16/9!important;
    width:min(1240px, calc(100vw - 2 * var(--gout)), calc((100vh - 310px) * 16 / 9))!important}
  .hero--sobre .hero__media::after{display:none!important}
  .hero--sobre .hero__media video{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
    object-fit:contain!important;object-position:50% 50%!important;
    -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 3%,#000 97%,transparent 100%),linear-gradient(180deg,transparent 0,#000 4%,#000 96%,transparent 100%);
            mask-image:linear-gradient(90deg,transparent 0,#000 3%,#000 97%,transparent 100%),linear-gradient(180deg,transparent 0,#000 4%,#000 96%,transparent 100%);
    -webkit-mask-composite:source-in;mask-composite:intersect}
  .hero--sobre .hero__texte{position:relative!important;width:auto!important;max-width:min(660px, calc(100vw - 2 * var(--gout)))!important;
    margin:clamp(32px,5vh,56px) auto 0!important;padding:0!important;display:grid!important;justify-items:center;gap:1.05rem!important;text-align:center}
  .hero--sobre .hero__texte h1{font-size:clamp(2.6rem,3.4vw,3.5rem)!important;white-space:normal!important;max-width:none!important;line-height:1.05}
  .hero--sobre .hero__chapo{max-width:46ch;text-wrap:balance;margin:0 auto;font-size:1.04rem!important;line-height:1.6;color:rgba(243,237,227,.86)}
  .hero--sobre .hero__actions{justify-content:center;margin-top:.5rem!important;padding-right:0!important}
}

/* ================= v25 : finesse et fluidité (demande du Dr Hazout, 6 octobre 2026, 15 h 44) =================
   Direction graphique de la v24 conservée. Fonds sous les vidéos inchangés (calés sur chaque vidéo). */

/* 1. Chaleur des fonds neutres : noir bleuté → brun très sombre, dégradé continu du haut de page vers la section suivante */
:root{--nuit:#14110f}
.hero.hero--sobre{background:linear-gradient(180deg,#171512 0%,#161411 62%,#14110f 100%)!important}
.entete::before{background:linear-gradient(180deg,rgba(24,21,18,.66),rgba(24,21,18,.3) 46%,rgba(24,21,18,0))!important}

/* 2. Défilement fluide vers les sections (désactivé si l'appareil demande moins d'animations) */
html{scroll-padding-top:24px}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}

/* 3. Transitions légères entre les états (survol, sélection) : jamais d'apparition brusque */
a,button,summary{transition:color .25s ease,background-color .25s ease,opacity .25s ease,border-color .25s ease}

/* 4. Menu supérieur, ordinateur : plus fin, plus discret */
@media (min-width:901px){
  .nav ul{gap:clamp(1.25rem,1.8vw,2.1rem)!important}
  .nav > ul > li > a{position:relative;padding:.5rem 0!important;border-bottom:0!important;
    font:400 .875rem/1.2 var(--f-texte)!important;letter-spacing:.035em;color:rgba(243,237,227,.78)!important}
  .nav > ul > li > a::after{content:"";position:absolute;left:0;right:0;bottom:.2rem;height:1px;background:currentColor;opacity:.5;
    transform:scaleX(0);transform-origin:center;transition:transform .35s cubic-bezier(.2,.7,.2,1)}
  .nav > ul > li > a:hover,.nav > ul > li > a:focus-visible,.nav > ul > li > a[aria-current="page"]{color:var(--ivoire)!important}
  .nav > ul > li > a:hover::after,.nav > ul > li > a:focus-visible::after,.nav > ul > li > a[aria-current="page"]::after{transform:scaleX(1)}
  .nav .sous{background:rgba(27,24,21,.97)!important;border-radius:10px!important;box-shadow:0 22px 46px rgba(0,0,0,.3)!important;
    padding:.75rem 1.15rem!important;transform:translateY(6px)!important;
    transition:opacity .25s ease,transform .3s cubic-bezier(.2,.7,.2,1),visibility 0s linear .3s!important}
  .nav .a-sous:hover .sous,.nav .a-sous:focus-within .sous{transform:none!important;
    transition:opacity .25s ease,transform .3s cubic-bezier(.2,.7,.2,1),visibility 0s!important}
  .nav .sous a{font-size:.875rem!important;letter-spacing:.02em;color:rgba(243,237,227,.8)!important;transition:color .2s ease,transform .25s ease}
  .nav .sous a:hover,.nav .sous a:focus-visible{color:var(--ivoire)!important;transform:translateX(3px)}
  .entete .tel{font-weight:400!important;font-size:.875rem;letter-spacing:.04em;opacity:.84}
  .entete .tel:hover,.entete .tel:focus-visible{opacity:1;text-decoration:none!important}
  .entete .langue{font-size:.75rem!important;opacity:.7}
}

/* 5. Menu téléphone : panneau qui s'ouvre et se referme en fondu (animation pilotée par site.js) */
.menu-mobile .panneau{background:#1b1815!important;box-shadow:0 24px 50px rgba(0,0,0,.35)}
.menu-mobile summary span{transition:transform .3s cubic-bezier(.2,.7,.2,1),opacity .2s ease}
.menu-mobile[open] summary span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
.menu-mobile[open] summary span:nth-child(2){opacity:0}
.menu-mobile[open] summary span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}

/* 6. Haut de page, ordinateur : « Parodontie clinique » à gauche, paragraphe et liens à droite, alignés sur la vidéo */
@media (min-width:901px){
  .hero.hero--sobre{--l-hero:max(min(1240px, calc(100vw - 2 * var(--gout)), calc((100vh - 300px) * 16 / 9)), min(720px, calc(100vw - 2 * var(--gout))));padding-top:clamp(96px,12.5vh,132px)!important}
  .hero--sobre .hero__media{width:var(--l-hero)!important}
  .hero--sobre .hero__texte{width:var(--l-hero)!important;max-width:none!important;margin:clamp(24px,4.5vh,48px) auto 0!important;
    display:grid!important;grid-template-columns:minmax(0,1fr) auto;column-gap:clamp(36px,5vw,96px);row-gap:.85rem;
    align-items:center;justify-items:start;text-align:left!important}
  .hero--sobre .hero__texte h1{grid-column:1;grid-row:1 / span 2;align-self:center;margin:0!important;
    font-size:min(clamp(2.4rem,3.3vw,3.4rem), 6.4vh)!important;line-height:1.05;text-wrap:balance}
  .hero--sobre .hero__chapo{grid-column:2;margin:0!important;max-width:none!important;width:min(52ch, 44vw, calc(var(--l-hero) * .56));text-wrap:pretty!important}
  .hero--sobre .hero__actions{grid-column:2;justify-content:flex-start!important;margin:0!important}
}

/* 7. Vidéo du haut de page : bords gauche et droit nets, fondu seulement en haut et en bas (comme les autres vidéos) */
@media (min-width:901px){
  .hero--sobre .hero__media video{
    -webkit-mask-image:linear-gradient(180deg,transparent 0,#000 6%,#000 94%,transparent 100%)!important;
            mask-image:linear-gradient(180deg,transparent 0,#000 6%,#000 94%,transparent 100%)!important;
    -webkit-mask-composite:source-over!important;mask-composite:add!important}
}

/* ================= v26 : caractère plus fin et menu « trois points » (demande du Dr Hazout, 6 octobre 2026, 17 h 01) ================= */

/* 1. Titres : Cormorant Garamond (Garamond aux lettres plus fines et plus élancées) partout où EB Garamond était encore employé.
      font-size-adjust aligne la hauteur des minuscules sur l'ancien caractère : même confort de lecture, dessin plus fin. */
.hero--sobre h1,.approche__tete h2,.approche__etapes h3,.cabinet-v6 h2,.mcd h2,.carte-pu h2,.carte-pu__groupe h3,
.sec:has(> .pu__grille) > h2,.pu__tete h2,.pu__titre,.pu__domaine h3,.chrono h3,.approche__autour,.carte-pu__groupe li,.tarifs dt{
  font-family:"Cormorant Garamond","Cormorant",Garamond,"Times New Roman",serif!important;font-weight:400!important;letter-spacing:.002em}
@supports (font-size-adjust:0.4){
  .hero--sobre h1,.approche__tete h2,.approche__etapes h3,.cabinet-v6 h2,.mcd h2,.carte-pu h2,.carte-pu__groupe h3,
  .sec:has(> .pu__grille) > h2,.pu__tete h2,.pu__titre,.pu__domaine h3,.chrono h3,.approche__autour,.carte-pu__groupe li,.tarifs dt{font-size-adjust:.4}
}
/* petits intitulés : un cran plus appuyé pour rester nets */
.approche__etapes h3,.carte-pu__groupe h3,.pu__domaine h3,.chrono h3,.carte-pu__groupe li,.tarifs dt,.pu__titre{font-weight:500!important}
/* titres déjà en Cormorant : allégés d'un cran sur les grandes tailles */
h1,h2{font-weight:400}
.marque .marque__nom,.marque b{font-weight:400!important;letter-spacing:.01em}

/* 2. Menu (téléphone et petits écrans) : trois petits points au lieu de trois traits, croix fine à l'ouverture */
.menu-mobile summary{position:relative;grid-auto-flow:column!important;gap:4px!important;align-content:center;justify-content:center}
.menu-mobile summary span{width:4px!important;height:4px!important;border-radius:50%;background:currentColor;
  transition:opacity .25s ease,transform .3s cubic-bezier(.2,.7,.2,1)!important;transform:none!important}
.menu-mobile summary::before,.menu-mobile summary::after{content:"";position:absolute;left:50%;top:50%;width:18px;height:1px;background:currentColor;
  opacity:0;transform:translate(-50%,-50%) rotate(0deg);transition:opacity .25s ease,transform .3s cubic-bezier(.2,.7,.2,1)}
.menu-mobile[open] summary span{opacity:0!important;transform:scale(.4)!important}
.menu-mobile[open] summary::before{opacity:1;transform:translate(-50%,-50%) rotate(45deg)}
.menu-mobile[open] summary::after{opacity:1;transform:translate(-50%,-50%) rotate(-45deg)}
.menu-mobile summary:hover span{transform:scale(1.15)!important}
@media (prefers-reduced-motion:reduce){.menu-mobile summary span,.menu-mobile summary::before,.menu-mobile summary::after{transition:none!important}}

/* 3. Haut de page, ordinateur : le titre au ras de la vidéo (posé dans le fondu inférieur), paragraphe aligné sur lui */
@media (min-width:901px){
  .hero--sobre .hero__texte{margin-top:calc(var(--l-hero) * 9 / 16 * -.018)!important;align-items:start!important;position:relative;z-index:1}
  .hero--sobre .hero__texte h1{align-self:start!important}
  .hero--sobre .hero__chapo{padding-top:.55em}
}

/* ================= v27 : téléphone discret dans l'en-tête, sur téléphone (demande du Dr Hazout, 6 octobre 2026, 17 h 20) =================
   Icône fine seule, à gauche de « EN » ; le numéro reste lu par les lecteurs d'écran. */
@media (max-width:560px){
  .entete .outils .tel{display:inline-flex!important;order:-1;align-items:center;justify-content:center;
    width:40px;height:44px;padding:0!important;margin:0!important;font-size:0!important;line-height:0;letter-spacing:0;
    color:inherit;opacity:.82;text-decoration:none!important;-webkit-tap-highlight-color:transparent}
  .entete .outils .tel::before{margin:0!important;width:17px!important;height:17px!important;opacity:1;vertical-align:0}
  .entete .outils .tel:active{opacity:.55}
}

/* Questionnaire « Et vos gencives ? » raccourci (6 octobre 2026, 18 h 10) : une phrase par facteur sous le message */
.qg__note-res{margin:.55rem 0 0;max-width:58ch;font-size:.95rem;line-height:1.55;opacity:.86;padding-left:.9rem;border-left:1px solid currentColor;border-left-color:color-mix(in srgb,currentColor 30%,transparent)}
.qg__note-res + .qg__note-res{margin-top:.4rem}
@media (max-width:560px){
  .qg__grille{grid-template-columns:1fr 1fr!important;gap:10px!important}
  .qg__grille .qg-res--video{grid-column:1 / -1}
  .qg__grille .qg-res--lien{padding:.9rem 1rem!important}
  .qg__grille .qg-res--lien .qg-res__texte{display:none}
  .qg__grille .qg-res--lien .qg-res__titre{font-size:1.15rem!important;line-height:1.2}
}

/* v30 — accueil : vidéo en fond plein écran, voilée, sous le menu ; texte par-dessus (demande du 6 octobre 2026, 18 h 29) */
.hero.hero--sobre{position:relative!important;display:flex!important;flex-direction:column!important;justify-content:flex-end!important;align-items:stretch!important;
  min-height:100vh!important;min-height:100svh!important;padding:0 0 clamp(44px,9vh,104px)!important;background:#14110f!important;overflow:hidden}
.hero--sobre .hero__media{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:none!important;aspect-ratio:auto!important;margin:0!important;transform:none!important}
.hero--sobre .hero__media video{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:50% 40%!important;
  opacity:.62;-webkit-mask-image:none!important;mask-image:none!important;aspect-ratio:auto!important}
.hero--sobre .hero__media::after{display:block!important;content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(180deg,rgba(20,17,15,.62) 0%,rgba(20,17,15,.18) 26%,rgba(20,17,15,.22) 48%,rgba(20,17,15,.78) 78%,#14110f 100%)!important}
.hero--sobre .hero__texte{position:relative!important;z-index:2;margin:0 auto!important;text-shadow:0 1px 18px rgba(10,8,7,.45)}
.hero--sobre .hero__texte h1{color:#f6f1e8!important}
.hero--sobre .hero__chapo{color:rgba(246,241,232,.9)!important}
@media (min-width:901px){
  .hero--sobre .hero__texte{width:min(1240px, calc(100vw - 2 * var(--gout)))!important;margin-top:0!important}
  .hero--sobre .hero__texte h1{font-size:clamp(3rem,5vw,5.2rem)!important;align-self:end!important}
}
@media (max-width:900px){
  .hero--sobre .hero__texte{padding-inline:var(--gout,20px)!important}
  .hero--sobre .hero__texte h1{font-size:clamp(2.5rem,10.6vw,3.6rem)!important;line-height:1.02}
}
.hero--sobre .hero__media video{transition:none!important}
@media (max-width:700px){.hero--sobre .hero__media video{object-position:42% 50%!important}}

/* ================= v37 : tout le site en Cormorant Garamond Light (300) (demande du Dr Hazout, 6 octobre 2026, 20 h 53) =================
   Le texte courant est agrandi automatiquement (font-size-adjust) : Cormorant a des minuscules plus petites
   que l'ancien caractère ; la hauteur des minuscules reste proche de l'ancienne pour garder le confort de lecture.
   Les mots mis en gras gardent un cran de plus (500) pour rester distincts. */
:root{--f-texte:"Cormorant Garamond","Cormorant",Garamond,"Times New Roman",serif!important;--f-titre:"Cormorant Garamond","Cormorant",Garamond,"Times New Roman",serif!important}
html,body,body *,button,input,select,textarea{font-family:"Cormorant Garamond","Cormorant",Garamond,"Times New Roman",serif!important;font-weight:300!important}
b,strong,b *,strong *{font-weight:500!important}
@supports (font-size-adjust:0.4){
  body,body *:not(h1):not(h2):not(h3):not(.marque__nom){font-size-adjust:.45}
  h1,h2,h3,.marque__nom{font-size-adjust:.4}
}
body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;letter-spacing:.005em}
/* petits libellés en capitales (tirets de section, mentions) : un peu d'espace pour rester lisibles en Light */
.qg__titre-res,.sur-titre,.etiquette,.qg-res__sur{letter-spacing:.14em}
/* téléphone : l'en-tête ne montre que l'icône du téléphone (font-size-adjust neutralisé : sinon le numéro réapparaît) */
@media (max-width:560px){
  .entete .outils .tel{font-size:0!important;font-size-adjust:none!important;overflow:hidden;white-space:nowrap;color:inherit}
  .entete .outils .tel::before{font-size-adjust:none!important;flex:none}
}

/* ================= v39 : transitions douces (demande du Dr Hazout, 6 octobre 2026, 21 h 16) =================
   1. Fondu entre les pages : transitions de vue natives du navigateur (Chrome, Edge, Safari récents) ;
      les autres navigateurs changent de page normalement.
   2. Apparition en fondu des blocs de contenu lors du défilement (une seule fois, discrète, sans cascade). */
@view-transition{navigation:auto}
::view-transition-old(root){animation:paro-sortie .32s cubic-bezier(.4,0,.2,1) both}
::view-transition-new(root){animation:paro-entree .52s cubic-bezier(.2,.7,.2,1) .06s both}
@keyframes paro-sortie{to{opacity:0}}
@keyframes paro-entree{from{opacity:0;transform:translateY(8px)}}
/* l'en-tête reste en place pendant le fondu */
.entete{view-transition-name:entete}
::view-transition-group(entete){animation-duration:0s}

.js-fondu .fondu-bloc{opacity:0;transform:translateY(14px);transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform 1.1s cubic-bezier(.2,.7,.2,1)}
.js-fondu .fondu-bloc.est-vu{opacity:1;transform:none}

/* ================= v40 : pas de menu « Télécharger la vidéo » (demande du Dr Hazout, 6 octobre 2026, 21 h 21) =================
   Les vidéos sans commandes ne reçoivent plus le toucher ni le clic droit : un appui long tombe sur le cadre,
   pas sur la vidéo, et le navigateur ne propose plus de l'enregistrer. Les vidéos avec commandes gardent leurs
   commandes ; leur menu est bloqué par site.js. */
video{-webkit-touch-callout:none!important;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}
video:not([controls]){pointer-events:none!important}
.media-protege,.hero__media,.qg-res__cadre,.demo__cadre{-webkit-touch-callout:none!important;-webkit-user-select:none;user-select:none}
img{-webkit-touch-callout:none}

/* ================= v41 : rien de souligné, séparateurs retirés, vidéos en arrière-plan des paragraphes (6 octobre 2026, 21 h 29) ================= */

/* 1. Aucun soulignement, nulle part (liens, boutons, menus, survol) */
a,a:hover,a:focus-visible,.lien,.lien-fin,.lien-discret,.note-google,.liens-liste a,.bouton-fin,.bouton,.bouton.contour,.tel,.qg__retour,.qg-rdv{
  text-decoration:none!important;border-bottom:0!important;box-shadow:none!important}
.nav > ul > li > a::after,.hero__actions a::after,.lien::after,.lien-fin::after{display:none!important}
.lien,.lien-fin{padding-bottom:0!important}
.lisible a,.sec p a,.sec li a{text-decoration:none!important;color:inherit;font-weight:500}

/* 2. Parcours universitaire : plus de petits traits entre les diplômes, ni de trait entre les deux colonnes */
.carte-pu--2 .carte-pu__groupe li + li::before{background:transparent!important;height:0!important;margin:.9rem auto!important}
.carte-pu--2 .carte-pu__grille::before{background:transparent!important}
.carte-pu__groupe h3{border-bottom:0!important}

/* 3. Vidéo en arrière-plan du paragraphe correspondant (voilée, texte par-dessus) */
.fond-video{position:relative;isolation:isolate;overflow:hidden;grid-column:1 / -1;width:100%;
  display:flex;flex-direction:column;justify-content:flex-end;min-height:clamp(420px,66vh,660px);
  padding:clamp(28px,5vw,72px);border-radius:16px;background:#14110f;color:#f6f1e8;margin-block:clamp(12px,2vw,24px)}
.fond-video__media{position:absolute!important;inset:0!important;z-index:-1;margin:0!important;width:auto!important;max-width:none!important;height:auto!important;aspect-ratio:auto!important;pointer-events:none}
.fond-video__media .demo__cadre{position:absolute!important;inset:0!important;margin:0!important;padding:0!important;border-radius:0!important;background:none!important;box-shadow:none!important;aspect-ratio:auto!important;max-width:none!important;width:auto!important;height:auto!important}
.fond-video__media video,.fond-video__media img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;
  object-fit:cover!important;object-position:50% 45%;opacity:.62;margin:0!important;border-radius:0!important;-webkit-mask-image:none!important;mask-image:none!important;aspect-ratio:auto!important}
.fond-video__media::after{content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(180deg,rgba(20,17,15,.45) 0%,rgba(20,17,15,.12) 30%,rgba(20,17,15,.35) 55%,rgba(20,17,15,.86) 82%,rgba(20,17,15,.94) 100%)}
.fond-video__media .lire-demo{z-index:2;pointer-events:auto}
.fond-video__texte{position:relative;max-width:62ch;text-shadow:0 1px 16px rgba(10,8,7,.5)}
.fond-video__texte .intro{display:block!important;margin:0!important;padding:0!important;text-align:left!important;max-width:none!important}
.fond-video h2,.fond-video h3{color:#f8f3ea!important;margin:0 0 .7rem!important}
.fond-video p,.fond-video .lisible{color:rgba(246,241,232,.92)!important;max-width:60ch;margin:0}
.fond-video p + p{margin-top:.8rem}
.fond-video a{color:#f8f3ea!important}
/* étapes du traitement : trois panneaux sombres l'un sous l'autre */
.chrono{display:grid!important;gap:clamp(18px,2.4vw,28px)!important;grid-template-columns:1fr!important}
.chrono__etape{display:block!important;margin:0!important;padding:0!important;border:0!important}
.chrono__etape::before,.chrono__etape::after{display:none!important}
.chrono .fond-video{min-height:clamp(380px,58vh,560px)}
@media (max-width:700px){
  .fond-video{min-height:clamp(440px,78svh,640px);border-radius:12px;padding:24px 20px}
  .fond-video__media video{object-position:50% 40%}
}
.p-accueil .sur-titre{display:none!important}
/* les anciennes règles de largeur des grandes vidéos (v23) ne s'appliquent pas aux vidéos d'arrière-plan */
body .fond-video > .fond-video__media,body .chapitre .fond-video > .fond-video__media.media-grand,body .chapitre-grand .fond-video > .fond-video__media.media-grand,
body .etroit .fond-video > .fond-video__media,body .bande .fond-video > .fond-video__media,body .fond-video > .fond-video__media.plan-video,body .fond-video > .fond-video__media.demo{
  position:absolute!important;top:0!important;left:0!important;right:0!important;bottom:0!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;margin:0!important;padding:0!important;display:block!important}
body .fond-video > .fond-video__media video,body .chapitre .fond-video .media-grand video,body .chapitre-grand .fond-video .media-grand video,body .fond-video .plan-video video{
  position:absolute!important;top:0!important;left:0!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:cover!important;margin:0!important}
.fond-video .lisible,.fond-video p{font-size:clamp(1.02rem,1.15vw,1.16rem)}
.fond-video h3{font-size:clamp(1.6rem,2.4vw,2.3rem)}
/* greffe de gencive : la vidéo entière, sans recadrage (le panneau prend ses proportions 16:9) */
@media (min-width:701px){
  .fond-video--entier{aspect-ratio:16 / 9;min-height:0!important}
}
@media (max-width:700px){
  .fond-video--entier{min-height:0!important;padding:0 0 24px!important;justify-content:flex-start}
  body .chapitre-grand .fond-video.fond-video--entier > .fond-video__media.media-grand,body .chapitre .fond-video.fond-video--entier > .fond-video__media.media-grand{position:relative!important;inset:auto!important;top:auto!important;bottom:auto!important;height:auto!important;aspect-ratio:16 / 9!important;z-index:0}
  .fond-video--entier .fond-video__media::after{background:linear-gradient(180deg,rgba(20,17,15,.2) 0%,rgba(20,17,15,0) 40%,rgba(20,17,15,.6) 80%,#14110f 100%)}
  .fond-video--entier .fond-video__texte{margin-top:-28px;padding:0 20px}
}
.fond-video--entier .fond-video__media video{object-fit:cover!important;object-position:50% 50%!important}

/* ================= v43 : vidéos d'arrière-plan plus claires ; téléphone : vidéo entière, pleine largeur,
   fondu en haut et en bas, titre dans le haut de la vidéo, explication dessous (6 octobre 2026, 21 h 45) ================= */

/* plus clair, partout */
.fond-video__media video{opacity:.86!important}
.fond-video__media::after{background:linear-gradient(180deg,rgba(20,17,15,.32) 0%,rgba(20,17,15,0) 26%,rgba(20,17,15,.08) 52%,rgba(20,17,15,.66) 80%,rgba(20,17,15,.88) 100%)!important}

@media (max-width:700px){
  body .fond-video,body .chrono .fond-video,body .fond-video.fond-video--entier{
    display:block!important;position:relative;min-height:0!important;aspect-ratio:auto!important;
    width:100vw!important;max-width:none!important;margin:0 0 0 calc(50% - 50vw)!important;padding:0 0 28px!important;
    border-radius:0!important;background:#14110f}
  /* la vidéo dans ses proportions d'origine, sur toute la largeur */
  body .fond-video > .fond-video__media,body .chapitre .fond-video > .fond-video__media.media-grand,body .chapitre-grand .fond-video > .fond-video__media.media-grand,
  body .chapitre-grand .fond-video.fond-video--entier > .fond-video__media.media-grand,body .chapitre .fond-video.fond-video--entier > .fond-video__media.media-grand,
  body .fond-video > .fond-video__media.plan-video,body .fond-video > .fond-video__media.demo{
    position:relative!important;top:auto!important;left:auto!important;right:auto!important;bottom:auto!important;inset:auto!important;
    width:100%!important;height:auto!important;aspect-ratio:auto!important;z-index:0;display:block!important}
  body .fond-video .fond-video__media .demo__cadre{position:relative!important;inset:auto!important;width:100%!important;height:auto!important}
  body .fond-video > .fond-video__media video,body .chapitre .fond-video .media-grand video,body .chapitre-grand .fond-video .media-grand video,body .fond-video .plan-video video,
  body .fond-video .fond-video__media .demo__cadre video{
    position:relative!important;top:auto!important;left:auto!important;inset:auto!important;width:100%!important;height:auto!important;object-fit:contain!important;opacity:.9!important;display:block;
    -webkit-mask-image:linear-gradient(180deg,transparent 0,#000 14%,#000 80%,transparent 100%)!important;
            mask-image:linear-gradient(180deg,transparent 0,#000 14%,#000 80%,transparent 100%)!important}
  /* voile léger en haut seulement, pour lire le titre posé sur la vidéo */
  body .fond-video .fond-video__media::after{background:linear-gradient(180deg,rgba(20,17,15,.62) 0%,rgba(20,17,15,.25) 26%,rgba(20,17,15,0) 46%)!important}
  /* titre dans le haut de la vidéo, explication dessous */
  .fond-video__texte{position:static!important;max-width:none!important;padding:0 20px!important;margin-top:-6px!important;text-shadow:none}
  .fond-video__texte .intro{position:static!important}
  .fond-video h2,.fond-video h3{position:absolute!important;top:18px;left:20px;right:20px;z-index:2;margin:0!important;
    text-shadow:0 1px 14px rgba(10,8,7,.6)}
  .fond-video h2{font-size:clamp(1.7rem,7.4vw,2.2rem)!important;line-height:1.08}
  .fond-video h3{font-size:clamp(1.5rem,6.6vw,1.95rem)!important;line-height:1.1}
  .fond-video .fond-video__media .lire-demo{z-index:3}
}
@media (max-width:700px){body .chapitre .fond-video,body .chapitre .fond-video.fond-video--entier{background:transparent!important}}

/* ================= v44 : vidéos d'arrière-plan fondues dans la couleur de leur section (6 octobre 2026, 21 h 55) =================
   Aucun panneau, aucun bord, aucun coin arrondi : la vidéo garde ses proportions d'origine (rien n'est rogné),
   se fond en haut et en bas dans le fond de la section (beige ou foncé) ; le titre de l'acte est posé dans le haut
   de la vidéo, l'explication suit dessous, dans la couleur de texte de la section. */
html body .fond-video,html body .chrono .fond-video,html body .fond-video.fond-video--entier,html body .chapitre .fond-video,html body .chapitre .fond-video.fond-video--entier{
  display:grid!important;justify-items:start;position:relative;isolation:auto;overflow:visible!important;
  background:transparent!important;border-radius:0!important;border:0!important;box-shadow:none!important;
  min-height:0!important;aspect-ratio:auto!important;padding:0!important;color:inherit!important;
  width:fit-content!important;max-width:100%!important;margin:clamp(8px,2vw,20px) auto!important}
html body .fond-video > .fond-video__media,html body .chapitre .fond-video > .fond-video__media.media-grand,html body .chapitre-grand .fond-video > .fond-video__media.media-grand,
html body .chapitre-grand .fond-video.fond-video--entier > .fond-video__media.media-grand,html body .chapitre .fond-video.fond-video--entier > .fond-video__media.media-grand,
html body .fond-video > .fond-video__media.plan-video,html body .fond-video > .fond-video__media.demo{
  position:relative!important;inset:auto!important;top:auto!important;left:auto!important;right:auto!important;bottom:auto!important;
  width:auto!important;max-width:100%!important;height:auto!important;aspect-ratio:auto!important;margin:0!important;padding:0!important;z-index:0;display:block!important;background:none!important}
html body .fond-video .fond-video__media .demo__cadre{position:relative!important;inset:auto!important;width:auto!important;height:auto!important;background:none!important;border-radius:0!important;box-shadow:none!important}
html body .fond-video .fond-video__media::after{display:none!important;content:none!important}
html body .fond-video .fond-video__media video,html body .chapitre .fond-video .media-grand video,html body .chapitre-grand .fond-video .media-grand video,html body .fond-video .plan-video video{
  position:relative!important;inset:auto!important;top:auto!important;left:auto!important;display:block!important;
  width:auto!important;max-width:100%!important;height:auto!important;max-height:min(78vh,760px)!important;object-fit:contain!important;opacity:1!important;border-radius:0!important;
  -webkit-mask-image:linear-gradient(180deg,transparent 0,#000 20%,#000 80%,transparent 100%)!important;
          mask-image:linear-gradient(180deg,transparent 0,#000 20%,#000 80%,transparent 100%)!important}
/* l'explication prend la largeur de la vidéo, sans l'élargir */
html body .fond-video .fond-video__texte{position:static!important;width:0;min-width:100%;max-width:none!important;padding:clamp(4px,1vw,10px) 0 0!important;margin:0!important;text-shadow:none!important;color:inherit!important}
html body .fond-video .fond-video__texte .intro{position:static!important;display:block!important;margin:0!important;padding:0!important;text-align:left!important}
html body .fond-video p,html body .fond-video .lisible{color:inherit!important;opacity:.92;max-width:68ch;font-size:clamp(1.02rem,1.15vw,1.16rem)}
html body .fond-video a{color:inherit!important}
/* titre posé dans le haut de la vidéo (dans la zone fondue, donc lisible sur la couleur de la section) */
html body .fond-video h2,html body .fond-video h3{position:absolute!important;top:clamp(6px,1.4vw,18px);left:clamp(14px,2.4vw,32px);right:clamp(14px,2.4vw,32px);z-index:2;
  margin:0!important;color:inherit!important;text-shadow:none!important}
html body .approche .fond-video h3{color:#1d1b18!important}
html body .chapitre .fond-video h2,html body .chapitre .fond-video h3{color:#f8f3ea!important;text-shadow:0 1px 14px rgba(0,0,0,.35)!important}
html body .fond-video h2{font-size:clamp(1.7rem,3vw,2.6rem)!important;line-height:1.08}
html body .fond-video h3{font-size:clamp(1.5rem,2.4vw,2.2rem)!important;line-height:1.1}

/* téléphone : la vidéo sur toute la largeur de l'écran */
@media (max-width:700px){
  html body .fond-video,html body .chrono .fond-video,html body .fond-video.fond-video--entier,html body .chapitre .fond-video,html body .chapitre .fond-video.fond-video--entier{
    width:100vw!important;max-width:none!important;margin:6px 0 6px calc(50% - 50vw)!important}
  html body .fond-video > .fond-video__media,html body .chapitre .fond-video > .fond-video__media.media-grand,html body .chapitre-grand .fond-video > .fond-video__media.media-grand,
  html body .chapitre-grand .fond-video.fond-video--entier > .fond-video__media.media-grand,html body .chapitre .fond-video.fond-video--entier > .fond-video__media.media-grand,
  html body .fond-video > .fond-video__media.plan-video,html body .fond-video > .fond-video__media.demo,html body .fond-video .fond-video__media .demo__cadre{width:100%!important}
  html body .fond-video .fond-video__media video,html body .chapitre .fond-video .media-grand video,html body .chapitre-grand .fond-video .media-grand video,html body .fond-video .plan-video video{width:100%!important;max-height:none!important}
  html body .fond-video .fond-video__texte{padding:2px 20px 0!important}
  html body .fond-video h2,html body .fond-video h3{top:4px;left:20px;right:20px}
  html body .fond-video h2{font-size:clamp(1.7rem,7.4vw,2.2rem)!important}
  html body .fond-video h3{font-size:clamp(1.5rem,6.6vw,1.95rem)!important}
}
html body .chrono .chrono__etape{display:grid!important;justify-items:center!important}
@media (min-width:701px){html body .chapitre .wrap > .fond-video,html body .chapitre-grand > .fond-video{justify-self:center!important;margin-inline:auto!important}}
/* largeurs fixées d'après le format de chaque vidéo (la taille réelle n'est connue qu'au chargement) */
@media (min-width:701px){
  html body .fond-video,html body .chrono .fond-video,html body .chapitre .fond-video,html body .chapitre .fond-video.fond-video--entier{width:min(100%,1120px)!important}
  html body .chrono .fond-video{width:min(100%,980px)!important}
  html body section[aria-labelledby="h-plan"] .fond-video{width:min(100%,640px)!important}
  html body .fond-video > .fond-video__media,html body .chapitre .fond-video > .fond-video__media.media-grand,html body .chapitre-grand .fond-video > .fond-video__media.media-grand,
  html body .chapitre-grand .fond-video.fond-video--entier > .fond-video__media.media-grand,html body .chapitre .fond-video.fond-video--entier > .fond-video__media.media-grand,
  html body .fond-video > .fond-video__media.plan-video,html body .fond-video > .fond-video__media.demo,html body .fond-video .fond-video__media .demo__cadre{width:100%!important}
  html body .fond-video .fond-video__media video,html body .chapitre .fond-video .media-grand video,html body .chapitre-grand .fond-video .media-grand video,html body .fond-video .plan-video video{width:100%!important;max-height:none!important}
}
@media (max-width:700px){ html body .chrono .chrono__etape{display:block!important} }

@media (max-width:700px){html body .fond-video{justify-items:stretch!important;justify-self:start!important}}
/* v45 : titre de l'acte en bas à gauche de la vidéo (dans le fondu inférieur), explication juste dessous */
html body .fond-video h2,html body .fond-video h3{position:relative!important;top:auto!important;left:auto!important;right:auto!important;z-index:2;
  margin:-1.55em 0 .55rem clamp(14px,2.4vw,32px)!important}
html body .fond-video .fond-video__texte{padding-top:0!important}
html body .fond-video .fond-video__texte p,html body .fond-video .fond-video__texte .lisible{padding-left:clamp(14px,2.4vw,32px)}
@media (max-width:700px){
  html body .fond-video h2,html body .fond-video h3{margin:-1.45em 0 .5rem 0!important}
  html body .fond-video .fond-video__texte p,html body .fond-video .fond-video__texte .lisible{padding-left:0}
}
/* v46 : plus de bande claire entre les sections vidéo (marge qui sortait des sections), vidéos plus rapprochées */
.p-accueil main > section{display:flow-root}
html body .fond-video,html body .chrono .fond-video,html body .chapitre .fond-video,html body .chapitre .fond-video.fond-video--entier{margin-top:0!important;margin-bottom:0!important}
.p-accueil .chapitre{padding-top:clamp(20px,3vw,40px)!important;padding-bottom:clamp(20px,3vw,40px)!important}
.p-accueil .chapitre .wrap{row-gap:clamp(14px,2vw,24px)!important}
.p-accueil main > .fondu{height:clamp(48px,7vw,110px)!important;margin-top:-1px!important;margin-bottom:-1px!important}
.p-accueil .chrono{gap:clamp(10px,1.6vw,20px)!important}

/* ================= v47 : textes posés dans la vidéo à la bonne hauteur, suite noire grille → planification → mise en place,
   accès compact, carte affichée d'office (6 octobre 2026, 22 h 11) ================= */

/* 1. Position du titre et de l'explication dans chaque vidéo.
   --r : hauteur / largeur de la vidéo ; --h : hauteur (fraction) où commence le texte ;
   --f0, --f1, --f2 : fondu haut (fin), fondu bas (début, fin) */
html body .fond-video{--r:.5625;--h:.86;--f0:20%;--f1:80%;--f2:100%}
html body .fond-video .fond-video__media video,html body .chapitre .fond-video .media-grand video,html body .chapitre-grand .fond-video .media-grand video,html body .fond-video .plan-video video{
  -webkit-mask-image:linear-gradient(180deg,transparent 0,#000 var(--f0),#000 var(--f1),transparent var(--f2))!important;
          mask-image:linear-gradient(180deg,transparent 0,#000 var(--f0),#000 var(--f1),transparent var(--f2))!important}
html body .fond-video .fond-video__texte{position:relative!important;z-index:2;margin-top:calc((var(--h) - 1) * var(--r) * 100%)!important;padding-top:0!important}
html body .fond-video h2,html body .fond-video h3{margin:0 0 .55rem!important;padding-left:clamp(0px,2.4vw,32px)}
@media (max-width:700px){html body .fond-video h2,html body .fond-video h3{padding-left:0}}
/* surfaçage : sous la gencive enflammée */
html body .chrono .chrono__etape:nth-child(1) .fond-video{--r:.714;--h:.60;--f1:46%;--f2:70%}
/* laser diode : sous le collet et le liseré rouge */
html body .chrono .chrono__etape:nth-child(2) .fond-video{--r:.714;--h:.66;--f1:54%;--f2:76%}
/* laser Er:YAG : un peu plus haut qu'avant */
html body .chrono .chrono__etape:nth-child(3) .fond-video{--r:.714;--h:.80;--f1:68%;--f2:90%}
/* greffe de gencive : légèrement plus haut, dans le noir sous les dents */
html body section[aria-labelledby="h-greffe"] .fond-video{--r:.5625;--h:.79;--f1:76%;--f2:98%}
/* implants : dans le noir juste sous les dents */
html body section[aria-labelledby="h-impl"] .fond-video{--r:.5625;--h:.68;--f1:82%;--f2:100%}
html body section[aria-labelledby="h-impl"] .fond-video__texte{max-width:min(54ch,52%)}
@media (max-width:700px){html body section[aria-labelledby="h-impl"] .fond-video{--h:.72}html body section[aria-labelledby="h-impl"] .fond-video__texte{max-width:none}}
/* planification : sous le nerf (en rouge) */
html body section[aria-labelledby="h-plan"] .fond-video{--r:1;--h:.80;--f0:14%;--f1:72%;--f2:94%}
/* mise en place : le texte en haut de la vidéo */
html body section[aria-labelledby="h-pose"] .fond-video{--r:.5625;--h:.03;--f0:42%;--f1:84%;--f2:100%}

/* 2. Suite continue sur fond noir : grille → planification → mise en place, sans bande intermédiaire */
.p-accueil section[aria-labelledby="h-grille"] + .fondu,.p-accueil section[aria-labelledby="h-plan"] + .fondu{display:none!important}
.p-accueil section[aria-labelledby="h-plan"]{background:#000!important;padding-top:0!important;padding-bottom:0!important}
.p-accueil section[aria-labelledby="h-grille"]{padding-bottom:clamp(8px,1.5vw,20px)!important}
.p-accueil section[aria-labelledby="h-pose"]{padding-top:clamp(8px,1.5vw,20px)!important}
/* la vidéo de planification (fond gris) se fond aussi sur les côtés, dans le noir */
html body section[aria-labelledby="h-plan"] .fond-video .plan-video video{
  -webkit-mask-image:linear-gradient(180deg,transparent 0,#000 var(--f0),#000 var(--f1),transparent var(--f2)),linear-gradient(90deg,transparent 0,#000 16%,#000 84%,transparent 100%)!important;
          mask-image:linear-gradient(180deg,transparent 0,#000 var(--f0),#000 var(--f1),transparent var(--f2)),linear-gradient(90deg,transparent 0,#000 16%,#000 84%,transparent 100%)!important;
  -webkit-mask-composite:source-in!important;mask-composite:intersect!important}
/* grille seule : vidéo rapprochée de son texte */
.p-accueil section[aria-labelledby="h-grille"] .wrap{row-gap:0!important}
.p-accueil section[aria-labelledby="h-grille"] .intro{margin-bottom:0!important;padding-bottom:0!important}
.p-accueil section[aria-labelledby="h-grille"] .media-grand{margin-top:clamp(-40px,-3vw,-12px)!important}

/* 3. Accès : nom, itinéraire et téléphone sur une ligne ; transports condensés */
.acces-tete{display:flex;flex-wrap:wrap;align-items:baseline;gap:.35rem 1.4rem;margin-bottom:.6rem}
.acces-nom{font-size:1.18rem;font-weight:500!important}
.acces-lien{display:inline-flex;align-items:center;gap:.4rem;font-size:.98rem;color:inherit;white-space:nowrap;min-height:40px}
.acces-lien .ico{width:16px;height:16px;flex:none;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;opacity:.85}
.acces-lien:hover{opacity:.75}
.adresse-bloc address{font-style:normal;line-height:1.45;font-size:1rem}
.acces-resume{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:.35rem 1.4rem!important;margin-top:1rem!important;font-size:.9rem;line-height:1.35}
.acces-resume > div{display:flex!important;gap:.5rem;align-items:baseline;padding:0!important;border:0!important;margin:0!important}
.acces-resume dt{flex:none;font-weight:500!important;font-size:.82rem;letter-spacing:.02em;min-width:5.6em;margin:0!important}
.acces-resume dd{margin:0!important;opacity:.85}
/* carte : affichée d'office, plus de texte d'attente */
.carte-zone .carte-contenu .mention{font-size:.78rem}
.carte-zone iframe{min-height:clamp(300px,42vh,460px)}
@media (max-width:700px){
  /* mise en place : sur téléphone, le texte juste au-dessus de la vidéo (trop longue pour tenir dessus) */
  html body section[aria-labelledby="h-pose"] .fond-video .fond-video__texte{order:-1;margin-top:0!important;margin-bottom:calc(-.12 * var(--r) * 100%)!important}
  html body section[aria-labelledby="h-pose"] .fond-video{--f0:30%}
  html body section[aria-labelledby="h-impl"] .fond-video__texte{margin-top:calc((var(--h) - 1) * var(--r) * 100%)!important}
}
html body section[aria-labelledby="h-impl"] .fond-video__texte{max-width:min(54ch,46%)}
@media (max-width:700px){html body section[aria-labelledby="h-impl"] .fond-video__texte{max-width:none}}
.carte-zone .carte-contenu[hidden],.carte-zone .carte-fond[hidden]{display:none!important}
.carte-zone iframe{display:block;width:100%;border:0;border-radius:inherit}
/* v48 : titre de l'acte dans le fondu supérieur de la vidéo ; le paragraphe reste à sa place */
html body .fond-video .fond-video__texte{position:static!important}
html body .fond-video .fond-video__texte > *,html body .fond-video .fond-video__texte .intro > *{position:relative;z-index:2}
html body .fond-video h2,html body .fond-video h3{position:absolute!important;top:clamp(2px,1vw,14px)!important;left:clamp(14px,2.4vw,32px)!important;right:clamp(14px,2.4vw,32px);z-index:3!important;margin:0!important;padding-left:0!important}
@media (max-width:700px){html body .fond-video h2,html body .fond-video h3{top:2px!important;left:20px!important;right:20px}}
/* mise en place (texte en haut) : le paragraphe sous le titre */
@media (min-width:701px){html body section[aria-labelledby="h-pose"] .fond-video{--h:.13}}
@media (max-width:700px){html body section[aria-labelledby="h-pose"] .fond-video h3{position:relative!important;top:auto!important;left:auto!important;margin:0 0 .5rem!important}}
/* ================= v49 (6 octobre 2026, 22 h 24) ================= */
/* plus d'air entre les blocs et entre les paragraphes */
.p-accueil .chrono{gap:clamp(36px,5vw,72px)!important}
html body .fond-video .fond-video__texte p + p,html body .fond-video .fond-video__texte .intro p + p{margin-top:1rem!important}
html body .fond-video .fond-video__texte .lisible,html body .fond-video .fond-video__texte p{line-height:1.6}
.p-accueil .chapitre .wrap > .fond-video + *{margin-top:clamp(20px,3vw,40px)!important}
/* implants : titre dans le noir juste au-dessus de la vidéo, texte un peu plus bas */
html body section[aria-labelledby="h-impl"] .fond-video h2{top:auto!important;bottom:100%!important;margin-bottom:-.15em!important}
html body section[aria-labelledby="h-impl"] .fond-video{--h:.73;margin-top:clamp(36px,4vw,56px)!important}
@media (max-width:700px){html body section[aria-labelledby="h-impl"] .fond-video{--h:.78}}
/* planification : plus d'espace sous la légende de la grille */
.p-accueil section[aria-labelledby="h-plan"]{padding-top:clamp(28px,4vw,56px)!important}
/* mise en place : titre dans le fondu du haut, texte juste sous la vidéo, comme les autres */

html body section[aria-labelledby="h-pose"] .fond-video{--h:.9!important;--f0:20%!important;--f1:80%!important;--f2:100%!important}
@media (max-width:700px){
  html body section[aria-labelledby="h-pose"] .fond-video .fond-video__texte{order:0!important;margin-bottom:0!important;margin-top:calc((var(--h) - 1) * var(--r) * 100%)!important}
  html body section[aria-labelledby="h-pose"] .fond-video h3{position:absolute!important;top:2px!important;left:20px!important;margin:0!important}
}
/* santé générale : vidéo en fond du paragraphe */
html body .fond-video--sante{--r:.5625;--h:.74;--f1:70%;--f2:96%}
.p-accueil .sante{padding-block:clamp(28px,4vw,56px)!important;min-height:0!important;display:block!important}
html body .fond-video--sante .themes{position:relative;z-index:2;margin-top:1rem}
html body .fond-video--sante .themes a{color:inherit!important}
@media (max-width:700px){html body .fond-video--sante{--r:1.5;--h:.62;--f1:56%;--f2:90%}}
html body .sante .fond-video--sante > .fond-video__media.sante__media{position:relative!important;inset:auto!important;width:100%!important;height:auto!important;max-width:100%!important;opacity:1!important;transform:none!important}
html body .sante .fond-video--sante .sante__media video{position:relative!important;inset:auto!important;width:100%!important;height:auto!important;max-width:100%!important;max-height:none!important;object-fit:contain!important;aspect-ratio:auto!important}
html body .sante .fond-video--sante{width:min(100%,1120px)!important}
@media (max-width:700px){html body .sante .fond-video--sante{width:100vw!important}}
@media (max-width:700px){html body .sante .fond-video--sante .sante__media video{aspect-ratio:720 / 1080!important}}
@media (min-width:701px){html body .sante .fond-video--sante .sante__media video{aspect-ratio:1600 / 900!important}}
/* v50 : greffe de gencive sans couleur intermédiaire : le rose de la vidéo se fond dans le beige en haut,
   le noir de la vidéo continue en bas ; les dégradés bordeaux avant et après la section sont retirés */
.p-accueil .approche + .fondu.court{display:none!important}
.p-accueil section[aria-labelledby="h-greffe"]{
  --lv:min(1120px, calc(100vw - 2 * var(--gout, 24px)));
  background:linear-gradient(180deg,#f3ede3 0,#f3ede3 calc(40px + var(--lv) * .5625 * .3),#000 calc(40px + var(--lv) * .5625 * .34),#000 100%)!important;
  padding-top:clamp(20px,3vw,40px)!important}
@media (max-width:700px){.p-accueil section[aria-labelledby="h-greffe"]{--lv:100vw;
  background:linear-gradient(180deg,#f3ede3 0,#f3ede3 calc(20px + 100vw * .5625 * .3),#000 calc(20px + 100vw * .5625 * .34),#000 100%)!important}}
.p-accueil section[aria-labelledby="h-greffe"] + .fondu{display:none!important}
/* titre dans le fondu supérieur (sur le beige) : foncé */
html body section[aria-labelledby="h-greffe"] .fond-video h2{color:#1d1b18!important;text-shadow:none!important}
/* masque : fondu haut un peu plus long pour une transition douce du rose vers le beige */
html body section[aria-labelledby="h-greffe"] .fond-video{--f0:24%}
@media (min-width:701px){.p-accueil section[aria-labelledby="h-greffe"]{
  background:linear-gradient(180deg,#f3ede3 0,#f3ede3 calc(30px + var(--lv) * .5625 * .22),#cfc8bd calc(30px + var(--lv) * .5625 * .32),#6b6762 calc(30px + var(--lv) * .5625 * .48),#000 calc(30px + var(--lv) * .5625 * .68),#000 100%)!important}}
/* v51 : greffe — la vidéo entière (rien n'est rogné) ; le fondu se fait au-dessus de la vidéo, du beige vers le rose de son bord ;
   titre plus haut, dans le beige, au-dessus du fondu */
html body section[aria-labelledby="h-greffe"] .fond-video .fond-video__media video{-webkit-mask-image:none!important;mask-image:none!important}
html body section[aria-labelledby="h-greffe"] .fond-video{padding-top:clamp(40px,5vw,72px)!important;margin-top:clamp(52px,6vw,84px)!important;position:relative}
html body section[aria-labelledby="h-greffe"] .fond-video::before{content:"";position:absolute;left:0;right:0;top:0;height:clamp(40px,5vw,72px);z-index:1;pointer-events:none;
  background:linear-gradient(180deg,rgba(243,237,227,1) 0%,rgba(166,89,92,.35) 55%,#a6595c 100%)}
html body section[aria-labelledby="h-greffe"] .fond-video h2{top:auto!important;bottom:100%!important;margin:0 0 .2em!important}
@media (min-width:701px){.p-accueil section[aria-labelledby="h-greffe"]{
  background:linear-gradient(180deg,#f3ede3 0,#f3ede3 calc(150px + var(--lv) * .5625 * .22),#cfc8bd calc(150px + var(--lv) * .5625 * .32),#6b6762 calc(150px + var(--lv) * .5625 * .48),#000 calc(150px + var(--lv) * .5625 * .68),#000 100%)!important}}
@media (max-width:700px){.p-accueil section[aria-labelledby="h-greffe"]{
  background:linear-gradient(180deg,#f3ede3 0,#f3ede3 calc(120px + 100vw * .5625 * .3),#000 calc(120px + 100vw * .5625 * .34),#000 100%)!important}}
html body section[aria-labelledby="h-greffe"] .chapitre-grand .fond-video.fond-video--entier,html body section[aria-labelledby="h-greffe"] .fond-video.fond-video--entier{padding-top:clamp(40px,5vw,72px)!important}
@media (max-width:700px){html body section[aria-labelledby="h-greffe"] .fond-video{--h:.92}}
html body section[aria-labelledby="h-greffe"] .fond-video::before{background:linear-gradient(180deg,#f3ede3 0%,#ecd9d3 30%,#d6a6a2 62%,#ab5c5d 100%)!important}
html body section[aria-labelledby="h-greffe"] .fond-video h2{bottom:calc(100% - clamp(40px,5vw,72px) * .45)!important;margin:0!important}
/* v53 : les titres des actes (greffe, implants) à la même taille que les autres */
html body .fond-video h2{font-size:clamp(1.5rem,2.4vw,2.2rem)!important;line-height:1.1}
@media (max-width:700px){html body .fond-video h2{font-size:clamp(1.5rem,6.6vw,1.95rem)!important}}

/* ================= v60 : révision complète de l'organisation, du design et de la navigation (6–7 octobre 2026) =================
   Règles communes à toutes les pages, FR et EN. Les couches précédentes restent chargées ; celle-ci les complète et les
   remplace là où elles se contredisaient. */

/* ---------- 0. Mesures communes ---------- */
:root{--titre-section:clamp(1.5rem,2.4vw,2.2rem);--esp-section:clamp(56px,7vw,104px);--colonne:62ch;--media-max:1120px}
@media (max-width:700px){:root{--titre-section:clamp(1.5rem,6.6vw,1.95rem)}}

/* ---------- 1. En-tête : menu supérieur simplifié (sept rubriques) ---------- */
@media (min-width:1181px){
  .entete .wrap{gap:clamp(1rem,1.6vw,1.8rem)}
  .nav{flex:1 1 auto;justify-content:center;min-width:0}
  .nav ul{gap:clamp(.9rem,1.3vw,1.4rem)!important;flex-wrap:nowrap}
  .entete .wrap{max-width:1440px}
  .nav > ul > li > a{font-size:.86rem!important;letter-spacing:.03em!important;white-space:nowrap;color:rgba(243,237,227,.74)!important}
  .nav > ul > li > a[aria-current="page"]{color:var(--ivoire)!important}
  /* sous-menus : apparition retenue (aucune ouverture au simple passage rapide de la souris), fermeture adoucie */
  .nav .sous{left:50%!important;min-width:min(300px,80vw)!important;padding:.85rem 1.2rem .95rem!important;gap:0!important;
    transform:translate(-50%,6px)!important;
    transition:opacity .28s ease .16s,transform .34s cubic-bezier(.2,.7,.2,1) .16s,visibility 0s linear .5s!important}
  .nav .a-sous:hover .sous,.nav .a-sous:focus-within .sous{transform:translate(-50%,0)!important;
    transition:opacity .28s ease .12s,transform .34s cubic-bezier(.2,.7,.2,1) .12s,visibility 0s linear .12s!important}
  .nav .a-sous:last-child .sous{left:auto!important;right:-1rem;transform:translate(0,6px)!important}
  .nav .a-sous:last-child:hover .sous,.nav .a-sous:last-child:focus-within .sous{transform:none!important}
  .nav .sous a{padding:.42rem 0!important;line-height:1.3;white-space:normal}
  .nav .sous a:first-child{color:var(--ivoire)!important;padding-bottom:.55rem!important}
  /* pont invisible entre l'intitulé et son sous-menu : la souris peut y descendre sans le refermer */
  .nav .a-sous::after{content:"";position:absolute;left:-.6rem;right:-.6rem;top:100%;height:14px}
}
/* entre 1181 et 1399 px : le numéro de téléphone devient une icône, pour que les sept rubriques tiennent sur une ligne */
@media (min-width:1181px) and (max-width:1399px){
  .entete .outils .tel{font-size:0!important;font-size-adjust:none!important;width:40px;height:44px;padding:0!important;display:inline-flex!important;align-items:center;justify-content:center;overflow:hidden;white-space:nowrap}
  .entete .outils .tel::before{margin:0!important;width:17px!important;height:17px!important;flex:none}
}
@media (min-width:1181px) and (max-width:1279px){
  .marque .marque__ligne{display:none}
}

/* ---------- 2. Menu téléphone et tablette : une ligne par rubrique, la flèche déplie ses pages ---------- */
.menu-mobile .panneau{padding:.6rem 1.15rem 1.2rem!important;gap:0!important;border-radius:14px!important}
.m-rub{border-bottom:1px solid rgba(243,237,227,.08)}
.m-rub:last-of-type{border-bottom:0}
.m-rub__tete{display:flex;align-items:center;justify-content:space-between;gap:.5rem}
.menu-mobile .panneau a.m-top{flex:1 1 auto;min-height:48px;display:flex;align-items:center;padding:.35rem 0!important;font-size:1.32rem!important;line-height:1.15;color:var(--ivoire)!important}
.menu-mobile .panneau a.m-top[aria-current="page"]{color:#f8f3ea!important}
.m-ouvrir{flex:none;display:grid;place-items:center;width:44px;height:44px;margin-right:-10px;padding:0;border:0;background:none;color:rgba(243,237,227,.7);cursor:pointer;border-radius:50%;-webkit-tap-highlight-color:transparent}
.m-ouvrir svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round;transition:transform .32s cubic-bezier(.2,.7,.2,1)}
.m-ouvrir[aria-expanded="true"] svg{transform:rotate(180deg)}
.m-ouvrir:hover,.m-ouvrir:focus-visible{color:var(--ivoire)}
.m-sous{display:grid;padding:0 0 .7rem .1rem}
.m-sous[hidden]{display:none}
.menu-mobile .panneau .m-sous a{padding:.42rem 0!important;min-height:40px;display:flex;align-items:center;font-size:1.02rem;color:rgba(243,237,227,.78)!important}
.menu-mobile .panneau .m-sous a:first-child{color:rgba(243,237,227,.92)!important}
.menu-mobile .m-appel{margin-top:1.1rem!important}
@media (prefers-reduced-motion:reduce){.m-ouvrir svg{transition:none}}

/* ---------- 3. Accueil : titres de même taille, sections centrées sur l'axe de leurs médias ---------- */
.p-accueil main h2{font-size:var(--titre-section)!important;line-height:1.1;letter-spacing:.005em}
.p-accueil .praticien h2{margin-bottom:.2rem}

/* ---------- 4. Accueil : les rubriques ----------
   Chaque vidéo porte en haut et en bas une marge prolongée (reflet de son bord, de plus en plus flou), ajoutée hors de l'image :
   le fondu vers le fond de la section se fait dans cette marge ; l'image d'origine reste entière, sans rognage ni voile.
   --m : part de la hauteur occupée par chaque marge ; --mh : hauteur d'une marge en largeur de cadre (cqw), ~7,8 % pour toutes. */
.rub{--rub-fond:var(--ivoire);--rub-texte:#1d1b18;--rub-ratio:.71875;--m:10.87%;--mh:7.8cqw;
  position:relative;isolation:isolate;overflow:clip;background:var(--rub-fond);color:var(--rub-texte);
  padding:clamp(40px,5.5vw,80px) 0 clamp(48px,6vw,84px)}
.rub + .rub{padding-top:clamp(24px,3.5vw,48px)}
.rub__cadre{position:relative;container-type:inline-size;margin-inline:auto;
  width:min(100%, var(--media-max));width:min(100%, var(--media-max), calc(86vh / var(--rub-ratio)));width:min(100%, var(--media-max), calc(86svh / var(--rub-ratio)))}
.rub__titre{position:relative;z-index:2;margin:0 auto calc(var(--mh) * -.5)!important;padding-inline:var(--gout);
  max-width:min(100%, 52ch);text-align:center;color:inherit;font-size:var(--titre-section)!important;line-height:1.1;text-wrap:balance}
.rub__media{position:relative;margin:0}
html body .rub__media video{display:block;width:100%!important;height:auto!important;max-width:none!important;max-height:none!important;
  border-radius:0!important;object-fit:contain!important;opacity:1!important;
  -webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,0) 0,rgba(0,0,0,.1) calc(var(--m) * .25),rgba(0,0,0,.5) calc(var(--m) * .5),rgba(0,0,0,.9) calc(var(--m) * .75),#000 var(--m),#000 calc(100% - var(--m)),rgba(0,0,0,.9) calc(100% - var(--m) * .75),rgba(0,0,0,.5) calc(100% - var(--m) * .5),rgba(0,0,0,.1) calc(100% - var(--m) * .25),rgba(0,0,0,0) 100%)!important;
          mask-image:linear-gradient(180deg,rgba(0,0,0,0) 0,rgba(0,0,0,.1) calc(var(--m) * .25),rgba(0,0,0,.5) calc(var(--m) * .5),rgba(0,0,0,.9) calc(var(--m) * .75),#000 var(--m),#000 calc(100% - var(--m)),rgba(0,0,0,.9) calc(100% - var(--m) * .75),rgba(0,0,0,.5) calc(100% - var(--m) * .5),rgba(0,0,0,.1) calc(100% - var(--m) * .25),rgba(0,0,0,0) 100%)!important}
.rub__media .lire-demo{z-index:3}
.rub__texte{position:relative;z-index:2;width:min(100% - 2 * var(--gout), var(--colonne));margin:calc(var(--mh) * -.42) auto 0}
.rub__texte p{font-size:clamp(1.06rem,1.2vw,1.18rem);line-height:1.62;color:inherit;opacity:.94;max-width:none}
.rub__texte p + p{margin-top:.9rem}
.rub__liens{list-style:none;margin:1.2rem 0 0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:0 1.7rem}
.rub__liens a{display:inline-flex;align-items:center;gap:.5em;min-height:44px;color:inherit;font-weight:500!important;letter-spacing:.01em;opacity:.88;text-decoration:none!important}
.rub__liens a::after{content:"";flex:none;width:.4em;height:.4em;border-top:1px solid currentColor;border-right:1px solid currentColor;transform:rotate(45deg);opacity:.6;transition:transform .25s cubic-bezier(.2,.7,.2,1)}
.rub__liens a:hover,.rub__liens a:focus-visible{opacity:1}
.rub__liens a:hover::after{transform:translateX(2px) rotate(45deg)}
.rub__liens--gauche{justify-content:flex-start}
@media (max-width:700px){
  .rub__liens{flex-direction:column;align-items:flex-start;gap:0;margin-top:.8rem}
  .rub__liens a{min-height:42px}
}
/* surfaçage : sa vidéo de démonstration a la même construction (1280 × 914) */
.rub--clair{--m:10.94%}
/* sombres : grille, implants (fond noir), santé (fond de la vidéo) ; greffe : le texte suit sur le noir de la vidéo */
.rub--noir{--rub-fond:#000;--rub-texte:#f3ede3}
.rub--sante{--rub-texte:#f3ede3;--rub-ratio:.7175;--m:10.8%}
.rub--greffe{--rub-texte:#f3ede3}
.rub--greffe .rub__titre{color:#1d1b18}
/* greffe : au-dessus, le beige se fond dans le rose de la vidéo ; sur les côtés puis dessous, le noir de la vidéo prend le relais */
.rub__cotes{position:absolute;z-index:-1;top:0;bottom:-4000px;left:calc(50% - 50vw);width:100vw;pointer-events:none;--h:calc(100cqw * .71875);
  background:linear-gradient(180deg,var(--ivoire) 0,var(--ivoire) calc(var(--h) * .28),#cfc8bd calc(var(--h) * .36),#6b6762 calc(var(--h) * .48),#000 calc(var(--h) * .64),#000 100%)}
.rub__cas{position:relative;z-index:2;width:min(100% - 2 * var(--gout), 980px);margin:clamp(36px,4.5vw,64px) auto 0}
.rub__cas .avant-apres{margin:0!important;width:100%!important}
/* santé : deux montages (ordinateur 1600 × 1148, téléphone 720 × 1192, marges comprises) */
html body .rub--sante .rub__media video{aspect-ratio:1600 / 1148!important}
@media (max-width:700px){
  .rub--sante{--rub-ratio:1.656;--m:4.7%}
  html body .rub--sante .rub__media video{aspect-ratio:720 / 1192!important}
}
.p-accueil main > .fondu{margin-block:-1px!important}

/* ---------- 5. Accueil : articles et ressources, cabinet, accès ---------- */
.ressources{padding-block:var(--esp-section)!important}
.ressources__tete{display:grid;justify-items:center;gap:.8rem;text-align:center}
.ressources__tete p{max-width:56ch;font-size:clamp(1.04rem,1.15vw,1.14rem);opacity:.86}
.ressources .bloc-cartes{padding-top:clamp(20px,3vw,40px)!important}
.ressources .bloc-cartes > .sur-titre:empty{display:none}
.ressources .cartes{margin-top:0!important}
.ressources__pied .rub__liens{margin-top:clamp(18px,2.4vw,30px)}
@media (max-width:700px){.ressources__pied .rub__liens{align-items:flex-start}}

.cabinet-v60{padding-block:var(--esp-section)}
.cabinet-v60 h2{text-align:center;margin:0 0 clamp(24px,3vw,40px)!important}
.cabinet-v60 figure{margin:0}
.cabinet-v60 img{display:block;width:100%!important;height:auto!important;max-width:none!important;border-radius:0!important}
.cabinet-v60 figcaption{margin-top:.55rem;text-align:center;font-size:.9rem;color:var(--taupe-texte);padding-inline:var(--gout)}
html body .cabinet-v60__grand,html body .cabinet-v60__duo{width:min(100%, var(--media-max));margin-inline:auto}
.cabinet-v60__duo{display:grid;grid-template-columns:1fr 1fr;gap:clamp(14px,2vw,24px);margin-top:clamp(14px,2vw,24px)}
.cabinet-v60__duo img{aspect-ratio:4 / 3;object-fit:cover}
.cabinet-v60__texte{width:min(100%, var(--colonne));margin:clamp(30px,4vw,52px) auto 0}
.cabinet-v60__texte p{font-size:clamp(1.04rem,1.15vw,1.14rem);line-height:1.62}
.cabinet-v60__texte p + p{margin-top:.9rem}
@media (max-width:700px){
  html body .cabinet-v60__grand{width:100vw;margin-left:calc(50% - 50vw);margin-right:0}
  .cabinet-v60__duo{grid-template-columns:1fr}
}

.p-accueil .acces{padding-block:var(--esp-section)!important}
.p-accueil .acces h2{text-align:center;margin-bottom:clamp(22px,3vw,36px)!important}
.p-accueil .acces-photo{width:min(100%, var(--media-max));margin-inline:auto}
.p-accueil .acces-grille{width:min(100%, var(--media-max));margin-inline:auto}
.p-accueil .acces .rub__liens{margin-top:1rem}

/* questionnaire : même rythme que les autres sections */
.p-accueil .qg{padding-bottom:var(--esp-section)!important}

/* ---------- 6. Carte Google Maps : plus de saut de hauteur quand elle remplace l'image d'attente, apparition en fondu ---------- */
.carte-zone{min-height:clamp(300px,42vh,460px)}
html body .carte-zone iframe{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;min-height:0!important;opacity:0;transition:opacity .6s ease}
html body .carte-zone iframe.est-charge{opacity:1}
@media (prefers-reduced-motion:reduce){html body .carte-zone iframe{transition:none}}

/* ---------- 7. Transitions : sobres, toujours sous le contrôle du visiteur ---------- */
/* plus d'apparition automatique des blocs au défilement */
.js-fondu .fondu-bloc{opacity:1!important;transform:none!important;transition:none!important}
/* préférence « réduire les animations » : ni fondu entre les pages, ni défilement animé */
@media (prefers-reduced-motion:reduce){
  @view-transition{navigation:none}
  html{scroll-behavior:auto!important}
  ::view-transition-old(root),::view-transition-new(root){animation:none!important}
}
/* fondu entre les pages plus bref, sans glissement */
::view-transition-old(root){animation:paro-sortie .26s cubic-bezier(.4,0,.2,1) both!important}
::view-transition-new(root){animation:paro-entree60 .38s cubic-bezier(.2,.7,.2,1) .04s both!important}
@keyframes paro-entree60{from{opacity:0}}
/* ancres : la cible s'arrête sous le haut de l'écran, jamais collée au bord */
html{scroll-padding-top:clamp(16px,3vh,32px)}

/* ---------- 8. Toutes les pages : une seule échelle de titres, des libellés sobres, des liens de même style ---------- */
:root{--r:4px}
/* titres : h1 des pages intérieures plus mesuré, h2 identiques partout (comme sur l'accueil), h3 nettement en dessous */
html body .t-hero h1{font-size:clamp(2.15rem,4.3vw,3.85rem)!important;line-height:1.07;max-width:19em;letter-spacing:0}
html body main h2,html body .rdv h2{font-size:var(--titre-section)!important;line-height:1.12;letter-spacing:.005em}
html body .sec h2{margin-bottom:.15rem}
html body .sec h3{font-size:clamp(1.22rem,1.6vw,1.42rem)}
/* libellés de blocs (« Les pages de cette rubrique », « À lire aussi », « Parcours patient »…) : en minuscules, sans capitales espacées */
html body .sur-titre{font-family:var(--f-titre)!important;font-size:clamp(1.18rem,1.5vw,1.36rem)!important;font-weight:400!important;line-height:1.25;
  letter-spacing:.005em!important;text-transform:none!important;color:inherit!important;opacity:.88}
html body .rdv .sur-titre{display:none}
html body .carte .etat{font-size:.86rem!important;letter-spacing:.01em!important;text-transform:none!important;color:var(--taupe-texte)!important}
html body .parcours-patient span{font-size:.86rem!important;letter-spacing:.01em!important;text-transform:none!important}
html body .formation-note .sur-titre{font-size:1.08rem!important}
/* « À lire aussi » : des liens sobres avec une flèche fine, comme sur l'accueil (plus de pastilles) */
html body .a-lire{gap:0 1.6rem}
html body .a-lire a{display:inline-flex;align-items:center;gap:.5em;min-height:44px;padding:0!important;background:none!important;border-radius:0!important;
  font-weight:500!important;font-size:1rem!important;color:inherit;opacity:.9}
html body .a-lire a::after{content:"";flex:none;width:.4em;height:.4em;border-top:1px solid currentColor;border-right:1px solid currentColor;transform:rotate(45deg);opacity:.6}
html body .a-lire a:hover{opacity:1}
/* cartes : coins presque droits, comme les médias */
html body .carte{border-radius:var(--r)!important}
/* fondus de transition entre sections : plus courts, moins d'espace vide */
html body .fondu{height:clamp(110px,20vw,160px)}
html body .fondu.court{height:clamp(72px,14vw,104px)}
@media (min-width:900px){html body .fondu{height:clamp(150px,12vw,210px)}html body .fondu.court{height:clamp(96px,8vw,140px)}}
/* bandeau « Consulter à Levallois-Perret » : sans le grand vide au-dessus du titre */
html body .rdv .rdv__grille{padding-block:clamp(40px,5.5vw,84px) clamp(56px,7vw,96px)!important}
/* liste des pages d'une rubrique, sur téléphone : lignes compactes (vignette, titre), pour atteindre vite le contenu */
@media (max-width:640px){
  html body .bloc-cartes .cartes{gap:10px!important}
  html body .bloc-cartes .carte{grid-template-columns:96px minmax(0,1fr);align-items:stretch;min-height:88px}
  html body .bloc-cartes .carte__img{aspect-ratio:auto!important;height:100%}
  html body .bloc-cartes .carte__img img{height:100%!important}
  html body .bloc-cartes .carte__texte{padding:.65rem .85rem!important;gap:.2rem!important;align-content:center}
  html body .bloc-cartes .carte__texte p{display:none}
  html body .bloc-cartes .carte h3{font-size:1.12rem!important;line-height:1.22}
}
/* photos : bords nets, aucune partie voilée (seules les vidéos sur bandeau gardent un fondu léger dans leur propre fond) */
html body .plume-photo,html body .acces-photo img,html body .st-photo img,html body .galerie img{-webkit-mask-image:none!important;mask-image:none!important}
/* titres de blocs de cartes : balises h2 (hiérarchie), apparence de libellé */
html body main h2.sur-titre{font-size:clamp(1.18rem,1.5vw,1.36rem)!important;line-height:1.25;margin:0 0 .2rem}
/* questionnaire : plus d'espace réservé vide ; la hauteur varie en douceur à chaque étape (quiz.js) */
html body .qg__corps{min-height:0!important}
/* questionnaire : centré sur l'axe de la page, sans filets ; le résultat reste aligné à gauche dans ce bloc centré */
html body .qg__boite{border:0!important;max-width:680px;padding-block:0!important}
html body .qg__tete{justify-items:center;text-align:center}
html body .qg__intro{margin-inline:auto}
html body .qg__corps{text-align:center}
html body .qg__haut{text-align:left}
html body .qg__opts{justify-content:center}
html body .qg__nav{justify-content:center}
html body .qg__mention{margin-inline:auto;text-align:center}
html body .qg__res{text-align:left}
html body .qg__res .qg__nav{justify-content:flex-start}
html body .qg__titre-res{font-family:var(--f-titre)!important;font-size:1.2rem!important;font-weight:400!important;letter-spacing:.005em!important;text-transform:none!important;color:inherit!important}
html body .qg__retour{text-decoration:none!important}
html body .qg__retour::after{content:"";display:inline-block;width:.38em;height:.38em;margin-left:.45em;vertical-align:.12em;border-top:1px solid currentColor;border-right:1px solid currentColor;transform:rotate(45deg);opacity:.6}
html body .qg-rdv{border-bottom:0!important}
@media (max-width:560px){html body .qg__opt{text-align:center}}
/* accueil : moins de vide entre les diplômes et la première rubrique */
html body.p-accueil .carte-pu--2{padding-bottom:clamp(36px,4.5vw,64px)!important}

/* ---------- 9. Corrections de la relecture indépendante (7 octobre 2026) ---------- */
/* renvois de notes (anciennement .appel, nom partagé par erreur avec le bouton d'appel) */
.renvoi{font-size:.7em;line-height:0;margin-left:.1em}
.renvoi a{text-decoration:none;font-weight:600!important;color:#8E4F44}
/* tableaux sur téléphone : lecture empilée, sans largeur minimale, intitulé de colonne au-dessus de chaque valeur */
@media (max-width:700px){
  html body .tableau table{min-width:0!important}
  html body .tableau td::before{font-size:.84rem!important;font-weight:500!important;letter-spacing:.01em!important;text-transform:none!important;color:var(--taupe-texte)!important;margin-bottom:.1rem}
  html body .tableau tbody td{padding:.3rem .9rem!important}
}
/* mots composés à ne pas couper (« manque-t-il ») */
.insec{white-space:nowrap}
/* menu téléphone : bouton d'appel lisible (texte sombre sur ivoire) */
html body .menu-mobile .panneau a.m-appel{background:var(--ivoire)!important;color:#172322!important;border-color:var(--ivoire)!important;font-weight:500!important}
/* avant/après dans une page : centré sur l'axe du texte et des médias */
@media (min-width:901px){
  html body main .etroit .avant-apres:not(.avant-apres--sombre){width:min(980px, calc(100vw - 2 * var(--gout)))!important;max-width:none!important;
    margin-left:calc(50% - min(490px, 50vw - var(--gout)))!important;margin-right:0!important}
}
/* grilles de cartes : rangées incomplètes centrées, largeur de carte constante */
@media (min-width:641px){
  html body .bloc-cartes .cartes{grid-template-columns:repeat(auto-fit,minmax(240px,360px))!important;justify-content:center}
  html body .ressources .bloc-cartes .cartes{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
html body .ressources .bloc-cartes{max-width:calc(var(--media-max) + 2 * var(--gout))}
/* liens avec flèche : la flèche suit le dernier mot, même quand le lien passe à la ligne */
html body .rub__liens li,html body .a-lire > a{min-height:44px}
html body .rub__liens li{display:flex;align-items:center}
html body .rub__liens a,html body .a-lire a{display:inline!important;min-height:0!important;line-height:1.45}
html body .rub__liens a::after,html body .a-lire a::after{display:inline-block;margin-left:.5em;vertical-align:.12em}
html body .a-lire{align-items:center}
html body .a-lire > a{display:inline-flex!important;align-items:center}
html body .a-lire > a > *{display:inline}
/* accès : première colonne du tableau des transports à largeur fixe */
html body .acces-resume > div{display:grid!important;grid-template-columns:7.2em minmax(0,1fr);gap:.6rem}
html body .acces-resume dt{min-width:0!important}
/* tablette : portrait du praticien centré quand la mise en page passe sur une colonne */
@media (max-width:900px){html body .praticien .portrait{margin-inline:auto}}
/* titres de section : jamais plus petits sur tablette que sur téléphone */
@media (min-width:701px){:root{--titre-section:clamp(1.65rem,2.4vw,2.2rem)}}
/* en-tête des pages intérieures : voile plus marqué sous le menu, lisible sur les images claires */
html body .t-hero::before{content:"";position:absolute;left:0;right:0;top:0;height:clamp(150px,22vh,220px);z-index:1;pointer-events:none;
  background:linear-gradient(180deg,rgba(18,16,14,.62) 0%,rgba(18,16,14,.34) 52%,rgba(18,16,14,0) 100%)}
html body .t-hero .wrap{z-index:2}
/* médias : bords droits partout (petite vidéo incrustée, lecteur protégé, illustrations) */
html body .media-protege img,html body .media-protege video,html body .portrait .incrustation,html body .lecteur__ecran,html body .lecteur__voile,html body .st-ovale img,html body figure.media-texte img{border-radius:0!important}
/* intertitres des diplômes (accueil) : contraste suffisant */
html body .carte-pu__groupe h3{color:var(--taupe-texte)!important;opacity:1!important}
/* mouvement réduit : le sous-menu apparaît en fondu, sans glissement */
@media (prefers-reduced-motion:reduce){
  html body .nav .sous,html body .nav .a-sous:hover .sous,html body .nav .a-sous:focus-within .sous{transform:translate(-50%,0)!important;transition:opacity .15s linear,visibility 0s!important}
  html body .nav .a-sous:last-child .sous{transform:none!important}
  html body .rub__liens a::after,html body .m-ouvrir svg{transition:none!important}
}
/* en-tête téléphone : « Docteur Victor Hazout » en entier tient jusqu'à 320 px de large */
@media (max-width:389px){
  html body .marque .marque__nom{font-size:1.06rem!important}
  html body .entete .wrap{gap:.55rem!important}
  html body .entete .outils{gap:.45rem!important}
}
@media (max-width:340px){
  html body .marque .marque__nom{font-size:.95rem!important}
  html body .marque .marque__ligne{font-size:.64rem!important}
}
@media (max-width:700px){html body .tableau td{border-bottom:0!important}html body .tableau tbody tr{border-bottom:1px solid var(--pierre)}}
/* montages ordinateur / téléphone (vidéos à deux formats) : proportions de la version effectivement chargée */
html body video[data-mobile]{aspect-ratio:var(--ar-d)!important}
@media (max-width:700px){html body video[data-mobile]{aspect-ratio:var(--ar-m)!important}}
/* pages intérieures : vidéos à marge prolongée, fondu dans la marge seulement (l'image d'origine reste entière) */
html body video.marge-fondu{--m:10.87%;-webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,0) 0,rgba(0,0,0,.1) calc(var(--m) * .25),rgba(0,0,0,.5) calc(var(--m) * .5),rgba(0,0,0,.9) calc(var(--m) * .75),#000 var(--m),#000 calc(100% - var(--m)),rgba(0,0,0,.9) calc(100% - var(--m) * .75),rgba(0,0,0,.5) calc(100% - var(--m) * .5),rgba(0,0,0,.1) calc(100% - var(--m) * .25),rgba(0,0,0,0) 100%)!important;
  mask-image:linear-gradient(180deg,rgba(0,0,0,0) 0,rgba(0,0,0,.1) calc(var(--m) * .25),rgba(0,0,0,.5) calc(var(--m) * .5),rgba(0,0,0,.9) calc(var(--m) * .75),#000 var(--m),#000 calc(100% - var(--m)),rgba(0,0,0,.9) calc(100% - var(--m) * .75),rgba(0,0,0,.5) calc(100% - var(--m) * .5),rgba(0,0,0,.1) calc(100% - var(--m) * .25),rgba(0,0,0,0) 100%)!important;border-radius:0!important}
html body video.marge-fondu.v2{--m:10.8%}
@media (max-width:700px){html body video.marge-fondu.v2{--m:4.7%}}
/* derniers libellés en capitales espacées : en minuscules, comme les autres (catégorie d'article, statuts, nature des diplômes) */
html body .cat-etiquette,html body .statut,html body td .niv,html body .frise .type,html body .diplomes .nature,html body .pu__domaine h3{
  text-transform:none!important;letter-spacing:.01em!important;font-family:var(--f-titre)!important;font-weight:500!important;font-size:.98rem!important}
html body .pu__domaine h3{font-style:normal;font-weight:400!important;font-size:1.08rem!important}
/* page Parcours, ordinateur : le portrait occupe la moitié droite de l'en-tête (visage entier), le titre et le texte la moitié gauche */
@media (min-width:1000px){
  html body .t-hero--portrait .hero__media{left:44%!important;right:0!important;width:auto!important}
  html body .t-hero--portrait .hero__media img{object-position:50% 24%!important}
  html body .t-hero--portrait .hero__media::after{background:linear-gradient(90deg,#101012 0%,rgba(16,16,18,.7) 16%,rgba(16,16,18,0) 42%),linear-gradient(0deg,#172322 0%,rgba(23,35,34,.55) 14%,rgba(23,35,34,0) 38%)!important}
  html body .t-hero--portrait h1{max-width:11.5em}
  html body .t-hero--portrait .chapo{max-width:min(46ch, 42vw)}
}

/* ---------- 10. v62 : rubriques de l'accueil en plein écran (vidéo en fond, texte par-dessus) ----------
   Comme l'en-tête des pages : la vidéo occupe tout l'écran, le texte est posé dessus, en bas à gauche.
   En haut, le fondu part de la couleur de la rubrique précédente ; en bas, il rejoint la teinte de la vidéo,
   qui devient le départ du fondu de la rubrique suivante : on passe d'une vidéo à l'autre sans couleur intercalée. */
.rubp{position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:flex-end;min-height:100vh;min-height:100svh;
  background:var(--c-bas);color:#f6f1e8;margin:0}
.rubp__media{position:absolute!important;inset:0;z-index:-2;margin:0}
html body .rubp__media video{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;
  object-fit:cover!important;object-position:50% 45%;border-radius:0!important;-webkit-mask-image:none!important;mask-image:none!important;opacity:1!important}
.rubp::before,.rubp::after{content:"";position:absolute;left:0;right:0;z-index:-1;pointer-events:none}
.rubp::before{top:0;height:34%;background:linear-gradient(180deg,var(--c-haut) 0%,color-mix(in oklab,var(--c-haut) 82%,transparent) 14%,color-mix(in oklab,var(--c-haut) 45%,transparent) 42%,color-mix(in oklab,var(--c-haut) 14%,transparent) 72%,transparent 100%)}
.rubp::after{bottom:0;height:68%;background:linear-gradient(0deg,var(--c-bas) 0%,color-mix(in oklab,var(--c-bas) 92%,transparent) 22%,color-mix(in oklab,var(--c-bas) 66%,transparent) 48%,color-mix(in oklab,var(--c-bas) 28%,transparent) 74%,transparent 100%)}
.rubp__texte{position:relative;width:100%;padding-block:clamp(140px,22vh,220px) clamp(48px,8vh,96px);text-shadow:0 1px 18px rgba(0,0,0,.28)}
.rubp__texte > *{max-width:62ch}
html body .rubp h2{color:#f8f3ea!important;margin:0 0 1rem!important;max-width:24ch;font-size:var(--titre-section)!important}
.rubp p{font-size:clamp(1.06rem,1.2vw,1.18rem);line-height:1.62;color:rgba(246,241,232,.93)}
.rubp p + p{margin-top:.8rem}
.rubp .rub__liens{justify-content:flex-start;margin-top:1.1rem}
.rubp .rub__liens a{color:#f8f3ea}
.rubp .lire-demo{z-index:2}
@media (max-width:700px){
  .rubp{min-height:92svh}
  .rubp::after{height:78%}
  .rubp__texte{padding-block:120px 44px}
}
/* cadrage plein écran de chaque vidéo (le sujet reste visible sur téléphone) */
html body #parodontologie video,html body #periodontology video{object-position:50% 55%}
html body #greffes-gencive video,html body #gum-grafts video{object-position:55% 30%}
html body #greffes-osseuses video,html body #bone-grafts video{object-position:45% 50%}
html body #implants video{object-position:62% 35%}
/* l'ancienne mise en page des rubriques ne s'applique plus */
.p-accueil .carte-pu--2{padding-bottom:clamp(56px,7vw,104px)!important}
html body.p-accueil main > section.rubp{display:flex!important;align-items:flex-end}
.rubp__texte{padding-block:clamp(110px,16vh,160px) clamp(44px,7vh,88px)}
/* lisibilité : fondu inférieur plus présent derrière le texte */
.rubp::after{height:78%;background:linear-gradient(0deg,var(--c-bas) 0%,color-mix(in oklab,var(--c-bas) 94%,transparent) 30%,color-mix(in oklab,var(--c-bas) 72%,transparent) 55%,color-mix(in oklab,var(--c-bas) 30%,transparent) 80%,transparent 100%)}
/* téléphone : la vidéo remplit le haut de l'écran et se fond dans sa teinte ; le texte commence dans ce fondu */
@media (max-width:700px){
  html body.p-accueil main > section.rubp{min-height:0;display:block!important}
  .rubp__media{inset:0 0 auto 0!important;height:66svh}
  .rubp::after{top:30svh;bottom:auto;height:36svh;background:linear-gradient(180deg,transparent 0%,color-mix(in oklab,var(--c-bas) 35%,transparent) 30%,color-mix(in oklab,var(--c-bas) 80%,transparent) 62%,var(--c-bas) 100%)}
  .rubp::before{height:22svh}
  .rubp__texte{padding-block:50svh 44px}
}

/* ---------- 11. v63 (7 octobre 2026) : diplômes sur fond noir, articles sur la teinte de la dernière rubrique, galeries en bande ---------- */
/* diplômes : même noir que le praticien, sans beige ; la rubrique « Traitement de la parodontite » part de ce noir */
html body.p-accueil .carte-pu--nuit{color:var(--ivoire);padding-top:clamp(8px,2vw,32px)!important;padding-bottom:clamp(40px,6vw,88px)!important}
html body .carte-pu--nuit .carte-pu__groupe h3{color:rgba(243,237,227,.6)!important}
html body .carte-pu--nuit .carte-pu__groupe li{color:rgba(246,241,232,.92)!important}
html body .carte-pu--nuit .carte-pu__groupe li + li::before{background:rgba(243,237,227,.22)}
html body .carte-pu--nuit .carte-pu__grille::before{background:rgba(243,237,227,.16)}
html body .carte-pu--nuit .carte-pu__lien a{color:var(--ivoire)}
/* articles et ressources : six articles, par thème */
html body .ressources--v63{color:#f6f1e8;padding-block:clamp(48px,7vw,104px) clamp(36px,5vw,72px)!important}
html body .ressources--v63 h2{color:#f8f3ea!important}
html body .ressources--v63 .ressources__tete p{color:rgba(246,241,232,.82);opacity:1}
.art-v63{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(24px,3vw,48px);margin-top:clamp(32px,4.5vw,64px);
  max-width:var(--media-max,1120px);margin-inline:auto}
html body .art-v63__groupe h3{font-family:var(--f-titre)!important;font-style:normal;font-weight:400!important;font-size:1.08rem!important;line-height:1.3;
  color:rgba(246,241,232,.68)!important;margin:0 0 1rem!important;padding-bottom:.65rem;border-bottom:1px solid rgba(246,241,232,.18)}
.art-v63__groupe ul{list-style:none;margin:0;padding:0;display:grid;gap:clamp(18px,2vw,28px)}
.art-v63 a.art-v63__lien{display:grid;gap:.55rem;color:inherit;text-decoration:none}
.art-v63__img{display:block;aspect-ratio:3/2;overflow:hidden;border-radius:var(--r);background:rgba(0,0,0,.2)}
html body .art-v63__img img{width:100%!important;height:100%!important;object-fit:cover;display:block;-webkit-mask-image:none!important;mask-image:none!important;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.art-v63__titre{font-family:var(--f-titre);font-size:clamp(1.2rem,1.45vw,1.36rem);line-height:1.22;color:#f8f3ea}
.art-v63__temps{font-size:.88rem;color:rgba(246,241,232,.62)}
.art-v63 a.art-v63__lien:hover .art-v63__titre{color:#fff}
@media (hover:hover){.art-v63 a.art-v63__lien:hover img{transform:scale(1.03)}}
@media (prefers-reduced-motion:reduce){html body .art-v63__img img{transition:none}}
html body .ressources--v63 .ressources__pied{display:flex;justify-content:center}
html body .ressources--v63 .rub__liens a{color:#f8f3ea}
@media (max-width:860px){
  .art-v63{grid-template-columns:1fr;gap:30px}
  .art-v63__groupe ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
  .art-v63__titre{font-size:1.06rem;line-height:1.24}
  .art-v63__temps{font-size:.8rem}
  html body .art-v63__groupe h3{margin-bottom:.8rem!important}
}
/* galeries de photos (cabinet, première consultation) : dans une bande colorée, comme la photo d'équipe */
html body .bande .galerie--bande{width:min(880px,100%)!important;margin:0 auto!important;padding:0!important;gap:clamp(16px,2vw,28px)}
html body .galerie--bande img{aspect-ratio:3/2;object-fit:cover;-webkit-mask-image:none!important;mask-image:none!important;max-height:none!important}
html body .galerie--bande figcaption{font-size:.9rem;text-align:center;padding-inline:0!important}
/* passage des diplômes (noir) à la vidéo du traitement de la parodontite : fondu plus long, sans bord visible */
html body #parodontologie::before,html body #periodontology::before{height:52%;background:linear-gradient(180deg,var(--c-haut) 0%,var(--c-haut) 6%,
  color-mix(in oklab,var(--c-haut) 88%,transparent) 18%,color-mix(in oklab,var(--c-haut) 66%,transparent) 36%,color-mix(in oklab,var(--c-haut) 38%,transparent) 58%,
  color-mix(in oklab,var(--c-haut) 14%,transparent) 80%,transparent 100%)}
@media (max-width:700px){html body #parodontologie::before,html body #periodontology::before{height:34svh}}
/* articles : les deux rangées alignées d'une colonne à l'autre (ordinateur) */
@media (min-width:861px){
  .art-v63{grid-template-rows:auto auto auto;row-gap:0}
  .art-v63__groupe{display:grid;grid-row:span 3;grid-template-rows:subgrid;row-gap:clamp(18px,2vw,28px)}
  .art-v63__groupe ul{display:contents}
  .art-v63__groupe h3{margin-bottom:0!important}
}
@media (max-width:640px){html body .bande .galerie--bande{width:auto!important;margin-inline:12px!important;gap:22px}html body .galerie--bande figcaption{padding-inline:var(--gout)!important}}
/* petite vidéo sur le portrait : fondu sur les quatre côtés, par transparence seulement (aucune couleur ajoutée, ni ombre ni fond) ;
   les bords se mêlent au portrait et au noir de la section qui sont derrière */
html body .portrait .incrustation{box-shadow:none!important;background:transparent!important;
  --fx:linear-gradient(90deg,transparent 0,rgba(0,0,0,.18) 3%,rgba(0,0,0,.5) 7%,rgba(0,0,0,.82) 11%,#000 15%,#000 85%,rgba(0,0,0,.82) 89%,rgba(0,0,0,.5) 93%,rgba(0,0,0,.18) 97%,transparent 100%);
  --fy:linear-gradient(180deg,transparent 0,rgba(0,0,0,.18) 2.4%,rgba(0,0,0,.5) 5.6%,rgba(0,0,0,.82) 8.8%,#000 12%,#000 88%,rgba(0,0,0,.82) 91.2%,rgba(0,0,0,.5) 94.4%,rgba(0,0,0,.18) 97.6%,transparent 100%);
  -webkit-mask-image:var(--fx),var(--fy);mask-image:var(--fx),var(--fy);-webkit-mask-composite:source-in;mask-composite:intersect}
/* rectification (12 h 50) : le visage est tout en haut de la vidéo — fondu très court en haut, plus court sur les côtés et en bas */
html body .portrait .incrustation{
  --fx:linear-gradient(90deg,transparent 0,rgba(0,0,0,.35) 2.2%,rgba(0,0,0,.75) 4.6%,#000 7%,#000 93%,rgba(0,0,0,.75) 95.4%,rgba(0,0,0,.35) 97.8%,transparent 100%);
  --fy:linear-gradient(180deg,transparent 0,rgba(0,0,0,.45) 1.3%,rgba(0,0,0,.85) 2.8%,#000 4%,#000 92%,rgba(0,0,0,.75) 94.6%,rgba(0,0,0,.35) 97.4%,transparent 100%)}

/* ---------- 12. v64 (7 octobre 2026) : inspiré du site de référence, en Garamond — pastille de rendez-vous, menu rond, titres en deux tons,
   liens en bulles, bulle « Sommaire », bouton d'appel transparent et toujours présent ---------- */
:root{--ton-sable:linear-gradient(100deg,#f3e6cf 0%,#dcc19a 46%,#c49c74 100%);--ton-sable-clair:linear-gradient(100deg,#9c7650 0%,#7d5a3c 55%,#6a4a31 100%)}
/* en-tête : pastille « Prendre rendez-vous » sur fond transparent, filet fin, en Garamond */
.rdv-pastille{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 1.15rem;border-radius:999px;
  border:1px solid color-mix(in oklab,currentColor 55%,transparent);background:transparent;color:inherit;text-decoration:none;white-space:nowrap;
  font-family:"Cormorant Garamond","EB Garamond",Garamond,serif;font-weight:600;font-size:1.06rem;letter-spacing:.01em;transition:border-color .25s ease,background-color .25s ease}
.rdv-pastille:hover,.rdv-pastille:focus-visible{border-color:currentColor;background:color-mix(in oklab,currentColor 8%,transparent)}
.rdv-pastille .rp-court{display:none}
@media (max-width:1180px) and (min-width:901px){html body .entete .outils .tel{display:none!important}}
@media (max-width:900px){
  .rdv-pastille{min-height:40px;padding:0 .95rem;font-size:1rem}
  .rdv-pastille .rp-long{display:none}.rdv-pastille .rp-court{display:inline}
  html body .entete .outils .tel{display:none!important}   /* le bouton d'appel flottant reste toujours visible */
}
@media (max-width:360px){.rdv-pastille{padding:0 .7rem;font-size:.95rem}}
/* menu : petit rond transparent à filet fin, trois points */
html body .menu-mobile summary{width:42px!important;height:42px!important;border:1px solid color-mix(in oklab,currentColor 55%,transparent)!important;border-radius:50%!important;background:transparent!important}
html body .menu-mobile summary:hover{border-color:currentColor!important}
html body .menu-mobile summary span{width:3.5px!important;height:3.5px!important}
/* titres en deux tons : partie droite en Garamond semi-gras, suite en italique au dégradé sable */
.t-ton{font-style:normal;font-weight:500;background:var(--ton-sable);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;padding-right:.06em}
.entete.clair ~ main .t-ton,.bg-ivoire .t-ton{background:var(--ton-sable-clair);-webkit-background-clip:text;background-clip:text}
html body .rubp h2.t-rub{font-family:"Cormorant Garamond","EB Garamond",Garamond,serif!important;font-size:clamp(2.35rem,4.4vw,4rem)!important;line-height:1.02!important;
  letter-spacing:-.005em;max-width:15ch;margin-bottom:1.2rem!important}
.t-rub .t-droit{display:block;font-weight:600}
.t-rub .t-ton{display:block;font-size:.72em;line-height:1.15;margin-top:.12em}
html body .hero--sobre h1 .t-ton{font-weight:500}
@media (max-width:700px){html body .rubp h2.t-rub{font-size:clamp(2.05rem,9vw,2.6rem)!important}}
/* liens des rubriques en bulles : transparents, filet fin, Garamond */
ul.bulles{list-style:none;margin:1.3rem 0 0;padding:0;display:flex;flex-wrap:wrap;gap:.55rem .5rem}
ul.bulles li{display:flex}
ul.bulles a{display:inline-flex;align-items:center;min-height:42px;padding:.35rem 1.05rem;border-radius:999px;border:1px solid rgba(246,241,232,.42);
  background:rgba(20,17,15,.12);color:#f8f3ea!important;text-decoration:none;font-family:"Cormorant Garamond","EB Garamond",Garamond,serif;font-weight:600;
  font-size:1.04rem;line-height:1.2;transition:border-color .25s ease,background-color .25s ease}
ul.bulles a:hover,ul.bulles a:focus-visible{border-color:rgba(246,241,232,.9);background:rgba(246,241,232,.1)}
ul.bulles a::after{content:none!important}
.ressources--v63 ul.bulles{justify-content:center;margin-top:clamp(28px,3.5vw,44px)}
@media (max-width:700px){ul.bulles a{font-size:1rem;padding:.3rem .9rem;min-height:40px}}
/* bulle « Sommaire » : où en est la lecture ; s'ouvre sur la liste des parties */
.guide{position:fixed;z-index:45;top:calc(14px + env(safe-area-inset-top,0px));left:max(14px,env(safe-area-inset-left,0px));color:#f6f1e8;
  opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .3s ease,transform .3s cubic-bezier(.2,.7,.2,1),visibility 0s linear .3s}
.guide.on{opacity:1;visibility:visible;transform:none;transition:opacity .3s ease,transform .3s cubic-bezier(.2,.7,.2,1),visibility 0s}
.guide__bouton{display:inline-flex;align-items:baseline;gap:.4rem;min-height:40px;padding:.3rem 1rem .35rem;border-radius:999px;cursor:pointer;color:inherit;
  border:1px solid color-mix(in oklab,currentColor 45%,transparent);background:color-mix(in oklab,var(--g-fond,#14110f) 18%,transparent);
  backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);font-family:"Cormorant Garamond","EB Garamond",Garamond,serif;-webkit-tap-highlight-color:transparent}
.guide__bouton b{font-weight:600;font-size:1.3rem;line-height:1}
.guide__bouton .g-tot{font-size:.9rem;opacity:.75}
.guide__bouton .g-mot{font-size:.95rem;font-weight:500;margin-left:.35rem;opacity:.85}
.guide__bouton:focus-visible{outline:2px solid currentColor;outline-offset:3px}
.guide__liste{list-style:none;margin:.6rem 0 0;padding:.9rem 1.1rem .9rem .9rem;display:grid;gap:.15rem;border-radius:18px;max-width:min(380px,calc(100vw - 28px));
  background:rgba(20,17,15,.78);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(246,241,232,.16);color:#f6f1e8}
.guide__liste[hidden]{display:none}
.guide__liste a{display:grid;grid-template-columns:14px 1.6rem 1fr;align-items:center;gap:.35rem;min-height:38px;color:inherit;text-decoration:none;
  font-family:"Cormorant Garamond","EB Garamond",Garamond,serif;font-size:1.12rem;line-height:1.2;opacity:.72}
.guide__liste a::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;justify-self:center}
.guide__liste a span{font-size:.8rem;opacity:.7}
.guide__liste a[aria-current="true"]{opacity:1}
.guide__liste a[aria-current="true"]::before{width:11px;height:11px;border:1.3px solid currentColor;background:radial-gradient(circle,currentColor 0 2.2px,transparent 2.8px)}
.guide__liste a:hover{opacity:1}
.guide.sur-clair{color:#1b1917}
.guide.sur-clair .guide__bouton{background:color-mix(in oklab,#f3ede3 30%,transparent)}
body.menu-ouvert .guide{opacity:0!important;visibility:hidden!important}
@media (prefers-reduced-motion:reduce){.guide,.guide.on{transition:none}}
/* bouton d'appel : toujours présent sur téléphone, fond transparent, filet fin ; s'accorde au fond qu'il survole */
@media (max-width:700px){
  html body .appel{opacity:1!important;visibility:visible!important;transform:none!important;background:color-mix(in oklab,#14110f 14%,transparent)!important;
    border:1px solid rgba(246,241,232,.6)!important;box-shadow:none!important;color:#f6f1e8!important;backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);transition:color .3s ease,border-color .3s ease!important}
  html body .appel.sur-clair{color:#1b1917!important;border-color:rgba(27,25,23,.5)!important;background:color-mix(in oklab,#f3ede3 30%,transparent)!important}
  html body .appel[data-visible="0"].menu{opacity:0!important;visibility:hidden!important}
}
/* v64 : en-tête du téléphone — la langue passe dans le menu, pour laisser la place à la pastille et au rond du menu */
.menu-mobile .m-langue{display:block;margin-top:1rem;text-align:center;font-family:"Cormorant Garamond","EB Garamond",Garamond,serif;font-size:1.1rem;color:inherit;opacity:.8;text-decoration:none;min-height:44px;line-height:44px}
@media (max-width:900px){html body .entete .outils{gap:8px!important}html body .entete .outils .langue{display:none!important}}
@media (max-width:374px){html body .entete .marque__nom{font-size:1.08rem!important}.rdv-pastille{padding:0 .65rem;font-size:.94rem}}
/* titres des rubriques : partie droite réellement semi-grasse */
html body .rubp h2.t-rub .t-droit{font-weight:600!important}
html body .rubp h2.t-rub .t-ton{font-weight:500!important}
html body .hero--sobre h1 .t-ton{font-weight:500!important}
@media (max-width:430px){html body .entete .marque__nom{font-size:1.1rem!important}.rdv-pastille{padding:0 .75rem;font-size:.98rem}html body .entete .wrap{gap:8px!important}}
@media (max-width:374px){html body .entete .marque__nom{font-size:.98rem!important}html body .entete .marque__ligne{font-size:.66rem!important}.rdv-pastille{padding:0 .55rem;font-size:.9rem;min-height:38px}html body .menu-mobile summary{width:40px!important;height:40px!important}}
/* sur les pages de lecture (fond clair) : verre dépoli plus marqué, pour que le texte qui défile dessous ne gêne pas la lecture de la bulle */
.guide__bouton,html body .appel{backdrop-filter:blur(12px)!important;-webkit-backdrop-filter:blur(12px)!important}
.guide.sur-clair .guide__bouton{background:color-mix(in oklab,#f3ede3 62%,transparent)}
@media (max-width:700px){html body .appel.sur-clair{background:color-mix(in oklab,#f3ede3 62%,transparent)!important}}

/* ---------- 13. v65 (7 octobre 2026) ---------- */
/* vidéos : jamais de bouton de lecture, elles se lancent seules */
html body .lire-demo--discret{display:none!important}
/* lettres coupées : le dégradé du texte couvre aussi les jambages (g, q, p) et la pente de l'italique */
.t-ton{padding:0 .1em .2em 0;margin-right:-.04em}
.t-rub .t-ton{padding-bottom:.22em;margin-bottom:-.22em}
html body .hero--sobre h1{overflow:visible!important}
/* bulles régulières : même largeur dans une grille, texte centré */
ul.bulles{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem!important;max-width:min(560px,100%)}
ul.bulles li{display:flex}
ul.bulles a{width:100%;justify-content:center;text-align:center;min-height:44px}
@media (min-width:1100px){.rubp ul.bulles{grid-template-columns:repeat(3,minmax(0,1fr));max-width:min(720px,100%)}}
.ressources--v63 ul.bulles{grid-template-columns:repeat(3,minmax(0,1fr));max-width:min(820px,100%);margin-inline:auto}
@media (max-width:700px){ul.bulles{max-width:none}ul.bulles a{font-size:.97rem;padding:.3rem .6rem}.ressources--v63 ul.bulles{grid-template-columns:1fr}}
/* en-tête ordinateur : à droite, la langue, puis « Prendre rendez-vous », puis le téléphone, les uns sous les autres */
@media (min-width:901px){
  html body .entete .outils{display:grid!important;grid-template-areas:"lg" "rdv" "tel";justify-items:center;row-gap:4px;align-self:start}
  html body .entete .outils .langue{grid-area:lg;justify-self:end;padding:.15rem .2rem!important;min-height:0}
  html body .entete .outils .rdv-pastille{grid-area:rdv}
  html body .entete .outils .tel{grid-area:tel;display:inline-flex!important;align-items:center;padding:.3rem 0!important;font-size:.92rem}
  html body .entete .outils .menu-mobile{display:none!important}
  html body .entete .nav ul{gap:clamp(14px,1.6vw,28px)!important}
  /* accueil : les rubriques quittent le haut de l'écran pour un cadre posé dans le premier écran, à hauteur du fauteuil */
  html body.p-accueil .entete .nav{display:none!important}
}
.cadre-rub__pos{display:none}
@media (min-width:901px){
  .cadre-rub__pos{display:block;position:absolute;left:0;right:0;top:clamp(120px,21vh,210px);z-index:3;pointer-events:none}
  .cadre-rub{display:inline-block;pointer-events:auto;padding:1rem 1.5rem 1.1rem 1.35rem;border:1px solid rgba(246,241,232,.26);border-radius:16px;
    background:rgba(14,12,11,.34);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
  .cadre-rub ul{list-style:none;margin:0;padding:0;display:grid;gap:.05rem}
  .cadre-rub a{display:inline-flex;align-items:center;min-height:38px;font-family:"Cormorant Garamond","EB Garamond",Garamond,serif;font-size:clamp(1.2rem,1.45vw,1.42rem);line-height:1.15;text-decoration:none;color:#f6f1e8}
  .cadre-rub a.t-droit{font-weight:600}
  .cadre-rub a.t-ton{font-style:normal;font-weight:500;padding-bottom:.12em}
  .cadre-rub a:hover{opacity:.82}
}
@media (min-width:901px) and (max-height:760px){.cadre-rub__pos{top:110px}.cadre-rub a{min-height:32px;font-size:1.15rem}}
/* corrections v65 : cadre des rubriques posé en haut à gauche du premier écran, à sa largeur ; bulles sur deux colonnes ; téléphone lisible dans l'en-tête */
@media (min-width:901px){
  html body .hero .cadre-rub__pos{position:absolute!important;left:0;right:0;top:clamp(130px,22vh,220px);bottom:auto;display:block!important;z-index:3;margin-inline:auto}
  html body .hero .cadre-rub{display:inline-block!important;width:auto!important}
  html body .entete .outils .tel{font-size:.92rem!important;overflow:visible!important;color:inherit!important;letter-spacing:.03em}
  html body .entete .outils .tel::before{margin-right:.45rem!important}
}
@media (min-width:1100px){.rubp ul.bulles{grid-template-columns:repeat(2,minmax(0,1fr));max-width:min(600px,100%)}}
ul.bulles li:last-child:nth-child(odd){grid-column:1/-1}

/* ---------- 14. v66 (7 octobre 2026) : typographie plus affirmée, toujours en Garamond, ivoire et sable ---------- */
/* titres de section ordinaires en deux tons (en ligne) */
html body main h2 .t-droit{font-weight:600}
html body main h2:not(.t-rub) .t-ton{font-weight:500;font-size:1.04em}
/* sur fond clair, le sable se fonce pour rester lisible */
.cabinet-v60 .t-ton,.acces .t-ton,.qg .t-ton,.cabinet-v60 .amorce,.acces .amorce{background:var(--ton-sable-clair)!important;-webkit-background-clip:text!important;background-clip:text!important}
/* amorces : les premiers mots d'un paragraphe en italique sable ; mots clés en Garamond semi-gras */
.amorce{font-family:"Cormorant Garamond","EB Garamond",Garamond,serif;font-style:normal;font-weight:600;font-size:1.1em;letter-spacing:.005em;
  background:var(--ton-sable);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;padding:0 .08em .16em 0}
strong.fort{font-family:"Cormorant Garamond","EB Garamond",Garamond,serif;font-weight:700;font-size:1.05em;color:#fbf6ee;letter-spacing:.005em}
.cabinet-v60 strong.fort,.acces strong.fort{color:#1d1a17}
.hero__chapo .amorce{font-size:1.06em}
/* diplômes : nature du diplôme en petit, discipline en grand ; DU en droit semi-gras, certificats en italique sable */
html body .carte-pu--nuit .carte-pu__groupe li{display:grid;gap:.15rem;justify-items:center;padding:0 .4rem}
.dipl__nature{font-family:"Cormorant Garamond",Garamond,serif;font-size:.8rem;font-style:normal;letter-spacing:.02em;color:rgba(243,237,227,.58)}
.dipl__nom{font-family:"Cormorant Garamond","EB Garamond",Garamond,serif;line-height:1.22;text-wrap:balance}
html body .carte-pu__groupe--1 .dipl__nom{font-weight:600;font-size:clamp(1.18rem,1.5vw,1.36rem);color:#f8f3ea}
html body .carte-pu__groupe--2 .dipl__nom{font-style:normal;font-weight:500;font-size:clamp(1.22rem,1.55vw,1.42rem);
  background:var(--ton-sable);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;padding:0 .08em .16em}
html body .carte-pu__groupe--2 .dipl__nature{font-style:normal;letter-spacing:.03em}
/* titres des deux groupes : l'un droit, l'autre italique */
html body .carte-pu--nuit .carte-pu__groupe--1 h3{font-style:normal!important;font-weight:600!important;letter-spacing:.04em!important;color:rgba(243,237,227,.72)!important}
html body .carte-pu--nuit .carte-pu__groupe--2 h3{font-style:normal!important;font-weight:500!important;color:#d9bd96!important}
/* séparateur entre deux diplômes : filet fin interrompu par un petit losange sable */
html body .carte-pu--nuit .carte-pu__groupe li + li::before{content:""!important;display:block;width:64px!important;height:9px!important;margin:1.05rem auto!important;
  background:linear-gradient(90deg,transparent,rgba(217,189,150,.55) 30%,transparent 42%,transparent 58%,rgba(217,189,150,.55) 70%,transparent) center/100% 1px no-repeat,
             linear-gradient(45deg,transparent 40%,#d9bd96 40%,#d9bd96 60%,transparent 60%) center/7px 7px no-repeat!important;
  -webkit-mask:none;transform:none}
html body .carte-pu--nuit .carte-pu__groupe li + li::before{background:none!important;height:9px!important;
  background-image:linear-gradient(90deg,transparent,rgba(217,189,150,.6) 35%,transparent 44%,transparent 56%,rgba(217,189,150,.6) 65%,transparent)!important;
  background-size:100% 1px!important;background-position:center!important;background-repeat:no-repeat!important;position:relative}
html body .carte-pu--nuit .carte-pu__groupe li{position:relative}
html body .carte-pu--nuit .carte-pu__groupe li + li::after{content:"";position:absolute;left:50%;top:calc(1.05rem + 1px);width:6px;height:6px;transform:translateX(-50%) rotate(45deg);
  border:1px solid #d9bd96;background:transparent}
html body .carte-pu__groupe--1 .dipl__nom{font-weight:600!important}
html body main h2 .t-droit{font-weight:600!important}

/* ---------- 15. v67 (7 octobre 2026) ---------- */
/* menu : de nouveau horizontal en haut sur l'accueil (le cadre dans le premier écran est retiré) */
@media (min-width:901px){
  html body.p-accueil .entete .nav{display:block!important}
  html body .entete .wrap{align-items:center!important}
  html body .entete .nav{flex:1 1 auto;display:flex!important;justify-content:center}
  html body .entete .nav ul{justify-content:center;gap:clamp(16px,1.9vw,34px)!important}
  /* « EN » centré au-dessus de « Prendre rendez-vous » */
  html body .entete .outils .langue{justify-self:center!important;text-align:center}
}
.cadre-rub__pos{display:none!important}
/* contours complets : une ancienne règle retirait le trait du bas des liens */
html body .rdv-pastille,html body ul.bulles a{border-bottom-width:1px!important;border-bottom-style:solid!important}
html body .rdv-pastille{border-color:color-mix(in oklab,currentColor 60%,transparent)!important}
html body .rdv-pastille:hover,html body .rdv-pastille:focus-visible{border-color:currentColor!important;background:color-mix(in oklab,currentColor 12%,transparent)}
/* liens en encadrés : autre écriture (Garamond italique), couleur sable ; au survol, l'encadré se remplit de sable */
html body ul.bulles a{font-family:"Cormorant Garamond","EB Garamond",Garamond,serif!important;font-style:normal;font-weight:600!important;font-size:1.1rem;letter-spacing:.01em;
  color:#e6cfaa!important;border:1px solid rgba(220,193,154,.6)!important;background:rgba(20,17,15,.18);
  transition:background-color .3s ease,color .3s ease,border-color .3s ease}
html body ul.bulles a:hover,html body ul.bulles a:focus-visible{background:#dcc19a!important;color:#1b1714!important;border-color:#dcc19a!important}
@media (max-width:700px){html body ul.bulles a{font-size:1.02rem}}
@media (prefers-reduced-motion:reduce){html body ul.bulles a{transition:none}}
/* vignettes des articles : un cadre fin sur les quatre côtés, plus marqué au survol */
.art-v63 a.art-v63__lien{padding:10px 10px 12px;border:1px solid rgba(246,241,232,.14);border-radius:8px;transition:border-color .3s ease,background-color .3s ease}
.art-v63 a.art-v63__lien:hover,.art-v63 a.art-v63__lien:focus-visible{border-color:rgba(220,193,154,.75);background:rgba(246,241,232,.04)}
@media (max-width:860px){.art-v63 a.art-v63__lien{padding:7px 7px 9px}}
/* écrans moyens (tablette à l'horizontale, petit portable) : le menu passe sur une seconde ligne, toujours horizontal, sans mots coupés */
html body .entete .nav a{white-space:nowrap}
/* sous-menu de la dernière rubrique : aligné à droite pour ne jamais sortir de l'écran */
@media (min-width:901px){html body .entete .nav li.a-sous:last-child .sous{left:auto!important;right:0!important;transform-origin:top right}}

/* ---------- 16. v68 (7 octobre 2026) : menu en Garamond plus affirmé ---------- */
@media (min-width:901px){
  /* rubriques : Garamond semi-gras ivoire ; au survol et sur la page en cours, italique au dégradé sable (comme les titres) */
  html body .entete .nav > ul > li > a{font-family:"Cormorant Garamond","EB Garamond",Garamond,serif!important;font-weight:600!important;
    font-size:clamp(1.02rem,1.08vw,1.14rem)!important;letter-spacing:.012em!important;text-transform:none!important;color:#f6f1e8;opacity:1!important;
    border-bottom:0!important;padding:.3rem .05rem .35rem!important;transition:color .25s ease}
  html body .entete .nav > ul > li > a:hover,html body .entete .nav > ul > li > a:focus-visible,html body .entete .nav > ul > li > a[aria-current="page"]{
    font-style:normal;font-weight:600!important;background:var(--ton-sable);-webkit-background-clip:text;background-clip:text;color:transparent!important;-webkit-text-fill-color:transparent}
  html body .entete.clair .nav > ul > li > a{color:#1d1a17}
  html body .entete.clair .nav > ul > li > a:hover,html body .entete.clair .nav > ul > li > a[aria-current="page"]{background:var(--ton-sable-clair);-webkit-background-clip:text;background-clip:text}
  /* sous-menus : vue d'ensemble en droit, pages en italique ; survol en sable */
  html body .entete .nav .sous{padding:.9rem 1.2rem!important;min-width:270px!important;border:1px solid rgba(220,193,154,.22)}
  html body .entete .nav .sous a{font-family:"Cormorant Garamond","EB Garamond",Garamond,serif!important;font-style:normal;font-weight:500!important;font-size:1.08rem!important;
    letter-spacing:.005em!important;color:rgba(246,241,232,.86)!important;padding:.4rem 0!important}
  html body .entete .nav .sous a:first-child{font-style:normal;font-weight:600!important;color:#f8f3ea!important}
  html body .entete .nav .sous a:hover,html body .entete .nav .sous a:focus-visible{color:#dcc19a!important}
  html body .entete .nav ul{gap:clamp(18px,1.9vw,34px)!important}
}
/* menu du téléphone : rubriques en grand Garamond semi-gras, pages en italique, sable pour la page en cours */
.menu-mobile .panneau a.m-top{font-family:"Cormorant Garamond","EB Garamond",Garamond,serif!important;font-weight:600!important;font-size:1.5rem!important;letter-spacing:.005em}
.menu-mobile .panneau a.m-top[aria-current="page"]{font-style:normal;background:var(--ton-sable);-webkit-background-clip:text;background-clip:text;color:transparent!important;-webkit-text-fill-color:transparent}
.menu-mobile .panneau .m-sous a{font-family:"Cormorant Garamond","EB Garamond",Garamond,serif!important;font-style:normal;font-weight:500;font-size:1.14rem!important}
.menu-mobile .panneau .m-sous a:first-child{font-style:normal;font-weight:600}
@media (min-width:901px){
  html body .entete .nav > ul > li > a:hover,html body .entete .nav > ul > li > a:focus-visible,html body .entete .nav > ul > li > a[aria-current="page"],
  html body .entete .nav > ul > li.a-sous:hover > a{font-style:normal!important}
  html body .entete .nav .sous a{font-style:normal!important}
  html body .entete .nav .sous a:first-child{font-style:normal!important}
}


/* ---------- 18. v70 (7 octobre 2026) : menu horizontal en haut, à sa place ; intitulés de plusieurs mots sur deux lignes courtes ---------- */
@media (min-width:901px){
  html body .entete .wrap{flex-wrap:nowrap!important}
  html body .entete .nav{order:0;flex:1 1 auto!important;display:flex!important;justify-content:center;margin:0;padding:0;border:0}
  html body .entete .nav ul{flex-wrap:nowrap!important;align-items:center;justify-content:center;gap:clamp(18px,2.2vw,40px)!important}
  html body .entete .nav > ul > li > a{display:grid!important;justify-items:center;text-align:center;line-height:1.02!important;padding:.2rem .05rem!important}
  html body .entete .nav > ul > li > a .n1{display:block}
  html body .entete .nav > ul > li > a .n2{display:block;font-style:normal;font-weight:500;font-size:.88em;margin-top:.05em;padding:0 .08em .12em;
    background:var(--ton-sable);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
  /* survol et page en cours : tout l'intitulé passe en sable */
  html body .entete .nav > ul > li > a:hover .n1,html body .entete .nav > ul > li > a[aria-current="page"] .n1{font-style:normal;
    background:var(--ton-sable);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;padding:0 .06em .12em}
  html body .entete .nav > ul > li > a:hover,html body .entete .nav > ul > li > a[aria-current="page"]{background:none!important;color:inherit!important;-webkit-text-fill-color:currentColor}
  html body .entete.clair .nav > ul > li > a .n2,html body .entete.clair .nav > ul > li > a:hover .n1{background:var(--ton-sable-clair);-webkit-background-clip:text;background-clip:text}
}
/* entre 901 et 1180 px : toujours sur une ligne, intitulés un peu plus petits */
@media (min-width:901px) and (max-width:1180px){
  html body .entete .wrap{flex-wrap:nowrap!important}
  html body .entete .nav{order:0!important;flex:1 1 auto!important}
  html body .entete .nav ul{gap:clamp(12px,1.5vw,20px)!important}
  html body .entete .nav > ul > li > a{font-size:.98rem!important}
  html body .entete .marque__nom{font-size:1.2rem!important}
}
/* écrans de 901 à 1100 px (tablette à l'horizontale) : le menu se range dans le petit rond, à droite, pour garder de l'air */
@media (min-width:901px) and (max-width:1100px){
  html body .entete .nav{display:none!important}
  html body .entete .outils{display:flex!important;align-items:center;gap:14px!important}
  html body .entete .outils .langue{order:0}
  html body .entete .outils .tel{order:1}
  html body .entete .outils .rdv-pastille{order:2}
  html body .entete .outils .menu-mobile{display:block!important;order:3}
  html body .menu-mobile .panneau{inset:84px 16px auto auto!important;width:min(420px,calc(100vw - 32px))}
}
@media (min-width:901px) and (max-width:1100px){html body.p-accueil .entete .nav,html body .entete .nav{display:none!important}}

/* ---------- 19. v71 (7 octobre 2026) : registre des diplômes, approche globale, démarche en six temps ---------- */
/* Registre universitaire : une ligne par diplôme, discipline en grand, nature en petit ; très fins filets ; aligné à gauche */
html body .registre .registre__grille{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:clamp(40px,6vw,96px);max-width:1080px;margin-inline:auto;text-align:left}
@media (max-width:860px){html body .registre .registre__grille{grid-template-columns:1fr;gap:48px}}
html body .registre__groupe h3{font-family:"Cormorant Garamond",Garamond,serif!important;font-size:1rem!important;font-weight:600!important;letter-spacing:.03em!important;
  text-transform:none!important;color:rgba(243,237,227,.62)!important;margin:0 0 .4rem!important;padding:0 0 .7rem!important;border-bottom:1px solid rgba(220,193,154,.38)!important}
html body .registre__groupe--2 h3{font-style:normal!important;color:#d9bd96!important}
.registre__groupe ol{list-style:none;margin:0;padding:0}
.registre__groupe li{display:grid;gap:.18rem;padding:.95rem 0 1rem;border-bottom:1px solid rgba(243,237,227,.09)}
.registre__groupe li:last-child{border-bottom:0}
html body .registre .dipl__nom{font-family:"Cormorant Garamond","EB Garamond",Garamond,serif;line-height:1.18;text-wrap:balance;font-size:clamp(1.28rem,1.7vw,1.52rem)}
html body .registre__groupe--1 .dipl__nom{font-weight:600!important;color:#f8f3ea}
html body .registre__groupe--2 .dipl__nom{font-style:normal;font-weight:500;background:var(--ton-sable);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;padding:0 .08em .14em 0}
html body .registre .dipl__nature{font-family:"Cormorant Garamond",Garamond,serif;font-size:.92rem;font-style:normal;letter-spacing:.015em;color:rgba(243,237,227,.56)}
html body .registre__groupe--2 .dipl__nature{font-style:normal}
html body .registre .carte-pu__lien{text-align:center}
/* annule les anciens filets à losange */
html body .registre li + li::before,html body .registre li + li::after{content:none!important;display:none!important}
/* Approche globale : légende de la vidéo, discrète, sous le texte */
.rubp__legende{margin-top:1.4rem!important;max-width:58ch;font-family:"Cormorant Garamond",Garamond,serif;font-style:normal;font-size:.98rem!important;line-height:1.45!important;color:rgba(246,241,232,.66)!important}
html body #approche-globale video,html body #global-approach video{object-position:50% 50%}
/* Démarche en six temps */
.demarche{color:#f6f1e8;padding-block:clamp(36px,5vw,72px) clamp(56px,7vw,104px)}
.demarche .wrap{max-width:var(--media-max,1120px)}
html body .demarche h2.demarche__titre{color:#f8f3ea!important;margin:0 0 1rem!important;font-size:var(--titre-section)!important}
.demarche__chaine{display:flex;flex-wrap:wrap;align-items:baseline;gap:.35rem 0;margin:0 0 clamp(32px,4vw,56px);font-family:"Cormorant Garamond",Garamond,serif;font-style:normal;font-size:clamp(1.05rem,1.3vw,1.2rem);color:#dcc19a}
.demarche__chaine span + span::before{content:"";display:inline-block;width:1.6em;height:1px;margin:0 .55em;vertical-align:.32em;background:rgba(220,193,154,.55)}
.demarche__etapes{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(30px,3.5vw,56px) clamp(28px,3.5vw,56px);counter-reset:e}
@media (max-width:980px){.demarche__etapes{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.demarche__etapes{grid-template-columns:1fr}}
.demarche__etapes li{display:grid;align-content:start;gap:.5rem;padding-top:1rem;border-top:1px solid rgba(220,193,154,.32)}
.demarche__num{font-family:"Cormorant Garamond",Garamond,serif;font-style:normal;font-weight:500;font-size:1.5rem;line-height:1;background:var(--ton-sable);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;padding:0 .1em .1em 0}
html body .demarche__etapes h3{font-family:"Cormorant Garamond","EB Garamond",Garamond,serif!important;font-weight:600!important;font-size:clamp(1.3rem,1.6vw,1.48rem)!important;line-height:1.15;color:#f8f3ea!important;margin:0!important}
.demarche__etapes p{margin:0;font-size:clamp(1rem,1.1vw,1.08rem);line-height:1.6;color:rgba(246,241,232,.86)}
.demarche__nuance{margin:clamp(36px,4.5vw,60px) 0 0;max-width:72ch;font-size:clamp(.98rem,1.05vw,1.04rem);line-height:1.6;color:rgba(246,241,232,.7);font-style:normal;font-family:"Cormorant Garamond",Garamond,serif}
.demarche ul.bulles{margin-top:1.6rem}
@media (min-width:1100px){.demarche ul.bulles{grid-template-columns:repeat(4,minmax(0,1fr));max-width:none}}
/* passage des diplômes (noir) à la vidéo de l'approche globale : même fondu long que pour la première rubrique */
html body #approche-globale::before,html body #global-approach::before{height:52%;background:linear-gradient(180deg,var(--c-haut) 0%,var(--c-haut) 6%,
  color-mix(in oklab,var(--c-haut) 88%,transparent) 18%,color-mix(in oklab,var(--c-haut) 66%,transparent) 36%,color-mix(in oklab,var(--c-haut) 38%,transparent) 58%,
  color-mix(in oklab,var(--c-haut) 14%,transparent) 80%,transparent 100%)}
@media (max-width:700px){html body #approche-globale::before,html body #global-approach::before{height:34svh}}

/* ---------- 20. v72 (7 octobre 2026) : parodontologie préventive et médicale — bulles des maladies en majuscules, teinte rosée ---------- */
html body ul.bulles.bulles--sante{grid-template-columns:repeat(3,minmax(0,1fr))!important;max-width:min(660px,100%)!important;margin-top:1.5rem}
html body ul.bulles--sante a{font-style:normal!important;text-transform:uppercase;letter-spacing:.09em!important;font-weight:600!important;font-size:.84rem!important;
  color:#ecc0b3!important;border-color:rgba(226,170,156,.62)!important;background:rgba(40,12,14,.22)!important;min-height:44px;padding:.35rem .7rem!important}
html body ul.bulles--sante a:hover,html body ul.bulles--sante a:focus-visible{background:#e2aa9c!important;color:#2a1012!important;border-color:#e2aa9c!important}
@media (max-width:700px){html body ul.bulles.bulles--sante{grid-template-columns:repeat(2,minmax(0,1fr))!important}html body ul.bulles--sante a{font-size:.78rem!important;letter-spacing:.07em!important}}
html body #approche-globale h2.t-rub,html body #global-approach h2.t-rub{max-width:20ch}

/* ---------- 21. v73 (7 octobre 2026) : diplômes en fins encadrés, Garamond italique fin ; au survol, l'encadré change de forme et une bulle explique ---------- */
html body .registre__groupe h3{border-bottom:0!important;padding-bottom:0!important;margin-bottom:1.1rem!important;font-weight:500!important;font-size:.98rem!important}
html body .registre__groupe ol{display:grid;gap:.75rem}
html body .registre__groupe li.dipl{position:relative;display:block;padding:0;border:0!important;outline:none}
.dipl__cadre{display:grid;gap:.1rem;padding:.8rem 1.5rem .85rem;border:1px solid rgba(220,193,154,.28);border-radius:999px;cursor:help;
  background:rgba(246,241,232,.015);transition:border-radius .45s cubic-bezier(.2,.7,.2,1),border-color .35s ease,background-color .35s ease,transform .45s cubic-bezier(.2,.7,.2,1)}
html body .registre .dipl__nom{font-family:"Cormorant Garamond",Garamond,serif!important;font-style:normal;font-weight:400!important;letter-spacing:.012em;
  font-size:clamp(1.24rem,1.6vw,1.46rem);line-height:1.2;color:#f6f1e8}
html body .registre__groupe--1 .dipl__nom{font-weight:400!important;color:#f8f3ea}
html body .registre .dipl__nature{font-family:"Cormorant Garamond",Garamond,serif;font-style:normal;font-weight:400;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:rgba(220,193,154,.72)}
html body .registre__groupe--2 .dipl__nature{font-style:normal}
/* au survol ou au toucher : l'encadré se resserre en cartouche, le trait passe au sable, la bulle apparaît */
.dipl:hover .dipl__cadre,.dipl:focus-visible .dipl__cadre,.dipl.ouvert .dipl__cadre{border-radius:14px;border-color:rgba(220,193,154,.85);background:rgba(220,193,154,.06);transform:translateY(-2px)}
.dipl__bulle{position:absolute;left:50%;bottom:calc(100% + 12px);z-index:5;width:min(340px,86vw);padding:.85rem 1.05rem;border-radius:12px;
  background:#1d1916;border:1px solid rgba(220,193,154,.45);box-shadow:0 18px 40px rgba(0,0,0,.45);
  font-family:"Cormorant Garamond",Garamond,serif;font-size:1.04rem;line-height:1.4;color:#f3ede3;text-align:left;
  opacity:0;visibility:hidden;transform:translate(-50%,6px);transition:opacity .3s ease,transform .3s cubic-bezier(.2,.7,.2,1),visibility 0s linear .3s;pointer-events:none}
.dipl__bulle::after{content:"";position:absolute;left:50%;top:100%;width:10px;height:10px;transform:translate(-50%,-5px) rotate(45deg);background:#1d1916;
  border-right:1px solid rgba(220,193,154,.45);border-bottom:1px solid rgba(220,193,154,.45)}
.dipl:hover .dipl__bulle,.dipl:focus-visible .dipl__bulle,.dipl.ouvert .dipl__bulle{opacity:1;visibility:visible;transform:translate(-50%,0);transition:opacity .3s ease,transform .3s cubic-bezier(.2,.7,.2,1),visibility 0s}
@media (prefers-reduced-motion:reduce){.dipl__cadre,.dipl__bulle{transition:none}}
@media (max-width:700px){.dipl__cadre{padding:.7rem 1.15rem .75rem}.dipl__bulle{width:min(320px,88vw)}}
@media (max-width:700px){html body .registre .dipl__nature{font-size:.7rem;letter-spacing:.08em}}

/* ---------- 22. v74 (7 octobre 2026) : encadrés en majuscules, bleu poudré, trait plus fin ; diplômes plus discrets ---------- */
/* encadrés des rubriques et des ressources : majuscules, bleu poudré, trait fin ; au survol, l'encadré se remplit de bleu */
html body ul.bulles:not(.bulles--sante) a{font-style:normal!important;text-transform:uppercase;letter-spacing:.1em!important;font-weight:600!important;font-size:.82rem!important;
  color:#b9d0e4!important;border:1px solid rgba(169,196,222,.4)!important;background:rgba(10,16,24,.16)!important;min-height:42px;padding:.35rem .8rem!important}
html body ul.bulles:not(.bulles--sante) a:hover,html body ul.bulles:not(.bulles--sante) a:focus-visible{background:#b9d0e4!important;color:#13202c!important;border-color:#b9d0e4!important}
html body ul.bulles--sante a{border-color:rgba(226,170,156,.42)!important;border-width:1px!important}
@media (max-width:700px){html body ul.bulles:not(.bulles--sante) a{font-size:.76rem!important;letter-spacing:.07em!important}}
/* diplômes : titres de groupe en majuscules, cadres plus discrets (trait très léger, plus petits), bulle plus sobre */
html body .registre__groupe h3{text-transform:uppercase!important;letter-spacing:.16em!important;font-style:normal!important;font-weight:500!important;font-size:.8rem!important;
  color:rgba(220,193,154,.8)!important;margin-bottom:1rem!important}
html body .registre__groupe--1 h3{color:rgba(243,237,227,.66)!important}
html body .registre__groupe ol{gap:.45rem!important}
html body .dipl__cadre{padding:.5rem 1.1rem .55rem!important;border-color:rgba(220,193,154,.16)!important;background:transparent!important;gap:0!important}
html body .registre .dipl__nom{font-size:clamp(1.08rem,1.3vw,1.22rem)!important;font-weight:400!important}
html body .registre .dipl__nature{font-size:.7rem!important;letter-spacing:.06em!important;text-transform:none!important;font-style:normal!important;color:rgba(220,193,154,.6)!important}
html body .dipl:hover .dipl__cadre,html body .dipl:focus-visible .dipl__cadre,html body .dipl.ouvert .dipl__cadre{border-radius:10px;border-color:rgba(220,193,154,.5)!important;background:rgba(220,193,154,.035)!important;transform:none!important}
html body .dipl__bulle{width:min(290px,84vw)!important;padding:.6rem .8rem!important;font-size:.95rem!important;line-height:1.38!important;border-radius:9px!important;
  background:rgba(22,19,17,.96)!important;border-color:rgba(220,193,154,.28)!important;box-shadow:0 10px 26px rgba(0,0,0,.35)!important;bottom:calc(100% + 8px)!important}
html body .dipl__bulle::after{width:8px;height:8px;transform:translate(-50%,-4px) rotate(45deg);border-color:rgba(220,193,154,.28)!important}
html body ul.bulles:not(.bulles--sante) a{color:#a7c6e6!important;border-color:rgba(140,182,226,.48)!important;background:rgba(12,22,36,.2)!important}
html body ul.bulles:not(.bulles--sante) a:hover,html body ul.bulles:not(.bulles--sante) a:focus-visible{background:#a7c6e6!important;color:#0f1c2a!important;border-color:#a7c6e6!important}
html body .registre .dipl__nature{font-size:.78rem!important}
/* v75 : les encadrés de santé passent eux aussi au bleu poudré */
html body ul.bulles--sante a{color:#a7c6e6!important;border-color:rgba(140,182,226,.48)!important;background:rgba(12,22,36,.2)!important}
html body ul.bulles--sante a:hover,html body ul.bulles--sante a:focus-visible{background:#a7c6e6!important;color:#0f1c2a!important;border-color:#a7c6e6!important}

/* ---------- 23. v76 (7 octobre 2026) : premier écran sans boutons (rendez-vous et accès sont en haut à droite) ---------- */
.acces-entete{display:none}
@media (min-width:1101px){
  html body .entete .outils{grid-template-areas:"lg" "rdv" "tel" "acc"!important}
  html body .entete .outils .acces-entete{grid-area:acc;display:inline-flex;align-items:center;min-height:30px;font-family:"Cormorant Garamond",Garamond,serif;font-style:normal;
    font-size:.95rem;color:inherit;opacity:.82;text-decoration:none;border-bottom:0!important}
  html body .entete .outils .acces-entete:hover,html body .entete .outils .acces-entete:focus-visible{opacity:1;color:#dcc19a}
  html body .entete .outils .tel{padding-bottom:0!important}
}
/* v77 : repère de localisation devant « Accès au cabinet » ; premier écran en symétrie (titre à gauche, texte à droite, même largeur, centrés en hauteur) */
html body .entete .outils .acces-entete{gap:.4rem}
html body .entete .outils .acces-entete .ico{width:15px;height:15px;flex:none;fill:none;stroke:currentColor;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round;opacity:.9}
/* v78 : premier écran — les deux phrases à droite descendent au niveau de « Parodontie clinique » (dernière ligne sur la ligne de base du titre) */
@media (min-width:1001px){html body .hero--sobre .hero__chapo{position:relative}}

/* ---------- 24. v79 (7 octobre 2026) : diplômes en majuscules, Garamond Light 300, sans italique ; titres de groupe en gras ---------- */
html body .registre .dipl__nom,html body .registre__groupe--1 .dipl__nom,html body .registre__groupe--2 .dipl__nom{
  font-family:"Cormorant Garamond",Garamond,serif!important;font-style:normal!important;font-weight:300!important;text-transform:uppercase;
  letter-spacing:.08em;font-size:clamp(.98rem,1.1vw,1.06rem)!important;line-height:1.35!important;
  color:#f3ede3!important;background:none!important;-webkit-text-fill-color:currentColor!important;padding:0!important}
html body .registre .dipl__nature{font-style:normal!important;text-transform:uppercase;letter-spacing:.12em!important;font-size:.66rem!important;font-weight:400!important}
html body .registre__groupe h3,html body .registre__groupe--1 h3,html body .registre__groupe--2 h3{font-weight:700!important;font-style:normal!important;letter-spacing:.14em!important;font-size:.86rem!important}
html body .dipl__cadre{padding:.62rem 1.2rem .64rem!important}
@media (max-width:700px){html body .registre .dipl__nom{font-size:.92rem!important;letter-spacing:.06em}}
html body .registre .dipl__nature{text-transform:uppercase!important;font-style:normal!important;margin-top:.15rem}
/* v80 : « INTER-UNIVERSITAIRE » et « EUROPÉEN » lisibles en majuscules */
html body .registre .dipl__nature{font-size:.8rem!important;letter-spacing:.1em!important;font-weight:400!important;color:rgba(220,193,154,.85)!important;margin-top:.2rem}
@media (max-width:700px){html body .registre .dipl__nature{font-size:.74rem!important}}

/* ---------- 25. v81 (7 octobre 2026) : diplômes mis en avant par un rouge grenat adouci ---------- */
html body .registre{--grenat:#c4505e;--grenat-doux:#de8a93}
html body .registre__groupe h3,html body .registre__groupe--1 h3,html body .registre__groupe--2 h3{color:var(--grenat-doux)!important}
html body .dipl__cadre{border-color:rgba(196,80,94,.55)!important;background:rgba(196,80,94,.07)!important}
html body .registre .dipl__nom{color:#f6efe6!important}
html body .registre .dipl__nature{color:var(--grenat-doux)!important}
html body .dipl:hover .dipl__cadre,html body .dipl:focus-visible .dipl__cadre,html body .dipl.ouvert .dipl__cadre{border-color:var(--grenat)!important;background:rgba(196,80,94,.2)!important;box-shadow:0 0 0 1px rgba(196,80,94,.25),0 8px 26px rgba(196,80,94,.14)}
html body .dipl__bulle{border-color:rgba(196,80,94,.55)!important}
html body .dipl__bulle::after{border-color:rgba(196,80,94,.55)!important}

/* ---------- 26. v82 (7 octobre 2026, soir) ---------- */
/* Praticien : la petite vidéo quitte le portrait. Ordinateur : à côté du texte, dans sa colonne ; téléphone : posée sur l'angle du portrait */
html body .praticien__grille{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto auto;column-gap:clamp(40px,5vw,88px);align-items:center}
html body .praticien__grille > .portrait{grid-column:1;grid-row:1 / span 2}
html body .praticien__grille > .pile{grid-column:2;grid-row:1;align-self:end}
.praticien__video{grid-column:2;grid-row:2;align-self:start;justify-self:start;width:min(260px,60%);aspect-ratio:4/5;margin-top:clamp(18px,2.4vw,32px);overflow:hidden;
  --fx:linear-gradient(90deg,transparent 0,rgba(0,0,0,.35) 2.2%,rgba(0,0,0,.75) 4.6%,#000 7%,#000 93%,rgba(0,0,0,.75) 95.4%,rgba(0,0,0,.35) 97.8%,transparent 100%);
  --fy:linear-gradient(180deg,transparent 0,rgba(0,0,0,.45) 1.3%,rgba(0,0,0,.85) 2.8%,#000 4%,#000 92%,rgba(0,0,0,.75) 94.6%,rgba(0,0,0,.35) 97.4%,transparent 100%);
  -webkit-mask-image:var(--fx),var(--fy);mask-image:var(--fx),var(--fy);-webkit-mask-composite:source-in;mask-composite:intersect}
html body .praticien__video video{width:100%!important;height:100%!important;object-fit:cover;display:block;border-radius:0!important;max-height:none!important}
@media (max-width:900px){
  html body .praticien__grille{grid-template-columns:1fr;grid-template-rows:auto auto}
  html body .praticien__grille > .portrait{grid-column:1;grid-row:1}
  .praticien__video{grid-column:1;grid-row:1;align-self:end;justify-self:end;width:34%;margin:0 2% 6% 0;position:relative;z-index:2}
  html body .praticien__grille > .pile{grid-column:1;grid-row:2;align-self:start}
}
.praticien .note-google{display:none!important}

/* Diplômes : violet, couleur universitaire de la chirurgie dentaire ; plus d'air ; cadres à la longueur du texte, en quinconce */
html body .registre{--univ:#9b84cf;--univ-doux:#c3b2ea}
html body .registre__groupe h3,html body .registre__groupe--1 h3,html body .registre__groupe--2 h3{color:var(--univ-doux)!important}
html body .registre .dipl__nature{color:var(--univ-doux)!important}
html body .registre__groupe ol{display:flex!important;flex-direction:column;align-items:flex-start;gap:clamp(14px,1.6vw,22px)!important}
html body .registre__groupe li.dipl{width:auto;max-width:100%}
html body .dipl__cadre{display:inline-flex!important;align-items:center;gap:.85rem!important;width:auto;max-width:100%;
  border-color:rgba(155,132,207,.55)!important;background:rgba(155,132,207,.07)!important;padding:.62rem 1rem .64rem 1.25rem!important}
.dipl__txt{display:grid;gap:.1rem}
.dipl__ico{flex:none;width:17px;height:17px;fill:none;stroke:var(--univ-doux,#c3b2ea);stroke-width:1.1;stroke-linecap:round;stroke-linejoin:round;opacity:.85;transition:transform .35s cubic-bezier(.2,.7,.2,1),opacity .3s ease}
.dipl:hover .dipl__ico,.dipl:focus-visible .dipl__ico,.dipl.ouvert .dipl__ico{transform:rotate(180deg);opacity:1}
html body .dipl:hover .dipl__cadre,html body .dipl:focus-visible .dipl__cadre,html body .dipl.ouvert .dipl__cadre{border-color:var(--univ)!important;background:rgba(155,132,207,.18)!important;
  box-shadow:0 0 0 1px rgba(155,132,207,.22),0 8px 26px rgba(155,132,207,.14)!important}
html body .dipl__bulle,html body .dipl__bulle::after{border-color:rgba(155,132,207,.55)!important}
html body .dipl__bulle{left:1.25rem!important;transform:translate(0,6px)!important}
html body .dipl:hover .dipl__bulle,html body .dipl:focus-visible .dipl__bulle,html body .dipl.ouvert .dipl__bulle{transform:translate(0,0)!important}
html body .dipl__bulle::after{left:2rem!important}
/* quinconce : une ligne sur deux en retrait (ordinateur) */
@media (min-width:901px){html body .registre__groupe li.dipl:nth-child(even){margin-left:clamp(28px,3.2vw,56px)}}
/* apparition au défilement, dans le sens de la descente */
.dipl.a-venir{opacity:0;transform:translateY(-14px);transition:opacity .7s ease var(--retard,0ms),transform .8s cubic-bezier(.2,.7,.2,1) var(--retard,0ms)}
.dipl.a-venir.vu{opacity:1;transform:none}
/* flèche qui descend vers « Le parcours détaillé » */
html body .registre .carte-pu__lien{display:grid;justify-items:center;gap:.4rem}
.fleche-defil{display:block;width:12px;height:12px;border-right:1px solid var(--univ-doux,#c3b2ea);border-bottom:1px solid var(--univ-doux,#c3b2ea);transform:rotate(45deg);animation:defil 2.2s cubic-bezier(.4,0,.6,1) infinite}
@keyframes defil{0%{opacity:0;transform:translateY(-8px) rotate(45deg)}40%{opacity:.9}80%{opacity:0;transform:translateY(10px) rotate(45deg)}100%{opacity:0}}
@media (prefers-reduced-motion:reduce){.fleche-defil{animation:none;opacity:.7}}

/* Bas de page : fond noir jusqu'à la fin (questionnaire, cabinet, accès) */
html body.p-accueil .sur-noir{background:#1c1715!important;color:#f3ede3!important}
html body.p-accueil .sur-noir h2{color:#f8f3ea!important}
html body.p-accueil .sur-noir p,html body.p-accueil .sur-noir address,html body.p-accueil .sur-noir dd{color:rgba(243,237,227,.86)!important}
html body.p-accueil .sur-noir dt,html body.p-accueil .sur-noir .acces-nom{color:#f8f3ea!important}
html body.p-accueil .sur-noir figcaption{color:rgba(243,237,227,.62)!important}
html body.p-accueil .sur-noir a:not(.bouton):not(.qg__go){color:#f3ede3}
html body.p-accueil .sur-noir .t-ton,html body.p-accueil .sur-noir .amorce{background:var(--ton-sable)!important;-webkit-background-clip:text!important;background-clip:text!important}
html body.p-accueil .sur-noir strong.fort{color:#fbf6ee!important}
html body.p-accueil .sur-noir .acces-resume div{border-color:rgba(243,237,227,.12)!important}
html body.p-accueil .sur-noir .adresse-bloc,html body.p-accueil .sur-noir .acces-tete{border-color:rgba(243,237,227,.14)!important;background:transparent!important}
html body.p-accueil .sur-noir ul.bulles a,html body.p-accueil .sur-noir .rub__liens a{color:#a7c6e6!important}

/* Questionnaire : mis en valeur dans un cadre lumineux, bouton « Commencer » vert */
html body.p-accueil .qg{padding-block:clamp(56px,7vw,104px)!important}
html body.p-accueil .qg__boite{max-width:720px!important;margin-inline:auto;padding:clamp(28px,4vw,52px) clamp(22px,4vw,56px)!important;border-radius:22px;
  border:1px solid rgba(120,190,150,.35)!important;background:radial-gradient(120% 140% at 50% 0%,rgba(79,143,111,.18),rgba(28,23,21,0) 70%),rgba(255,255,255,.015);
  box-shadow:0 30px 80px rgba(0,0,0,.35)}
html body.p-accueil .qg h2{font-size:clamp(2.2rem,4vw,3.2rem)!important}
html body.p-accueil .qg__intro{color:rgba(243,237,227,.8)!important}
html body .qg__go{background:#3f8462!important;border:1px solid #57a27c!important;color:#f6fbf7!important;min-height:52px;padding:.8rem 2.2rem!important;border-radius:999px!important;
  font-family:"Cormorant Garamond",Garamond,serif!important;font-weight:600!important;font-size:1.15rem!important;letter-spacing:.04em;
  box-shadow:0 10px 30px rgba(63,132,98,.35);transition:background-color .3s ease,transform .3s cubic-bezier(.2,.7,.2,1),box-shadow .3s ease}
html body .qg__go:hover,html body .qg__go:focus-visible{background:#4b9a73!important;transform:translateY(-1px);box-shadow:0 14px 36px rgba(63,132,98,.45)}
html body.p-accueil .qg .qg__opt{color:#f3ede3!important;border-color:rgba(243,237,227,.3)!important;background:transparent!important}
html body.p-accueil .qg .qg__opt[aria-pressed="true"]{background:#3f8462!important;border-color:#57a27c!important;color:#fff!important}
html body.p-accueil .qg .qg__prog{background:rgba(243,237,227,.12)!important}
html body.p-accueil .qg .qg__prog span{background:#57a27c!important}
html body.p-accueil .qg .qg__mention{color:rgba(243,237,227,.55)!important}
html body.p-accueil .qg .qg__num,html body.p-accueil .qg .qg__libelle{color:#f3ede3!important}

/* Cabinet : photos alignées ; téléphone : toutes les photos sur toute la largeur, même proportion, fondu en haut et en bas */
@media (max-width:700px){
  html body .cabinet-v60 .cabinet-v60__grand,html body .cabinet-v60 .cabinet-v60__duo figure,html body .acces .acces-photo{width:100vw!important;max-width:none!important;margin-left:calc(50% - 50vw)!important;margin-right:0!important}
  html body .cabinet-v60 .cabinet-v60__duo{display:grid!important;grid-template-columns:1fr!important;gap:18px!important}
  html body .cabinet-v60 figure img,html body .acces .acces-photo img{width:100%!important;aspect-ratio:3/2!important;height:auto!important;object-fit:cover!important;border-radius:0!important;
    -webkit-mask-image:linear-gradient(180deg,transparent 0,#000 9%,#000 91%,transparent 100%)!important;mask-image:linear-gradient(180deg,transparent 0,#000 9%,#000 91%,transparent 100%)!important}
  html body .cabinet-v60 figcaption,html body .acces .acces-photo figcaption{padding-inline:var(--gout,20px)!important}
}
@media (min-width:701px){
  html body .cabinet-v60 figure img,html body .acces .acces-photo img{-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 6%,#000 94%,transparent 100%)!important;mask-image:linear-gradient(180deg,transparent 0,#000 6%,#000 94%,transparent 100%)!important}
}

/* Articles sur téléphone : présentation de publication scientifique (vignette, titre, référence) */
@media (max-width:860px){
  .art-v63__groupe ul{grid-template-columns:1fr!important;gap:0!important}
  .art-v63 a.art-v63__lien{grid-template-columns:96px minmax(0,1fr)!important;display:grid!important;gap:.9rem!important;align-items:start;padding:14px 0!important;
    border:0!important;border-top:1px solid rgba(246,241,232,.12)!important;border-radius:0!important;background:none!important}
  .art-v63__groupe li:last-child a.art-v63__lien{border-bottom:1px solid rgba(246,241,232,.12)!important}
  .art-v63__img{aspect-ratio:1/1!important;border-radius:6px!important}
  .art-v63__corps{display:grid;gap:.35rem}
  .art-v63__titre{font-size:1.08rem!important;line-height:1.28!important}
  .art-v63__temps{font-size:.76rem!important;letter-spacing:.04em;text-transform:uppercase;color:rgba(220,193,154,.75)!important}
}
.art-v63__corps{display:grid;gap:.45rem}
/* Sommaire : le titre de la partie en cours, coupé proprement s'il est long */
.guide__bouton .g-mot{max-width:min(52vw,320px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block;vertical-align:bottom}

/* ---------- 27. v83 (7 octobre 2026) : pages intérieures sur fond noir, comme l'accueil ----------
   Fond #1c1715 ; texte ivoire ; titres de section en Garamond semi-gras ; sous-titres en italique sable ;
   liens en bleu poudré ; encadrés et notes de formation en violet universitaire ; boutons d'action en vert. */
html body:not(.p-accueil){background:#1c1715!important;color:#efe8de}
html body:not(.p-accueil) main{background:#1c1715;color:#efe8de}
html body:not(.p-accueil) main p,html body:not(.p-accueil) main li,html body:not(.p-accueil) main dd,html body:not(.p-accueil) main td,html body:not(.p-accueil) main address{color:rgba(243,237,227,.88)!important}
html body:not(.p-accueil) main h2{font-family:"Cormorant Garamond","EB Garamond",Garamond,serif!important;font-weight:600!important;color:#f8f3ea!important}
html body:not(.p-accueil) main h3{font-family:"Cormorant Garamond","EB Garamond",Garamond,serif!important;font-style:normal;font-weight:500!important;color:#dcc19a!important}
html body:not(.p-accueil) main h4,html body:not(.p-accueil) main dt,html body:not(.p-accueil) main strong,html body:not(.p-accueil) main b,html body:not(.p-accueil) main th{color:#f8f3ea!important}
html body:not(.p-accueil) main a:not(.bouton):not(.bouton-fin):not(.carte):not(.art-v63__lien):not(.qg-rdv){color:#a7c6e6!important;text-decoration-color:rgba(167,198,230,.4)!important}
html body:not(.p-accueil) main a:not(.bouton):not(.bouton-fin):not(.carte):hover{color:#cfe0f1!important}
html body:not(.p-accueil) main .t-hero a,html body:not(.p-accueil) main .fil a{color:rgba(243,237,227,.75)!important}
html body:not(.p-accueil) .t-hero h1 .t-ton{font-weight:500}
/* filets, tableaux, encadrés, sommaire, questions */
html body:not(.p-accueil) main hr,html body:not(.p-accueil) main table,html body:not(.p-accueil) main th,html body:not(.p-accueil) main td,
html body:not(.p-accueil) main details,html body:not(.p-accueil) main .sommaire,html body:not(.p-accueil) main .questions,html body:not(.p-accueil) main .faq details{border-color:rgba(243,237,227,.14)!important}
html body:not(.p-accueil) main table,html body:not(.p-accueil) main thead,html body:not(.p-accueil) main tr{background:transparent!important}
html body:not(.p-accueil) main thead th{color:#dcc19a!important}
html body:not(.p-accueil) main .encadre,html body:not(.p-accueil) main .formation-note,html body:not(.p-accueil) main aside{background:rgba(155,132,207,.08)!important;border:1px solid rgba(155,132,207,.38)!important;border-left-width:3px!important;color:#efe8de!important;border-radius:6px}
html body:not(.p-accueil) main .formation-note .sur-titre,html body:not(.p-accueil) main .sur-titre{color:#c3b2ea!important;opacity:1!important}
html body:not(.p-accueil) main details summary,html body:not(.p-accueil) .essai-v16 details.sommaire summary{color:#f3ede3!important}
html body:not(.p-accueil) main details summary small{color:rgba(243,237,227,.6)!important}
html body:not(.p-accueil) main figcaption{color:rgba(243,237,227,.6)!important}
html body:not(.p-accueil) main .liste li::marker,html body:not(.p-accueil) main ul li::marker{color:#dcc19a}
html body:not(.p-accueil) main .renvoi a{color:#dcc19a!important}
/* cartes (pages d'une rubrique, articles liés) */
html body:not(.p-accueil) main .carte{background:rgba(246,241,232,.035)!important;border:1px solid rgba(246,241,232,.12)!important;color:#efe8de!important;box-shadow:none!important}
html body:not(.p-accueil) main .carte:hover{border-color:rgba(220,193,154,.6)!important}
html body:not(.p-accueil) main .carte h3{color:#f8f3ea!important;font-style:normal!important}
html body:not(.p-accueil) main .carte p{color:rgba(243,237,227,.72)!important}
html body:not(.p-accueil) main .carte .etat{color:#dcc19a!important}
/* « À lire aussi », parcours patient, thèmes : liens en encadrés bleus en majuscules, comme l'accueil */
html body:not(.p-accueil) main .a-lire a,html body:not(.p-accueil) main .themes-nav a,html body:not(.p-accueil) main .parcours-patient a{
  display:inline-flex!important;align-items:center;min-height:40px;padding:.3rem .95rem!important;border:1px solid rgba(140,182,226,.48)!important;border-radius:999px!important;
  font-family:"Cormorant Garamond",Garamond,serif!important;font-weight:600!important;text-transform:uppercase;letter-spacing:.09em!important;font-size:.8rem!important;
  color:#a7c6e6!important;background:rgba(12,22,36,.2)!important;text-decoration:none!important;opacity:1!important}
html body:not(.p-accueil) main .a-lire a::after{content:none!important}
html body:not(.p-accueil) main .a-lire a:hover,html body:not(.p-accueil) main .themes-nav a:hover,html body:not(.p-accueil) main .parcours-patient a:hover{background:#a7c6e6!important;color:#0f1c2a!important}
html body:not(.p-accueil) main .a-lire{gap:.5rem!important}
html body:not(.p-accueil) main .parcours-patient a[aria-current="page"]{background:rgba(167,198,230,.18)!important}
/* boutons : vert pour l'action principale, contour clair pour les autres */
html body:not(.p-accueil) main .bouton:not(.contour),html body:not(.p-accueil) main .bouton-q{background:#3f8462!important;border-color:#57a27c!important;color:#f6fbf7!important}
html body:not(.p-accueil) main .bouton.contour{background:transparent!important;border-color:rgba(243,237,227,.45)!important;color:#f3ede3!important}
/* formulaires */
html body:not(.p-accueil) main input,html body:not(.p-accueil) main textarea,html body:not(.p-accueil) main select{background:rgba(246,241,232,.05)!important;color:#f3ede3!important;border-color:rgba(243,237,227,.28)!important}
html body:not(.p-accueil) main label,html body:not(.p-accueil) main .q-note,html body:not(.p-accueil) main .q-accord{color:rgba(243,237,227,.78)!important}
/* tarifs, diplômes de la page Parcours, frises */
html body:not(.p-accueil) main .tarifs div{border-color:rgba(243,237,227,.14)!important}
html body:not(.p-accueil) main .tarifs dd{color:#dcc19a!important}
html body:not(.p-accueil) main [class*="bg-ivoire"],html body:not(.p-accueil) main .bg-clair{background:transparent!important}
/* photos et illustrations claires : fondu doux en haut et en bas sur le fond noir */
html body:not(.p-accueil) main .media-texte img,html body:not(.p-accueil) main .galerie img{border-radius:0!important}
html body:not(.p-accueil) main .resume{background:rgba(155,132,207,.08)!important;border:1px solid rgba(155,132,207,.38)!important;border-left-width:3px!important}
html body:not(.p-accueil) main th,html body:not(.p-accueil) main td{background:transparent!important}
html body:not(.p-accueil) main thead th,html body:not(.p-accueil) main th{background:rgba(220,193,154,.08)!important}
html body:not(.p-accueil) main .carte__img{background:rgba(0,0,0,.25)!important}
html body:not(.p-accueil) main .carte-zone,html body.p-accueil .carte-zone{background:#15110f!important;border-color:rgba(243,237,227,.14)!important}
html body:not(.p-accueil) main .parcours-patient span,html body:not(.p-accueil) main .pu__meta,html body:not(.p-accueil) main .badge{color:rgba(220,193,154,.85)!important}
html body:not(.p-accueil) main .tarifs dt span{color:rgba(243,237,227,.7)!important}
html body:not(.p-accueil) main .tarifs dt b{color:#f8f3ea!important}

/* ===== 28. v85 : médias des pages intérieures sur le même fond noir que le reste de la page ===== */
html body .bande-noire{background:#1c1715!important}
html body .bande-noire .media-grand img,html body .bande-noire .media-grand video{
  -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 7%,#000 93%,transparent 100%),linear-gradient(180deg,transparent 0,#000 9%,#000 91%,transparent 100%)!important;
  -webkit-mask-composite:source-in!important;
  mask-image:linear-gradient(90deg,transparent 0,#000 7%,#000 93%,transparent 100%),linear-gradient(180deg,transparent 0,#000 9%,#000 91%,transparent 100%)!important;
  mask-composite:intersect!important;mask-size:100% 100%!important;-webkit-mask-size:100% 100%!important}
html body .bande-noire figcaption{color:#b8afa2!important}

/* ===== 29. v86 : titre d'accueil plus long (« Parodontologie médicale, biologique et préventive ») : retour à la ligne sur téléphone et tablette ===== */
@media (max-width:900px){
 html body .hero--sobre h1{white-space:normal!important;text-wrap:balance!important;font-size:min(2.5rem, calc((100vw - 2 * var(--gout, 20px)) / 9.2))!important;line-height:1.1!important}
 html body .hero--sobre .hero__texte{grid-template-columns:minmax(0,1fr)!important}
}

/* ===== 30. v87 : titre d'accueil moins grand sur ordinateur (demande du 7 octobre) ===== */
@media (min-width:901px){html body .hero--sobre .hero__texte h1{font-size:min(3rem, 3.1vw)!important;line-height:1.1!important}}

/* ===== 31. v88 : entrée mot à mot du titre d'accueil ===== */
html body .hero--sobre h1.h1-mots .mot{display:inline-block;will-change:transform,filter,opacity}
html body .hero--sobre h1.h1-mots .t-ton{background:none;color:inherit;-webkit-text-fill-color:currentColor}
html body .hero--sobre h1.h1-mots .t-ton .mot{background:var(--ton-sable);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;padding:0 .08em .2em 0;margin-right:-.06em}

/* ===== 32. v89 : diplômes et certificats alignés — deux colonnes de même largeur, un encadré par ligne sur toute la largeur,
   nom à gauche, précision (inter-universitaire, européen) en petite étiquette sous le nom, icône à droite, plus de décalage ===== */
html body .registre .registre__grille{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:clamp(32px,4.5vw,72px)!important;max-width:1040px!important;align-items:start}
@media (max-width:860px){html body .registre .registre__grille{grid-template-columns:1fr!important;gap:40px!important}}
html body .registre__groupe h3{margin:0 0 .9rem!important;padding:0 0 .6rem!important;border-bottom:1px solid rgba(155,132,207,.35)!important}
html body .registre__groupe ol{display:grid!important;gap:12px!important;align-items:stretch}
html body .registre__groupe li.dipl{width:100%!important;max-width:none!important;margin:0!important}
html body .registre__groupe li.dipl:nth-child(even){margin-left:0!important}
html body .dipl__cadre{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:.9rem;width:100%;min-height:54px;box-sizing:border-box;padding:.55rem 1rem .55rem 1.2rem!important;border-radius:12px!important}
html body .dipl__txt{display:grid!important;gap:.3rem;justify-items:start}
html body .registre .dipl__nom{text-wrap:pretty!important;text-align:left}
html body .registre .dipl__nature{margin:0!important;white-space:nowrap;font-size:.62rem!important;letter-spacing:.14em!important;padding:.2rem .55rem;border:1px solid rgba(155,132,207,.4);border-radius:999px;color:var(--univ-doux)!important;line-height:1.2}
html body .dipl:hover .dipl__cadre,html body .dipl:focus-visible .dipl__cadre,html body .dipl.ouvert .dipl__cadre{border-radius:12px!important}
@media (max-width:700px){
 html body .dipl__cadre{column-gap:.6rem;padding:.5rem .8rem .5rem .9rem!important;min-height:48px}
 html body .registre .dipl__nature{font-size:.56rem!important;letter-spacing:.1em!important;padding:.16rem .42rem}
}

/* ===== 33. v90 : la vidéo en médaillon s'aligne sur le bas du portrait (ordinateur) ===== */
@media (min-width:901px){
 html body .praticien__grille{align-items:end!important}
 html body .praticien__grille > .portrait{align-self:end!important}
 html body .praticien__video{align-self:end!important;margin-top:clamp(18px,2.4vw,32px)!important;margin-bottom:0!important}
}

/* ===== 34. v95 : bulles de l'accueil masquées jusqu'à leur apparition progressive ===== */
.p-accueil ul.bulles.bulles-a-venir > li{opacity:0}

/* ===== 35. v96 : apparition des titres des vidéos de l'accueil — lente, fluide, distinguée.
   1) la ligne droite se lève d'un léger flou, ses lettres se resserrent ; 2) la suite en italique sable se dévoile
   de gauche à droite comme une encre qui s'étend ; 3) un filet fin se trace sous le titre. ===== */
html body.p-accueil .rubp h2.t-rub{position:relative}
html body.p-accueil .rubp h2.t-rub::after{content:"";position:absolute;left:0;bottom:-.32em;width:min(120px,30%);height:1px;
  background:linear-gradient(90deg,rgba(220,193,154,.85),rgba(167,198,230,.55) 60%,transparent);transform-origin:left center;transform:scaleX(1);opacity:.7}
html body.p-accueil .rubp h2.t-rub .t-droit,html body.p-accueil .rubp h2.t-rub .t-ton{
  transition:opacity 1.5s cubic-bezier(.22,.61,.36,1),transform 1.8s cubic-bezier(.16,1,.3,1),filter 1.6s ease,letter-spacing 2.2s cubic-bezier(.16,1,.3,1),clip-path 1.9s cubic-bezier(.45,0,.2,1)}
html body.p-accueil .rubp h2.t-rub .t-ton{transition-delay:.55s}
html body.p-accueil .rubp h2.t-rub::after{transition:transform 1.8s cubic-bezier(.65,0,.35,1) 1.1s,opacity 1.2s ease 1.1s}
html body.p-accueil .rubp h2.t-rub.titre-a-venir .t-droit{opacity:0;transform:translateY(.38em);filter:blur(7px);letter-spacing:.07em}
html body.p-accueil .rubp h2.t-rub.titre-a-venir .t-ton{opacity:0;transform:translateX(-.25em);clip-path:inset(-.2em 100% -.3em 0)}
html body.p-accueil .rubp h2.t-rub .t-ton{clip-path:inset(-.2em 0 -.3em 0)}
html body.p-accueil .rubp h2.t-rub.titre-a-venir::after{transform:scaleX(0);opacity:0}
@media (prefers-reduced-motion:reduce){html body.p-accueil .rubp h2.t-rub *,html body.p-accueil .rubp h2.t-rub::after{transition:none!important}}

/* ===== 36. v97 : menu plein écran (téléphone, tablette) — rubriques numérotées en grand, pages en cartes illustrées ===== */
body.menu-ouvert{overflow:hidden}
html body .menu-mobile .panneau{position:fixed!important;inset:0!important;width:auto!important;height:100dvh;max-height:none!important;margin:0!important;border-radius:0!important;
  background:radial-gradient(120% 60% at 100% 0,rgba(155,132,207,.10),transparent 60%),radial-gradient(90% 50% at 0 100%,rgba(167,198,230,.08),transparent 60%),#0f0d0c!important;
  padding:max(18px,env(safe-area-inset-top)) clamp(18px,5vw,48px) calc(36px + env(safe-area-inset-bottom))!important;display:block!important;overflow-y:auto;overscroll-behavior:contain;z-index:400;box-shadow:none!important;color:var(--ivoire)}
html body .menu-mobile .panneau > *{max-width:720px;margin-inline:auto}
.m-entete{display:flex;align-items:center;justify-content:space-between;padding:.2rem 0 1.1rem}
.m-etiquette{font-family:"Source Sans 3",system-ui,sans-serif;font-size:.78rem;letter-spacing:.32em;text-transform:uppercase;color:rgba(243,237,227,.62)}
.m-fermer{width:54px;height:54px;border-radius:50%;border:1px solid rgba(243,237,227,.38);background:rgba(15,13,12,.6);color:var(--ivoire);display:grid;place-items:center;cursor:pointer;transition:border-color .3s,transform .5s cubic-bezier(.16,1,.3,1)}
.m-fermer:hover,.m-fermer:focus-visible{border-color:var(--ivoire);transform:rotate(90deg)}
.m-fermer svg,.m-ouvrir svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round}
html body .menu-mobile .m-rub{border-bottom:1px solid rgba(243,237,227,.1)}
html body .menu-mobile .m-rub__tete{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;column-gap:clamp(12px,3.5vw,22px);padding:.35rem 0}
.m-num{align-self:end;padding-bottom:.85em;font-family:"Source Sans 3",system-ui,sans-serif;font-size:.78rem;letter-spacing:.18em;color:rgba(243,237,227,.48);font-variant-numeric:tabular-nums}
html body .menu-mobile .panneau a.m-top{font-family:"Cormorant Garamond","EB Garamond",Garamond,serif!important;font-weight:400!important;font-style:normal;font-size:clamp(2.1rem,9.6vw,3.3rem)!important;line-height:1.04!important;
  letter-spacing:-.005em;color:#f6f1e8!important;padding:.45rem 0!important;min-height:0!important;-webkit-text-fill-color:currentColor;background:none}
html body .menu-mobile .panneau a.m-top[aria-current="page"]{font-style:normal;background:var(--ton-sable);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent!important}
html body .menu-mobile .m-ouvrir{width:52px;height:52px;border-radius:50%;border:1px solid rgba(220,193,154,.5);background:transparent;color:#dcc19a;display:grid;place-items:center;cursor:pointer;
  transition:background-color .45s ease,color .45s ease,border-color .45s ease,transform .6s cubic-bezier(.16,1,.3,1)}
html body .menu-mobile .m-ouvrir svg{transform:none!important;transition:transform .6s cubic-bezier(.16,1,.3,1)}
html body .menu-mobile .m-ouvrir[aria-expanded="true"]{background:#a7c6e6;border-color:#a7c6e6;color:#14110f}
html body .menu-mobile .m-ouvrir[aria-expanded="true"] svg{transform:rotate(45deg)!important}
html body .menu-mobile .m-sous{padding:0!important;border:0!important;margin:0!important}
.m-cartes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:.5rem 0 1.4rem}
html body .menu-mobile .panneau a.m-carte{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:clamp(150px,40vw,210px);padding:.85rem .95rem!important;border-radius:16px;overflow:hidden;
  border:1px solid rgba(243,237,227,.16);background:#1c1715;color:#f6f1e8!important;text-decoration:none;font-style:normal!important;text-align:left!important;align-items:flex-start;isolation:isolate;transition:border-color .4s ease,transform .5s cubic-bezier(.16,1,.3,1)}
html body .menu-mobile .panneau a.m-carte:hover,html body .menu-mobile .panneau a.m-carte:focus-visible{border-color:rgba(220,193,154,.6);transform:translateY(-2px)}
.m-carte__img{position:absolute;inset:0;z-index:-1}
.m-carte__img picture,.m-carte__img img{display:block;width:100%!important;height:100%!important;object-fit:cover;max-width:none!important;border-radius:0!important;margin:0!important}
.m-carte__img::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,13,12,.05) 25%,rgba(15,13,12,.55) 58%,rgba(15,13,12,.92))}
.m-carte__t{font-family:"Cormorant Garamond","EB Garamond",Garamond,serif;font-weight:500;font-size:clamp(1.18rem,4.6vw,1.45rem);line-height:1.04;color:#f8f3ea;text-wrap:balance}
.m-carte__s{margin-top:.3rem;font-family:"Source Sans 3",system-ui,sans-serif;font-size:.78rem;line-height:1.25;color:rgba(243,237,227,.76)}
.m-carte.m-a-venir{opacity:0}
html body .menu-mobile .panneau a.m-appel{margin-top:1.6rem!important;display:flex;justify-content:center}
@media (min-width:701px){.m-cartes{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (prefers-reduced-motion:reduce){.m-carte.m-a-venir{opacity:1}.m-ouvrir,.m-ouvrir svg,.m-fermer{transition:none!important}}

/* ===== 37. v98 : carte Google Maps sur toute la largeur, fondue en haut et en bas dans le noir de la page,
   teintée sombre pour s'accorder au site, avec une fiche pratique (itinéraire, Google Maps, téléphone) ===== */
html body .carte-zone{position:relative;width:100vw!important;max-width:none!important;margin:clamp(36px,5vw,64px) 0 0 calc(50% - 50vw)!important;
  min-height:0!important;height:clamp(420px,68vh,680px);border:0!important;border-radius:0!important;background:#14110f!important;overflow:hidden;
  -webkit-mask-image:linear-gradient(180deg,transparent 0,#000 13%,#000 87%,transparent 100%);mask-image:linear-gradient(180deg,transparent 0,#000 13%,#000 87%,transparent 100%)}
html body .carte-zone iframe{filter:invert(.9) hue-rotate(180deg) saturate(.5) brightness(.95) contrast(.9);border:0!important}
html body .carte-zone .carte-contenu{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;text-align:center;gap:.5rem;padding:24px}
.carte-fiche{position:absolute;z-index:3;right:max(24px,calc(50vw - 560px));left:auto;bottom:clamp(70px,13%,110px);width:min(430px,calc(100vw - 48px));text-align:left;padding:1.05rem 1.2rem 1.1rem;
  border-radius:16px;background:rgba(20,17,15,.78);border:1px solid rgba(243,237,227,.16);-webkit-backdrop-filter:blur(14px) saturate(1.2);backdrop-filter:blur(14px) saturate(1.2);
  box-shadow:0 18px 50px rgba(0,0,0,.45);color:var(--ivoire);opacity:0;transform:translateY(12px);transition:opacity .8s ease .4s,transform .9s cubic-bezier(.16,1,.3,1) .4s;pointer-events:none}
.carte-zone.carte-active .carte-fiche{opacity:1;transform:none;pointer-events:auto}
.carte-fiche p{margin:0}
.carte-fiche__nom{font-family:"Cormorant Garamond","EB Garamond",Garamond,serif;font-size:1.45rem;font-weight:600;line-height:1.1}
.carte-fiche__adr{margin-top:.3rem!important;font-size:.95rem;line-height:1.4;color:rgba(243,237,227,.78)}
.carte-fiche__actions{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.85rem!important}
.carte-fiche__actions a{display:inline-flex;align-items:center;min-height:40px;padding:.2rem .8rem;white-space:nowrap;border-radius:999px;border:1px solid rgba(167,198,230,.55);color:#a7c6e6!important;
  text-decoration:none!important;font-family:"Cormorant Garamond",Garamond,serif;font-size:1rem;letter-spacing:.02em;transition:background-color .3s,color .3s,border-color .3s}
.carte-fiche__actions a:first-child{background:#a7c6e6;color:#14110f!important;border-color:#a7c6e6}
.carte-fiche__actions a:hover,.carte-fiche__actions a:focus-visible{background:rgba(167,198,230,.16);border-color:#a7c6e6}
.carte-fiche__actions a:first-child:hover{background:#c4daf0}
@media (max-width:700px){
  html body .carte-zone{height:auto;display:flex;flex-direction:column;-webkit-mask-image:none;mask-image:none;background:transparent!important}
  html body .carte-zone iframe,html body .carte-zone .carte-contenu{position:relative!important;inset:auto!important;height:62vh!important;min-height:360px}
  html body .carte-zone .carte-fond{position:absolute!important;inset:0 0 auto 0!important;height:62vh!important;min-height:360px}
  html body .carte-zone iframe{flex:0 0 auto!important;height:62vh!important;min-height:360px!important;-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 12%,#000 88%,transparent 100%);mask-image:linear-gradient(180deg,transparent 0,#000 12%,#000 88%,transparent 100%)}
  .carte-fiche{position:relative;left:auto;right:auto;bottom:auto;width:auto;margin:-36px 16px 0;opacity:1;transform:none;pointer-events:auto}
}
/* accueil : adresse à gauche, transports à droite, la carte vient dessous sur toute la largeur */
html body.p-accueil .acces-grille{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;align-items:start}
@media (max-width:860px){html body.p-accueil .acces-grille{grid-template-columns:1fr!important}}

/* ===== 38. v100 : carte orientée vers Paris — l'iframe déborde vers le haut (partie masquée), le cabinet se place au tiers
   supérieur et les deux tiers visibles montrent le sud : Neuilly, le XVIIe, l'Étoile. Bas et logos Google restent visibles. ===== */
@media (min-width:701px){
  html body .carte-zone iframe{inset:auto 0 0 0!important;top:auto!important;height:162%!important}
  .carte-fiche{top:clamp(70px,13%,110px);bottom:auto!important}
}
@media (max-width:700px){
  html body .carte-zone{aspect-ratio:auto!important;height:auto!important}
  html body .carte-zone iframe{height:100vh!important;margin-top:-38vh!important;-webkit-mask-image:linear-gradient(180deg,transparent 0,transparent 38%,#000 45%,#000 92%,transparent 100%)!important;mask-image:linear-gradient(180deg,transparent 0,transparent 38%,#000 45%,#000 92%,transparent 100%)!important}
}
@media (min-width:701px) and (max-width:1100px){.carte-fiche{width:min(320px,38vw)!important;padding:.85rem 1rem .95rem!important}.carte-fiche__nom{font-size:1.25rem}.carte-fiche__adr{font-size:.86rem}}

/* ===== 39. v102 (9 octobre, demande du Docteur Hazout) : plus aucune italique. Les mots autrefois en italique passent en
   EB Garamond gras (un caractère voisin du Cormorant, mais distinct), et gardent une couleur propre qui varie selon les sections :
   sable, bleu poudré, violet universitaire, rose gencive. ===== */
:root{--c-sable:linear-gradient(100deg,#f3e6cf,#dcc19a 55%,#c49c74);--c-bleu:#a7c6e6;--c-violet:#c3b2ea;--c-rose:#e2aea4}
html body *,html body *::before,html body *::after{font-style:normal!important}
/* titres en deux tons : la suite du titre en EB Garamond gras */
html body .t-ton{font-family:"EB Garamond",Garamond,serif!important;font-weight:700!important;font-size:.9em;letter-spacing:-.005em;padding-right:.04em}
html body .t-rub .t-ton{font-size:.66em!important}
html body.p-accueil .hero--sobre h1 .t-ton{font-weight:600!important;font-size:.88em}
/* amorces et mots soulignés dans les paragraphes */
html body .amorce{font-family:"EB Garamond",Garamond,serif!important;font-weight:600!important;font-size:1em!important}
html body main p em,html body main p i,html body main li em,html body main li i,html body main td i,html body main td em,html body main figcaption i,html body main figcaption em,html body main dd i{
  font-family:"EB Garamond",Garamond,serif!important;font-weight:600!important;color:var(--c-violet)}
/* couleurs alternées des sections de l'accueil (titres et amorces) */
html body.p-accueil main > section:nth-of-type(4n+1) .t-ton{background:var(--c-sable);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}
html body.p-accueil main > section:nth-of-type(4n+2) .t-ton{background:none;-webkit-text-fill-color:var(--c-bleu);color:var(--c-bleu)}
html body.p-accueil main > section:nth-of-type(4n+3) .t-ton{background:none;-webkit-text-fill-color:var(--c-violet);color:var(--c-violet)}
html body.p-accueil main > section:nth-of-type(4n+4) .t-ton{background:none;-webkit-text-fill-color:var(--c-rose);color:var(--c-rose)}
html body.p-accueil main > section:nth-of-type(4n+1) .amorce{color:#dcc19a!important}
html body.p-accueil main > section:nth-of-type(4n+2) .amorce{color:var(--c-bleu)!important}
html body.p-accueil main > section:nth-of-type(4n+3) .amorce{color:var(--c-violet)!important}
html body.p-accueil main > section:nth-of-type(4n+4) .amorce{color:var(--c-rose)!important}
html body.p-accueil .hero--sobre h1 .t-ton{background:var(--c-sable)!important;-webkit-background-clip:text!important;background-clip:text!important;-webkit-text-fill-color:transparent!important}
/* pages intérieures : intertitres h3 en gras sable, mots soulignés en violet, sommaire et liens inchangés */
html body:not(.p-accueil) main h3{font-family:"EB Garamond",Garamond,serif!important;font-weight:700!important;color:#dcc19a!important}
html body:not(.p-accueil) main .sec:nth-of-type(3n+2) p em,html body:not(.p-accueil) main .sec:nth-of-type(3n+2) p i{color:var(--c-bleu)}
html body:not(.p-accueil) main .sec:nth-of-type(3n) p em,html body:not(.p-accueil) main .sec:nth-of-type(3n) p i{color:var(--c-rose)}
/* menu, diplômes et légendes : ce qui était en italique devient gras ou demi-gras, avec sa couleur */
html body .entete .nav .n2{font-family:"EB Garamond",Garamond,serif!important;font-weight:600!important;color:#dcc19a}
html body .menu-mobile .panneau a.m-top[aria-current="page"]{font-family:"EB Garamond",Garamond,serif!important;font-weight:700!important}
html body .registre__groupe--2 .dipl__nom,html body .registre__groupe--2 h3{font-weight:600!important}
html body .rubp__legende,html body figcaption{font-family:"EB Garamond",Garamond,serif}
html body .t-ton *{font-family:inherit!important;font-weight:inherit!important}


/* ===== 40. v103 (9 octobre) : les mots autrefois en italique, puis en gras, passent en Instrument Serif (licence OFL),
   un serif éditorial étroit et contrasté, en graisse normale ; les couleurs variées de la v102 sont conservées. ===== */
@font-face{font-family:"Instrument Serif";src:url(/fonts/instrument-serif-latin.woff) format("woff");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
html body .t-ton,html body .t-ton *,html body .amorce,
html body main p em,html body main p i,html body main li em,html body main li i,html body main td i,html body main td em,html body main figcaption i,html body main figcaption em,html body main dd i,
html body:not(.p-accueil) main h3,html body .entete .nav .n2,html body .menu-mobile .panneau a.m-top[aria-current="page"]{
  font-family:"Instrument Serif","Cormorant Garamond",Garamond,serif!important;font-weight:400!important;letter-spacing:.005em}
html body .t-ton{font-size:1.02em!important}
html body .t-rub .t-ton{font-size:.76em!important}
html body.p-accueil .hero--sobre h1 .t-ton{font-size:1em!important}
html body .amorce{font-size:1.08em!important}
html body main p em,html body main p i,html body main li em,html body main li i{font-size:1.06em}
html body:not(.p-accueil) main h3{font-size:clamp(1.35rem,1.8vw,1.6rem)!important}
html body .registre__groupe--2 .dipl__nom,html body .registre__groupe--2 h3{font-weight:400!important}
html body .amorce{font-size:1.2em!important;line-height:1}
html body main p em,html body main p i,html body main li em,html body main li i{font-size:1.16em}
html body .t-ton{font-size:1.08em!important}
html body .t-rub .t-ton{font-size:.82em!important}
html body.p-accueil .hero--sobre h1 .t-ton{font-size:1.06em!important}

/* ===== 41. v104 (9 octobre) : choix du Docteur Hazout — Italiana en gras pour tous les mots mis en valeur
   (Italiana n'existe qu'en une graisse : le gras est obtenu par épaississement du navigateur, font-synthesis). ===== */
@font-face{font-family:"Italiana";src:url(/fonts/italiana-latin.woff) format("woff");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
html body .t-ton,html body .t-ton *,html body .amorce,
html body main p em,html body main p i,html body main li em,html body main li i,html body main td i,html body main td em,html body main figcaption i,html body main figcaption em,html body main dd i,
html body:not(.p-accueil) main h3,html body .entete .nav .n2,html body .menu-mobile .panneau a.m-top[aria-current="page"]{
  font-family:"Italiana","Cormorant Garamond",Garamond,serif!important;font-weight:700!important;font-synthesis:weight!important;letter-spacing:.01em}
html body .t-ton{font-size:1em!important}
html body .t-rub .t-ton{font-size:.74em!important}
html body.p-accueil .hero--sobre h1 .t-ton{font-size:.98em!important}
html body .amorce{font-size:1.06em!important;line-height:1}
html body main p em,html body main p i,html body main li em,html body main li i{font-size:1.04em}
html body:not(.p-accueil) main h3{font-size:clamp(1.3rem,1.7vw,1.55rem)!important}
html body .rubp h2.t-rub .t-ton,html body main h2:not(.t-rub) .t-ton,html body .hero--sobre h1 .t-ton,html body.p-accueil .hero--sobre h1 .t-ton{font-weight:700!important;font-synthesis:weight!important}

/* ===== 42. v105 : page Hygiène — quatre vidéos numérotées, phrase-clé sous l'image, pause au toucher ===== */
html body .hyg{margin:1.4rem 0 .4rem;width:min(100%,880px)}
@media (min-width:900px){html body .etroit .hyg{width:calc(100% + 160px);margin-left:-80px}}
html body .hyg__ecran{position:relative;border-radius:18px 18px 0 0;overflow:hidden;background:#d9dde2;aspect-ratio:16/9;border:1px solid rgba(243,237,227,.14);border-bottom:0}
html body .hyg__ecran video{position:absolute;inset:0;width:100%!important;height:100%!important;object-fit:cover;display:block;border-radius:0!important;-webkit-mask-image:none!important;mask-image:none!important;max-height:none!important}
html body .hyg__bascule{position:absolute;inset:0;width:100%;height:100%;border:0;background:transparent;cursor:pointer;padding:0;display:block}
html body .hyg__ico{position:absolute;top:12px;right:12px;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:rgba(15,13,12,.55);border:1px solid rgba(243,237,227,.4);color:#f6f1e8;
  opacity:.75;transition:opacity .3s ease,transform .4s cubic-bezier(.16,1,.3,1);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
html body .hyg__bascule:hover .hyg__ico,html body .hyg__bascule:focus-visible .hyg__ico{opacity:1;transform:scale(1.06)}
html body .hyg__ico svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
html body .hyg__ico .i-lire{display:none;fill:currentColor;stroke:none}
html body .hyg.en-pause .hyg__ico .i-pause{display:none}
html body .hyg.en-pause .hyg__ico .i-lire{display:block}
html body .hyg.en-pause .hyg__ico{opacity:1;width:64px;height:64px;top:calc(50% - 32px);right:calc(50% - 32px)}
html body .hyg.en-pause .hyg__ico svg{width:22px;height:22px}
html body .hyg__cle{margin:0!important;padding:1rem 1.3rem 1.1rem!important;border-radius:0 0 18px 18px;background:#24201d;border:1px solid rgba(243,237,227,.14);border-top:2px solid #a7c6e6;
  font-family:"Cormorant Garamond",Garamond,serif!important;font-size:clamp(1.2rem,2vw,1.45rem)!important;line-height:1.3;color:#f6f1e8!important;text-align:left!important;font-weight:500}
html body .hyg--hygiene-fil-classique .hyg__cle{border-top-color:#c3b2ea}
html body .hyg--hygiene-brossette .hyg__cle{border-top-color:#e2aea4}
html body .hyg--hygiene-brosse-electrique .hyg__cle{border-top-color:#dcc19a}
html body main figure.hyg figcaption.hyg__cle{color:#f6f1e8!important;font-family:"Cormorant Garamond",Garamond,serif!important;font-size:clamp(1.2rem,2vw,1.45rem)!important}
/* numéros d'étape devant chaque titre de la page Hygiène */
body.p-hygiene main{counter-reset:etape}
body.p-hygiene main .sec:not(.refs) > h2{counter-increment:etape}
body.p-hygiene main .sec:not(.refs) > h2::before{content:counter(etape);display:inline-grid;place-items:center;width:1.7em;height:1.7em;margin-right:.55em;border-radius:50%;
  border:1px solid rgba(167,198,230,.6);color:#a7c6e6;font-family:"Source Sans 3",system-ui,sans-serif;font-size:.62em;font-weight:500;vertical-align:.25em}

/* ===== 43. v107 : page Hygiène plus vivante — une couleur par étape, titres en deux tons, apparitions douces ===== */
body.p-hygiene .sec{--c:#a7c6e6}
body.p-hygiene .sec:has(.hyg--hygiene-fil-classique){--c:#c3b2ea}
body.p-hygiene .sec:has(.hyg--hygiene-hydropulseur){--c:#8fd0d6}
body.p-hygiene .sec:has(.hyg--hygiene-brossette){--c:#e2aea4}
body.p-hygiene .sec:has(.hyg--hygiene-brosse-electrique){--c:#dcc19a}
body.p-hygiene main .sec > h2 .t-ton{display:block;color:var(--c)!important;-webkit-text-fill-color:var(--c)!important;background:none!important;font-size:.82em!important;margin-top:.1em}
body.p-hygiene main .sec > h2 .t-droit{font-weight:600}
body.p-hygiene main .sec > h2::before{border-color:var(--c)!important;color:var(--c)!important;vertical-align:.9em!important}
body.p-hygiene main .sec:has(.hyg--hygiene-hydropulseur) > h2{counter-increment:none}
body.p-hygiene main .sec:has(.hyg--hygiene-hydropulseur) > h2::before{content:"+"!important;border-style:dashed!important}
body.p-hygiene main .sec .amorce{color:var(--c)!important}
body.p-hygiene .hyg__cle{border-top-color:var(--c)!important;position:relative}
body.p-hygiene .hyg__ecran{box-shadow:0 18px 50px -20px color-mix(in oklab,var(--c) 45%,transparent)}
body.p-hygiene .hyg__ico{border-color:color-mix(in oklab,var(--c) 70%,white)!important}
/* conseil (eau tiède) */
body.p-hygiene .astuce{display:flex;gap:.8rem;align-items:flex-start;margin:1rem 0 0!important;padding:.85rem 1.1rem;border-radius:14px;background:color-mix(in oklab,var(--c) 12%,#1c1715);border:1px solid color-mix(in oklab,var(--c) 45%,transparent);color:#f6f1e8;font-size:1.05rem;line-height:1.45}
body.p-hygiene .astuce__ico{flex:none;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:color-mix(in oklab,var(--c) 30%,transparent);color:var(--c)}
body.p-hygiene .astuce__ico svg{width:15px;height:15px;fill:currentColor}
/* apparitions : le titre se lève d'un léger flou puis sa suite se dévoile ; texte et vidéos montent doucement */
body.p-hygiene main .sec > *{transition:opacity 1.1s cubic-bezier(.22,.61,.36,1),transform 1.3s cubic-bezier(.16,1,.3,1),filter 1.2s ease}
body.p-hygiene main .sec > h2 .t-droit,body.p-hygiene main .sec > h2 .t-ton{display:inline-block;transition:opacity 1.3s cubic-bezier(.22,.61,.36,1),transform 1.6s cubic-bezier(.16,1,.3,1),filter 1.4s ease,clip-path 1.7s cubic-bezier(.45,0,.2,1)}
body.p-hygiene main .sec > h2 .t-ton{display:block;transition-delay:.45s;clip-path:inset(-.2em 0 -.3em 0)}
body.p-hygiene main .sec > h2.rv .t-droit{opacity:0;transform:translateY(.35em);filter:blur(6px)}
body.p-hygiene main .sec > h2.rv .t-ton{opacity:0;clip-path:inset(-.2em 100% -.3em 0)}
body.p-hygiene main .sec > h2.rv::before{opacity:0;transform:scale(.4) rotate(-90deg)}
body.p-hygiene main .sec > h2::before{transition:opacity .9s ease .2s,transform 1.1s cubic-bezier(.16,1,.3,1) .2s}
body.p-hygiene main .sec > p.rv,body.p-hygiene main .sec > .encadre.rv{opacity:0;transform:translateY(18px)}
body.p-hygiene main .sec > .hyg.rv{opacity:0;transform:translateY(28px) scale(.985);filter:blur(4px)}
body.p-hygiene main .sec > .hyg{transition-delay:.15s}
@media (prefers-reduced-motion:reduce){body.p-hygiene main .sec > *,body.p-hygiene main .sec > h2 *{transition:none!important}}
