:root{--white:#fff;--ink:#171717;--rose:#98554f;--text:#505050;--line:#e5e5e5;--serif:'Playfair Display',Georgia,serif;--sans:'Poppins',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--white);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}a{color:inherit}a:focus-visible,button:focus-visible{outline:3px solid var(--rose);outline-offset:6px}.skip{position:absolute;left:16px;top:-100px;padding:12px;background:white;z-index:5}.skip:focus{top:10px}.header{max-width:1440px;margin:auto;padding:32px 6%;border-bottom:1px solid var(--line)}.brand{display:inline-flex;flex-direction:column;text-decoration:none;font-family:var(--serif);font-size:32px;line-height:1.15;letter-spacing:-1px}.brand span{margin-top:10px;font:500 12px/1.5 var(--sans);text-transform:uppercase;letter-spacing:1.5px}.hero{max-width:1440px;margin:auto;display:grid;grid-template-columns:minmax(0,1.27fr) minmax(0,1fr);align-items:center;gap:6%;padding:64px 6% 80px}.hero-copy{padding:10px 0}h1{font:400 clamp(38px,3.45vw,53px)/1.16 var(--serif);letter-spacing:-1.35px;margin:0;text-wrap:pretty}h1 span{color:var(--rose)}.hero-copy p{max-width:585px;margin:28px 0 32px;font-size:16px;line-height:1.85;color:var(--text)}.actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap}.button{min-height:54px;font-size:14px;font-weight:500;border:0;cursor:default;display:inline-flex;align-items:center;justify-content:center;gap:24px}.primary{background:var(--rose);color:white;padding:17px 23px;border-radius:2px}.primary span{font:22px/1 var(--sans)}.secondary{background:transparent;padding:8px 0;position:relative}.secondary:after{content:'';position:absolute;bottom:9px;height:1px;width:100%;background:var(--ink)}.portrait{margin:0;background:#171717;overflow:hidden;aspect-ratio:4/5}.portrait img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
@media(min-width:1600px){.hero{padding-top:80px;padding-bottom:100px}}
@media(max-width:900px){.hero{gap:5%;padding:44px 5% 60px;grid-template-columns:1.2fr 1fr}h1{font-size:38px}.header{padding:26px 5%}.actions{gap:12px 22px}.hero-copy p{line-height:1.75}.portrait{aspect-ratio:3/4}}
@media(max-width:680px){.header{padding:22px 24px}.brand{font-size:29px}.brand span{font-size:12px;letter-spacing:.65px;margin-top:8px}.hero{display:flex;flex-direction:column;gap:34px;padding:34px 24px 40px;align-items:stretch}.hero-copy{padding:0}h1{font-size:clamp(34px,8.75vw,46px);line-height:1.18;letter-spacing:-.85px}.hero-copy p{font-size:16px;line-height:1.75;margin:22px 0 26px}.actions{gap:13px;align-items:stretch;flex-direction:column}.button{font-size:14px;min-height:52px}.primary{width:100%;justify-content:space-between;padding:16px 22px}.secondary{align-self:center;min-height:45px}.portrait{aspect-ratio:4/5;max-width:480px;width:100%;align-self:center}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.portrait img{object-position:center 67%}
.about{max-width:1440px;margin:auto;padding:0 6% 96px;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);column-gap:8%;row-gap:36px}.about-heading{grid-column:1/-1;border-top:1px solid var(--line);padding-top:72px}.about h2{font:500 14px/1.5 var(--sans);text-transform:uppercase;letter-spacing:2px;margin:0 0 24px}.about-heading>p{font:400 clamp(36px,4vw,54px)/1.2 var(--serif);letter-spacing:-.7px;margin:0}.about-photo{margin:0;align-self:stretch;overflow:hidden;position:relative;min-height:460px}.about-photo img{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 57%}.about-copy>p{font-size:16px;line-height:1.85;color:var(--text);margin:0 0 22px}.about-copy>p:last-child{margin-bottom:0}.about-close{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:8%;border-top:1px solid var(--line);padding-top:32px;margin-top:4px;align-items:center}.about-close>p{font-size:16px;line-height:1.85;color:var(--text);margin:0}.about-close>.about-statement{font:400 clamp(27px,2.4vw,35px)/1.35 var(--serif);letter-spacing:-.3px;color:var(--ink);margin:0}.about-statement span{color:var(--rose)}
@media(max-width:900px){.about{padding:0 5% 64px;column-gap:6%}.about-heading{padding-top:56px}}
@media(max-width:680px){.about{grid-template-columns:minmax(0,1fr);padding:48px 24px 56px;gap:28px}.about-heading{grid-column:auto;padding-top:0;border-top:0}.about h2{margin-bottom:20px}.about-heading>p{font-size:38px}.about-photo{max-width:480px;width:100%;justify-self:center;aspect-ratio:4/5;min-height:0}.about-close{grid-template-columns:minmax(0,1fr);gap:20px;padding-top:26px;margin-top:0}.about-close>.about-statement{font-size:29px}}
a.button{text-decoration:none;cursor:pointer}a.primary:hover{background:#814740}section[id]{scroll-margin-top:24px}.services{max-width:1440px;margin:auto;padding:0 6% 96px}.services-intro{border-top:1px solid var(--line);padding-top:80px;max-width:100%}.services h2{font:500 14px/1.5 var(--sans);text-transform:uppercase;letter-spacing:2px;margin:0 0 28px}.services-lead{font:400 clamp(32px,3.2vw,46px)/1.25 var(--serif);letter-spacing:-.6px;max-width:800px;margin:0}.services-intro>p:last-child{font-size:16px;line-height:1.85;color:var(--text);max-width:790px;margin:24px 0 0}.session-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:64px;row-gap:42px;margin-top:48px}.session{border-top:1px solid var(--line);padding-top:28px;display:flex;flex-direction:column;align-items:flex-start}.session h3{font:400 clamp(26px,2.5vw,34px)/1.25 var(--serif);margin:0 0 12px}.session p{font-size:16px;line-height:1.85;color:var(--text);margin:0 0 24px}.session .session-price{color:var(--rose);font-weight:500;margin-bottom:18px}.session-price span{padding:0 10px;color:#777}.session-cta{margin-top:auto;max-width:100%;border:1px solid var(--rose);border-radius:3px;background:#fff;color:var(--rose);padding:13px 20px;min-height:50px;font-size:14px;font-weight:500;line-height:1.6;text-align:center}.accompaniment{background:var(--rose);color:#fff;margin-top:64px;padding:48px;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:8%}.accompaniment h3{font:400 clamp(32px,3.1vw,44px)/1.2 var(--serif);letter-spacing:-.5px;margin:0 0 26px}.accompaniment p{font-size:16px;line-height:1.85;margin:0 0 22px}.accompaniment-heading p{font:400 23px/1.5 var(--serif)}.accompaniment strong{font-weight:600}.accompaniment-cta{background:#fff;color:var(--ink);padding:17px 22px;line-height:1.6;text-align:left;max-width:100%;border-radius:2px;margin-top:6px}.accompaniment-cta:focus-visible{outline-color:#fff}
@media(max-width:900px){.services{padding:0 5% 64px}.services-intro{padding-top:56px}.session-grid{column-gap:32px}.accompaniment{padding:32px;gap:6%}}
@media(max-width:680px){.services{padding:0 24px 56px}.services-intro{padding-top:48px}.services h2{margin-bottom:22px}.services-lead{font-size:32px;line-height:1.3}.session-grid{grid-template-columns:minmax(0,1fr);gap:28px;margin-top:32px}.session{padding-top:24px}.session h3{font-size:28px}.session p{margin-bottom:16px}.session-cta{font-size:14px}.accompaniment{grid-template-columns:minmax(0,1fr);gap:10px;margin:40px -24px -56px;padding:40px 24px}.accompaniment h3{font-size:34px}.accompaniment-heading p{font-size:23px}.accompaniment-cta{width:100%;justify-content:center}}
.method{max-width:1440px;margin:auto;padding:88px 6% 96px}.method-intro{max-width:810px}.method h2{font:500 14px/1.5 var(--sans);letter-spacing:2px;text-transform:uppercase;margin:0 0 28px}.method-lead{font:400 clamp(32px,3.2vw,46px)/1.25 var(--serif);letter-spacing:-.6px;margin:0;text-wrap:pretty}.method-lead span{color:var(--rose)}.method-subtitle{font-size:16px;line-height:1.8;color:var(--text);margin:24px 0 0}.method-name{font:400 clamp(68px,7vw,100px)/1.1 var(--serif);letter-spacing:.015em;margin:48px 0 32px}.method-name span{color:var(--rose);padding:0 .12em}.method-movements{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}.method-movements article{border-top:1px solid var(--rose);padding-top:24px}.method-movements h4{font:500 18px/1.5 var(--sans);letter-spacing:1px;margin:0 0 14px}.method-movements p,.method-close>p:first-child{font-size:16px;line-height:1.85;color:var(--text);margin:0}.method-close{margin-top:52px;padding-top:36px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:start}.method-statement{font:400 29px/1.4 var(--serif);margin:0}.method-statement span{color:var(--rose)}
@media(max-width:900px){.method{padding:64px 5%}.method-movements{gap:24px}.method-movements h4{font-size:16px}}
@media(max-width:680px){.method{padding:48px 24px 56px}.method h2{margin-bottom:22px}.method-lead{font-size:32px;line-height:1.3}.method-name{font-size:72px;margin:34px 0 26px}.method-movements{grid-template-columns:minmax(0,1fr);gap:28px}.method-movements article{padding-top:20px}.method-movements h4{font-size:18px;margin-bottom:10px}.method-close{grid-template-columns:minmax(0,1fr);gap:26px;margin-top:32px;padding-top:28px}.method-statement{font-size:28px}}
.audience{background:#171717;color:#fff}.audience-inner{max-width:1440px;margin:auto;padding:88px 6% 96px;display:grid;grid-template-columns:1fr 1fr;gap:10%}.audience h2{font:500 14px/1.5 var(--sans);text-transform:uppercase;letter-spacing:2px;margin:0 0 28px;color:#fff}.audience-lead{font:400 clamp(28px,2.5vw,38px)/1.35 var(--serif);letter-spacing:-.4px;margin:0;text-wrap:pretty}.audience-lead span{color:#c5aa7c}.audience-label{font:500 14px/1.5 var(--sans);margin:0 0 16px;color:#c5aa7c}.audience ul{list-style:none;padding:0;margin:0}.audience li{padding:17px 0;border-bottom:1px solid #3e3e3e;font-size:16px;line-height:1.7}.audience li:first-child{padding-top:0}.audience li:last-child{border-bottom:0;padding-bottom:0}
@media(max-width:900px){.audience-inner{padding:64px 5%;gap:7%}}
@media(max-width:680px){.audience-inner{grid-template-columns:minmax(0,1fr);padding:48px 24px 56px;gap:34px}.audience h2{margin-bottom:22px}.audience-lead{font-size:30px;line-height:1.38}.audience li{padding:16px 0}}

.companies{background:var(--ink);color:white}.companies-inner{max-width:1440px;margin:auto;padding:80px 6% 88px;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:8%}.companies h2{font:400 clamp(38px,4vw,56px)/1.15 var(--serif);letter-spacing:-.6px;margin:0}.companies-copy>p{font-size:16px;line-height:1.85;margin:0 0 22px;color:#e5e5e5}.companies-copy>.companies-lead{font:400 26px/1.4 var(--serif);color:white;margin-bottom:26px}.companies-cta{background:transparent;color:white;border:1px solid #B29562;border-radius:3px;padding:15px 22px;line-height:1.6;max-width:100%;margin-top:8px}.companies-cta:focus-visible{outline-color:#B29562}
@media(max-width:900px){.companies-inner{padding:64px 5%;gap:6%}}
@media(max-width:680px){.session-cta{width:100%}.companies-inner{grid-template-columns:minmax(0,1fr);padding:48px 24px 56px;gap:28px}.companies h2{font-size:40px}.companies h2 br{display:none}.companies h2 br:after{content:" "}.companies-copy>.companies-lead{font-size:25px}.companies-cta{width:100%}}
.header{display:flex;align-items:center;justify-content:space-between;gap:32px;flex-wrap:wrap}.desktop-nav{display:flex;align-items:center;gap:22px;flex-wrap:wrap}.desktop-nav a{font-size:14px;text-decoration:none;min-height:44px;display:flex;align-items:center}.desktop-nav a:hover,.footer a:hover{color:var(--rose)}.mobile-menu{display:none}.contact{max-width:1440px;margin:auto;padding:88px 6% 80px}.contact h2{font:400 clamp(40px,4.5vw,64px)/1.2 var(--serif);letter-spacing:-.8px;margin:0 0 44px}.contact-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8%}.contact-option{display:flex;flex-direction:column;align-items:flex-start}.contact-option p{font-size:16px;line-height:1.85;color:var(--text);margin:0 0 28px;max-width:510px}.contact-option .button,.contact-option .session-cta{margin-top:auto;max-width:100%;text-align:center;line-height:1.6}.contact-message{border-top:1px solid var(--line);padding-top:28px;margin:40px 0 0;font-size:16px;line-height:1.85;color:var(--text)}.footer{border-top:1px solid var(--line);padding:42px 6% 26px;max-width:1440px;margin:auto}.footer-main{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}.footer-links{display:flex;gap:28px}.footer-links a{font-size:14px;text-decoration:none;min-height:44px;display:flex;align-items:center}.footer-legal{display:flex;gap:24px;flex-wrap:wrap;margin-top:30px}.footer-legal button{font:400 13px/1.6 var(--sans);background:none;border:0;padding:10px 0;color:var(--text);text-align:left}
@media(max-width:1150px){.desktop-nav{display:none}.mobile-menu{display:block;position:relative}.mobile-menu summary{cursor:pointer;font-size:14px;min-height:44px;padding:12px 0;list-style:none}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu summary:after{content:'+';margin-left:12px;font-size:18px}.mobile-menu[open] summary:after{content:'−'}.mobile-menu nav{position:absolute;right:0;top:100%;width:230px;padding:14px 24px;background:#fff;border:1px solid var(--line);z-index:10;box-shadow:0 12px 28px #0000000d}.mobile-menu nav a{display:block;text-decoration:none;font-size:14px;padding:13px 0;min-height:44px}.mobile-menu nav a:hover{color:var(--rose)}summary:focus-visible{outline:3px solid var(--rose);outline-offset:5px}}
@media(max-width:900px){.contact{padding:64px 5%}.footer{padding:36px 5% 22px}}
@media(max-width:680px){.header{gap:8px 20px}.header .brand{max-width:calc(100% - 68px)}.header .brand span{font-size:11px;letter-spacing:.5px}.contact{padding:48px 24px 56px}.contact h2{font-size:42px;margin-bottom:30px}.contact-options{grid-template-columns:minmax(0,1fr);gap:32px}.contact-option+.contact-option{padding-top:30px;border-top:1px solid var(--line)}.contact-option p{margin-bottom:22px}.contact-option .button,.contact-option .session-cta{width:100%;justify-content:center}.contact-message{margin-top:32px;padding-top:24px}.footer{padding:32px 24px 20px}.footer .brand{font-size:29px}.footer .brand span{letter-spacing:.6px}.footer-main{align-items:flex-start;flex-direction:column;gap:20px}.footer-legal{gap:8px 24px;margin-top:16px}}

a.session-cta{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;cursor:pointer}a.session-cta:hover{background:var(--rose);color:#fff}.accompaniment-cta:hover{background:#f3f3f3}.companies-cta:hover{background:#B29562;color:var(--ink)}.contact-direct{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:22px}.contact-direct .session-cta{margin-top:0}.contact-email{font-size:14px;text-underline-offset:5px;overflow-wrap:anywhere}.footer-links{flex-wrap:wrap;gap:8px 24px}@media(max-width:680px){.contact-direct{gap:20px}.contact-email{max-width:100%}}

.footer-legal>a{font:400 13px/1.6 var(--sans);padding:10px 0;color:var(--text);text-underline-offset:4px}

.professional-details{margin-top:14px;color:var(--text);font-size:13px;line-height:1.8}.professional-details summary{cursor:pointer;padding:10px 0;min-height:44px}.professional-details p{margin:10px 0;overflow-wrap:anywhere}.professional-details a{text-underline-offset:4px}

.legal-policies{max-width:1440px;margin:auto;padding:0 6% 48px}.legal-policy{border-top:1px solid var(--line);scroll-margin-top:20px}.legal-policy>summary{cursor:pointer;padding:22px 0;font:400 25px/1.35 var(--serif);min-height:48px}.legal-body{max-width:800px;margin:0 auto;padding:8px 0 32px;font-size:16px;line-height:1.8;color:var(--text);overflow-wrap:anywhere}.legal-body h3{font:500 21px/1.4 var(--serif);color:var(--ink);margin:30px 0 12px}.legal-body p{margin:0 0 18px}.legal-body li{margin-bottom:12px}.legal-body ul{padding-left:22px}.legal-body a{text-underline-offset:4px}.legal-body .legal-date{font-size:14px}.legal-review{border-left:3px solid var(--rose);padding:12px 16px;color:var(--ink)}@media(max-width:680px){.legal-policies{padding:0 24px 32px}.legal-policy>summary{font-size:24px}.legal-body h3{font-size:21px}}

/* Legal typography aligned with the provider identification, as requested. */
.legal-policy>summary{font:400 13px/1.8 var(--sans);padding:14px 0}.legal-body{font-size:13px;line-height:1.8}.legal-body h3{font:600 13px/1.8 var(--sans);margin:24px 0 10px}.legal-body .legal-date{font-size:13px}

/* Dedicated legal band beneath the main footer. */
.legal-policies{max-width:none;margin:28px 0 0;padding:26px 6% 34px;background:#000;color:#fff}.legal-inner{max-width:1267px;margin:0 auto}.legal-policies .professional-details{margin:0;border-top:0;color:#e6e6e6}.legal-policies .legal-policy{border-top:1px solid #333}.legal-policies details>summary{font:400 13px/1.8 var(--sans);color:#fff;padding:14px 0;min-height:48px;cursor:pointer}.legal-policies .professional-details p,.legal-policies .legal-body,.legal-policies .legal-body .legal-date{font-size:13px;line-height:1.8;color:#e6e6e6}.legal-policies .professional-details p{padding:8px 0 22px;margin:0}.legal-policies .legal-body{margin:0;max-width:800px}.legal-policies .legal-body h3{font:600 13px/1.8 var(--sans);color:#fff}.legal-policies a{color:#fff}.legal-policies a:hover{text-decoration-thickness:2px}.legal-policies .legal-review{color:#fff;border-left-color:#B29562}.legal-policies :focus-visible{outline-color:#B29562}@media(max-width:680px){.legal-policies{margin-top:20px;padding:20px 24px 28px}.legal-policies details>summary{font-size:13px}}
