html{--header-height:89px;scroll-padding-top:calc(var(--header-height) + 24px)}:root{--action:#5a4943;--action-hover:#6a5750;--green:#526b46;--line:#bac8b2}.header{position:sticky;top:0}.header-inner{height:88px}.wordmark{color:var(--green)}.wordmark span{color:var(--ink)}.header-inner,.mobile-nav,.price{border-color:var(--line)}.text-link{border-color:var(--green)}[data-section]{text-decoration-color:var(--green)}.small-rule{background:var(--green)}:is(.hero-description,.section-aside,.education-copy){isolation:isolate;position:relative}:is(.hero-description,.section-aside,.education-copy):before{content:"";z-index:-1;border-left:3px solid var(--green);pointer-events:none;border-radius:3px 24px;position:absolute;inset:-12px -16px}.section-aside:before{border-left:0;border-right:3px solid var(--green);border-radius:24px 3px}.contact{position:relative}.contact:before{content:"";background:var(--green);pointer-events:none;border-radius:3px;width:64px;height:4px;position:absolute;top:32px;left:calc(50% - 32px)}.step-number{position:relative}.step-number:before{content:"";border:1px solid var(--green);pointer-events:none;border-radius:50%;width:38px;height:38px;position:absolute;top:-1px;left:-9px}.faq-symbol:before,.faq-symbol:after{background:var(--green)}:is(a,button,summary):focus-visible{outline-color:var(--green)}.button,.mobile-contact-bar a:first-child{background:var(--action);border-color:var(--action);border-radius:3px 18px}.button:hover,.mobile-contact-bar a:first-child:hover{background:var(--action-hover);border-color:var(--action-hover)}.desktop-nav{gap:clamp(16px,2vw,30px)}[data-section]{text-underline-offset:7px;text-decoration-thickness:1px}[data-section][aria-current=location]{color:var(--accent);text-decoration-line:underline}.header-book{background:var(--action);min-height:46px;color:var(--white);white-space:nowrap;border:0;border-radius:3px 16px;align-items:center;padding:12px 22px;display:flex}.header-book:hover{background:var(--action-hover);color:var(--white)}.header-book[aria-current=location]{color:var(--white);box-shadow:inset 0 0 0 2px var(--green);text-decoration:none}.film-heading{gap:32px}.film-heading>.eyebrow{flex-shrink:0}.film-heading h2{white-space:normal;text-wrap:balance;min-width:0;max-width:900px;font-size:clamp(46px,5.2vw,74px)}.film-play{border-radius:50%;width:88px;height:88px;inset:50% auto auto 50%;transform:translate(-50%,-50%)}.film-play .play-circle{backdrop-filter:blur(5px);background:#3e393754;width:76px;height:76px;transition:background .2s,transform .2s;box-shadow:0 3px 24px #27221b20}.film-play:hover .play-circle,.film-play:focus-visible .play-circle{background:#3e393785;transform:scale(1.06)}.film-play:active .play-circle{transform:scale(.96)}.film-section{padding-inline:max(6vw,24px)}.film-section :is(.film-heading,.film-biography){margin-inline:0;padding-inline:0}.film-section .film-frame{aspect-ratio:16/9;width:100%;margin-inline:auto}@media (width>=700px){.film-section .film-frame{max-width:calc((100svh - var(--header-height) - 48px) * 16 / 9)}}.film-frame iframe{z-index:2;background:#000;border:0;width:100%;height:100%;position:absolute;inset:0}.film-section .film-frame:after{content:none}@media (width<=699px){.film-section{padding-inline:24px}}@media (width<=374px){.film-section{padding-inline:20px}}@media (width<=699px){.film-play{width:72px;height:72px}.film-play .play-circle{width:60px;height:60px}}@media (prefers-reduced-motion:reduce){.film-play .play-circle{transition:none}.film-play:hover .play-circle,.film-play:focus-visible .play-circle,.film-play:active .play-circle{transform:none}}.film-biography{border-top:1px solid var(--line);grid-template-columns:1fr 1.2fr;gap:6vw;margin-top:24px;padding:42px 1.5vw 20px;display:grid}.film-biography>p:last-child{max-width:630px;color:var(--muted);font-size:15px;line-height:1.9}.service-caption{align-items:center;gap:16px;min-width:0;margin-bottom:16px;display:flex}.service-caption .service-number{color:var(--accent);text-shadow:none;font-size:20px;line-height:1;position:static}.service-caption-rule{background:var(--green);opacity:.65;flex:1;height:1px}.service-marker{font-family:var(--serif);white-space:nowrap;font-size:27px;font-style:italic;font-weight:400;line-height:1.2}.header-book,.contact-action,.mobile-contact-bar a{transition:background .2s,border-color .2s,transform .2s cubic-bezier(.2,.7,.2,1)}@media (hover:hover) and (pointer:fine){.button:hover,.header-book:hover,.contact-action:hover,.mobile-contact-bar a:hover{transform:scale(1.045)}.button:active,.header-book:active,.contact-action:active,.mobile-contact-bar a:active{transform:scale(.98)}}@media (prefers-reduced-motion:reduce){.button,.header-book,.contact-action,.mobile-contact-bar a{transition-duration:0s}.button:hover,.header-book:hover,.contact-action:hover,.mobile-contact-bar a:hover{transform:none}}.education-copy{max-width:420px;margin-top:24px;display:flow-root}.education-description{color:var(--muted);font-size:12px;line-height:1.9}.education-footnote{font-family:var(--sans);color:var(--muted);margin-top:15px;font-size:11px;font-style:italic;line-height:1.6}.reviews{background:var(--sage)}.reviews-heading{grid-template-columns:.8fr 1.2fr;align-items:end;gap:5vw;margin-bottom:54px;display:grid}.reviews-heading h2{max-width:760px}.reviews-grid{grid-template-columns:1fr;align-items:stretch;gap:clamp(24px,2.5vw,38px);max-width:1240px;margin-inline:auto;display:grid}.review-card{background:var(--white);min-width:0}.review-photo{aspect-ratio:4/5;background:#d9d8d3;overflow:hidden}.service-links{flex-wrap:wrap;gap:0 24px;display:flex}.review-photo-square{aspect-ratio:1}.review-photo img{object-fit:cover;height:100%}.session-photo-frame{overflow:hidden}.session-image .session-photo-frame img{aspect-ratio:3/2}.review-copy{padding:clamp(24px,2.5vw,38px);position:relative}.review-mark{height:40px;color:var(--green);font-family:var(--serif);margin-bottom:8px;font-size:64px;line-height:1;display:block}.review-text{gap:16px;display:grid}.review-text p{color:var(--muted);font-size:12px;line-height:1.9}.review-author{border-bottom:1px solid var(--line);font-family:var(--serif);justify-content:space-between;align-items:center;gap:16px;padding:20px clamp(24px,2.5vw,38px);font-size:24px;line-height:1.2;display:flex}.review-author:hover span:first-child{color:var(--green)}.review-author span:last-child{color:var(--green);font-family:var(--sans);font-size:15px}@media (width>=700px){.reviews-grid{max-width:1040px}.review-card{grid-template:"photo author""photo copy"1fr/32% minmax(0,1fr);min-height:410px;display:grid}.review-photo{aspect-ratio:auto;grid-area:photo;min-height:0;position:relative}.review-photo img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.review-author{border-bottom:0;grid-area:author;padding:28px 32px 16px}.review-copy{grid-area:copy;min-width:0;padding:0 32px 28px}.review-mark{height:28px;margin-bottom:8px;font-size:48px}.review-text p{font-size:14px;line-height:1.8}}@media (width>=1000px){.reviews-grid{grid-auto-rows:1fr}}.contact-actions{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;max-width:1100px;margin:33px auto 0;display:grid}.contact-action{border:1px solid var(--action);background:var(--action);min-height:76px;color:var(--white);text-align:left;border-radius:3px 18px;justify-content:center;align-items:center;gap:12px;padding:12px;transition:background .2s,border-color .2s,transform .2s cubic-bezier(.2,.7,.2,1);display:flex}.contact-action:hover{background:var(--action-hover);border-color:var(--action-hover)}.contact-action>span{flex-direction:column;align-items:flex-start;gap:4px;min-width:0;display:flex}.contact-action strong{font-size:12px;font-weight:500;line-height:1.3}.contact-action small{color:#f1e9e5;white-space:nowrap;font-size:10px;line-height:1.3}.contact-action svg{stroke-width:1.6px;flex-shrink:0;width:22px;height:22px}.messenger-icon{stroke-width:1.6px;stroke-linejoin:round;stroke-linecap:round;width:24px;height:24px}.telegram-icon{fill:currentColor;stroke:none}.contact>.contact-languages{margin-top:18px;font-size:11px}.contact-map{border-top:1px solid var(--line);text-align:left;margin-top:54px;padding-top:32px}.map-heading{justify-content:space-between;align-items:end;gap:24px;display:flex}.map-heading h3{margin-bottom:12px}.map-heading p{font-size:13px}.map-heading .address-draft{color:var(--muted);margin-top:6px;font-size:11px}.map-canvas{border:1px solid var(--line);background:#e9e7df;min-height:330px;margin-top:24px;position:relative}.map-canvas iframe{border:0;width:100%;height:330px;display:block}.map-placeholder{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:20px;min-height:330px;padding:28px;display:flex}.map-placeholder p{max-width:330px;color:var(--muted);font-size:13px}.map-placeholder .button{min-width:180px}.map-placeholder .button-outline,.map-consent-dialog .button-outline{color:var(--ink);border-color:var(--action);background:0 0}.map-placeholder .button-outline:hover,.map-consent-dialog .button-outline:hover{background:#e4e3da}.map-hide{background:0 0;margin-top:12px}.map-external-note{color:var(--muted);margin-top:16px;font-size:11px}.map-consent-dialog{border:1px solid var(--line);background:var(--paper);width:min(480px,100vw - 32px);max-height:calc(100dvh - 32px);color:var(--ink);border-radius:4px;padding:32px;box-shadow:0 20px 80px #0003}.map-consent-dialog::backdrop{background:#1e241da8}.map-consent-dialog h2{font-size:33px}.map-consent-dialog p{color:var(--muted);margin-top:18px;font-size:13px;line-height:1.7}.map-consent-dialog p a{text-underline-offset:3px;text-decoration:underline}.map-consent-actions{gap:12px;margin-top:26px;display:flex}.map-consent-actions .button{min-width:0;color:var(--ink);border-color:var(--action);background:0 0;flex:1;padding-inline:12px}.map-consent-actions .button:hover{background:#e4e3da}.footer-documents{flex-wrap:wrap;justify-content:center;gap:4px 22px;max-width:980px;margin:22px auto 0;display:flex}.footer-documents button{min-height:36px;color:var(--muted);text-underline-offset:4px;background:0 0;padding:8px 0;font-size:9px;line-height:1.8;text-decoration:underline}.footer-documents button:hover{color:var(--action)}.header>.mobile-nav{max-height:calc(100svh - var(--header-height));overscroll-behavior:contain;position:absolute;inset:100% 0 auto;overflow-y:auto}@media (width>=1000px) and (width<=1320px){.wordmark{font-size:26px}.header-inner{gap:18px;padding-inline:3vw}.desktop-nav{gap:16px;font-size:10px}.header-book{white-space:nowrap;display:flex}}@media (width<=999px){html{--header-height:81px}.header-inner{height:80px}.header-book{display:none}.education-intro{display:block}.film-biography{grid-template-columns:.8fr 1.2fr;gap:30px}}@media (width<=699px){html{--header-height:77px}.header-inner{height:76px}.hero-cta .button{min-width:160px;font-size:12px}.film-heading h2{font-size:clamp(30px,8.5vw,44px)}.film-biography{margin-top:24px;padding:27px 0 10px;display:block}.film-biography>p:last-child{margin-top:17px;font-size:13px;line-height:1.85}.reviews-heading{margin-bottom:32px;display:block}.reviews-heading .eyebrow{margin-bottom:20px}.reviews-heading h2{font-size:52px}.reviews-grid{grid-template-columns:1fr;gap:28px}.review-copy{padding:25px 22px 27px}.review-author{padding:19px 22px;font-size:23px}.contact-actions{gap:10px;margin-top:25px}.contact-action{gap:8px;min-height:70px;padding:10px}.contact-action strong{font-size:11px}.contact-action small{font-size:9px}.contact-action svg{width:20px;height:20px}.contact-map{margin-top:35px;padding-top:28px}.map-heading{display:block}.map-heading .text-link{margin-top:12px}.map-canvas,.map-placeholder{min-height:260px}.map-canvas iframe{height:260px}.map-consent-dialog{padding:24px}.map-consent-actions{flex-direction:column-reverse}.mobile-contact-bar{grid-template-columns:1fr}.mobile-contact-bar a:last-child{border:0;justify-content:center;margin:0}}@media (width<=999px){.hero-description,.service>p:not(.service-subtitle),.review-text p,.education-description,.price-description,.steps p,.faq-list summary,.faq-list details>p,.section-aside{font-size:14px}.credential-info>span,.credential-note,.map-external-note{font-size:11px}.text-link,.quiet-link{min-height:44px}.footer-documents button{min-height:44px;font-size:11px}.price-description{max-width:260px;min-height:0;margin-top:4px}}@media (width<=699px){.hero{gap:0;padding-bottom:38px}.hero h1{font-size:clamp(44px,12vw,52px);line-height:1.06}.hero-copy{display:contents}.hero-copy>.eyebrow{font-size:10px}.hero-specialty{font-size:13px}.hero-visual{order:1;margin-top:25px}.hero-description{order:2;max-width:none;margin-top:27px}.hero-footnote{order:3;margin-top:20px;font-size:11px}.scroll-cue{order:4;min-height:44px;margin-top:15px;font-size:10px;position:static}.image-caption span:last-child{font-size:10px}.service-image,.service:nth-child(2) .service-image,.service:nth-child(3) .service-image{aspect-ratio:4/5}.service-subtitle,.education-intro>.eyebrow,.contact-note{font-size:11px}.contact-action small{white-space:normal;font-size:11px}.credential-info strong{font-size:13px}.price .text-link{min-height:44px}}.contact-action>.compact-label{display:none}@media (width<=999px){.contact-actions{gap:clamp(3px,1vw,10px)}.contact-action{flex-direction:column;gap:5px;padding:8px 1px;position:relative}.contact-action>span:not(.compact-label){clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.contact-action>.compact-label{font-size:clamp(8px,2.3vw,12px);display:block}}.header .brand-wordmark{flex-shrink:0;align-items:center;gap:13px;display:flex}.brand-symbol{object-fit:contain;width:57px;height:57px}.header .brand-wordmark .brand-name{font:inherit;letter-spacing:inherit;color:inherit;margin:0;display:block}.brand-wordmark small{font-family:var(--sans);letter-spacing:.17em;margin-top:9px;font-size:8px;font-weight:500;line-height:1.4;display:block}.footer .footer-brand-logo{width:min(180px,100%);margin:0 auto 14px;display:block}.footer-brand-logo img{width:100%;height:auto}.contact.section-pad{padding-bottom:20px}.footer{padding-top:20px}@media (width<=699px){.header .brand-wordmark{gap:8px}.brand-symbol{width:40px;height:40px}.brand-wordmark small{letter-spacing:.1em;margin-top:6px;font-size:6px}.footer .footer-brand-logo{width:160px}}@media (width<=374px){.header .brand-wordmark{gap:6px}.brand-symbol{width:32px;height:36px}.brand-wordmark small{font-size:5px}}.pricing.section-pad{position:relative}.pricing.section-pad:before{content:"";pointer-events:none;border-left:3px solid var(--green);border-radius:3px 0 0 28px;width:28px;position:absolute;top:28px;bottom:28px;left:max(3vw,12px)}.contact-intro{text-align:left;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;gap:clamp(28px,5vw,80px);margin-bottom:30px;display:grid}.contact-photo{min-height:0;position:relative;overflow:hidden}.contact-photo img{object-fit:cover;object-position:center;width:100%;height:100%;position:absolute;inset:0}.contact-copy .eyebrow{margin-bottom:26px}.contact-copy h2{font-size:clamp(44px,4.8vw,72px)}.contact-copy>p:last-child{color:var(--muted);margin-top:26px}.first-session .session-image{align-self:start}.first-session{row-gap:40px}.first-session .session-copy{align-self:center}.first-session .session-steps{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin:0;display:grid}.first-session .session-steps li{border-top:1px solid var(--line,#b6c6ac);margin:0;padding-top:24px}.first-session .session-question{grid-column:1/-1;justify-self:start;margin:0}.session-image .session-photo-frame img{aspect-ratio:3/2;object-position:center}@media (width>=1000px) and (height>=720px){.hero{height:calc(100svh - 88px);min-height:0;padding-top:22px;padding-bottom:45px}.hero .hero-copy{padding-top:0;padding-bottom:0}.hero .hero-copy>.eyebrow{margin-bottom:20px}.hero h1{margin-bottom:20px;font-size:clamp(58px,6vw,86px)}.hero .hero-description{line-height:1.75}.hero .hero-cta,.hero .hero-footnote{margin-top:22px}.hero .hero-visual{height:100%;min-height:0}.hero .hero-visual picture{height:100%;display:block}.hero .hero-visual img{position:absolute;inset:0}}@media (width<=699px){.first-session .session-image{order:0}.first-session .session-steps{grid-template-columns:1fr;gap:0}.contact-intro{grid-template-columns:1fr;gap:30px}.contact-photo{aspect-ratio:2}.contact-copy{text-align:center}.contact-copy h2{font-size:clamp(42px,11vw,60px)}.session-image .session-photo-frame img{aspect-ratio:3/2;object-position:center}}
