
:root{--ink:#29272a;--muted:#615b5e;--accent:#654750;--paper:#fcfaf7;--tint:#f1ebe7;--line:#ddd4ce;--white:#fff;--serif:Georgia,"Times New Roman",serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.65 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:inherit;text-underline-offset:5px}img{max-width:100%;height:auto}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #9b6579;outline-offset:5px}.wrap{width:min(1160px,calc(100% - 80px));margin-inline:auto}.skip{position:absolute;top:-100px;left:20px;background:#fff;padding:10px;z-index:10}.skip:focus{top:10px}header{border-bottom:1px solid var(--line);background:var(--paper);position:sticky;top:0;z-index:5}.navigation{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:96px}.brand{text-decoration:none;display:inline-flex;flex-direction:column;flex-shrink:0}.brand strong{font:24px/1.3 var(--serif);font-weight:400}.brand span{font-size:12px;letter-spacing:.09em;margin-top:4px}nav{display:flex;align-items:center;gap:22px}nav>a{font-size:14px;text-decoration:none;white-space:nowrap}nav>a[aria-current]{text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:9px}nav .button{font-size:14px;padding:12px 18px}.menu-toggle{display:none}.button{display:inline-flex;align-items:center;justify-content:center;background:var(--accent);color:#fff;border:1px solid var(--accent);border-radius:5px;text-decoration:none;font-weight:600;font-size:15px;line-height:1.5;padding:14px 23px;cursor:pointer;transition:background .2s}.button:hover{background:#49333a}.text-link{display:inline-block;font-size:15px;font-weight:600;color:var(--accent)}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.13;margin:0 0 22px}h1{font-size:clamp(40px,4.6vw,64px);letter-spacing:-.035em}h2{font-size:clamp(30px,3.2vw,42px);letter-spacing:-.025em}h3{font-size:25px;letter-spacing:-.015em;margin-bottom:13px}p{margin:0 0 20px;color:var(--muted)}.eyebrow{font-size:12px;line-height:1.5;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--accent);margin-bottom:19px}.lead{font-size:19px;line-height:1.7;max-width:670px}.hero{display:grid;grid-template-columns:1.6fr 1fr;gap:72px;align-items:center;padding-block:64px 58px}.hero h1{max-width:730px}.profession{font-size:16px;margin-bottom:10px;color:var(--ink)}.hero .lead{max-width:600px}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:22px;margin:28px 0 24px}.audience{font-size:14px;line-height:1.8;margin:0}.portrait{margin:0;background:var(--tint);padding:22px;align-self:center;max-width:390px;border-radius:120px 120px 6px 6px}.portrait img{width:100%;display:block;border-radius:100px 100px 4px 4px;aspect-ratio:355/299;object-fit:cover}.portrait figcaption{padding:22px 8px 2px;display:flex;flex-direction:column;text-align:center;gap:5px;color:var(--muted);font-size:14px}.portrait figcaption strong{font-family:var(--serif);font-size:24px;font-weight:400;color:var(--ink)}.portrait figcaption a{margin-top:10px;color:var(--accent)}.section{padding-block:64px}.compact{padding-top:12px}.tinted{background:var(--tint)}.section-heading{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:end;margin-bottom:25px}.section-heading p{max-width:490px}.consultation-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0 30px}.consultation{border-top:1px solid #cfc1b9;padding:24px 0;display:flex;flex-direction:column;text-decoration:none}.consultation h3{font-size:26px}.consultation p{font-size:16px;margin-bottom:18px}.consultation>span{margin-top:auto;font-size:14px;color:var(--accent);font-weight:600}.consultation>span>span{float:right}.consultation:hover h3{color:var(--accent);text-decoration:underline;text-underline-offset:5px}.about-strip,.practical-strip{display:grid;grid-template-columns:1fr 1fr;gap:80px}.line-top{border-top:1px solid var(--line)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:38px;margin-top:32px}.steps p{font-size:16px}.number{display:block;color:var(--accent);font:italic 24px var(--serif);margin-bottom:17px}.practical-strip .text-link{display:block;margin-top:18px}.intro{padding-block:48px 36px}.intro h1{font-size:clamp(38px,4.5vw,56px)}.intro .lead{max-width:730px}.profile{display:grid;grid-template-columns:320px 1fr;gap:80px;padding-block:12px 64px;align-items:start}.profile .portrait{align-self:start}.method-list article{display:grid;grid-template-columns:1fr 1.3fr;gap:60px;padding:25px 0;border-top:1px solid var(--line)}.method-list p{margin:0}.appointment{display:flex;gap:40px;justify-content:space-between;align-items:center;padding:42px;background:var(--tint);border-left:4px solid var(--accent);margin-block:30px 64px}.appointment h2{font-size:34px}.appointment p:last-child{margin-bottom:0}.appointment .button{flex-shrink:0}.faq{max-width:850px}details{border-top:1px solid #cfc1b9;padding:18px 0}details:last-child{border-bottom:1px solid #cfc1b9}summary{cursor:pointer;font-size:17px;font-weight:600}details p{margin:16px 0 0}.reading{max-width:780px}.reading h2{margin-top:36px;font-size:32px}.contact-top{display:grid;grid-template-columns:1fr 1fr;gap:60px;background:var(--tint);padding:36px;margin-bottom:48px}.contact-top h2{font-size:31px}.phone{font:30px/1.7 var(--serif);text-decoration:none}.practical-columns{display:grid;grid-template-columns:1fr 1fr;gap:80px}address{font-style:normal;color:var(--muted)}.practical-columns h3{margin-top:28px}.message-layout{display:grid;grid-template-columns:1fr 1.3fr;gap:75px}label{display:block;font-size:15px;font-weight:600;margin-bottom:7px}input,textarea,select{width:100%;color:var(--ink);background:var(--white);border:1px solid #b8a8a1;border-radius:4px;padding:11px 12px;margin-bottom:20px;min-height:48px}textarea{resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.small{font-size:14px;margin-top:17px;overflow-wrap:anywhere}footer{border-top:1px solid var(--line);padding:44px 0 20px;background:#f7f3ef;font-size:14px}footer .brand strong{font-size:22px}footer .brand span{font-size:11px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:32px}footer p{margin-top:17px}.footer-links{display:flex;flex-direction:column;gap:9px}.footer-grid a{overflow-wrap:anywhere}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:20px;margin-top:20px;color:var(--muted);font-size:12px}.footer-bottom div{display:flex;gap:22px}
@media(min-width:1500px){.hero{padding-block:80px}.wrap{width:min(1200px,calc(100% - 100px))}}
@media(max-width:1080px){.wrap{width:calc(100% - 48px)}.navigation{gap:16px}.brand strong{font-size:22px}nav{gap:14px}nav>a{font-size:13px}nav .button{padding:11px 12px;font-size:13px}.hero{gap:35px}.profile{gap:40px}.section-heading,.about-strip,.practical-strip{gap:40px}.message-layout{gap:35px}}
@media(max-width:900px){.navigation{min-height:82px;flex-wrap:wrap;padding-block:15px}.menu-toggle{display:block;background:none;border:1px solid var(--line);border-radius:4px;padding:8px 14px;cursor:pointer;font-size:15px}nav{display:none;flex-basis:100%;flex-direction:column;align-items:stretch;padding:15px 0;gap:8px}nav.open{display:flex}nav>a{font-size:16px;padding:9px 0}nav .button{font-size:15px}nav>a[aria-current]{text-underline-offset:5px}.hero{grid-template-columns:1.3fr 1fr;gap:25px;padding-block:40px}.hero h1{font-size:44px}.hero .lead{font-size:17px}.portrait{padding:15px}.consultation-grid{grid-template-columns:repeat(2,1fr)}.contact-top{gap:30px}.appointment{padding:28px}.appointment h2{font-size:30px}.profile{grid-template-columns:260px 1fr;gap:30px}}
@media(max-width:640px){.wrap{width:calc(100% - 36px)}.brand strong{font-size:22px}.brand span{font-size:10px}.hero{grid-template-columns:1fr;padding-block:34px;gap:30px}.hero h1{font-size:43px}.hero .lead{font-size:18px}.hero .portrait{width:100%;max-width:330px;margin-inline:auto}.portrait figcaption{padding-top:16px}.section{padding-block:40px}.compact{padding-top:8px}.section-heading,.about-strip,.practical-strip,.profile,.practical-columns,.message-layout{grid-template-columns:1fr;gap:22px}.section-heading{margin-bottom:12px}.consultation-grid{grid-template-columns:1fr}.consultation{padding-block:21px}.consultation h3{font-size:25px}.steps{grid-template-columns:1fr;gap:20px;margin-top:24px}.steps>div{border-top:1px solid var(--line);padding-top:19px}.number{margin-bottom:10px}.intro{padding-block:34px 22px}.intro h1{font-size:39px}.profile .portrait{max-width:280px;margin-inline:auto}.profile{padding-bottom:40px}.method-list article{grid-template-columns:1fr;gap:0;padding-block:20px}.appointment{flex-direction:column;align-items:flex-start;margin-block:16px 40px;padding:25px;gap:23px}.appointment h2{font-size:29px}.appointment .button{width:100%}.contact-top{grid-template-columns:1fr;padding:25px;gap:30px;margin-bottom:32px}.contact-top .button{width:100%}.form-row{grid-template-columns:1fr;gap:0}.footer-grid{grid-template-columns:1fr;gap:23px}.footer-bottom{flex-direction:column;gap:14px}.footer-bottom div{flex-wrap:wrap}.actions{gap:18px}.audience{font-size:13px}h2{font-size:32px}.lead{font-size:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Refined proportions and solid navigation */
h1{font-size:clamp(38px,4vw,54px)}h2{font-size:clamp(29px,2.8vw,37px)}.hero{grid-template-columns:minmax(0,1.6fr) minmax(250px,.8fr);padding-block:46px;gap:60px}.hero .portrait{max-width:310px;justify-self:end;padding:0;background:none;border-radius:0}.hero .portrait img{border-radius:4px}.hero .portrait figcaption{padding-top:15px}.hero .portrait figcaption strong{font-size:22px}.hero .lead{font-size:18px}.section{padding-block:48px}.navigation{min-height:84px}.portrait{border-radius:6px}.portrait img{border-radius:4px}.about-strip{gap:50px}.section-heading{gap:50px}.consultation h3{font-size:24px}.consultation{padding:20px 0}.intro h1{font-size:clamp(36px,4vw,48px)}
@media(max-width:640px){.hero{grid-template-columns:1fr;gap:24px;padding-block:30px}.hero h1{font-size:39px}.hero .portrait{justify-self:center;width:260px;margin-inline:auto}.section{padding-block:34px}.navigation{min-height:76px}.section-heading,.about-strip{gap:20px}}

/* Photographic anchors and a cleaner scroll experience */
header{background:var(--paper)!important;box-shadow:0 1px 0 rgba(41,39,42,.06);z-index:20}
.room-feature{display:grid;grid-template-columns:minmax(260px,.85fr) minmax(0,1.15fr);gap:72px;align-items:center}
.room-feature-reverse{grid-template-columns:minmax(0,1.15fr) minmax(260px,.85fr)}
.room-photo{overflow:hidden;border-radius:6px;background:var(--tint);max-height:470px}
.room-photo img{display:block;width:100%;height:470px;object-fit:cover;object-position:center 56%}
.photo-note{margin:0;padding:8px 12px;background:var(--tint);font-size:12px;line-height:1.4;color:var(--muted)}
.room-copy{max-width:560px}
.room-copy h2{max-width:560px}
.room-copy p{max-width:540px}
.steps-cta{margin-top:28px}
@media(max-width:900px){.room-feature,.room-feature-reverse{grid-template-columns:1fr;gap:30px}.room-feature-reverse .room-copy{order:0}.room-feature-reverse .room-photo{order:1}.room-photo{max-height:390px}.room-photo img{height:390px}}
@media(max-width:640px){.room-feature,.room-feature-reverse{gap:22px}.room-photo{max-height:300px}.room-photo img{height:300px}.room-copy h2{font-size:31px}}

/* Real photo system: contextual, lightweight and explicit about illustrations */
.consultation img{display:block;width:100%;height:154px;object-fit:cover;border-radius:4px;margin-bottom:18px}
.photo-gallery .section-heading{margin-bottom:28px}
.photo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.photo-grid-methods{grid-template-columns:repeat(3,minmax(0,1fr))}
.photo-card{margin:0;background:var(--tint);overflow:hidden;border-radius:5px}
.photo-card img{display:block;width:100%;height:190px;object-fit:cover}
.photo-card figcaption{padding:13px 15px 16px;color:var(--muted);font-size:14px;line-height:1.45}
.photo-feature{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(260px,.9fr);gap:60px;align-items:center}
.photo-feature-reverse{grid-template-columns:minmax(260px,.9fr) minmax(0,1.1fr)}
.photo-frame{margin:0;background:var(--tint);overflow:hidden;border-radius:6px}
.photo-frame img{display:block;width:100%;height:360px;object-fit:cover}
.photo-frame figcaption{padding:10px 13px 12px;background:var(--tint);color:var(--muted);font-size:12px;line-height:1.45}
.photo-feature>div{max-width:540px}
@media(max-width:900px){.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.photo-feature,.photo-feature-reverse{grid-template-columns:1fr;gap:28px}.photo-feature-reverse>div{order:0}.photo-feature-reverse .photo-frame{order:1}.photo-frame img{height:340px}}
@media(max-width:640px){.consultation img{height:180px}.photo-grid,.photo-grid-methods{grid-template-columns:1fr 1fr;gap:14px}.photo-card img{height:145px}.photo-card figcaption{font-size:13px;padding:10px 11px 12px}.photo-feature,.photo-feature-reverse{gap:22px}.photo-frame img{height:270px}}

/* Avis : lecture simple, sans carrousel ni effet décoratif. */
.review-card{max-width:820px;padding:38px 42px;background:var(--white);border:1px solid var(--line);border-radius:6px}
.review-stars{font-size:24px;letter-spacing:.12em;color:#9c6d29;line-height:1;margin-bottom:28px}
.review-card blockquote{margin:0}
.review-card blockquote p{font:clamp(22px,2.4vw,29px)/1.48 var(--serif);color:var(--ink);margin-bottom:28px}
.review-credit{display:flex;flex-wrap:wrap;align-items:baseline;gap:7px 18px;border-top:1px solid var(--line);padding-top:17px;color:var(--muted);font-size:14px}
.review-credit strong{color:var(--ink)}
.review-more{margin:26px 0 6px}
.review-archive-heading{margin:55px 0 24px;font-size:34px}.reviews-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.review-card--compact{max-width:none;padding:26px 28px}.review-card--compact blockquote p{font-size:19px;line-height:1.55;margin-bottom:22px}.review-card--compact .review-credit{font-size:13px}
@media(max-width:640px){.review-card{padding:25px 23px}.review-stars{font-size:20px;margin-bottom:20px}.review-card blockquote p{font-size:22px}}
@media(max-width:640px){.reviews-grid{grid-template-columns:1fr}.review-archive-heading{font-size:30px;margin-top:38px}.review-card--compact blockquote p{font-size:18px}}

/* Blog : archive éditoriale lisible sur petit écran. */
.blog-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 34px;border-top:1px solid var(--line)}
.blog-card{display:flex;flex-direction:column;min-width:0;padding:27px 0 32px;border-bottom:1px solid var(--line);text-decoration:none}
.blog-cover{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;background:var(--tint);border-radius:5px;margin-bottom:20px}
.blog-cover-link{display:block;text-decoration:none}.blog-card h2 a{text-decoration:none}.blog-card h2 a:hover{text-decoration:underline;text-underline-offset:5px;color:var(--accent)}.blog-card .blog-cover-link:hover img{filter:brightness(.94)}
.article-category{margin-top:25px}.article-layout{max-width:850px}.article-cover{display:block;width:100%;height:auto;max-height:560px;object-fit:cover;border-radius:6px;margin-bottom:36px}.article-body{max-width:720px}.article-body h2{font-size:30px}
.article-intro{padding-bottom:30px}.article-intro h1{max-width:1000px}.article-full{padding-bottom:80px}.article-full>.article-cover{max-width:850px;margin-inline:auto}.article-prose{max-width:780px;margin-inline:auto}.article-prose p,.article-prose li{font-size:17px;line-height:1.8;color:var(--ink)}.article-prose h2{font-size:clamp(27px,3vw,34px);margin:42px 0 17px}.article-prose h3{font-size:24px;margin:32px 0 14px}.article-prose h4{font-size:20px;margin:26px 0 12px}.article-prose ul{padding-left:26px;margin:0 0 23px}.article-prose li{padding-left:4px;margin-bottom:9px}.article-prose blockquote{border-left:3px solid var(--accent);padding-left:20px;margin:26px 0}.article-inline-image{margin:38px 0}.article-inline-image img{display:block;width:100%;height:auto;max-height:580px;object-fit:contain;border-radius:5px}.article-inline-image figcaption{font-size:13px;color:var(--muted);margin-top:9px}.article-table{border:1px solid var(--line);margin:24px 0 30px}.article-table-row{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line)}.article-table-row:last-child{border-bottom:0}.article-table-row>div{padding:16px 18px;font-size:15px;line-height:1.65}.article-table-row>div+div{border-left:1px solid var(--line)}.article-table-head{background:var(--tint);font-weight:700}.article-return{margin:35px 0 0 calc((100% - min(780px,100%))/2)}
@media(max-width:640px){.article-full{padding-bottom:48px}.article-prose p,.article-prose li{font-size:16px}.article-table-row{grid-template-columns:1fr}.article-table-row>div+div{border-left:0;border-top:1px solid var(--line)}.article-return{margin-left:0}}
.blog-meta{font-size:13px;letter-spacing:.04em;color:var(--accent);font-weight:600;margin-bottom:12px}
.blog-card h2{font-size:clamp(23px,2.3vw,29px);line-height:1.25;margin:0 0 15px}
.blog-open{font-size:14px;color:var(--accent);font-weight:600;margin-top:auto}
.blog-note{max-width:700px;margin:28px 0 8px;font-size:15px}
@media(max-width:1020px){.navigation{flex-wrap:wrap;padding-block:15px}.menu-toggle{display:block;background:none;border:1px solid var(--line);border-radius:4px;padding:8px 14px;cursor:pointer;font-size:15px}nav{display:none;flex-basis:100%;flex-direction:column;align-items:stretch;padding:15px 0;gap:8px}nav.open{display:flex}nav>a{font-size:16px;padding:9px 0}nav .button{font-size:15px}nav>a[aria-current]{text-underline-offset:5px}}
@media(max-width:640px){.blog-list{grid-template-columns:1fr}.blog-card{padding:22px 0 25px}.blog-card h2{font-size:24px}}

.article-byline{color:var(--muted);font-size:15px;margin-top:14px}.article-related{max-width:780px;margin:35px auto 0;font-size:16px}.related-reading{margin-top:24px}
.method-shortcuts{border-top:1px solid var(--line);padding-top:28px;margin-top:28px}.method-shortcuts h2{font-size:27px;margin-bottom:15px}.method-links{display:flex;flex-wrap:wrap;gap:10px}.method-links a{display:inline-block;border:1px solid var(--line);padding:9px 15px;border-radius:4px;text-decoration:none;font-size:15px}.method-links a:hover{border-color:var(--accent);color:var(--accent)}.method-list h3 a{text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:5px}.method-list h3 a:hover{color:var(--accent);text-decoration-color:currentColor}
.blog-open{text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:5px;align-self:flex-start}.blog-open:hover{text-decoration-color:currentColor}.blog-archive{margin:28px 0 10px}.blog-archive summary,.review-archive summary{color:var(--accent);font-weight:600;cursor:pointer;list-style:none}.blog-archive summary::-webkit-details-marker,.review-archive summary::-webkit-details-marker{display:none}.blog-archive summary::after,.review-archive summary::after{content:" +"}.blog-archive[open] summary::after,.review-archive[open] summary::after{content:" −"}.blog-archive .blog-list{margin-top:25px}.review-archive{margin-top:50px}.review-archive .reviews-grid{margin-top:25px}.article-prose .article-sources{font-size:14px;border-top:1px solid var(--line);padding-top:20px;margin-top:34px}.article-sources a{color:var(--accent)}.article-updated{font-size:13px;margin-top:-12px}

.method-grid{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:640px){.method-grid{grid-template-columns:1fr}}

.therapy-illustration{margin:24px 0 32px}

.review-reply{margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}.review-reply h3{font-family:inherit;font-size:15px;font-weight:600;line-height:1.5;margin-bottom:10px}.review-reply p{font-size:15px;line-height:1.65;margin:0}
