@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700&display=swap');
:root{--ink:#132259;--mauve:#eaf6fb;--paper:#f0f8fc;--text:#55585c}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;font:16px/1.65 Montserrat,Arial,sans-serif;color:var(--text);background:var(--mauve)}button,a,input,textarea{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}button,a{ -webkit-tap-highlight-color:transparent}button{color:inherit}button:focus-visible,a:focus-visible{outline:3px solid #f39516;outline-offset:5px}header{position:fixed;z-index:20;top:0;width:100%;min-height:86px;padding:16px 28px;background:#132259e8;backdrop-filter:blur(14px);color:white;display:flex;align-items:center;justify-content:space-between;gap:20px;border-radius:0 0 38px 38px}.brand{display:flex;align-items:center;gap:12px;font-size:13px;line-height:1.4;letter-spacing:1.8px;font-weight:600;text-transform:uppercase;flex-shrink:0}.brand svg{width:31px;height:47px}nav{display:flex;align-items:center;gap:17px;font-size:14px}nav a:hover,footer a:hover{opacity:.65}button{border:0;background:none}.outline{border:1px solid currentColor;padding:4px 14px;border-radius:12px;white-space:nowrap}.dropdown{position:relative}.dropdown>button{padding:0;white-space:nowrap}.dropdown span{display:inline-flex;border:1px solid #ffffff90;border-radius:9px;width:28px;height:28px;align-items:center;justify-content:center;margin-left:5px}#treatment-menu{display:none;position:absolute;top:40px;left:-20px;background:var(--ink);width:230px;padding:14px 20px;border-radius:16px;box-shadow:0 20px 40px #0002}#treatment-menu a{display:block;padding:6px}.dropdown.open #treatment-menu,.dropdown:hover #treatment-menu,.dropdown:focus-within #treatment-menu{display:block}#menu{display:none;color:white;font-size:25px}.hero{height:89vh;min-height:580px;background:#d8d0d4 url('assets/cabinet.png') center/cover;position:relative}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#13225940,transparent 60%)}.hero-caption{position:absolute;bottom:90px;left:5%;z-index:1;color:white;font-size:12px;letter-spacing:3px;text-shadow:0 2px 12px #0008}.intro{margin-top:-55px;border-radius:65px 65px 0 0;position:relative;padding:70px 5% 80px;background:var(--mauve);color:white}.intro-top{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:start}h1,h2,h3,p{margin-top:0}h1{font-weight:500;font-size:clamp(30px,4vw,54px);line-height:1.25;color:inherit;letter-spacing:-1.5px}h2{font-size:clamp(29px,3.4vw,45px);line-height:1.25;letter-spacing:-1.5px;font-weight:500;color:var(--ink)}h3{font-size:21px;font-weight:500;line-height:1.45}p{font-size:15px;line-height:1.9}.eyebrow{text-transform:uppercase;letter-spacing:3px;font-size:11px;margin-bottom:18px}.intro h2{color:white;font-size:25px;letter-spacing:-.6px}.intro p{text-align:justify}.appointment-row{display:flex;align-items:center;justify-content:space-between;gap:40px;margin-top:60px;font-size:21px}.button{display:inline-block;padding:14px 25px;background:var(--ink);color:white;border-radius:16px;font-size:14px;border:1px solid transparent}.button:hover{background:#075886}.button.light{background:#f1f9fc;color:var(--ink);border-color:#d5eaf4}.appointment-row .button{margin-left:14px}.section{background:white;margin:0 28px;padding:85px 5%;border-radius:60px}.section+.section{margin-top:28px}.split{display:grid;grid-template-columns:240px 1fr;gap:60px}.section p{max-width:650px}.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px 20px}.person .portrait{aspect-ratio:3/4;background:linear-gradient(145deg,#edf8fc,#d7edf7);border-radius:24px;display:flex;align-items:center;justify-content:center;overflow:hidden;color:#6b96ad}.portrait svg{width:80%;height:80%}.person h3{font-size:19px;margin:0}.person p{font-size:13px}.person-info{display:flex;gap:12px;margin-top:16px}.person-info .button{padding:13px;height:max-content}.cabinet-section{display:grid;grid-template-columns:1fr 1fr;padding:0;overflow:hidden;min-height:530px}.cabinet-section .copy{padding:75px 14%}.cabinet-photo{background:url('assets/cabinet.png') center/cover;min-height:350px}.treatments-section{background:var(--ink);color:white;margin:28px;border-radius:60px;padding:80px 5%}.treatments-section h2{color:white}.treatment-layout{display:grid;grid-template-columns:1fr 1fr;gap:80px}.treatment-list a{display:flex;border-bottom:1px solid #ffffff30;padding:14px 0;justify-content:space-between;font-size:23px}.treatment-list a:hover{padding-left:12px;transition:.2s}.tooth-art{min-height:440px;display:grid;place-items:center;background:radial-gradient(ellipse at center,#eaf6fb50,transparent 68%)}.tooth-art svg{width:70%;height:360px;color:#eaf8ff;filter:drop-shadow(0 20px 30px #0005)}.advice-grid,.emergency-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:35px}.advice-card{background:var(--paper);padding:35px;border-radius:26px}.advice-card .num{font-size:48px;color:#278cb5;font-weight:400}.advice-card h3{font-size:20px}.advice-card a{font-size:13px;border-bottom:1px solid}.emergency{background:#eaf6fb}.emergency-grid h3{font-size:19px}.access-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}.hours{border-top:1px solid #ddd}.hours div{display:flex;justify-content:space-between;border-bottom:1px solid #ddd;padding:8px}.map{background:#e7e8e3;min-height:380px;border-radius:28px;display:grid;place-items:center;position:relative;overflow:hidden}.map:before,.map:after{content:'';position:absolute;width:150%;height:24px;background:#fff;transform:rotate(-25deg)}.map:after{transform:rotate(50deg);height:16px}.map-card{position:relative;z-index:1;background:var(--ink);color:#fff;padding:25px;border-radius:20px;max-width:260px;text-align:center;box-shadow:0 15px 40px #0002}.map small{font-size:10px}.social{position:fixed;right:12px;top:41%;z-index:19;display:flex;flex-direction:column;padding:20px 15px;background:var(--ink);color:white;border-radius:50px;gap:25px}.social a,.social button{border:1px solid #8cc8e3;border-radius:10px;width:34px;height:36px;display:grid;place-items:center;font-size:24px;padding:0}footer{padding:60px 5% 30px;color:white;display:grid;grid-template-columns:1fr 1fr 1fr;gap:40px}footer a,footer button{display:block;text-align:left;padding:0;font-size:13px;margin-bottom:7px}footer p{grid-column:1/-1;font-size:11px;border-top:1px solid #ffffff40;padding-top:24px;margin-bottom:0}footer p a,footer p button{display:inline;font-size:11px}.cookie{position:fixed;bottom:12px;left:12px;z-index:30;background:white;width:510px;max-width:calc(100% - 24px);border-radius:14px;padding:20px;box-shadow:0 3px 15px #0003}.cookie h3{font-size:15px;text-align:center;margin-bottom:18px;padding-right:12px}.cookie p{font-size:11px;line-height:1.65}.cookie-actions{display:flex;flex-wrap:wrap;gap:8px}.cookie-actions .button{flex:1;padding:10px;border-radius:5px;font-size:12px}.text-button{font-size:11px;text-decoration:underline;width:100%}.close{position:absolute;right:15px;top:10px;font-size:28px;line-height:1}.cookie[hidden]{display:none}dialog{border:0;border-radius:28px;max-width:580px;width:calc(100% - 36px);padding:42px;color:var(--text);box-shadow:0 30px 100px #0003}dialog::backdrop{background:#13225999;backdrop-filter:blur(5px)}dialog h2{font-size:30px}dialog .button{margin:6px 0;display:block;text-align:center}label{display:block;font-size:13px;margin-bottom:15px}input,textarea{display:block;width:100%;padding:12px;border:1px solid #c6e2ef;border-radius:9px;margin-top:5px;background:#f8fcfe}input[type=checkbox],input[type=radio]{display:inline;width:auto}textarea{min-height:110px}.page-head{padding:155px 7% 65px;color:white}.page-head h1{max-width:850px}.page-content{min-height:500px}.article-layout{display:grid;grid-template-columns:1.25fr .75fr;gap:80px}.article-layout h3{color:var(--ink);margin-top:30px}.article-layout aside{padding:30px;background:var(--paper);border-radius:24px;height:max-content}.faq details{border-bottom:1px solid #ddd;padding:20px 0}.faq summary{cursor:pointer;color:var(--ink);font-size:18px}.faq details p{margin-top:18px}.demo-note{font-size:12px!important;color:#777}.back{display:inline-block;font-size:12px;margin-bottom:25px}.success{padding:20px;border-radius:12px;background:#eaf6fb}.blank-space{height:20px}@media(min-width:1600px){nav{font-size:16px;gap:25px}header{padding:18px 40px}.brand{font-size:15px}}@media(max-width:1150px){nav{gap:10px;font-size:12px}.brand{font-size:11px}.split{grid-template-columns:180px 1fr;gap:30px}.team-grid{grid-template-columns:repeat(2,1fr)}.appointment-row{font-size:17px}}@media(max-width:900px){header{min-height:75px;padding:12px 20px;border-radius:0 0 25px 25px}#menu{display:block}nav{display:none;position:absolute;top:74px;left:0;width:100%;background:var(--ink);padding:25px;flex-direction:column;align-items:stretch;border-radius:0 0 25px 25px;font-size:15px}nav.open{display:flex}nav>a,nav>button{padding:8px}.dropdown>button{padding:8px}#treatment-menu{position:static;width:100%;box-shadow:none;padding-left:25px}.hero{min-height:500px;height:75vh}.intro{padding:55px 7%;border-radius:40px 40px 0 0}.intro-top,.split,.access-grid,.article-layout{grid-template-columns:1fr;gap:28px}.appointment-row{align-items:flex-start;flex-direction:column;gap:20px;margin-top:30px}.section{margin:0 14px;padding:45px 7%;border-radius:35px}.section+.section{margin-top:14px}.cabinet-section{grid-template-columns:1fr;padding:0}.cabinet-section .copy{padding:45px 8%}.cabinet-photo{min-height:300px}.treatments-section{margin:14px;border-radius:35px;padding:45px 7%}.treatment-layout{gap:10px;grid-template-columns:1fr}.tooth-art{display:none}.advice-grid,.emergency-grid{grid-template-columns:1fr;gap:15px}.social{right:5px;padding:15px 8px;gap:18px}.social a,.social button{width:28px;height:30px;font-size:19px}footer{grid-template-columns:1fr 1fr;padding:45px 7%;gap:25px}.page-head{padding:120px 7% 40px}.cookie{width:420px}.team-grid{gap:25px 15px}.person h3{font-size:16px}.person-info{gap:8px}.person-info .button{padding:9px;font-size:11px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Cabinet d’Ormoy — identité et équipe */
.brand-logo{display:block;width:166px;height:64px;object-fit:contain;background:#fff;border-radius:12px;padding:5px}header .brand span{font-size:10px;letter-spacing:1.1px}header{gap:16px;padding:12px 24px}header .brand{gap:10px}nav{gap:13px;font-size:13px}.practitioner-identity{aspect-ratio:3/3.4;display:flex;flex-direction:column;justify-content:center;gap:24px;padding:22px;background:linear-gradient(145deg,#f9fafc,#dceff8)!important;color:#132259!important}.practitioner-identity img{width:100%;height:auto;max-height:100%;object-fit:contain;border-radius:10px}.practitioner-identity>span{font-size:13px;text-align:center}.initials{font-size:70px;font-weight:400;letter-spacing:-5px;color:#132259}.person-info .button{font-size:12px}.assistants{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:28px;background:#f0f8fc;border-radius:24px;margin-top:10px}.assistants h3{margin:0;color:var(--ink)}.assistants .eyebrow{font-size:9px;margin-bottom:7px;letter-spacing:2px}.assistant-person{display:flex;align-items:center;gap:12px}.assistant-person strong{font-weight:500;display:block;color:var(--ink)}.assistant-person div>span{display:block;font-size:11px}.assistant-initial{height:42px;width:42px;border-radius:50%;background:#d9eff8;color:var(--ink);display:grid;place-items:center;font-size:18px}.appointment-choices{margin:25px 0}.appointment-choices .button{display:flex;justify-content:space-between;align-items:center;gap:20px;text-align:left}.appointment-choices small{font-size:10px;color:#44647b}.profile-logo{width:100%;max-height:170px;object-fit:contain;margin-bottom:25px}.parking-note{margin-top:25px}.contact-hint{font-size:12px;color:#777}.social a,.social button{font-family:Arial,sans-serif}.hours div{gap:15px}.hours div span:last-child{text-align:right;white-space:nowrap}@media(max-width:1350px){header .brand span{display:none}nav{font-size:12px;gap:12px}.brand-logo{width:157px;height:56px}}@media(max-width:1100px){.assistants{flex-wrap:wrap}.assistants>div:first-child{width:100%}.team-grid{grid-template-columns:repeat(3,1fr)}.person-info{flex-wrap:wrap}.initials{font-size:55px}}@media(max-width:900px){header .brand span{display:block}header .brand-logo{width:120px;height:48px}header{padding:10px 20px}nav{font-size:15px;gap:10px}.team-grid{grid-template-columns:repeat(2,1fr)}.assistants{justify-content:flex-start;gap:20px}.person-info{flex-wrap:nowrap}.appointment-choices .button{align-items:flex-start;flex-direction:column;gap:4px}.hours div{font-size:12px}.practitioner-identity{padding:14px}.initials{font-size:50px}.social{top:42%}}

/* Palette du logo : marine #132259, bleu #36add5, orange #f39516. */
:root{--brand-blue:#36add5;--brand-orange:#f39516;--brand-pale:#eaf6fb}
header{background:#132259f2}.intro{color:var(--ink);background:var(--brand-pale)}.intro h2{color:var(--ink)}.intro .eyebrow,.section .eyebrow{color:#09688e}.intro .eyebrow:before,.section .eyebrow:before{content:'';display:inline-block;width:24px;height:2px;background:var(--brand-orange);margin-right:10px;vertical-align:middle}.intro a:not(.button){color:var(--ink)}.intro .appointment-row{border-top:1px solid #c4e4f1;padding-top:35px}.button{border-bottom:3px solid var(--brand-orange)}.button:hover{background:#075886}.button.light{border-bottom:3px solid #36add5}.button.light:hover{background:#e2f4fb;color:var(--ink)}.outline:hover{background:#36add52e}.treatments-section{background:var(--ink)}.treatments-section .eyebrow{color:#91d9f2}.treatment-list a>span{color:var(--brand-orange)}.treatment-list a:hover{color:#91d9f2}.tooth-art{background:radial-gradient(ellipse at center,#36add530,transparent 68%)}.advice-card .num{color:#11769e}.advice-card a{border-color:var(--brand-orange);color:var(--ink)}.emergency{background:#eaf6fb}.map{background:#e5eef1}.map-card{border-top:3px solid var(--brand-orange)}footer{background:var(--ink);margin-top:28px;border-radius:45px 45px 0 0}.page-head{background:var(--ink)}.page-head .back{color:#b6e5f7}.page-head h1:after{content:'';display:block;margin-top:24px;width:70px;height:3px;background:var(--brand-orange)}.assistants{background:#f0f8fc}.assistant-initial{color:#075886;background:#d9eff8}.faq summary::marker{color:#1684ad}.person .portrait.practitioner-identity{background:linear-gradient(145deg,#f8fcfe,#dceff8)!important}.social{background:var(--ink)}a:focus-visible,button:focus-visible{outline-color:var(--brand-orange)}.appointment-choices small{color:#44647b}.cookie{border-top:3px solid var(--brand-blue)}.cookie-actions .button{border-bottom:2px solid var(--brand-orange)}@media(max-width:900px){nav{background:var(--ink)}footer{border-radius:30px 30px 0 0}}

/* Navigation tactile et mise en page adaptative. */
html{scrollbar-gutter:stable}body{min-width:280px}main,section,article,aside,nav,footer,.intro-top>*,.split>*,.access-grid>*,.article-layout>*{min-width:0}img,svg{max-width:100%}p,h1,h2,h3,a{overflow-wrap:break-word}button,a,input,textarea,summary{touch-action:manipulation}button,.button,.outline{min-height:44px}nav>a{min-height:44px;display:flex;align-items:center}.social a,.social button{min-height:44px;min-width:44px}.social{padding:16px 10px;gap:16px}.social .quick-label{display:none}.close{width:44px;height:44px;display:grid;place-items:center;top:5px;right:5px}.text-button{min-height:44px}.person-info .text-button{text-align:left;padding-left:0}.cookie{max-height:calc(100dvh - 32px);overflow:auto}.cookie h3{padding:0 30px}.cookie-actions .button{min-width:90px}dialog{max-height:calc(100dvh - 32px);overflow:auto;overscroll-behavior:contain}body:has(dialog[open]){overflow:hidden}dialog h2{padding-right:22px}.hours div span:last-child{white-space:normal}.person-info>div{min-width:0}footer a,footer button{min-height:36px}footer p a,footer p button{min-height:44px;display:inline-flex;align-items:center}.map-card{max-width:calc(100% - 32px)}.team-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.assistant-person{min-width:0}.appointment-row>div{display:flex;align-items:center;flex-wrap:wrap;gap:14px}.appointment-row .button{margin-left:0}.faq summary{min-height:44px}.treatments-section .treatment-list a{gap:12px}.treatment-list a>span{flex-shrink:0}
@media(max-width:1100px){header{min-height:76px;padding:10px 20px;border-radius:0 0 25px 25px}header .brand span{display:block}header .brand-logo{width:120px;height:48px}#menu{display:grid;place-items:center;width:44px;height:44px;flex-shrink:0;color:white;font-size:25px}nav{display:none;position:absolute;top:100%;left:0;width:100%;max-height:calc(100dvh - 95px);overflow:auto;overscroll-behavior:contain;background:var(--ink);padding:18px 24px 24px;flex-direction:column;align-items:stretch;gap:5px;border-radius:0 0 25px 25px;font-size:15px;box-shadow:0 20px 30px #13225925}nav.open{display:flex}nav>a,nav>button{padding:10px 12px}nav .dropdown>button{display:flex;align-items:center;justify-content:space-between;width:100%;padding:10px 12px;min-height:46px}nav .dropdown #treatment-menu{display:none;position:static;width:100%;box-shadow:none;padding:4px 12px 12px 28px}nav .dropdown.open #treatment-menu{display:block}#treatment-menu a{padding:9px 6px;min-height:44px}nav .outline{margin-top:8px;min-height:48px}.split{grid-template-columns:1fr}.intro-top{gap:40px}.team-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.person-info{flex-wrap:wrap}.person h3{font-size:18px}.assistants{gap:24px}.page-head{padding-top:125px}}
@media(max-width:700px){html{scroll-padding-top:92px}body{padding-bottom:calc(76px + env(safe-area-inset-bottom,0px))}.social{top:auto;bottom:0;left:0;right:0;border-radius:20px 20px 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:0;padding:7px 12px calc(7px + env(safe-area-inset-bottom,0px));box-shadow:0 -4px 22px #13225920}.social a,.social button{border:0;border-radius:12px;width:100%;height:54px;display:flex;flex-direction:column;justify-content:center;gap:3px;font-size:21px}.social .quick-label{display:block;font-family:Montserrat,Arial,sans-serif;font-size:10px;line-height:1.3}.social a:hover,.social button:hover{background:#ffffff12}.hero{height:65svh;min-height:400px;max-height:700px}.hero-caption{bottom:75px;left:7%;right:7%;font-size:10px;letter-spacing:2px}.intro{padding:42px 7% 45px}.intro-top{grid-template-columns:1fr;gap:22px}.intro p{text-align:left}.intro h1{font-size:36px;letter-spacing:-1.2px}.intro h2{font-size:23px}.intro .appointment-row{margin-top:25px;padding-top:25px;gap:20px;font-size:17px}.appointment-row>div{align-items:flex-start;flex-direction:column}.section{margin-left:12px;margin-right:12px;padding:38px 7%;border-radius:30px}.section+.section{margin-top:14px}.cabinet-section{padding:0}.cabinet-photo{min-height:260px}.cabinet-section .copy{padding:38px 8%}.team-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 16px}.person-info{flex-direction:column;align-items:flex-start;gap:10px}.person-info .button{min-width:64px}.person h3{font-size:17px}.person p{font-size:12px}.practitioner-identity{aspect-ratio:1/1.1!important}.initials{font-size:42px}.practitioner-identity>span{font-size:11px}.assistants{padding:22px;gap:18px}.assistant-initial{flex-shrink:0}.treatments-section{margin:14px 12px;padding:38px 7%;border-radius:30px}.treatment-list a{font-size:21px}.advice-card{padding:26px}.emergency-grid{gap:20px}.access-grid{gap:30px}.map{min-height:300px}.page-head{padding:115px 7% 36px}.page-head h1{font-size:36px}.page-head h1:after{margin-top:18px}.page-head p{font-size:14px}.article-layout{gap:28px}.article-layout aside{padding:24px}.cookie{bottom:calc(88px + env(safe-area-inset-bottom,0px));max-height:calc(100dvh - 112px);padding:18px}.cookie-actions .button{font-size:13px}.cookie p{font-size:12px}dialog{width:calc(100% - 24px);padding:36px 24px 26px;border-radius:22px;max-height:calc(100dvh - 24px)}dialog h2{font-size:27px}dialog .button{padding:13px 15px;white-space:normal}footer{padding:38px 7% 22px;grid-template-columns:1fr 1fr;gap:24px}footer>.brand{grid-column:1/-1}footer a,footer button{font-size:12px;overflow-wrap:anywhere}footer p{font-size:10px}footer p a,footer p button{font-size:11px}}
@media(max-width:430px){header{padding:10px 14px}header .brand span{font-size:9px;letter-spacing:.8px}header .brand-logo{width:104px;height:46px}.brand{gap:8px}h2{font-size:29px}.intro h1,.page-head h1{font-size:32px}.team-grid{grid-template-columns:1fr}.practitioner-identity{aspect-ratio:1.4/1!important}.practitioner-identity img{max-width:270px}.person-info{flex-direction:row;gap:13px}.person h3{font-size:19px}.person-info .button{min-width:60px}.assistants{flex-direction:column;align-items:flex-start}.assistants>div:first-child{width:auto}.assistant-person{width:100%}.hours div{font-size:12px}.eyebrow{font-size:10px;letter-spacing:2px}.treatment-list a{font-size:19px}footer{grid-template-columns:1fr}footer>*{grid-column:1/-1}.cookie-actions{gap:6px}.cookie-actions .button{padding:10px 12px}}

/* Logo d’en-tête sans fond, version claire sur bandeau marine. */
header .brand-logo{background:transparent;border-radius:0;padding:0;filter:brightness(0) invert(1)}

.person .portrait.has-photo{padding:0;display:block;position:relative}.person .portrait.has-photo .practitioner-photo{display:block;width:100%;height:100%;max-height:none;max-width:none;object-fit:cover;object-position:center 24%;border-radius:0}.profile-photo{display:block;width:160px;height:200px;object-fit:cover;object-position:center 20%;border-radius:18px;margin:0 auto 24px}

.person .portrait.has-photo .practitioner-photo{position:absolute;inset:0;object-position:center 24%}

/* Carte interactive du cabinet, avec accès direct aux itinéraires. */
.interactive-map{display:block;min-height:560px;isolation:isolate;background:#e5eef1}.interactive-map:before,.interactive-map:after{display:none}.map-frame{position:absolute;inset:0;width:100%;height:100%;border:0;z-index:0}.interactive-map .map-card{position:absolute;bottom:18px;left:18px;z-index:1;width:265px;max-width:calc(100% - 36px);padding:18px 20px;text-align:left;box-shadow:0 8px 24px #13225925}.interactive-map .map-card h3{font-size:17px;margin-bottom:10px}.interactive-map .map-card p{font-size:13px;line-height:1.5;margin-bottom:12px}.interactive-map .map-card .button{padding:9px 15px;min-height:44px;font-size:12px}.interactive-map .map-card > br:last-child{display:none}@media(max-width:700px){.interactive-map{min-height:520px}.interactive-map .map-card{bottom:12px;left:12px;width:235px;max-width:calc(100% - 24px);padding:14px 16px}.interactive-map .map-card h3{font-size:16px;margin-bottom:7px}.interactive-map .map-card p{font-size:12px;margin-bottom:9px}}

/* Photographies fournies du cabinet et galerie agrandissable. */
.hero{background-image:url('assets/cabinet-soins.webp');background-position:center 48%}.cabinet-photo{background-image:url('assets/cabinet-attente.webp');background-position:center}.clinic-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px;margin-top:30px}.gallery-item{display:block;min-width:0;padding:0;text-align:left;overflow:hidden;border-radius:24px;background:var(--paper);color:var(--ink)}.gallery-item>img{width:100%;aspect-ratio:4/3;display:block;object-fit:cover;transition:transform .2s}.gallery-item:hover>img{transform:scale(1.025)}.gallery-item>span{display:flex;justify-content:space-between;gap:12px;padding:18px 22px;font-size:15px}.gallery-item>span>span{color:#c97400}.photo-dialog{max-width:1000px;width:calc(100% - 32px);padding:48px 18px 16px;background:white}.gallery-enlarged{display:block;width:100%;max-height:calc(100dvh - 155px);object-fit:contain;border-radius:10px}.gallery-caption{text-align:center;margin:12px 0 0;font-size:14px}@media(max-width:700px){.clinic-gallery{grid-template-columns:1fr;gap:18px}.gallery-item{border-radius:20px}.gallery-item>span{padding:15px 18px;font-size:14px}.photo-dialog{padding:48px 10px 12px}.hero{background-position:56% center}.gallery-enlarged{max-height:calc(100dvh - 150px)}}

/* Une seule grande photo visible, défilement automatique en fondu. */
.hero.hero-slider{background:#cbd9e0;overflow:hidden}.hero-slide{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center;opacity:0;transition:opacity 1.1s ease;pointer-events:none}.hero-slide.is-active{opacity:1}.hero-slider:after{z-index:1;pointer-events:none}.hero-slider .hero-caption{z-index:2;bottom:92px;font-size:12px;letter-spacing:2px;text-transform:uppercase}.slider-controls{position:absolute;right:5%;bottom:83px;z-index:3;display:flex;align-items:center;gap:10px;color:white}.slide-dots{display:flex;gap:0;padding:0 5px;background:#13225966;backdrop-filter:blur(8px);border-radius:30px}.slide-dot{width:40px;min-height:44px;display:grid;place-items:center;padding:0}.slide-dot span{width:8px;height:8px;border-radius:50%;background:#ffffff70;transition:width .2s,background .2s}.slide-dot.is-active span{background:white;width:21px;border-radius:9px}.slide-pause{width:44px;height:44px;display:grid;place-items:center;background:#13225966;border-radius:50%;backdrop-filter:blur(8px);color:white;font-size:17px}.hero-slider+.cabinet-section{position:relative;margin-top:-55px;z-index:2;border-radius:60px 60px 0 0}.cabinet-section h1{font-size:42px;color:var(--ink)}@media(max-width:700px){.hero-slider .hero-caption{bottom:141px;left:7%;right:7%;font-size:10px}.slider-controls{bottom:77px;left:7%;right:auto}.hero-slide{object-position:55% center}.hero-slider+.cabinet-section{border-radius:35px 35px 0 0}.cabinet-section h1{font-size:32px}.slide-dot{width:37px}}@media(prefers-reduced-motion:reduce){.hero-slide{transition:none}}

/* Icônes vectorielles identiques sur iOS, Android et ordinateur. */
.ui-icon{display:inline-block;width:22px;height:22px;flex-shrink:0;vertical-align:middle}.social .ui-icon{width:24px;height:24px}.social a>span[aria-hidden],.social button>span[aria-hidden]{display:grid;place-items:center;line-height:1}#menu .ui-icon{width:25px;height:25px}.dropdown span .ui-icon{width:16px;height:16px}.close .ui-icon{width:20px;height:20px}.slide-pause .ui-icon{width:18px;height:18px}dialog .button .ui-icon{width:18px;height:18px;margin-right:8px}@media(max-width:700px){.social .ui-icon{width:23px;height:23px}.social a,.social button{gap:5px}}

/* Boutons Doctolib : marque blanche sur le bleu marine du cabinet. */
.doctolib-wordmark{display:block;width:85px;height:25px;object-fit:contain;flex-shrink:0}.doctolib-button{display:inline-flex;align-items:center;justify-content:center;background:var(--ink);color:#fff;border:0;border-radius:18px;padding:17px 25px;min-width:136px;min-height:62px}.doctolib-button:hover{background:#20366f}header .doctolib-button{padding:10px 19px;min-height:44px;min-width:116px;border:1px solid #ffffff55;border-radius:13px}header .doctolib-wordmark{width:75px;height:22px}.person-info .doctolib-button{padding:12px;min-width:105px;min-height:49px}.person-info .doctolib-wordmark{width:72px;height:22px}dialog .doctolib-button{display:flex}.appointment-row .doctolib-button{vertical-align:middle}@media(max-width:700px){.doctolib-button{min-height:58px;min-width:132px;border-radius:17px}.person-info .doctolib-button{min-width:100px;padding:11px}.loader-logo{width:230px;max-width:66vw}.loader-progress{bottom:50px}}@media(max-width:430px){.person-info{gap:12px}.person-info h3{font-size:17px}}

/* Conseils : photo du cabinet, volet flouté et bibliothèque éditoriale. */
.advice-feature{position:relative;isolation:isolate;display:flex;min-height:680px;margin:28px;border-radius:60px;overflow:hidden;background:#e5e5e7}.advice-feature-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 48%;z-index:-1}.advice-glass{width:50%;margin-left:auto;min-height:680px;border-radius:60px;background:rgba(58,58,86,.5);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);padding:145px clamp(45px,6.8vw,135px);display:flex;align-items:flex-start;flex-direction:column;gap:36px;color:#fff}.advice-glass h2{color:#fff;font-variant:small-caps;letter-spacing:2.56px;font-size:32px;font-weight:600;line-height:1.3;margin:0;white-space:nowrap}.advice-all-button{display:flex;align-items:center;justify-content:center;min-height:54px;max-width:100%;padding:15px 32px;border-radius:14px;background:#fff;color:#132259;text-transform:uppercase;font-size:13px;font-weight:600;letter-spacing:1.1px;line-height:1.4;text-align:center;transition:background-color .3s,color .3s,transform .3s}.advice-all-button:hover{background:#f1f8fc;transform:translateY(-2px)}.advice-page{background:#fff;color:#55585c;padding:150px clamp(24px,5.5vw,100px) 70px;min-height:75vh}.advice-page .advice-heading{margin-bottom:70px}.advice-page h1{font-size:30px;line-height:1.4;letter-spacing:2.2px;text-transform:uppercase;font-weight:600;color:#39393f;margin:0 0 20px;max-width:1100px}.advice-breadcrumb{position:static;display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;max-height:none;width:auto;gap:12px;padding:0;background:transparent;box-shadow:none;border-radius:0;overflow:visible;font-size:13px;color:#65656b}.advice-breadcrumb a{min-height:32px;padding:0;display:inline-flex;align-items:center}.advice-breadcrumb a:hover{color:var(--ink)}.advice-layout{display:grid;grid-template-columns:185px minmax(0,1fr);gap:60px;align-items:start;max-width:1500px;margin:0 auto}.advice-filters{position:sticky;top:112px;display:flex;flex-direction:column;align-items:flex-start;gap:9px}.advice-filters button{background:#f8f8f8;border:0;border-radius:28px;min-height:44px;padding:9px 19px;text-align:left;color:#55585c;font-size:14px;transition:background-color .25s,color .25s}.advice-filters button.is-selected{background:#e7e9ec;color:#39393f}.advice-filters button:hover{background:#edf1f6;color:var(--ink)}.advice-row{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(230px,.9fr);align-items:center;gap:clamp(35px,5vw,110px);margin-bottom:54px;color:#55585c}.advice-row h2{font-size:23px;line-height:1.45;letter-spacing:-.45px;font-weight:500;color:#39393f;margin:0 0 12px;transition:color .3s}.advice-row .advice-tags{font-size:13px;line-height:1.6;margin:0 0 32px;color:#606067}.advice-row .advice-excerpt{font-size:14px;line-height:1.85;text-align:justify;margin:0}.advice-row-image{overflow:hidden;border-radius:20px;background:#f2f3f5;aspect-ratio:1.57}.advice-row-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s,filter .35s}.advice-row:hover h2{color:var(--ink)}.advice-row:hover img{transform:scale(1.025)}.advice-results{min-width:0}.advice-return-button{display:inline-flex;min-height:48px;justify-content:center;align-items:center;padding:12px 26px;background:var(--ink);color:#fff;border-radius:13px;font-size:12px;font-weight:600;letter-spacing:1px;text-transform:uppercase;transition:background-color .3s,transform .3s}.advice-return-button:hover{background:#20366f;transform:translateY(-1px)}.advice-page>.advice-return-button{margin-top:20px}.advice-route+aside+footer{margin-top:0}.advice-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:80px;max-width:1260px;margin:0 auto}.advice-article h2{font-size:23px;line-height:1.4;letter-spacing:-.4px;font-weight:500;margin:30px 0 15px}.advice-article p{font-size:15px;line-height:1.95}.advice-intro{font-size:17px!important;color:#44454d}.advice-article a:not(.advice-return-button){text-decoration:underline;text-underline-offset:3px}.advice-note{font-size:12px!important;color:#777b83;border-left:2px solid #d2e7f1;padding-left:18px;margin:30px 0 20px}.advice-source{font-size:12px!important;margin-bottom:30px}.advice-detail-aside{position:sticky;top:120px;background:#f3f8fb;border-radius:24px;overflow:hidden}.advice-detail-aside>img{display:block;width:100%;height:auto;aspect-ratio:1.57;object-fit:cover}.advice-detail-aside>div{padding:25px}.advice-detail-aside h2{font-size:21px;letter-spacing:-.5px;line-height:1.4}.advice-detail-aside p{font-size:13px}.advice-detail-aside .button{display:flex;margin-top:14px;font-size:12px}.advice-detail-aside .doctolib-wordmark{width:84px;height:25px}.sr-only{position:absolute!important;clip-path:inset(50%);width:1px;height:1px;overflow:hidden;white-space:nowrap}.advice-row,.advice-filters,.advice-detail-layout>*{min-width:0}
/* Apparitions relevées sur la référence : 500 ms, une seule fois, sans librairie. */
.reveal-pending{opacity:0;transform:translateY(24px);transition:opacity .5s linear var(--reveal-delay,0ms),transform .5s linear var(--reveal-delay,0ms)}.reveal-pending[data-reveal="down"]{transform:translateY(-20px)}.reveal-pending.is-revealed{opacity:1;transform:translateY(0)}header{transition:background-color .3s,box-shadow .3s}header.has-scrolled{background:#132259fa;box-shadow:0 5px 22px #13225912}.button,.outline{transition:background-color .3s,color .3s,box-shadow .3s}.person .portrait{position:relative}.person .practitioner-photo{transition:filter .3s}.person:hover .practitioner-photo{filter:brightness(.96)}.treatment-preview{position:relative}.treatment-visual{position:absolute;inset:10% 0;width:100%;height:80%;object-fit:contain;opacity:0;transition:opacity .3s;pointer-events:none;border-radius:20px}.treatment-visual.visible{opacity:1}.treatment-preview:has(.treatment-visual.visible)>svg{opacity:0;transition:opacity .3s}
@media(hover:hover) and (pointer:fine) and (min-width:1101px){.social a,.social button{position:relative}.social .quick-label{display:flex;position:absolute;right:calc(100% + 12px);padding:8px 14px;border-radius:9px;background:var(--ink);white-space:nowrap;color:#fff;font-size:12px;opacity:0;transform:translateX(8px);pointer-events:none;transition:opacity .3s,transform .3s}.social a:hover .quick-label,.social button:hover .quick-label,.social a:focus-visible .quick-label,.social button:focus-visible .quick-label{opacity:1;transform:translateX(0)}}
@media(min-width:1700px){.advice-feature,.advice-glass{min-height:800px}.advice-glass{padding-top:175px}.advice-row{gap:110px}.advice-row h2{font-size:24px}.advice-row .advice-excerpt{font-size:16px}}
@media(max-width:1100px){.advice-glass{padding:110px 45px;gap:30px}.advice-feature,.advice-glass{min-height:590px}.advice-layout{grid-template-columns:160px minmax(0,1fr);gap:30px}.advice-row{grid-template-columns:minmax(0,1.2fr) minmax(180px,.9fr);gap:25px}.advice-row h2{font-size:21px}.advice-row .advice-excerpt{font-size:13px}.advice-page{padding:125px 40px 55px}.advice-detail-layout{grid-template-columns:minmax(0,1fr) 250px;gap:35px}.advice-filters{top:100px}}
@media(max-width:767px){.advice-feature{margin:14px 12px;border-radius:35px;min-height:650px;display:flex;flex-direction:column;justify-content:flex-end}.advice-feature-photo{object-position:40% center}.advice-glass{width:100%;margin:0;min-height:260px;border-radius:35px;padding:40px 30px;gap:28px}.advice-glass h2{font-size:27px}.advice-all-button{font-size:12px;min-height:52px;padding:15px 25px}.advice-page{padding:112px 22px 42px}.advice-page .advice-heading{margin-bottom:32px}.advice-page h1{font-size:25px;letter-spacing:1.6px;margin-bottom:14px}.advice-breadcrumb{font-size:12px;gap:9px}.advice-layout{display:block}.advice-filters{position:sticky;top:75px;z-index:5;flex-direction:row;align-items:center;gap:8px;width:100%;overflow-x:auto;padding:12px 0 15px;margin-bottom:22px;background:#fff;scrollbar-width:thin;scroll-padding:15px;overscroll-behavior-x:contain}.advice-filters button{flex-shrink:0;font-size:12px;min-height:42px;padding:8px 15px}.advice-row{grid-template-columns:minmax(0,1fr) minmax(140px,.75fr);gap:22px;margin-bottom:38px}.advice-row h2{font-size:19px;margin-bottom:10px}.advice-row .advice-tags{font-size:11px;margin-bottom:18px}.advice-row .advice-excerpt{font-size:13px;text-align:left;line-height:1.8}.advice-row-image{border-radius:17px}.advice-detail-layout{display:flex;flex-direction:column;gap:30px}.advice-detail-aside{position:static;display:grid;grid-template-columns:1fr 1fr}.advice-detail-aside>img{height:100%;aspect-ratio:auto}.advice-detail-aside>div{padding:22px}.advice-article p{font-size:14px}.advice-article h2{font-size:22px}.advice-intro{font-size:16px!important}.advice-detail h1{font-size:24px;line-height:1.5}.reveal-pending{opacity:1;transform:none;transition:none}.advice-return-button{font-size:11px}}
@media(max-width:480px){.advice-feature{min-height:590px}.advice-glass{padding:35px 25px;min-height:235px}.advice-glass h2{font-size:25px}.advice-page{padding-left:21px;padding-right:21px}.advice-row{display:flex;flex-direction:column-reverse;align-items:stretch;gap:20px;margin-bottom:42px}.advice-row-image{width:100%;max-height:235px}.advice-row h2{font-size:21px}.advice-row .advice-tags{margin-bottom:16px}.advice-detail-aside{display:block}.advice-detail-aside>img{height:auto;aspect-ratio:1.57}.advice-filters button{min-height:44px}.advice-detail h1{font-size:22px}.advice-detail .advice-breadcrumb>span:last-child{flex-basis:100%}}
@media(prefers-reduced-motion:reduce){.reveal-pending{opacity:1;transform:none;transition:none}.advice-all-button,.advice-row-image img,.advice-return-button,header,.treatment-visual,.social .quick-label{transition:none!important}.advice-all-button:hover,.advice-row:hover img,.advice-return-button:hover{transform:none}}

@media(max-width:767px){.advice-filters{flex-wrap:wrap;overflow:visible;gap:7px}.advice-filters button{font-size:11px;padding:8px 12px}}

/* Dégradés de verre : transitions douces inspirées de la référence. */
.intro{background:linear-gradient(112deg,#737991 0%,#43517a 45%,#17295f 100%);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);color:#fff;box-shadow:0 -1px 0 #ffffff38;isolation:isolate}
.intro:before{content:'';position:absolute;inset:0;z-index:-1;border-radius:inherit;pointer-events:none;background:radial-gradient(ellipse at 12% 0%,#d9e8f22e,transparent 62%)}
.intro h1,.intro h2,.intro a:not(.button),.intro .eyebrow{color:#fff}.intro .appointment-row{border-top-color:#ffffff30}.intro p{color:#f3f5fc}.intro .doctolib-button{background:#132259b3;border:1px solid #ffffff35}.intro .doctolib-button:hover{background:#132259}
.advice-glass{background:linear-gradient(120deg,rgba(121,117,137,.72),rgba(76,75,103,.71) 48%,rgba(24,38,80,.82));backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:inset 1px 1px 0 #ffffff1c}
header,header.has-scrolled{background:linear-gradient(115deg,#34436e 0%,#1e3065 48%,#132259 100%)}
.social,footer{background:linear-gradient(125deg,#334775 0%,#1e3269 45%,#132259 100%)}
.hero:after{background:linear-gradient(180deg,rgba(19,34,89,.04) 35%,rgba(70,75,104,.1) 70%,rgba(57,66,104,.44) 100%)}
@media(max-width:767px){.intro{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.advice-glass{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:linear-gradient(125deg,rgba(103,106,134,.85),rgba(33,48,95,.92))}}
@supports not (backdrop-filter:blur(1px)){.intro{background:linear-gradient(112deg,#6b718d,#354671 55%,#132259)}.advice-glass{background:linear-gradient(120deg,#797989ee,#354365f5)}}

/* Harmonisation des deux blocs : dégradés continus et raccord photo. */
.treatments-section{position:relative;isolation:isolate;background:radial-gradient(ellipse at 0% 0%,#a9b6cf26,transparent 60%),linear-gradient(115deg,#62718f 0%,#354a78 44%,#132259 100%);box-shadow:inset 0 1px 0 #ffffff26}
.treatments-section .treatment-list a{border-bottom-color:#ffffff29;transition:background-color .25s,color .25s}
.treatments-section .treatment-list a:hover,.treatments-section .treatment-list a:focus-visible{background:#ffffff0c;color:#fff}
.cabinet-section{background:linear-gradient(115deg,#737e99 0%,#41557f 48%,#253b6a 100%);color:#fff}
.cabinet-section .copy{position:relative;z-index:1;background:transparent}
.cabinet-section h1,.cabinet-section h2,.cabinet-section .eyebrow{color:#fff}.cabinet-section p{color:#f1f4fb}
.cabinet-section .button{background:#132259b3;border-bottom-color:#f39516;box-shadow:inset 0 1px 0 #ffffff20}
.cabinet-section .button:hover{background:#132259}
.cabinet-photo{position:relative;isolation:isolate}
.cabinet-photo:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#3e527c 0%,#3e527c59 15%,transparent 44%),linear-gradient(0deg,#13225924,transparent 55%)}
@media(max-width:900px){.cabinet-photo:after{background:linear-gradient(180deg,#485b84 0%,#485b8466 16%,transparent 48%),linear-gradient(0deg,#1322591c,transparent 50%)}}
@media(max-width:767px){.treatments-section{background:radial-gradient(ellipse at 0% 0%,#a9b6cf26,transparent 65%),linear-gradient(135deg,#62718f,#354a78 45%,#132259)}.cabinet-section{background:linear-gradient(135deg,#737e99,#485b84 70%,#354a75)}}
