/* Evolution of the original site: retain its shapes and editorial structure. */
.benefit-overview{display:grid;grid-template-columns:1fr 1fr;gap:44px;padding:36px 40px;background:#fff;border:1px solid var(--line);border-radius:28px}
.benefit-overview p{color:var(--muted);font-size:1rem}.benefit-overview>div+div{border-left:1px solid var(--line);padding-left:38px}
.evidence-sources{padding:18px 0;border-bottom:0}.evidence-sources summary{font-size:.875rem;color:var(--blue-dark);font-weight:500}
.evidence-sources .source-link{display:block;margin-top:12px}.evidence-inline .evidence-sources{padding-bottom:0}
.hypnosis-editorial{max-width:950px;margin-bottom:55px}.hypnosis-editorial article{padding:42px 0;border-top:1px solid var(--line);scroll-margin-top:120px}
.hypnosis-editorial article .eyebrow{color:var(--accent);margin-bottom:18px}.hypnosis-editorial h2{font-size:clamp(1.8rem,3vw,2.4rem);max-width:780px}
.hypnosis-editorial p{color:var(--muted);max-width:850px}.hypnosis-editorial p.small{font-size:.875rem;border-left:2px solid var(--line);padding-left:16px}
@media(max-width:620px){.benefit-overview{grid-template-columns:1fr;gap:24px;padding:26px}.benefit-overview>div+div{border-left:0;border-top:1px solid var(--line);padding-left:0;padding-top:24px}.hypnosis-editorial article{padding:30px 0}}
:root{--ink:#18344b;--muted:#536474;--paper:#fffefa;--line:#d8e3eb;--blue:#285d89;--blue-dark:#1c4467;--accent:#a7482a;--amber:#efaf7d;--soft:#edf4f8}
.header{background:rgba(255,254,250,.97)}
.brand strong{font-size:1.2rem;letter-spacing:-.04em}.brand small{font-size:.75rem;color:var(--muted)}
nav{gap:22px}nav>a{font-size:.875rem}.eyebrow,.category{font-size:.8125rem}.hero-sign,.practical span,.personal-statement>span,.small,.footer-top>div>a:not(.brand),.footer-top h2,.footer-bottom{font-size:.875rem}
.hero{grid-template-columns:minmax(0,1fr) 270px;gap:80px;padding-top:52px;padding-bottom:50px}
.hero h1{font-size:clamp(2.7rem,4.4vw,4.25rem);letter-spacing:-.05em}.hero .lead{max-width:620px}.hero h1 em{font-size:1em}
.hero-image{height:auto;width:240px;margin:0;justify-self:center;align-self:center}
.hero-image img{height:250px;border-radius:64px 22px 38px 22px;object-position:center 28%}
.hero-image:before{inset:8px -12px 72px 12px;border-radius:64px 22px 38px 22px;background:#efb88f;transform:rotate(4deg)}
.hero-image figcaption{position:relative;inset:auto;padding:17px 0 0;background:transparent;backdrop-filter:none;font-size:1.15rem;letter-spacing:-.02em}
.hero-image figcaption .portrait-greeting{font-size:.75rem}.hero-image figcaption span{font-size:.8125rem}
.practical{background:var(--blue-dark)}.practical-grid{padding:22px 0}.practical span+span{border-color:#6589a7}
.service{background:#f6d8c1;border:1px solid #efc4a4}.service .category{color:#793921}.service p{color:#564439}
.service:nth-child(2){background:#e6eff8;border-color:#cadced}.service.dark{background:var(--ink);border-color:var(--ink)}
.service.dark .category{color:#f3bd92}.service,.price-card,.contact-card{transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease}
.service:hover{transform:translateY(-4px);box-shadow:0 12px 30px #18344b0c}.service:hover .text-link{text-decoration-thickness:2px}
.approach{background:var(--blue)}.approach .eyebrow{color:#ffd9b7}.approach p:not(.eyebrow){color:#f1f6fa}
.personal-statement,.closing,.price-card.accent,.tinted{background:#f6d8c1}.statement em{color:#8a3d25}
.personal-statement .eyebrow,.closing .eyebrow,.price-card.accent:first-child .eyebrow{color:#793921}
.closing p:not(.eyebrow),.price-card.accent p:not(.price):not(.eyebrow){color:#564439}
.price-card{background:#e6eff8}.price-card:first-child .button{background:#f6d8c1;border-color:#f6d8c1}.price-card:first-child .button:hover{background:#efbd97}
.price-card:first-child p:not(.price):not(.eyebrow),.price-card:first-child .eyebrow,.price-card:first-child li{color:#f0f5fa}
.three-grid .panel:nth-child(2){border-color:var(--accent)}.three-grid .panel:nth-child(3){border-color:#3e766c}
.bio-portrait{max-width:320px}.bio-portrait img{max-height:350px}.note{background:var(--soft)}
.button:hover{box-shadow:0 7px 18px #285d8918}.button.secondary:hover{color:var(--blue-dark)}
.text-link:hover{text-decoration-thickness:2px}.research-teaser{padding-top:75px;padding-bottom:75px}
.research-summary{display:grid;grid-template-columns:230px minmax(0,1fr);gap:46px;padding:36px 40px;border:1px solid var(--line);border-radius:28px;background:#fff}
.research-stat{border-right:1px solid var(--line);padding-right:30px;display:flex;flex-direction:column;justify-content:center}
.research-stat strong{font-size:5rem;font-weight:500;color:var(--blue);line-height:1;letter-spacing:-.07em;font-variant-numeric:tabular-nums}
.research-stat span{font-size:.9375rem;color:var(--muted);line-height:1.55;margin-top:18px;max-width:180px}
.research-summary-copy h3{font-size:1.45rem}.research-summary-copy p{font-size:1rem;color:var(--muted)}
.research-summary-copy>.text-link{display:block;color:var(--blue-dark)}
.source-link{display:inline-block;font-size:.8125rem;line-height:1.6;color:var(--blue-dark);margin-top:18px;text-decoration-color:#9ab4ca}
.source-link:hover{text-decoration-color:var(--blue-dark)}
.evidence-limit{font-size:.9375rem!important;line-height:1.65;border-left:3px solid #d59a73;padding-left:16px;color:var(--muted)}
.evidence-inline{padding:28px 32px;margin:25px 0 35px;border-radius:22px;background:#edf4f8;border:1px solid #d8e3eb}
.evidence-inline .eyebrow{color:var(--blue-dark);margin-bottom:12px}.evidence-inline h3{font-size:1.45rem}.evidence-inline p:not(.eyebrow){font-size:1rem;color:var(--muted)}
.evidence-inline .text-link{display:block;margin-top:12px}.evidence-inline.alliance{max-width:870px;margin:0 auto;background:#fbede2;border-color:#f1d7c2}
.research-nav{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:38px;padding:0}
.research-nav a{padding:10px 16px;border:1px solid var(--line);border-radius:30px;font-size:.875rem;text-decoration:none;background:#fff;transition:background .2s,color .2s}
.research-nav a:hover{background:var(--blue);color:#fff;border-color:var(--blue)}
.research-article{display:grid;grid-template-columns:230px minmax(0,1fr);gap:60px;border-top:1px solid var(--line);padding:48px 0;scroll-margin-top:120px}
.research-number strong{display:block;font-size:3.85rem;line-height:1.15;letter-spacing:-.065em;font-weight:500;color:var(--blue);font-variant-numeric:tabular-nums}
.research-number strong>span{display:inline;font-size:2rem;color:var(--accent)}
.research-number>span{display:block;margin-top:12px;font-size:1rem;line-height:1.6;color:var(--ink)}
.research-number small{display:block;color:var(--muted);font-size:.8125rem;line-height:1.6;margin-top:16px;max-width:210px}
.research-article .eyebrow{color:var(--accent);margin-bottom:15px}.research-article h2{font-size:2.1rem;letter-spacing:-.04em}
.research-article p{color:var(--muted);font-size:1rem}.research-article details{margin-top:18px;padding:16px 0}.research-article summary{font-size:.9375rem}
.research-note{margin-top:25px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
:focus-visible{outline-color:var(--accent)}
html.motion-ready .reveal{transition:opacity .5s ease,transform .5s ease}
@media(min-width:1500px){.hero{padding-top:64px;padding-bottom:60px}.hero-image{height:auto}}
@media(max-width:1100px){nav{gap:14px}nav>a{font-size:.875rem}.hero{grid-template-columns:minmax(0,1fr) 240px;gap:38px}.hero h1{font-size:3.35rem}.hero-image{height:auto;width:220px}.hero-image img{height:235px}}
@media(max-width:850px){.hero{grid-template-columns:minmax(0,1fr) 220px;gap:30px}.hero h1{font-size:2.85rem}.hero-image{height:auto;width:210px}.actions{flex-direction:row}.research-summary{grid-template-columns:175px minmax(0,1fr);gap:28px;padding:30px}.research-stat{padding-right:20px}.research-stat strong{font-size:4.3rem}.research-article{grid-template-columns:175px minmax(0,1fr);gap:35px}.research-number strong{font-size:3.3rem}nav>a{font-size:1rem}}
@media(max-width:620px){.hero{display:flex;gap:26px;padding-top:35px;padding-bottom:35px}.hero h1{font-size:clamp(2.5rem,9.7vw,3.3rem)}.hero-image{height:auto;width:190px;align-self:center;margin:0 0 8px}.hero-image img{height:190px;border-radius:45px 20px 30px 20px}.hero-image:before{inset:6px -9px 70px 9px;border-radius:45px 20px 30px 20px}.hero-image figcaption{padding:15px 0 0;font-size:1.1rem}.hero-image figcaption .portrait-greeting{font-size:.6875rem}.hero-image figcaption span{font-size:.8125rem}.hero .lead{font-size:1rem}.actions .button{font-size:.875rem;padding:13px 16px}.practical span{font-size:.875rem;grid-template-columns:130px minmax(0,1fr)}.practical strong{font-size:.875rem}.research-teaser{padding-top:56px;padding-bottom:56px}.research-summary{grid-template-columns:1fr;gap:24px;padding:26px}.research-stat{border-right:0;border-bottom:1px solid var(--line);padding:0 0 22px;flex-direction:row;gap:24px;align-items:center;justify-content:flex-start}.research-stat strong{font-size:4.5rem}.research-stat span{margin:0;max-width:none}.evidence-inline{padding:24px;margin-top:22px}.research-nav{gap:8px;margin-bottom:25px}.research-nav a{font-size:.875rem;padding:9px 13px}.research-article{grid-template-columns:1fr;gap:25px;padding:32px 0}.research-number{padding-bottom:20px;border-bottom:1px solid var(--line)}.research-number strong{font-size:3.4rem}.research-number>span{margin-top:8px}.research-number small{max-width:none;margin-top:10px}.research-article h2{font-size:1.85rem}.bio-portrait{max-width:230px;margin:auto}.bio-portrait img{max-height:260px}.footer-bottom{font-size:.8125rem}}
@media(prefers-reduced-motion:reduce){html.motion-ready .reveal{opacity:1;transform:none;transition:none}.hero-copy,.hero-image{animation:none}}
.breadcrumb{display:flex;flex-wrap:wrap;gap:10px;padding-top:28px;font-size:.875rem;color:var(--muted)}.breadcrumb a{color:var(--blue-dark)}
.breadcrumb+.page-intro{padding-top:35px}.topic-practical{display:flex;align-items:center;justify-content:space-between;gap:28px;background:var(--soft);border:1px solid var(--line);padding:32px 38px;border-radius:24px}.topic-practical h2{font-size:1.6rem}.topic-practical p{color:var(--muted)}.topic-practical .button{flex-shrink:0}
.related-topics h2{font-size:1.5rem}.topic-links{margin-bottom:25px}.faq-directory{max-width:900px}.faq-group{margin-bottom:48px}.faq-group h2{font-size:1.8rem}.faq-group summary{font-size:1rem}.faq-group details p{font-size:1rem;color:var(--muted);max-width:760px}.related-topics+.note{margin-bottom:50px}
@media(max-width:620px){.topic-practical{flex-direction:column;align-items:flex-start;padding:26px}.breadcrumb{padding-top:22px}.faq-group{margin-bottom:32px}}
.email-card{background:#fff;border:1px solid var(--line)}.email-card .small a{color:var(--muted);overflow-wrap:anywhere}.alternative-contact{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin-top:24px;padding-top:18px;border-top:1px solid var(--line);font-size:.875rem;color:var(--muted)}.alternative-contact a{color:var(--muted);text-underline-offset:3px}.alternative-contact a:hover{color:var(--blue-dark)}
.route-prendre-rendez-vous .two-grid>.contact-card:first-child{background:var(--soft);border:1px solid #c6d9e8}.route-prendre-rendez-vous .two-grid>.contact-card:first-child .button{box-shadow:0 6px 18px #285d8920}
.header .brand{flex-shrink:0}.signature-lockup{display:flex;flex-direction:column;align-items:center;width:250px;gap:5px}.signature-crop{position:relative;display:block;width:250px;height:68px;overflow:hidden}.signature-crop img{position:absolute;display:block;width:250px;height:125px;max-width:none;top:-25px;left:0}.header .signature-lockup small{font-size:.75rem;letter-spacing:.09em;color:var(--ink);font-weight:500;line-height:1.3;white-space:nowrap}.header-inner{padding-top:13px;padding-bottom:13px}
@media(max-width:1100px){.signature-lockup{width:215px}.signature-crop{width:215px;height:58px}.signature-crop img{width:215px;height:107.5px;top:-21.5px}.header .signature-lockup small{letter-spacing:.025em}}
@media(max-width:620px){.signature-lockup{width:205px;gap:4px}.signature-crop{width:205px;height:55px}.signature-crop img{width:205px;height:102.5px;top:-20.5px}.header-inner{padding-top:10px;padding-bottom:10px}}
/* The complete signature is displayed in its natural ratio, without clipping. */
.header .signature-lockup{gap:9px}.header .signature-crop{width:100%;height:auto;overflow:visible}.header .signature-crop img{position:static;width:100%;height:auto;max-width:100%;transform:none}.header .signature-lockup small{margin:0}
.home-cabinet{display:grid;grid-template-columns:300px minmax(0,1fr);align-items:center;gap:42px;background:var(--soft);padding:30px;border-radius:24px;margin-bottom:65px}.home-cabinet figure{margin:0}.home-cabinet img{display:block;width:100%;height:auto;border-radius:16px}.home-cabinet h2{font-size:1.85rem}.home-cabinet p:not(.eyebrow){color:var(--muted)}
.cabinet-photos{display:grid;grid-template-columns:1.3fr 1fr;gap:28px;align-items:center;margin-bottom:35px}.cabinet-photos figure{margin:0;padding:28px;background:var(--soft);border:1px solid var(--line);border-radius:24px;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:350px}.cabinet-photos img{display:block;width:322px;max-width:100%;height:auto;border-radius:14px}.cabinet-photos .hallway-photo img{width:158px}.cabinet-photos figcaption{font-size:.875rem;color:var(--muted);margin-top:16px;text-align:center}
@media(max-width:620px){.home-cabinet{grid-template-columns:1fr;gap:24px;padding:24px;margin-bottom:40px}.home-cabinet figure{max-width:300px}.home-cabinet h2{font-size:1.6rem}.cabinet-photos{grid-template-columns:1fr;gap:18px}.cabinet-photos figure{min-height:0;padding:24px}.cabinet-photos .hallway-photo img{width:158px}}
.google-review-link{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:30px 36px;border:1px solid var(--line);border-radius:24px;background:#fff}.google-review-link h2{font-size:1.75rem;margin-bottom:0}.google-review-link .eyebrow{margin-bottom:12px}.google-review-link .button{flex-shrink:0}@media(max-width:620px){.google-review-link{flex-direction:column;align-items:flex-start;padding:26px}.google-review-link h2{font-size:1.55rem}}
.review-section{padding:28px 32px;border:1px solid var(--line);border-radius:24px;background:#fff}.review-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:20px}.review-heading h2{font-size:1.75rem;margin-bottom:0}.review-heading .eyebrow{margin-bottom:10px}.review-heading>a{font-size:.875rem;flex-shrink:0}.compact-reviews{display:grid;grid-template-columns:1fr 1fr;gap:18px}.review-card{margin:0;background:var(--soft);border:1px solid var(--line);border-radius:18px;padding:22px}.review-card blockquote{margin:0}.review-card p{font-size:1rem;line-height:1.65;margin:0 0 16px;color:var(--ink)}.review-card figcaption{font-size:.875rem;color:var(--muted);font-weight:600}.review-provenance{font-size:.875rem;color:var(--muted);margin:14px 0 0}
@media(max-width:620px){.review-section{padding:24px}.review-heading{flex-direction:column;align-items:flex-start;gap:14px}.review-heading h2{font-size:1.55rem}.compact-reviews{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;padding-bottom:10px}.review-card{flex:0 0 95%;scroll-snap-align:start}.review-provenance{line-height:1.6}}
.review-stars{color:var(--accent);font-size:1rem;letter-spacing:.12em;margin-bottom:12px}.review-card details{padding:0;margin-bottom:16px;border:0}.review-card summary{font-size:.875rem;color:var(--blue-dark)}.review-card details p{margin-top:12px}

/* Keep the mobile reading rhythm compact and preserve complete service cards. */
@media(max-width:620px){
  .header{position:relative}
  .service-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:18px}
  .service-grid>.service,.service-grid>.service:nth-child(2),.service-grid>.service.dark{min-height:0;height:auto;padding:26px;gap:0;grid-column:auto}
  .service-grid>.service h3{font-size:clamp(1.65rem,7.5vw,2.15rem);line-height:1.15}
  .service-grid>.service .category{margin-bottom:18px}
  .service-grid>.service .text-link{margin-top:20px;padding-top:0}
  .approach h2{font-size:clamp(1.9rem,8vw,2.35rem);line-height:1.12;letter-spacing:-.025em;word-spacing:normal;text-align:left;margin-bottom:0}
  .approach .split{gap:24px}
  .review-heading{gap:16px}
}
