:root{--ink:#14575b;--text:#38585b;--muted:#526e70;--blue:#d6e9e8;--line:#c3dcda;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{margin:0;background:#fff;color:var(--ink);font:1rem/1.65 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:inherit;text-underline-offset:5px}a:focus-visible{outline:3px solid #14575b;outline-offset:6px}img{display:block;max-width:100%;height:auto}.wrap{width:min(1220px,calc(100% - 104px));margin-inline:auto}.header{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding-block:25px;border-bottom:1px solid var(--line)}.brand{text-decoration:none;display:flex;align-items:center;gap:13px;line-height:1.35;font-family:Georgia,serif;font-size:1.3rem}.brand img{width:59px}.brand small{display:block;margin-top:7px;font:0.65em/1.5 system-ui,sans-serif;letter-spacing:.12em}nav{display:flex;align-items:center;gap:30px;font-size:.92rem}nav a{text-decoration:none}nav a:hover,.text-link:hover{text-decoration:underline}.nav-call{border:1px solid var(--ink);padding:11px 19px;border-radius:3px}.hero{display:grid;grid-template-columns:1.2fr 1fr;gap:60px;align-items:center;padding-block:78px 86px}.eyebrow{font-size:.78rem;letter-spacing:.16em;font-weight:600;margin:0 0 25px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.045em;line-height:1.13}h1{font-size:clamp(3rem,4.4vw,4.65rem);margin-bottom:28px}em{font-weight:400;color:#286b6d}h1 em{white-space:nowrap}.intro{max-width:390px;font-size:1.15rem;color:var(--text);margin-bottom:32px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:25px;background:var(--ink);color:#fff;text-decoration:none;padding:17px 24px;border-radius:3px;font-size:.94rem;font-weight:500;transition:background .2s}.button:hover{background:#0d4549}.button span{font-size:1.3rem}.hero-address{margin:26px 0 0;color:var(--muted);font-size:.91rem;padding-left:17px;border-left:1px solid #91b6b4}.hero-art{background:var(--blue);border-radius:220px 220px 5px 5px;min-height:470px;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:45px 30px 32px;gap:20px}.hero-art img{width:310px;border-radius:50%;mix-blend-mode:multiply}.art-label{font-size:.76rem;letter-spacing:.2em}.art-bottom{font-family:Georgia,serif;font-style:italic;font-size:1.16rem;text-align:center}.consult-section{background:#f0f7f7;padding:75px 0 80px}.section-heading{display:grid;grid-template-columns:1fr 1.6fr 1.2fr;gap:35px;align-items:start}.section-heading .eyebrow{padding-top:14px}h2{font-size:clamp(2.35rem,3.1vw,3.25rem);margin-bottom:28px}.section-heading>p:last-child{color:var(--text);padding-top:12px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:36px}.steps article{border-top:1px solid #b9d4d2;padding-top:22px}.number{font-family:Georgia,serif;font-size:1.25rem;color:#467176}.steps h3{font-family:Georgia,serif;font-size:1.5rem;font-weight:400;margin:17px 0 12px}.steps p{color:var(--text);margin-bottom:0}.cabinet{display:grid;grid-template-columns:1.1fr 1fr;gap:90px;padding-block:90px}.cabinet-intro{max-width:360px;color:var(--text)}.contact-panel{border-top:1px solid var(--line)}.contact-row{padding:24px 0;border-bottom:1px solid var(--line)}.contact-label{display:block;font-size:.77rem;letter-spacing:.12em;margin-bottom:16px;color:var(--muted)}address{font-style:normal;font-size:1.2rem;line-height:1.65;margin-bottom:18px}.text-link{font-size:.94rem}.text-link span[aria-hidden]{margin-left:12px}.phone{display:inline-block;font-family:Georgia,serif;font-size:2rem;text-decoration:none;line-height:1.3}.phone:hover{text-decoration:underline}.contact-row p{max-width:380px;color:var(--text);margin:13px 0 0;font-size:.94rem}footer{background:var(--ink);color:#fff;padding:35px 0}.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:24px;font-size:.9rem}.footer-inner>span{font-family:Georgia,serif;font-size:1.2rem}.footer-inner small{display:block;font: .8rem/1.6 system-ui,sans-serif;margin-top:6px;color:#deeeed}.skip{position:absolute;left:20px;top:-100px;padding:12px;background:white;z-index:10}.skip:focus{top:10px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@media(min-width:1500px){.hero{padding-block:95px 105px}}@media(max-width:1000px){.wrap{width:calc(100% - 56px)}.header{gap:20px}nav{gap:18px}nav a:not(.nav-call){display:none}.hero{gap:30px}.hero-art{min-height:400px;padding-inline:20px}.hero-art img{width:260px}.section-heading{grid-template-columns:1fr 1fr}.section-heading>.eyebrow{grid-column:1/-1;margin:0;padding:0}.cabinet{gap:45px}}@media(max-width:650px){.wrap{width:calc(100% - 40px)}.header{padding-block:17px;flex-wrap:wrap;gap:14px}.brand{font-size:1.15rem}.brand img{width:49px}.brand small{font-size:.67em;letter-spacing:.08em}.header nav{width:100%;justify-content:space-between;gap:12px;font-size:.82rem}.header nav a{display:block}.nav-call{padding:6px 9px}.hero{grid-template-columns:1fr;padding-block:40px 45px;gap:36px}.eyebrow{font-size:.74rem;letter-spacing:.12em;margin-bottom:20px}h1{font-size:clamp(2.45rem,10vw,3.6rem)}h1 em{white-space:normal}.intro{font-size:1.05rem;margin-bottom:25px}.button{width:100%;font-size:.88rem;padding:15px 18px;gap:12px}.hero-art{min-height:unset;border-radius:170px 170px 4px 4px;padding:32px 25px 25px}.hero-art img{width:240px}.art-label{font-size:.7rem}.consult-section{padding-block:45px}.section-heading{grid-template-columns:1fr;gap:0}.section-heading>.eyebrow{margin-bottom:22px}.section-heading>p:last-child{padding-top:0;margin-bottom:0}.steps{grid-template-columns:1fr;gap:27px;margin-top:30px}.steps article{padding-top:17px}.steps h3{margin-top:10px}.cabinet{grid-template-columns:1fr;padding-block:50px;gap:18px}.cabinet-intro{margin-bottom:10px}.footer-inner{flex-wrap:wrap;gap:20px}.footer-inner>span{width:100%}.footer-inner>a:last-child{margin-left:auto}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.hero-art img.portrait{width:270px;border-radius:130px 130px 3px 3px}@media(max-width:650px){.hero-art img.portrait{width:230px}}

.booking-actions{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.button-outline{background:transparent;color:var(--ink);border:1px solid var(--ink)}.button-outline:hover{background:var(--blue)}.contact-row .booking-actions{margin-top:20px}@media(max-width:650px){.booking-actions{align-items:stretch}}

/* Five-section navigation and content */
.header{flex-wrap:wrap;gap:22px}.header nav{flex:1;justify-content:flex-end;gap:23px;flex-wrap:wrap}.header nav a{display:block!important;font-size:.9rem;padding-block:7px}.editorial{padding-block:80px}.section-tint{background:#f0f7f7}.editorial-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:85px}.section-copy{max-width:650px;color:var(--text)}.section-copy h2{color:var(--ink)}.lead{font-family:Georgia,serif;font-size:1.55rem;line-height:1.45;color:var(--ink)}.source-link{font-size:.875rem}.audience-heading{display:grid;grid-template-columns:1fr 1.25fr;gap:85px}.audience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:25px}.audience-grid article{border-top:1px solid var(--line);padding-top:24px}.audience-grid h3{font-family:Georgia,serif;font-size:1.45rem;font-weight:400}.audience-grid p,.audience-note{color:var(--text)}.audience-note{border-left:2px solid var(--line);padding-left:20px;margin:35px 0 0;max-width:760px}.about-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:85px;align-items:center;border-bottom:1px solid var(--line)}.about-mark{background:var(--blue);border-radius:50%;padding:32px;max-width:350px}.about-mark img{mix-blend-mode:multiply}.cabinet{padding-top:80px}
@media(max-width:1100px){.header{justify-content:center}.header nav{flex-basis:100%;justify-content:center}.editorial-grid,.audience-heading,.about-grid{gap:40px}}
@media(max-width:650px){.header nav{gap:5px 18px;justify-content:flex-start}.header nav a{font-size:.875rem}.editorial{padding-block:48px}.editorial-grid,.audience-heading,.about-grid{grid-template-columns:1fr;gap:10px}.audience-grid{grid-template-columns:1fr;gap:18px;margin-top:10px}.audience-grid article{padding-top:18px}.audience-grid h3{margin-bottom:10px}.about-mark{max-width:220px;margin:0 auto 25px}.lead{font-size:1.35rem}.cabinet{padding-top:48px}}

.google-reviews{grid-column:1/-1;border-top:1px solid var(--line);padding-top:45px}.reviews-heading{display:flex;justify-content:space-between;gap:25px;align-items:center}.reviews-heading h3{font:400 2rem/1.25 Georgia,serif;margin:0}.reviews-heading .eyebrow{margin-bottom:12px}.review-rating{display:flex;flex-direction:column;gap:3px;min-width:145px}.review-rating strong{font:400 2.5rem/1.2 Georgia,serif}.review-rating strong span{font-size:1.1rem}.review-rating>span{color:#e6b422;letter-spacing:3px}.review-rating a{font-size:.875rem}.reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:32px}.reviews-grid figure{margin:0;background:var(--blue);padding:25px;display:flex;flex-direction:column;justify-content:space-between;gap:24px}.reviews-grid blockquote{margin:0;font:400 1.2rem/1.6 Georgia,serif}.reviews-grid figcaption{font-weight:600;font-size:.9rem}.reviews-grid figcaption span{display:block;font-weight:400;color:var(--text);font-size:.8rem;margin-top:6px}.reviews-bottom{margin-top:24px;display:flex;justify-content:space-between;gap:24px;align-items:start}.reviews-bottom p{font-size:.8rem;color:var(--muted);max-width:590px;margin:0}.reviews-bottom a{flex-shrink:0}@media(max-width:800px){.reviews-grid{grid-template-columns:1fr}.reviews-heading,.reviews-bottom{flex-direction:column;align-items:flex-start}.google-reviews{margin-top:30px}.reviews-heading h3{font-size:1.7rem}}

.training{margin:28px 0}.training h3{font:400 1.5rem/1.3 Georgia,serif;color:var(--ink);margin-bottom:18px}.training ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 24px;padding-left:20px;margin:0}.training li::marker{color:#286b6d}@media(max-width:650px){.training ul{grid-template-columns:1fr}}
.reviews-grid figure{border-radius:32px;padding:30px;border:1px solid #d3e6e5;box-shadow:0 6px 20px rgb(21 59 81 / 4%)}@media(max-width:650px){.reviews-grid figure{border-radius:26px;padding:25px}}

.reviews-complete{grid-template-columns:repeat(2,minmax(0,1fr))}.reviews-complete figure{gap:20px}.reviews-complete blockquote{flex:1}.reviews-complete blockquote p{margin:0}.review-stars{color:#e6b422;letter-spacing:3px;text-decoration:none}.reviews-complete figcaption a{text-decoration:none}.reviews-complete figcaption a:hover{text-decoration:underline}@media(max-width:800px){.reviews-complete{grid-template-columns:1fr}}

.reviews-track{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;padding:4px 2px 18px}.reviews-track figure{flex:0 0 calc((100% - 24px)/2);scroll-snap-align:start;min-width:0}.review-controls{display:flex;justify-content:flex-end;gap:12px;margin-top:16px}.review-controls button{width:48px;height:48px;border-radius:50%;border:1px solid var(--ink);color:var(--ink);background:white;font-size:1.5rem;cursor:pointer}.review-controls button:hover:not(:disabled){background:var(--blue)}.review-controls button:disabled{opacity:.35;cursor:default}.review-controls button:focus-visible,.reviews-track:focus-visible{outline:3px solid #14575b;outline-offset:4px}@media(max-width:800px){.reviews-track figure{flex-basis:100%}}

.approach-highlights{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding:0;margin:40px 0 0}.approach-highlights li{padding:25px;border-top:1px solid var(--line);font:400 1.35rem/1.4 Georgia,serif}.approach-highlights strong{font-weight:400}.section-copy strong em{color:var(--ink);font-weight:600}@media(max-width:650px){.approach-highlights{grid-template-columns:1fr;gap:0;margin-top:25px}.approach-highlights li{padding:20px 0}}

.audience-grid{gap:40px 30px}.audience-grid .audience-card{padding-top:0;border-top:0;min-width:0}.audience-illustration{height:235px;display:flex;align-items:center;justify-content:center;margin-bottom:24px;background:#fff;border-bottom:1px solid var(--line);padding:0 0 18px}.audience-illustration img{display:block;width:100%;height:100%;object-fit:contain}.audience-card h3{margin-bottom:12px}.audience-card p{margin-bottom:0}@media(max-width:1000px) and (min-width:651px){.audience-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.audience-grid{gap:36px}.audience-illustration{height:220px;margin-bottom:20px}.audience-grid .audience-card{padding-top:0}}

.audience-card h3{text-align:center;margin:0 0 18px}.audience-illustration{margin-bottom:20px}.audience-card p{text-align:left}
.approach-signature{font-size:1.3rem;line-height:1.45;font-weight:600;color:var(--ink);max-width:440px;margin:0 0 18px}@media(max-width:650px){.approach-signature{font-size:1.15rem}}

.consult-reasons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:28px}.consult-reasons article{background:white;border:1px solid var(--line);border-radius:18px;padding:26px}.consult-reasons h3{font:400 1.45rem/1.3 Georgia,serif;margin:0 0 12px}.consult-reasons p{margin:0;color:var(--text)}@media(max-width:900px){.consult-reasons{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.consult-reasons{grid-template-columns:1fr;gap:14px}.consult-reasons article{padding:22px}}
.prevention-note{margin:24px 0 32px;padding:28px 32px;border-left:3px solid #286b6d;background:white;border-radius:0 18px 18px 0}.prevention-note h3{font:400 1.6rem/1.3 Georgia,serif;margin:0 0 12px}.prevention-note p{margin:0;max-width:850px;color:var(--text)}@media(max-width:650px){.prevention-note{padding:22px}}

/* Rounded pale-blue appointment buttons */
.booking-actions .button{border-radius:999px;background:#dceeed;color:var(--ink);border:1px solid #b8d9d7;padding:17px 26px;box-shadow:0 3px 10px rgb(21 59 81 / 5%)}
.booking-actions .button:hover{background:#c5e1df;color:var(--ink)}
.booking-actions .button:focus-visible{outline:3px solid #286b6d;outline-offset:4px}


.approach-section{background:#fff}.approach-quote{font:italic 1.65rem/1.55 Georgia,serif;max-width:870px;margin:0 0 45px;color:#286b6d}.approach-principles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}.approach-principles article{border-top:1px solid var(--line);padding-top:24px}.approach-principles h3,.session-steps h3{font:400 1.4rem/1.35 Georgia,serif;margin:0 0 12px}.approach-principles p,.session-steps p{margin:0;color:var(--text)}.session-steps{list-style:none;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:24px;padding:0;margin:40px 0 0}.session-steps li{border-top:1px solid var(--line);padding-top:24px}.session-number{display:flex;width:46px;height:46px;border-radius:50%;align-items:center;justify-content:center;background:#dceeed;color:var(--ink);font:1.5rem Georgia,serif;margin-bottom:22px}@media(max-width:1000px){.approach-principles{grid-template-columns:repeat(2,minmax(0,1fr))}.session-steps{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:650px){.approach-quote{font-size:1.35rem;margin-bottom:30px}.approach-principles,.session-steps{grid-template-columns:1fr}.session-steps{gap:24px;margin-top:30px}.session-steps li{display:grid;grid-template-columns:46px 1fr;gap:0 18px}.session-number{grid-row:1/3;margin:0}.session-steps p{grid-column:2}}

.merged-approach> .wrap>h2{margin-bottom:45px}.approach-subtitle{font:400 clamp(1.8rem,2.5vw,2.5rem)/1.2 Georgia,serif;letter-spacing:-.03em;margin:0 0 25px}.approach-meeting{border-top:1px solid var(--line);margin-top:45px;padding-top:45px}.approach-meeting .approach-quote{margin-top:0}.merged-approach .approach-highlights{margin-bottom:0}@media(max-width:650px){.merged-approach> .wrap>h2{margin-bottom:30px}.approach-meeting{margin-top:30px;padding-top:30px}}

.approach-meeting .approach-quote,.approach-time{background:#fff;border:1px solid #dbeae9;border-radius:24px;padding:32px 36px;box-shadow:0 6px 22px rgba(20,87,91,.04)}.approach-meeting .approach-quote{max-width:none}.approach-time{margin:40px 0 0;text-align:center;font:400 1.4rem/1.6 Georgia,serif;color:var(--ink)}.approach-time strong{font-weight:400;font-size:1.65rem}@media(max-width:650px){.approach-meeting .approach-quote,.approach-time{padding:24px 22px;border-radius:20px}.approach-time{margin-top:30px;font-size:1.2rem}.approach-time strong{font-size:1.4rem}}

.approach-time{font:600 .78rem/1.65 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;letter-spacing:.16em;text-transform:uppercase}.approach-time strong{font:inherit}@media(max-width:650px){.approach-time{font-size:.74rem;letter-spacing:.12em}.approach-time strong{font:inherit}}

.consult-reasons .reason-icon{display:block;width:64px;height:64px;margin:16px 0 20px;color:var(--ink)}

.consult-reasons{gap:12px;margin-top:20px}.consult-reasons article{padding:16px 18px;border-radius:14px}.consult-reasons h3{font-size:1.25rem;margin-bottom:6px}.consult-reasons .reason-icon{width:42px;height:42px;margin:6px 0 10px}.consult-reasons p{font-size:.94rem;line-height:1.45}@media(max-width:650px){.consult-reasons{gap:10px}.consult-reasons article{padding:14px 16px}.consult-reasons .reason-icon{width:38px;height:38px;margin:5px 0 8px}}

.training ul{display:flex;flex-wrap:wrap;gap:9px;padding:0;list-style:none}.training li{background:#dceeed;color:var(--ink);border:1px solid var(--line);border-radius:999px;padding:8px 14px;font-size:.9rem;line-height:1.4;max-width:100%}@media(max-width:650px){.training ul{gap:8px}.training li{padding:7px 12px;font-size:.86rem}}

.hero-art img.portrait{height:270px;aspect-ratio:1;border-radius:50%;background:#fff;mix-blend-mode:normal;object-fit:cover;object-position:center 25%;border:10px solid #fff}@media(max-width:650px){.hero-art img.portrait{height:230px}}

.hero-art img.portrait{width:310px;height:auto;aspect-ratio:1;object-fit:contain;object-position:center;background:#fff}@media(max-width:650px){.hero-art img.portrait{width:260px;height:auto}}

.approach-time{font:italic 400 1.65rem/1.55 Georgia,serif;color:#286b6d;letter-spacing:normal;text-transform:none}.approach-time strong{font:inherit}@media(max-width:650px){.approach-time{font-size:1.35rem}.approach-time strong{font:inherit}}

.practical-map{margin-top:28px;border:1px solid var(--line);border-radius:20px;overflow:hidden;background:var(--blue)}.practical-map iframe{display:block;width:100%;height:330px;border:0}.contact-email{display:inline-block;margin-top:20px;overflow-wrap:anywhere}.practical-rates h3{font:400 1.6rem/1.3 Georgia,serif;margin:0 0 16px;color:var(--ink)}.practical-rates .consultation-price{font-size:1.15rem;color:var(--ink)}.consultation-price strong{font:400 2rem Georgia,serif}.practical-section .booking-actions{margin-top:0}@media(max-width:650px){.practical-map{margin-bottom:24px}.practical-map iframe{height:270px}}

.training-more{display:flex;gap:8px;margin-top:14px;align-items:center}.training-more>span[aria-hidden]{display:block;width:12px;height:12px;border-radius:50%;background:#dceeed;border:1px solid var(--line)}

.legal-page{max-width:850px}.legal-page h1{font-size:clamp(2.4rem,5vw,3.5rem)}.legal-page h2{font-size:1.7rem;margin-top:36px}.legal-status{background:var(--blue);border-radius:16px;padding:20px}.footer-inner{flex-wrap:wrap}

.hero-local-title{display:block;font:600 1.05rem/1.5 system-ui,sans-serif;letter-spacing:normal;margin-bottom:18px}

.training-more{margin-left:18px}.about-mark img{background:#fff;border-radius:50%;mix-blend-mode:normal;padding:10px;aspect-ratio:1;object-fit:contain}

@media(min-width:651px){.hero-art{position:relative;top:-30px}}@media(max-width:650px){.hero{row-gap:24px}}

.audience-grid .audience-card h3{width:fit-content;max-width:100%;margin:0 auto 18px;padding:8px 20px;border-radius:999px;background:var(--ink);color:#fff;font-size:1.2rem;line-height:1.35}

.about-identity{align-self:start}.about-identity h2{text-align:left;margin-bottom:28px}

.cabinet-photo{margin:28px 0 0;padding:14px;background:var(--blue);border:1px solid var(--line);border-radius:24px;max-width:430px}.cabinet-photo img{display:block;width:100%;height:auto;border-radius:14px}@media(max-width:650px){.cabinet-photo{margin:20px auto 28px;padding:12px}}

.hero-art img.butterfly-art{width:175px;height:auto;border-radius:0;mix-blend-mode:normal;background:transparent;margin:0 auto -8px}@media(max-width:650px){.hero-art img.butterfly-art{width:150px}}

.hero-visual{align-self:start;min-width:0;display:flex;flex-direction:column;align-items:center;gap:16px}.hero-visual>.butterfly-art{display:block;width:175px;height:auto;flex:none}.hero-visual>.hero-art{width:100%;position:static;top:auto}@media(min-width:651px){.hero:has(.hero-visual){align-items:start}}@media(max-width:650px){.hero-visual>.butterfly-art{width:150px}.hero-visual{gap:12px}}

.approach-butterfly{display:block;width:210px;max-width:100%;height:auto;margin:12px 0 0}@media(min-width:651px){.hero-visual{align-self:center}.hero-visual>.hero-art{position:relative;top:-30px}}@media(max-width:650px){.approach-butterfly{width:175px;margin:8px 0 24px}}

.hero-sea-background{background-image:linear-gradient(rgba(255,255,255,.84),rgba(255,255,255,.84)),url("paysage-mer.avif");background-size:cover;background-position:center;background-repeat:no-repeat}@media(max-width:650px){.hero-sea-background{background-position:center;background-image:linear-gradient(rgba(255,255,255,.88),rgba(255,255,255,.88)),url("paysage-mer.avif")}}

.hero-sea-background{background:#fff7ef}

.cream-section-background{background:#fff7ef}

.practical-section{row-gap:28px;align-items:start}.practical-introduction{grid-column:1/-1}.practical-introduction .cabinet-intro{max-width:780px;margin-bottom:0}.practical-map-column .practical-map{margin-top:0}.practical-section .contact-panel{border-top:0}.practical-section .contact-row:first-child{padding-top:0}.practical-section h3.contact-label{font:400 .77rem/1.65 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;letter-spacing:.12em;color:var(--muted);margin:0 0 16px}@media(max-width:650px){.practical-section{row-gap:18px}.practical-map-column .practical-map{margin-bottom:0}}

.about-identity .about-mark{max-width:300px;padding:28px}@media(max-width:650px){.about-grid{grid-template-columns:minmax(0,1fr)}.about-identity{width:100%;min-width:0}.about-identity .about-mark{width:200px;max-width:100%;padding:24px;margin-inline:auto}.about-identity .cabinet-photo{width:100%;max-width:430px;margin-inline:auto}}

.practical-section>.contact-panel{grid-column:1;grid-row:2;text-align:left}.practical-section>.practical-map-column{grid-column:2;grid-row:2}@media(max-width:650px){.practical-section>.contact-panel{grid-column:1;grid-row:auto}.practical-section>.practical-map-column{grid-column:1;grid-row:auto}}

.header{display:grid;grid-template-columns:auto 1fr auto;gap:18px 24px}.header>.brand{grid-column:2;grid-row:1;justify-self:center}.header-phone{grid-column:1;grid-row:1}.header-booking{grid-column:3;grid-row:1}.header>.header-pill{display:inline-flex;align-items:center;justify-content:center;padding:11px 18px;border-radius:999px;background:#dceeed;color:var(--ink);border:1px solid var(--line);font-size:.88rem;line-height:1.4;text-decoration:none;text-align:center}.header-pill:hover{background:#c5e1df}.header>nav{grid-column:1/-1;grid-row:2;justify-content:center;gap:12px 26px}.header>nav a{white-space:nowrap}@media(max-width:760px){.header{grid-template-columns:1fr 1fr;gap:14px 10px}.header>.brand{grid-column:1/-1;grid-row:1}.header-phone{grid-column:1;grid-row:2}.header-booking{grid-column:2;grid-row:2}.header>.header-pill{padding:10px 12px;font-size:.82rem}.header>nav{grid-row:3;justify-content:center;gap:4px 16px}.header>nav a{font-size:.82rem}}

.faq-section{padding-top:24px}.faq-list{display:grid;gap:12px;max-width:900px}.faq-list details{background:#e8f2f1;border:1px solid var(--line);border-radius:20px;overflow:hidden}.faq-list summary{position:relative;cursor:pointer;list-style:none;padding:20px 56px 20px 24px;color:var(--ink);font-weight:500;line-height:1.5}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary::after{content:"+";position:absolute;right:24px;top:18px;font-size:1.35rem;font-weight:400}.faq-list details[open] summary::after{content:"−"}.faq-list summary:focus-visible{outline:2px solid var(--ink);outline-offset:-4px;border-radius:18px}.faq-list details[open]{background:#f0f7f7}.faq-list details p{margin:0;padding:0 24px 22px;max-width:780px}.faq-list a{color:var(--ink);text-underline-offset:3px}@media(max-width:650px){.faq-list summary{padding:17px 46px 17px 18px}.faq-list summary::after{right:18px;top:15px}.faq-list details p{padding:0 18px 18px}}


.facade-photo{margin:24px 0 0;padding:14px;background:var(--blue);border:1px solid var(--line);border-radius:24px}.facade-photo img{display:block;width:100%;height:auto;border-radius:14px}@media(max-width:650px){.facade-photo{padding:12px;margin-top:20px}}


.facade-photo{max-width:320px;margin-left:auto;margin-right:auto}

.custom-access-map{padding:14px;background:var(--blue);border-radius:24px;border:1px solid var(--line)}.custom-access-map>img{display:block;width:100%;height:auto;border-radius:14px}.map-credit{font-size:.75rem;line-height:1.5;margin:12px 0}.custom-access-map>.button{display:flex;text-align:center;justify-content:center}

.map-consent{padding:24px;background:var(--blue);border-radius:24px}.map-consent h3{margin-top:0}.map-choices{display:flex;flex-wrap:wrap;gap:12px}.map-choices .button{flex:1;font:inherit;cursor:pointer}.map-consent [hidden]{display:none!important}.map-consent .practical-map:empty{display:none}.map-privacy{padding-top:20px;padding-bottom:60px}.map-privacy h2{font-size:1.8rem}.map-privacy p{max-width:850px;font-size:.9rem}.map-consent button,.map-privacy button{cursor:pointer;font-family:inherit}

/* Slightly rebalance the home page typography. */
.hero h1{font-size:clamp(2.76rem,4.05vw,4.28rem)}
.hero-copy>.eyebrow{font-size:.86rem}
.hero-local-title{font-size:1.16rem}
.hero-art .art-label{font-size:.84rem}
@media(max-width:650px){.hero h1{font-size:clamp(2.25rem,9.2vw,3.31rem)}.hero-copy>.eyebrow{font-size:.82rem}.hero-art .art-label{font-size:.78rem}}

/* Slightly enlarge the name in the header, keeping the subtitle size. */
.header>.brand{font-size:1.4rem}
.header>.brand small{font-size:.845rem}
@media(max-width:650px){.header>.brand{font-size:1.24rem}.header>.brand small{font-size:.7705rem}}

/* Copper coral accents. */
:root{--copper-coral:#c77e68;--copper-coral-hover:#d58f79;--coral-ink:#062326}
.header>.header-pill,.booking-actions .button{background:#dceeed;border-color:var(--copper-coral);color:var(--ink)}
.header>.header-pill:hover,.booking-actions .button:hover{background:#c5e1df;border-color:var(--copper-coral);color:var(--ink)}
.editorial h2::after,.practical-section h2::after,.faq-section h2::after{content:"";display:block;width:52px;height:3px;margin-top:16px;border-radius:3px;background:var(--copper-coral)}
.hero-address,.audience-note,.prevention-note{border-left-color:var(--copper-coral)}
.training li{border-color:var(--copper-coral)}
.header>nav a:hover,.text-link:hover,.contact-email:hover{text-decoration-color:var(--copper-coral);text-decoration-thickness:2px}

.hero-care-photo{width:min(100%,340px);height:auto;border-radius:20px;margin:0 0 26px;padding:9px;background:var(--blue);border:1px solid var(--line)}
@media(max-width:650px){.hero-care-photo{width:min(100%,300px);margin-bottom:24px}}

/* Center the home introduction and its photos on every screen size. */
.hero:has(.hero-visual){align-items:center}
.hero-copy{text-align:center;min-width:0}
.hero-copy .intro,.hero-care-photo{margin-inline:auto}
.hero-copy .booking-actions{align-items:center}
.hero-copy .hero-address{padding-left:0;border-left:0}
.hero-visual{align-self:center}
.hero-visual>.hero-art{position:static;top:auto}

/* Accueil ordinateur : texte et portrait sur une composition équilibrée. */
@media(min-width:901px){
.header.wrap{padding-block:20px 16px;row-gap:12px}
.hero.wrap{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:clamp(48px,6vw,88px);align-items:center;padding-block:52px 60px}
.hero-copy{min-width:0;max-width:620px}
.hero-copy>.eyebrow{margin-bottom:20px;font-size:.73rem;letter-spacing:.13em}
.hero-copy h1{font-size:clamp(2.9rem,4vw,3.8rem);line-height:1.1;margin-bottom:24px}
.hero-local-title{font-size:.95rem;margin-bottom:17px}
.hero-copy .approach-signature{max-width:520px;font-size:1.18rem;line-height:1.5;margin-bottom:14px}
.hero-copy .intro{max-width:520px;font-size:1.02rem;line-height:1.65;margin-bottom:16px}
.hero-copy>.intro+p{max-width:550px;font-size:.96rem;line-height:1.75;margin-bottom:25px;color:var(--text)}
.hero-copy .booking-actions{gap:10px;align-items:stretch;max-width:360px}
.hero-copy .booking-actions .button{justify-content:center;text-align:center;padding:13px 19px;font-size:.9rem;min-height:48px}
.hero-copy .hero-address{margin-top:23px;font-size:.86rem}
.hero-visual{width:100%;max-width:440px;justify-self:end;align-self:center}
.hero-visual>.hero-art{position:static;top:auto;min-height:500px;width:100%;padding:46px 28px 36px;gap:28px;border-radius:230px 230px 26px 26px}
.hero-art img.portrait{width:min(310px,100%);height:auto;flex-shrink:0}
.hero-art .art-label{font-size:.72rem;letter-spacing:.16em;text-align:center}
.hero-art .art-bottom{font-size:1.12rem;max-width:280px}
}


.hero-visual>.hero-art{border:1px solid var(--copper-coral)}
.hero-copy .booking-actions{margin-inline:auto;width:100%;max-width:360px;align-items:stretch}
.hero-copy .booking-actions .button{justify-content:center;text-align:center}


/* Les tarifs et la façade partagent une ligne sur ordinateur. */
@media(min-width:901px){
.practical-section>.contact-panel,.practical-section>.practical-map-column{display:contents}
.practical-section>.contact-panel>.contact-row:nth-child(1){grid-column:1;grid-row:2}
.practical-section>.contact-panel>.contact-row:nth-child(2){grid-column:1;grid-row:3;padding-top:0}
.practical-section>.contact-panel>.practical-rates{grid-column:1;grid-row:4;align-self:center;padding-block:24px}
.practical-section>.practical-map-column>.map-consent{grid-column:2;grid-row:2 / 4;align-self:start}
.practical-section>.practical-map-column>.facade-photo{grid-column:2;grid-row:4;align-self:center;width:100%;margin-block:0}
}


/* Aligner le cadre du portrait avec le début du texte sur ordinateur. */
@media(min-width:901px){.hero:has(.hero-visual){align-items:start}.hero>.hero-visual{align-self:start;margin-top:0}.hero-visual>.hero-art{position:static;top:auto}}


.hero-copy .booking-actions{display:flex;flex-direction:row;justify-content:center;align-items:stretch;max-width:none;gap:12px}.hero-copy .booking-actions .button{flex:1;min-width:0;justify-content:center;text-align:center;padding:13px 14px;font-size:.86rem;gap:0}.hero-copy .hero-address{width:100%;text-align:center;margin-inline:auto;padding-left:0;border-left:0}@media(max-width:650px){.hero-copy .booking-actions{flex-direction:column;max-width:360px}}

.hero-bottom-actions{grid-column:1/-1;width:100%;text-align:center}.hero-bottom-actions .booking-actions{display:grid;grid-template-columns:1fr 1fr;gap:24px;width:100%;max-width:none;align-items:stretch}.hero-bottom-actions .button{width:100%;justify-content:center;text-align:center;min-height:54px}.hero-bottom-actions .hero-address{margin:20px auto 0;padding:0;border:0;text-align:center}@media(min-width:901px){.hero>.hero-visual{margin-top:40px}.hero.wrap{row-gap:28px}}@media(max-width:650px){.hero-bottom-actions .booking-actions{gap:10px}.hero-bottom-actions .button{font-size:.8rem;padding:12px 10px;gap:0}}

@media(min-width:901px){.approach-highlights{grid-template-columns:1fr 1fr 1.2fr;gap:clamp(12px,2vw,24px)}.approach-highlights li{padding:25px 8px;text-align:center;font-size:clamp(1.05rem,1.65vw,1.35rem);white-space:nowrap}}


.approach-highlights li{text-align:center;font-size:1.5rem;line-height:1.4;white-space:normal}@media(min-width:651px){.approach-highlights{grid-template-columns:repeat(3,minmax(0,1fr))}.approach-highlights li{padding-inline:8px;font-size:clamp(1.4rem,2.2vw,1.75rem)}}

.care-scope{font-size:.92rem;line-height:1.65;max-width:900px;margin:26px 0;color:var(--text)}

/* Retour à la ligne du lieu uniquement sur mobile. */
@media(max-width:650px){.hero-copy>.eyebrow .hero-location{display:block}}

/* Garder le contenu centré sans élargir la page sur les petits mobiles. */
@media(max-width:650px){
  .hero{grid-template-columns:minmax(0,1fr)}
  .hero>*,.header>*,.hero-bottom-actions .booking-actions>*{min-width:0}
  .hero-copy{width:100%;text-align:center}
  .hero-copy>p,.hero-copy>h1{margin-inline:auto;max-width:100%;overflow-wrap:anywhere}
  .hero-copy .intro{max-width:min(100%,390px)}
  .hero-copy .approach-signature{max-width:min(100%,440px)}
  .hero-copy>.eyebrow,.hero-local-title,.hero-copy .approach-signature{text-wrap:balance}
  .hero-bottom-actions .booking-actions{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hero-bottom-actions .button{white-space:normal;overflow-wrap:anywhere}
  .header>.brand{max-width:100%}
  .header>.brand>img{flex-shrink:0}
  .header>.brand>span{min-width:0;overflow-wrap:anywhere}
}

/* Numéro sur la deuxième ligne du bouton d’appel de l’accueil sur mobile. */
.hero-bottom-actions .button .call-button-copy,.hero-bottom-actions .call-button-copy span{font:inherit}
@media(max-width:650px){
  .hero-bottom-actions .call-button-copy .call-separator{display:none}
  .hero-bottom-actions .call-button-copy .call-number{display:block;white-space:nowrap}
}

/* Retour à la ligne sous le portrait uniquement sur mobile. */
@media(max-width:650px){.hero-art .art-bottom .portrait-location{display:block}}
