
:root{--muted:#596357}body{font-size:17px;line-height:1.95;letter-spacing:.025em;font-family:"Yu Gothic","Hiragino Kaku Gothic ProN",sans-serif}.lead,.intro{font-size:18px}.notes,.scope,details, .field,.booking-disclaimer,.service-card p,.article-copy p{font-size:16px!important;line-height:1.95}.number,.eyebrow,.profile-label,.review-source,.footer-label{font-size:14px!important}.site-menu,.footer-nav,.footer-contact a{font-size:15px!important}.site-menu{gap:20px}.site-menu>a:last-child{background:var(--green);color:white;padding:10px 16px}.button{font-size:16px;min-height:48px;justify-content:center;gap:16px;padding:13px 23px}.steps li,.plain-list,.credentials li,.credentials p,.testimonial blockquote p{font-size:16px!important}.steps b{font-size:13px}.decision-actions{display:flex;flex-wrap:wrap;align-items:center;gap:20px;margin:22px 0}.text-link,.duration-choice a{text-decoration:underline;text-underline-offset:5px;font-size:16px}.quick-fees{border-left:3px solid #9ba88f;padding:12px 0 8px 20px;margin:24px 0}.quick-fees p{margin:0 0 7px}.quick-fees strong{font-weight:500;font-size:20px}.hero-reserve .decision-actions{margin:18px 0 0}.hero-reserve .button{background:transparent;color:var(--green);border:1px solid var(--green)}.duration-choice{display:flex;flex-wrap:wrap;gap:24px;margin-top:20px}.field input,.field select,.field textarea{font-size:16px;min-height:48px}.field{gap:9px}.form-status:not(:empty){border-left:3px solid var(--green);padding:15px;background:#edf0e7;font-size:16px}.button:disabled{opacity:.65;cursor:wait}.reservation-page .service-hero{padding:42px 48px 25px}.reservation-page main>section{padding-top:20px}.reservation-page .compact{max-width:800px}.reservation-page .booking-form{max-width:none}.reservation-page h2{margin-top:0}.reservation-page .booking-disclaimer{background:#f1f2eb;border:0!important}.article-cta .quick-fees{margin:18px 0}.article-copy p{max-width:42em}main>section{padding-top:64px;padding-bottom:64px}.service-hero{padding-top:54px;padding-bottom:35px}.site-footer .footer-identity p,.footer-bottom{font-size:14px}.inquiry-form h3{font-size:26px}.line-contact-dock{font-size:14px}.credentials ul{font-size:16px!important}
@media(max-width:700px){body{font-size:16px}.lead,.intro{font-size:17px}.hero{padding-top:38px}.site-menu{gap:12px}.site-menu>a:last-child{padding:9px 12px}.service-hero,.reservation-page .service-hero{padding:32px 24px 22px}.reservation-page main>section{padding:12px 24px 40px}.decision-actions{align-items:stretch;gap:15px}.decision-actions .button{flex:1 0 100%}.quick-fees strong{font-size:18px}.quick-fees span{display:none}.quick-fees strong{display:block}.quick-fees{padding-left:15px}main>section{padding:42px 24px}.section-grid{gap:22px}.home-inquiry,.fees-contact-grid{gap:30px}.line-contact-dock{right:10px;bottom:10px}.booking-disclaimer{padding:18px!important}header{padding:20px 24px}.site-menu .menu-list{right:auto;left:0}.hero-reserve .text-link{display:inline-block}.service-hero h1{overflow-wrap:anywhere}}
body:has(input:focus,select:focus,textarea:focus) .line-contact-dock{visibility:hidden}@media(max-width:700px){.site-menu{display:grid;grid-template-columns:auto auto auto;gap:10px 16px;width:100%}.site-menu>a:last-child{grid-column:1/-1;text-align:center}.hero h1{font-size:32px}.hero-reserve .decision-actions{margin-bottom:15px}.line-contact-dock{flex-direction:row;gap:8px;padding:7px 10px}.line-contact-dock span{max-width:6em;font-size:12px}.site-menu .menu-list{z-index:30}}

.payment-conditions{scroll-margin-top:28px;margin:28px 0;padding-top:24px;border-top:1px solid var(--line)}.payment-conditions h4{font-size:18px;font-weight:500;margin:22px 0 12px}.payment-conditions li{margin:0 0 18px}.payment-conditions ul{padding-left:1.3em}.policy-link a{text-decoration:underline;text-underline-offset:4px;font-size:16px}.payment-conditions label{margin-top:24px}

.refund-calculation{padding:16px 18px;background:#e5eadf;border-left:3px solid var(--green)}.refund-calculation strong{font-weight:500}

.service-hero-illustrated{max-width:1240px;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.9fr);gap:50px;align-items:start;padding-bottom:50px}.service-hero-copy{min-width:0}.service-hero-image{margin:20px 0 0;position:sticky;top:28px}.service-hero-image img{display:block;width:100%;height:470px;object-fit:cover;object-position:center;border-radius:180px 180px 3px 3px}.service-hero-illustrated h1{font-size:clamp(32px,3.6vw,44px);letter-spacing:.06em}.service-hero-illustrated .quick-fees{margin:22px 0}.service-hero-illustrated .decision-actions{gap:18px}.service-hero-illustrated .lead{max-width:38em}@media(max-width:800px){.service-hero-illustrated{grid-template-columns:1fr;gap:26px}.service-hero-image{position:static;margin:0}.service-hero-image img{height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:100px 100px 3px 3px}.service-hero-illustrated h1{font-size:32px}}
@media(max-width:700px){main .section-grid .practitioner-photo{width:min(100%,280px);max-width:280px;margin:24px auto 0}}
