:root{--navy:#1c343e;--navy-dark:#142b34;--sage:#4d6659;--sage-light:#eaf0e9;--sage-mid:#becbbb;--paper:#fcfbf8;--beige:#f3eee6;--white:#fff;--ink:#293b42;--muted:#54645e;--line:#d6ddd5;--input-line:#87968b;--error:#a32c2b;--serif:Georgia,'Times New Roman',serif;--sans:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;--radius:16px}
*{box-sizing:border-box}html{scroll-padding-top:105px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}h1,h2,h3,p,figure{margin:0}a{color:inherit;text-underline-offset:4px}a:hover{text-decoration-thickness:2px}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.7}img{max-width:100%;display:block}svg{flex-shrink:0}h1,h2,h3{font-family:var(--serif);font-weight:400;color:var(--navy)}h2{font-size:clamp(2rem,3.3vw,3.2rem);line-height:1.18;letter-spacing:-.035em}h2 em{color:var(--sage);font-weight:400}h3{font-size:1.65rem;line-height:1.24;letter-spacing:-.025em}strong{font-weight:600}::selection{background:#d7e3d6}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex='-1']:focus-visible{outline:3px solid var(--sage);outline-offset:4px}.container{width:min(1200px,calc(100% - 96px));margin-inline:auto}.section{padding-block:100px;scroll-margin-top:20px}.eyebrow{font-size:.75rem;font-weight:600;letter-spacing:.15em;color:var(--sage);line-height:1.6}.section-heading .eyebrow,.section-intro .eyebrow,.booking-copy>.eyebrow{margin-bottom:23px}.small{font-size:.875rem;color:var(--muted)}.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}[hidden]{display:none!important}.skip-link{position:fixed;top:-100px;left:16px;padding:12px 18px;background:var(--navy);color:white;z-index:100}.skip-link:focus{top:10px}.button{display:inline-flex;align-items:center;justify-content:center;gap:28px;min-height:52px;padding:14px 24px;background:var(--navy);color:var(--white);border:1px solid var(--navy);border-radius:7px;font-size:.9375rem;font-weight:500;text-decoration:none;line-height:1.45;text-align:center}.button:hover{background:var(--navy-dark);text-decoration:none}.button span[aria-hidden]{font-size:1.25rem;line-height:1}.button-small{min-height:46px;padding:11px 18px;font-size:.875rem;gap:18px}.button-outline{background:transparent;color:var(--navy);border-color:var(--sage)}.button-outline:hover{background:var(--sage-light)}.text-link{display:inline-flex;align-items:center;gap:14px;font-size:.875rem;line-height:1.5;text-decoration:none;border:0;background:none;padding:10px 0;min-height:44px;color:var(--navy)}.text-link:hover{text-decoration:underline}.icon{width:21px;height:21px}.site-header{position:sticky;top:0;z-index:20;background:rgba(252,251,248,.98);border-bottom:1px solid #e5e8e0}.header-inner{min-height:96px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;gap:14px;align-items:center;text-decoration:none;flex-shrink:0}.monogram{display:block;font-family:var(--serif);font-size:2.5rem;line-height:1;color:var(--navy);letter-spacing:-.08em}.monogram span{color:var(--sage);margin-left:2px}.brand-text{font-family:var(--serif);font-size:1.0625rem;line-height:1.5;color:var(--navy)}.brand-text small{display:block;font-family:var(--sans);font-size:.75rem;letter-spacing:.12em;color:var(--sage);font-weight:500}nav{display:flex;align-items:center;gap:29px}nav>a{font-size:.875rem;text-decoration:none;line-height:1.4;padding-block:13px}nav>a:hover{text-decoration:underline}.menu-toggle{background:none;border:1px solid var(--line);border-radius:6px;padding:10px 12px;color:var(--navy);font-size:.875rem;min-height:44px}.menu-toggle span{margin-left:10px;font-size:1.1rem}.hero{display:grid;grid-template-columns:1.08fr 1fr;gap:70px;align-items:center;padding-top:64px;padding-bottom:98px;min-height:710px}.hero-copy .eyebrow{font-size:.75rem;display:flex;align-items:center;gap:11px;letter-spacing:.115em}.short-line{width:28px;height:1px;background:var(--sage);flex-shrink:0}h1{font-size:clamp(3.75rem,6vw,5.35rem);line-height:.99;letter-spacing:-.055em;margin:27px 0}h1>span:first-child{display:block;font-size:1.2rem;line-height:1.4;letter-spacing:0;margin-bottom:15px}.sage-period{color:var(--sage)}.hero-tagline{font-family:var(--serif);font-size:1.75rem;line-height:1.3;letter-spacing:-.02em;color:var(--sage)}.hero-description{margin-top:18px;max-width:420px;color:var(--muted);font-size:1rem;line-height:1.75}.hero-actions{display:flex;align-items:center;gap:24px;margin-top:28px;flex-wrap:wrap}.availability{display:flex;align-items:center;gap:7px;flex-wrap:wrap;font-size:.8125rem;color:var(--muted);margin-top:26px}.availability .icon{margin-right:3px;width:17px;height:17px}.portrait-wrap{position:relative;max-width:468px;width:100%;justify-self:end;padding:0 0 24px 14px}.portrait-frame{border-radius:180px 180px 18px 18px;overflow:hidden;background:var(--beige);border:8px solid var(--beige)}.portrait{width:100%;height:auto;aspect-ratio:496/657;object-fit:cover;object-position:center 48%}.portrait-caption{display:flex;align-items:center;gap:15px;position:absolute;left:-21px;bottom:0;background:var(--white);padding:20px 25px;border:1px solid var(--line);border-radius:12px;box-shadow:0 8px 24px #1c343e08;max-width:calc(100% + 10px)}.caption-mark{display:grid;place-items:center;border:1px solid #d0dbce;color:var(--sage);width:40px;height:40px;border-radius:50%;font-size:1.75rem;font-weight:300}.portrait-caption strong{display:block;font-size:.875rem;color:var(--navy)}.portrait-caption small{display:block;font-size:.75rem;color:var(--muted);margin-top:3px;line-height:1.5}.about{border-top:1px solid var(--line);display:grid;grid-template-columns:.9fr 1.2fr;gap:85px}.role-note{margin-top:38px;border-top:1px solid var(--line);padding-top:26px;display:flex;gap:16px;max-width:345px}.role-note>span{font-size:1.5rem;color:var(--sage)}.role-note p{font-size:.875rem;line-height:1.65;color:var(--navy)}.role-note small{display:block;margin-top:10px;color:var(--sage);font-size:.8125rem}.biography{font-size:1rem;color:var(--muted);line-height:1.9}.biography p+p{margin-top:22px}.biography strong{color:var(--ink)}.services-section{background:var(--sage-light)}.section-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:50px;margin-bottom:44px}.section-intro>p{max-width:345px;color:var(--muted);font-size:.9375rem;line-height:1.75;margin-bottom:3px}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.service-card{padding:29px 29px 23px;background:var(--paper);border:1px solid #d6ded3;border-radius:12px;display:flex;flex-direction:column;align-items:flex-start}.service-number{font-family:var(--serif);font-size:1.0625rem;color:var(--sage);border-bottom:1px solid #b7c6b3;padding-bottom:7px;line-height:1.3;margin-bottom:25px;width:34px}.service-card h3{font-size:1.75rem;margin-bottom:17px;min-height:65px}.service-card p{font-size:.9375rem;color:var(--muted);line-height:1.75;margin-bottom:25px}.service-card>a{margin-top:auto;border-top:1px solid var(--line);padding-top:15px;display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;font-size:.8125rem;min-height:44px;text-decoration:none;color:var(--sage);font-weight:600}.service-card>a:hover{text-decoration:underline}.service-card>a>span[aria-hidden]{font-size:1.25rem}.booking-section{background:var(--beige)}.booking-layout{display:grid;grid-template-columns:.76fr 1.24fr;gap:78px;align-items:start}.booking-copy>p:not(.eyebrow){margin-top:24px;color:var(--muted);max-width:345px}.booking-copy .booking-warning{font-size:.9375rem;color:var(--navy);font-weight:500;border-top:1px solid #d8d8cc;padding-top:25px}.date-badge{display:flex;align-items:center;gap:17px;margin-top:31px;padding:20px;border-radius:10px;border:1px solid #c7d1c2;background:#e6ebdf;max-width:345px;font-size:.8125rem;color:var(--sage)}.date-badge .icon{width:28px;height:28px}.date-badge em{display:block;font-family:var(--serif);font-size:1.5rem;font-style:normal;line-height:1.3;margin-top:2px;color:var(--navy)}.form-card{background:var(--white);padding:35px;border:1px solid #dedfd7;border-radius:var(--radius)}.form-card h3{font-size:1.65rem}.form-intro{font-size:.8125rem;color:var(--muted);margin-top:8px;margin-bottom:25px}fieldset{border:0;padding:0;margin:0;min-width:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 20px}.field{min-width:0;display:flex;flex-direction:column}.field.full{grid-column:1/-1}.field label{display:block;font-size:.875rem;line-height:1.5;color:var(--navy);font-weight:500;margin-bottom:7px}.field label span{color:var(--muted);font-weight:400;font-size:.8125rem}input:not([type=checkbox]),select,textarea{display:block;width:100%;min-width:0;border:1px solid var(--input-line);color:var(--ink);border-radius:6px;padding:11px 12px;background:var(--white);font-size:1rem;line-height:1.4;min-height:48px}input[type=date]{appearance:none;-webkit-appearance:none;min-height:48px}input[type=date]::-webkit-date-and-time-value{text-align:left}select{padding-right:30px}textarea{resize:vertical;min-height:96px}::placeholder{color:#65726c;opacity:1;font-size:.875rem}.field small{font-size:.75rem;color:var(--muted);line-height:1.6;margin-top:6px}.field-error{display:block;color:var(--error);font-size:.8125rem;line-height:1.5}.field-error:not(:empty){margin-top:7px}[aria-invalid=true]{border-color:var(--error)!important;background:#fff8f7!important}.consent{display:grid;grid-template-columns:21px 1fr;gap:10px;align-items:start;margin-top:23px}.consent input{margin:4px 0 0;width:18px;height:18px;accent-color:var(--sage)}.consent label{font-size:.8125rem;line-height:1.75;color:var(--muted);cursor:pointer}.consent a{color:var(--navy)}.consent .field-error{grid-column:2}.form-error,.notice{padding:14px 16px;background:#fff3ed;border:1px solid #ddb8ab;border-radius:6px;font-size:.875rem;color:#84322b;margin-top:16px}.delivery-note{font-size:.8125rem;color:var(--muted);line-height:1.6;margin-top:17px}.submit-button{width:100%;justify-content:space-between;margin-top:17px}.honeypot{display:none}.form-result{padding-block:35px;text-align:center;min-height:370px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px}.result-symbol{display:grid;place-items:center;width:58px;height:58px;background:var(--sage-light);color:var(--sage);border-radius:50%;font-size:1.75rem}.form-result p{color:var(--muted);font-size:.9375rem;max-width:450px}.form-result .result-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.form-result pre{white-space:pre-wrap;overflow-wrap:anywhere;text-align:left;font-family:var(--sans);font-size:.8125rem;background:var(--paper);padding:16px;border:1px solid var(--line);border-radius:6px;max-width:100%;max-height:230px;overflow:auto}.form-result details{width:100%}.form-result summary{cursor:pointer;font-size:.875rem;color:var(--sage);padding:10px;min-height:44px}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:start}.contact-details{padding-top:5px}.address-block{margin-bottom:26px}.address-block .eyebrow{font-size:.75rem;letter-spacing:.12em}address{font-style:normal;font-size:1.125rem;line-height:1.8;margin:12px 0 6px}address strong{font-weight:500}.contact-line{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:18px 0;border-top:1px solid var(--line)}.contact-line small,.email-line small{display:block;color:var(--sage);font-size:.75rem;letter-spacing:.1em;margin-bottom:5px}.contact-line div>a{font-family:var(--serif);font-size:1.45rem;text-decoration:none;line-height:1.5}.contact-chip{font-size:.75rem;border:1px solid var(--line);border-radius:5px;padding:11px 14px;min-height:44px;display:inline-flex;align-items:center;text-decoration:none;color:var(--sage);white-space:nowrap}.contact-chip:hover{background:var(--sage-light)}.email-line{padding-block:18px 26px;border-top:1px solid var(--line)}.email-line>a{overflow-wrap:anywhere;font-size:1rem}.map-panel{background:var(--sage-light);border:1px solid var(--line);border-radius:12px;overflow:hidden;min-height:305px}.map-panel [data-map-placeholder]{display:flex;flex-direction:column;align-items:center;text-align:center;padding:27px 24px;gap:13px}.map-pin{width:32px;height:32px;color:var(--sage)}.map-panel strong{font-weight:500;font-size:.9375rem}.map-panel p{font-size:.75rem;color:var(--muted);line-height:1.7}.map-panel .button{font-size:.75rem}.map-panel iframe{width:100%;height:350px;display:block;border:0}.map-revoke{font-size:.75rem}.contact-card{background:#f7f8f4}.site-footer{background:var(--navy);color:#ebefea;padding:42px 0 30px}.footer-top,.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:25px}.footer-top{padding-bottom:30px;border-bottom:1px solid #4f6268}.footer-brand .monogram,.footer-brand .brand-text,.site-footer .text-link{color:#f5f6ef}.footer-brand .monogram span,.footer-brand small{color:#c1d1bc}.footer-brand .brand-text small{font-size:.75rem;letter-spacing:.07em}.footer-bottom{padding-top:22px;align-items:center}.footer-bottom p,.footer-bottom nav>a{font-size:.75rem;color:#d6ded7}.footer-bottom nav{gap:24px}.legal-data,.ai-note{font-size:.75rem;color:#c6d2cc;line-height:1.8;margin-top:11px}.ai-note{max-width:800px}.placeholder{background:#fbecb7;color:#4b3b10;padding:2px 5px;border-radius:3px;overflow-wrap:anywhere}.legal-main{max-width:840px;padding-block:70px 95px}.legal-main .eyebrow{margin-bottom:20px}.legal-main h1{font-size:clamp(2.75rem,6vw,4.2rem);line-height:1.1;margin:0 0 24px}.legal-main h2{font-family:var(--sans);font-size:1.3rem;letter-spacing:0;font-weight:600;margin:36px 0 13px;line-height:1.4}.legal-main p,.legal-main ul{font-size:1rem;line-height:1.85;color:var(--muted);margin-top:15px}.legal-main li+li{margin-top:10px}.legal-main .notice{margin-block:20px 30px}.legal-main table{border-collapse:collapse;width:100%;font-size:.875rem;margin-block:22px}.legal-main th,.legal-main td{text-align:left;padding:14px;border:1px solid var(--line);vertical-align:top;overflow-wrap:anywhere}.legal-main th{background:var(--sage-light);font-weight:600}.legal-main .updated{font-size:.875rem}.legal-main .table-scroll{overflow-x:auto}.legal-nav{margin-top:40px;display:flex;gap:25px;flex-wrap:wrap}
@media(min-width:1450px){.hero{gap:85px}.portrait-wrap{max-width:480px}}
@media(max-width:1100px){.container{width:calc(100% - 64px)}nav{gap:19px}.brand-text{font-size:1rem}.hero{gap:42px;padding-top:50px}.hero-actions{gap:14px}.hero-actions .text-link{font-size:.8125rem}.hero-actions .button{padding-inline:18px}.portrait-caption{padding:17px;left:-9px}.portrait-caption strong{font-size:.8125rem}.about{gap:50px}.booking-layout{gap:40px}.form-card{padding:27px}.contact-layout{gap:40px}.service-card{padding:25px}.service-card h3{font-size:1.5rem}.service-card>a{font-size:.75rem}}
@media(max-width:900px){.header-inner{min-height:83px;flex-wrap:wrap;padding-block:15px}.menu-toggle:not([hidden]){display:block}nav{width:100%;justify-content:center;flex-wrap:wrap;gap:12px 24px;padding-bottom:7px}.js-nav nav{display:none}.js-nav nav.is-open{display:flex}.js-nav nav>a{width:100%;text-align:center}.js-nav nav>a.button{width:100%}.hero{grid-template-columns:1fr 1fr;gap:35px;min-height:0;padding-bottom:75px}h1{font-size:3.8rem}.hero-copy .eyebrow{font-size:.75rem;letter-spacing:.08em}.short-line{display:none}.hero-tagline{font-size:1.45rem}.hero-description{font-size:.9375rem}.portrait-wrap{padding-left:0}.portrait-frame{border-width:5px}.portrait-caption{gap:10px;padding:12px;left:-15px}.caption-mark{display:none}.portrait-caption small{font-size:.75rem}.hero-actions{gap:6px}.availability{font-size:.75rem}.section{padding-block:75px}.about{grid-template-columns:1fr;gap:35px}.role-note{max-width:500px;margin-top:25px}.section-intro{align-items:flex-start;gap:25px}.section-intro>p{max-width:260px;font-size:.875rem}.services-grid{grid-template-columns:repeat(2,1fr)}.booking-layout{grid-template-columns:1fr;gap:35px}.booking-copy{max-width:650px}.booking-copy>p:not(.eyebrow){max-width:650px}.date-badge{max-width:365px}.booking-copy .booking-warning{padding-top:20px}.contact-layout{gap:28px}.contact-card{padding:24px}.contact-line{flex-wrap:wrap}.contact-chip{font-size:.75rem}.footer-bottom{align-items:flex-start;flex-direction:column;gap:8px}.footer-bottom nav{justify-content:flex-start;width:auto;padding:0}.footer-top .brand-text small{max-width:230px}.footer-top .text-link{white-space:nowrap}}
@media(max-width:650px){.container{width:calc(100% - 40px)}.header-inner{gap:12px}.brand-text{font-size:.9375rem}.brand-text small{font-size:.75rem}.brand{gap:10px}.monogram{font-size:2.1rem}.hero{grid-template-columns:1fr;gap:38px;padding-top:36px;padding-bottom:64px}.hero-copy .eyebrow{font-size:.75rem;letter-spacing:.13em}.hero h1{font-size:clamp(3.8rem,12vw,5rem);margin-top:23px;margin-bottom:23px}.hero h1>span:first-child{font-size:1.0625rem;margin-bottom:12px}.hero-tagline{font-size:1.65rem}.hero-description{max-width:390px;line-height:1.8}.hero-actions{gap:12px 20px;margin-top:24px}.hero-actions .button{padding-inline:18px}.hero-actions .text-link{font-size:.8125rem}.availability{margin-top:18px}.portrait-wrap{max-width:430px;justify-self:center;padding-inline:12px;padding-bottom:19px}.portrait-frame{border-radius:160px 160px 14px 14px}.portrait{aspect-ratio:496/585;object-position:50% 46%}.portrait-caption{left:0;padding:16px 18px;gap:13px;max-width:100%}.portrait-caption strong{font-size:.8125rem}.portrait-caption small{font-size:.75rem}.caption-mark{display:grid;width:32px;height:32px;font-size:1.4rem}.section{padding-block:60px}.about{gap:28px}.section-heading .eyebrow,.section-intro .eyebrow,.booking-copy>.eyebrow{margin-bottom:16px}h2{font-size:2.25rem}.biography{line-height:1.85}.role-note{margin-top:24px;padding-top:20px}.section-intro{flex-direction:column;gap:20px;margin-bottom:30px}.section-intro>p{max-width:100%;font-size:.9375rem}.services-grid{grid-template-columns:1fr;gap:14px}.service-card{padding:24px}.service-number{margin-bottom:20px}.service-card h3{min-height:0;font-size:1.6rem}.service-card h3 br{display:none}.service-card p{margin-bottom:20px}.service-card>a{font-size:.8125rem}.form-card{padding:25px 20px}.form-grid{grid-template-columns:1fr;gap:18px}.form-intro{margin-bottom:23px}.form-card h3{font-size:1.65rem}.booking-layout{gap:28px}.contact-layout{grid-template-columns:1fr;gap:32px}.contact-line{flex-wrap:nowrap}.contact-chip{font-size:.75rem}.map-panel p{font-size:.8125rem}.map-panel .button{font-size:.8125rem}.contact-card{padding:26px 20px}.footer-top{align-items:flex-start;flex-direction:column;gap:20px}.footer-top .brand-text small{font-size:.75rem}.footer-bottom nav{gap:22px;justify-content:flex-start;flex-wrap:wrap}.footer-bottom nav>a{font-size:.8125rem}.footer-bottom p{font-size:.8125rem}.legal-data,.ai-note{font-size:.75rem}.site-footer{padding-top:32px}.legal-main{padding-block:45px 70px}.legal-main h1{font-size:3rem}.legal-main table{font-size:.8125rem}.legal-main th,.legal-main td{padding:10px}.legal-main th{width:35%}}
@media(prefers-reduced-motion:no-preference){a.button,button.button{transition:background-color .15s ease}}
@media print{.site-header,.site-footer,form,.hero-actions,.menu-toggle,.map-panel,.map-revoke{display:none!important}body{background:white;color:black}.container{width:100%}.section{padding:25px 0}.hero{min-height:0;padding:25px 0}.portrait-wrap{max-width:240px}.booking-layout,.about{display:block}.services-grid{grid-template-columns:repeat(2,1fr)}a{color:black}.notice{border:1px solid black}.service-card{break-inside:avoid}}

.js-nav .menu-toggle{display:none}
@media(max-width:900px){.js-nav .menu-toggle:not([hidden]){display:block}}
.field small,.consent label,.form-intro,.delivery-note,.field-error,.service-card>a{font-size:.875rem}

.other-practices{margin-block:0 24px;padding-top:20px;border-top:1px solid var(--line)}.other-practices p{font-size:1rem;color:var(--ink)}.other-practices ul{padding-left:20px;margin:12px 0 0}.other-practices li{font-size:1rem;margin-top:8px;color:var(--muted)}.other-practices strong{color:var(--navy)}

.profile-updated{margin-top:8px}
/* Blue and antique rose edition, September 2026. */
:root{--navy:#20374e;--navy-dark:#152a3d;--sage:#875b64;--sage-light:#f2e9e8;--sage-mid:#c59a9e;--paper:#fbfaf8;--beige:#f3efed;--ink:#2c3c4b;--muted:#59636d;--line:#ddd9d7;--input-line:#9399a0;--radius:12px}
html{scroll-padding-top:110px}::selection{background:#e5cbcc}.site-header{background:rgba(251,250,248,.97);border-bottom:1px solid #e6e1de;backdrop-filter:blur(12px)}.header-inner{min-height:88px}.brand-text{font-size:1.1rem}.monogram{font-size:2.9rem}.brand-text small{font-size:.66rem;letter-spacing:.15em}.button{border-radius:4px;background:var(--navy);font-size:.875rem;min-height:52px;padding:15px 23px}.button-small{min-height:44px;padding:11px 18px}.button-outline{color:var(--navy);background:transparent}.button-outline:hover{background:var(--sage-light)}.text-link{font-size:.875rem}.eyebrow{font-size:.69rem;letter-spacing:.18em}.container{width:min(1180px,calc(100% - 96px))}.intro-section{background:linear-gradient(110deg,#fbfaf8 60%,#f6efed)}.hero{min-height:690px;grid-template-columns:1.1fr 1fr;gap:70px;padding-top:62px;padding-bottom:76px}.hero-copy .eyebrow{font-size:.69rem;letter-spacing:.2em}h1{font-size:clamp(4.2rem,7.4vw,6.6rem);letter-spacing:-.065em;line-height:.98;margin:30px 0 24px}h1>span:first-child{font-family:var(--sans);font-size:1.05rem;font-weight:400;letter-spacing:0;margin-bottom:15px}.hero-specialty{font-family:var(--serif);font-size:1.85rem;line-height:1.25;color:var(--muted);letter-spacing:-.02em}.hero-actions{margin-top:35px;gap:24px}.availability{margin-top:21px;font-size:.8rem}.portrait-wrap{max-width:435px;padding:0 0 28px;isolation:isolate}.portrait-wrap:before{content:'';position:absolute;width:89%;height:90%;border:1px solid #c9a5a8;border-radius:200px 200px 7px 7px;top:-18px;right:-18px;z-index:-1}.portrait-frame{border:0;border-radius:200px 200px 6px 6px;background:#e8ddda}.portrait{aspect-ratio:496/645;object-position:50% 50%}.portrait-caption{left:-40px;bottom:5px;border-radius:5px;border:0;border-left:3px solid #bf969d;padding:19px 22px;box-shadow:0 12px 40px #20374e0c;max-width:calc(100% + 20px)}.caption-mark{border-color:#dbc4c7;width:34px;height:34px;font-size:1.4rem}.portrait-caption small{margin-top:4px}.about{padding-block:58px 76px;grid-template-columns:.82fr 1.18fr;gap:90px;border-top:1px solid #d9d8d7}.section-heading .eyebrow{margin-bottom:20px}.about h2{font-size:2.8rem;line-height:1.07}.profile-updated{font-size:.78rem;color:var(--muted);margin-top:22px}.biography{font-size:.96rem;line-height:1.85}.biography p+p{margin-top:17px}.section{padding-block:85px}h2{font-size:clamp(2.4rem,3.6vw,3.35rem);letter-spacing:-.035em}h2 em{color:var(--sage)}.services-section{background:var(--navy);color:#f5eeeb}.services-section h2{color:#fff}.services-section h2 em{color:#dfb4b9}.services-section .eyebrow{color:#dfb4b9}.services-section .text-link{color:#eee6e5}.services-section .section-intro{margin-bottom:36px}.services-grid{gap:0;border-top:1px solid #506071;border-left:1px solid #506071}.service-card{background:transparent;border:0;border-right:1px solid #506071;border-bottom:1px solid #506071;border-radius:0;min-height:198px;padding:29px 27px;text-decoration:none;transition:background .2s}.service-card:hover{background:#2c4258;text-decoration:none}.service-card:focus-visible{outline:3px solid #e8c5ca;outline-offset:-6px}.service-card h3{color:#fff;font-size:1.65rem;font-weight:400;min-height:0;max-width:280px;margin:0 0 24px;line-height:1.24}.service-action{display:flex;align-items:center;justify-content:space-between;width:100%;margin-top:auto;color:#e4c3c7;font-size:.74rem;gap:12px}.service-arrow{width:32px;height:32px;border:1px solid #81909e;border-radius:50%;display:grid;place-items:center;font-size:1.2rem}.contact-section{background:var(--paper)}.contact-section .section-intro{margin-bottom:42px}.contact-layout{grid-template-columns:.85fr 1.15fr;gap:64px}.contact-details{padding-top:0}.practice-list{border-top:1px solid var(--line)}.practice{border-bottom:1px solid var(--line);display:flex;gap:17px;padding:25px 0}.practice h3{font-size:1.55rem}.practice p,.practice address{font-size:.9rem;color:var(--muted);margin:5px 0 0}.location-dot{border:1px solid #b1848c;width:14px;height:14px;border-radius:50%;margin-top:8px;flex-shrink:0;box-shadow:inset 0 0 0 4px var(--paper);background:#b1848c}.opening .location-dot{background:none}.status-pill{display:inline-block;padding:3px 10px;border-radius:3px;background:#eee1e1;color:#784d56;font-size:.67rem;font-weight:500;margin-bottom:11px}.opening .text-link{font-size:.78rem;margin-top:4px;padding-block:7px}.direct-contacts{margin-top:36px}.direct-contacts>.eyebrow{margin-bottom:17px}.contact-line{padding-block:16px}.contact-line small,.email-line small{font-size:.64rem;color:var(--muted)}.contact-line div>a{font-size:1.5rem}.contact-chip{font-size:.72rem;border-color:#cdc3c4;border-radius:3px}.email-line{padding-bottom:0}.email-line>a{font-size:.93rem}.request-panel{border:1px solid var(--line);border-radius:8px;background:white;overflow:hidden;scroll-margin-top:15px}.form-tabs{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line)}.form-tabs button{border:0;background:#f3f0ed;color:#56606a;min-height:59px;padding:15px 12px;font-size:.84rem;border-bottom:3px solid transparent}.form-tabs button[aria-selected=true]{background:white;color:var(--navy);border-bottom-color:var(--sage);font-weight:600}.form-tabs button:focus-visible{outline-offset:-6px}.form-card{border:0;border-radius:0;padding:31px;background:white}.form-card h3{font-size:1.65rem}.form-intro{font-size:.81rem;margin-bottom:24px}.form-grid{gap:17px 17px}.field label{font-size:.79rem}.field small{font-size:.74rem}.field-error{font-size:.78rem}.consent label{font-size:.74rem}.consent{margin-top:20px}.delivery-note{font-size:.77rem;padding:12px 14px;background:#f5f1ee;border-radius:3px}.field input,.field select,.field textarea{border-radius:4px;border-color:#a3a6ab;font-size:1rem}.field label span{font-size:.73rem}.form-result{min-height:450px}.form-result p{overflow-wrap:anywhere}.form-result .button{gap:10px}.site-footer{padding-block:39px 28px;background:var(--navy-dark)}.footer-brand small,.footer-brand .monogram span{color:#dfb4b9}.footer-top .brand-text{font-size:1.05rem}.footer-top{padding-bottom:23px}.footer-bottom{padding-top:15px}.legal-data,.ai-note{font-size:.73rem;color:#c2cbd4;max-width:850px}.legal-data{margin-top:21px}.footer-bottom p,.footer-bottom nav>a{color:#d3d9df}.legal-main h1{font-size:clamp(2.5rem,5vw,4.1rem);line-height:1.1}.legal-main .updated{color:var(--sage)}.legal-main h2{font-family:var(--serif);font-size:1.7rem;font-weight:400}.legal-main p{font-size:.95rem}.legal-main{padding-block:70px 90px}
@media(min-width:1450px){.hero{gap:95px}.portrait-wrap{max-width:435px}}
@media(max-width:1100px){.container{width:calc(100% - 64px)}.header-inner{gap:16px}nav{gap:20px}.brand-text{font-size:1rem}.hero{gap:40px;min-height:630px}.hero-actions{gap:12px}.hero-actions .text-link{font-size:.8rem}.portrait-caption{left:-18px;padding:17px 18px}.contact-layout{gap:35px;grid-template-columns:.85fr 1.15fr}.form-card{padding:25px}.about{gap:60px}.service-card{padding:26px 22px}.service-card h3{font-size:1.5rem}}
@media(max-width:900px){.header-inner{min-height:78px;padding-block:14px}.js-nav nav.is-open{padding-bottom:7px}.hero{min-height:0;padding-top:52px;padding-bottom:62px;gap:30px}.hero h1{font-size:4.7rem}.hero-specialty{font-size:1.55rem}.hero-actions{gap:6px;margin-top:25px}.portrait-wrap{margin-right:10px}.portrait-wrap:before{right:-12px;top:-12px}.portrait-caption{left:-16px;padding:13px 14px}.portrait-caption strong{font-size:.73rem}.portrait-caption small{font-size:.7rem}.portrait-caption .caption-mark{display:none}.about{padding-block:48px 58px;grid-template-columns:.8fr 1.2fr;gap:35px}.about h2{font-size:2.4rem}.biography{font-size:.9rem}.section{padding-block:65px}.services-grid{grid-template-columns:repeat(2,1fr)}.service-card{min-height:170px}.contact-layout{grid-template-columns:1fr 1.15fr;gap:25px}.contact-section .section-intro{gap:25px}.form-grid{grid-template-columns:1fr}.form-card{padding:23px}.contact-line{flex-wrap:wrap}.direct-contacts>.eyebrow{margin-bottom:14px}.contact-line{gap:8px}.contact-line div>a{font-size:1.35rem}.form-tabs button{font-size:.76rem;padding-inline:8px}.practice h3{font-size:1.4rem}.footer-bottom{gap:2px}.footer-top{align-items:center}}
@media(max-width:650px){.container{width:calc(100% - 40px)}.header-inner{min-height:76px;padding-block:14px;gap:10px}.brand{gap:11px}.monogram{font-size:2.55rem}.brand-text{font-size:.94rem}.brand-text small{font-size:.6rem;letter-spacing:.12em}.menu-toggle{padding:9px 11px;font-size:.78rem}.menu-toggle span{margin-left:7px}.hero{grid-template-columns:1fr;padding-top:35px;padding-bottom:45px;gap:37px}.hero h1{font-size:clamp(4.2rem,15vw,5.65rem);margin:22px 0 19px}.hero h1>span:first-child{font-size:.95rem;margin-bottom:12px}.hero-copy .eyebrow{font-size:.63rem;letter-spacing:.18em}.hero .short-line{display:block;width:22px}.hero-specialty{font-size:1.55rem}.hero-actions{margin-top:25px;gap:15px}.hero-actions .button{font-size:.8rem;padding-inline:17px;gap:15px}.hero-actions .text-link{font-size:.75rem;gap:8px}.availability{font-size:.75rem;margin-top:17px}.portrait-wrap{max-width:370px;width:calc(100% - 20px);margin:0 0 0 4px;padding:0 0 23px}.portrait-frame{border-radius:170px 170px 4px 4px}.portrait{aspect-ratio:496/530;object-position:50% 50%}.portrait-caption{left:-13px;bottom:2px;padding:15px 17px;max-width:calc(100% + 5px)}.portrait-caption strong{font-size:.76rem}.portrait-caption small{font-size:.7rem}.portrait-caption .caption-mark{display:grid;width:28px;height:28px}.portrait-wrap:before{right:-12px;top:-11px;border-radius:170px 170px 4px 4px}.about{grid-template-columns:1fr;gap:28px;padding-block:37px 48px}.about h2 br{display:none}.about h2{font-size:2.25rem}.about h2 br:after{content:' '}.section-heading .eyebrow{margin-bottom:14px}.profile-updated{margin-top:12px;font-size:.72rem}.biography{font-size:.91rem;line-height:1.85}.biography p+p{margin-top:15px}.section{padding-block:49px}h2{font-size:2.4rem}.section-intro{margin-bottom:27px}.services-section .section-intro{gap:10px;margin-bottom:24px}.services-section .section-intro .text-link{font-size:.78rem}.services-grid{grid-template-columns:1fr}.service-card{min-height:127px;padding:22px}.service-card h3{font-size:1.5rem;margin-bottom:20px;max-width:100%}.service-action{font-size:.72rem}.service-arrow{height:29px;width:29px}.contact-section .section-intro{gap:19px;margin-bottom:29px}.contact-section .section-intro>p{font-size:.86rem}.contact-layout{grid-template-columns:1fr;gap:33px}.practice{padding-block:22px}.practice h3{font-size:1.5rem}.direct-contacts{margin-top:29px}.contact-line{flex-wrap:nowrap}.contact-chip{font-size:.73rem}.contact-line div>a{font-size:1.5rem}.email-line>a{font-size:.9rem}.form-tabs button{font-size:.8rem;min-height:56px}.form-card{padding:27px 20px}.form-grid{gap:18px}.form-intro{font-size:.79rem}.field label{font-size:.82rem}.consent label{font-size:.77rem}.delivery-note{font-size:.77rem}.field small{font-size:.75rem}.form-result .button{width:100%}.result-actions{width:100%}.site-footer{padding-top:30px}.footer-top{align-items:flex-start;gap:14px}.footer-top .brand-text small{font-size:.61rem;max-width:210px}.footer-bottom nav{gap:20px}.footer-bottom p,.footer-bottom nav>a{font-size:.71rem}.legal-data,.ai-note{font-size:.71rem}.legal-data{margin-top:15px}.legal-main{padding-top:42px}.legal-main h1{font-size:2.7rem}.legal-main h2{font-size:1.5rem}.legal-main p{font-size:.91rem}.legal-main~.site-footer{margin-top:0}}
@media(max-width:370px){.container{width:calc(100% - 32px)}.brand-text{font-size:.84rem}.monogram{font-size:2.3rem}.menu-toggle span{display:none}.hero h1{font-size:4.2rem}.hero-actions{gap:6px 17px}.hero-actions .button{width:100%;justify-content:space-between}.hero-actions .text-link{min-height:44px}.portrait-caption .caption-mark{display:none}.contact-chip{padding-inline:10px}.form-card{padding-inline:17px}.form-tabs button{font-size:.75rem}}
@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}.button,.service-card,.contact-chip{transition:background .2s,color .2s}}
@media print{.intro-section,.services-section,.contact-section{background:white;color:black}.services-section h2,.service-card h3{color:black}.service-card{border-color:#bbb}.request-panel{display:none}.contact-layout{display:block}}

/* Descriptions and consent text supplied by the user. */
.services-section .service-card{min-height:315px}
.services-section .service-card h3{min-height:66px;margin-bottom:15px}
.services-section .service-description{color:#dbe2e9;font-size:.9rem;line-height:1.75;margin:0 0 24px}
.consent-box{padding:16px;border:1px solid var(--line);background:#fbf8f7;border-radius:5px;margin-top:16px}
.consent-box label{font-weight:600;color:var(--ink);line-height:1.7}
.consent-box input{width:20px;height:20px;margin-top:3px}
@media(max-width:650px){.services-section .service-card{min-height:0;padding:25px 22px}.services-section .service-card h3{min-height:0;margin-bottom:14px}.services-section .service-description{font-size:.89rem;margin-bottom:23px}.consent-box{padding:14px;gap:11px}.consent-box label{font-size:.78rem}}
