/* Homepage: a quieter four-section introduction. */
.calm-home .hero{grid-template-columns:1.15fr 1fr;gap:10%;padding-block:56px;max-width:1320px;margin:auto}
.calm-home .hero h1{font-size:clamp(2.7rem,4.5vw,4.3rem);line-height:1.06}
.calm-home .intro{font-size:17px;max-width:440px;margin:24px 0}
.calm-home .hero-note{font-size:14px;margin-top:14px}
.calm-portrait{margin:0;max-width:420px;justify-self:end;width:100%}
.calm-portrait img{display:block;width:100%;height:auto;aspect-ratio:1.12;object-fit:cover;object-position:center 32%;border-radius:4px}
.calm-portrait figcaption{padding-top:15px;line-height:1.6}
.calm-portrait strong{display:block;font-size:16px;font-weight:500}
.calm-portrait span{font-size:13px;color:var(--muted)}
.calm-home .section{padding:48px 8%}
.calm-home h2{font-size:clamp(2rem,3vw,2.6rem);letter-spacing:-.02em}
.calm-care{border-top:1px solid var(--line)}
.calm-home .home-service-grid{gap:8%;margin-top:24px}
.calm-home .home-service-grid article{border:0;padding:0}
.calm-home .home-service-grid h3{font-size:1.65rem;margin-bottom:12px}
.calm-home .home-service-grid p{max-width:420px}
.calm-home .text-link{margin-top:16px}
.calm-about{display:grid;grid-template-columns:1fr 1.5fr;gap:8%;background:#edf1ed}
.calm-about>div{max-width:620px}
.calm-about p+p{margin-top:14px}
.calm-start{display:grid;grid-template-columns:1.2fr 1fr;gap:12%}
.calm-booking>p{margin-top:18px;max-width:480px}
.calm-booking .calm-fee{margin-block:22px}
.calm-booking .home-booking-note{font-size:13px;max-width:390px;line-height:1.6;margin-top:14px}
.calm-fee a,.calm-locations a{text-underline-offset:4px}
.calm-locations{border-left:1px solid var(--line);padding-left:32px}
.calm-locations>h3{font-size:1.6rem;margin-bottom:20px}
.calm-locations article+article{margin-top:22px}
.calm-locations h4{font:500 15px/1.5 'DM Sans',Arial,sans-serif;margin:0 0 6px}
.calm-locations address{font-size:14px;color:var(--muted)}
.calm-locations article>a{display:inline-block;font-size:13px;padding-block:8px}
.calm-home footer{border-top:1px solid var(--line);padding-top:30px}
.calm-home .footer-main{padding-bottom:20px}
.calm-resources{margin-bottom:20px;max-width:700px}
.calm-resources summary{font-size:14px;justify-content:flex-start;gap:14px;width:fit-content;min-height:44px}
.calm-home .calm-resources .footer-nav{margin:12px 0 0;gap:12px 24px}
.calm-home .footer-bottom{font-size:12px}
@media(min-width:1450px){.calm-home .section{padding-inline:max(8%,calc((100vw - 1110px)/2))}}
@media(max-width:680px){.calm-home .hero{padding:32px 6%;gap:26px}.calm-home .hero h1{font-size:clamp(2.6rem,9vw,3.4rem)}.calm-home .intro{font-size:16px}.calm-home .hero-copy .button{width:100%}.calm-portrait{max-width:360px;align-self:center}.calm-home .section{padding:36px 6%}.calm-home .home-service-grid,.calm-about,.calm-start{display:grid;grid-template-columns:minmax(0,1fr);gap:26px}.calm-home .home-service-grid article+article{padding-top:24px;border-top:1px solid var(--line)}.calm-locations{border-left:0;border-top:1px solid var(--line);padding:26px 0 0}.calm-booking .button{width:100%}.calm-home .footer-main{align-items:flex-start}.calm-home .footer-main>p{display:none}.calm-home .footer-bottom{gap:16px}.calm-home .footer-bottom div{gap:12px}.calm-home .calm-resources .footer-nav{flex-direction:column;gap:0}.calm-resources .footer-nav a{padding-block:8px}}
