:root{--cream:#E8E3D4;--ink:#1C1B18;--body:#4A4842;--mist:#A8A492;--olive:#5E765B;--rule-opacity:0.4;--scrim-top:38%;--scrim-mid:58%;--on-accent:#F5F2E8}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--body);font-family:work sans,sans-serif;font-weight:300;font-size:17px;line-height:1.7;-webkit-font-smoothing:antialiased;transition:background .25s ease,color .25s ease}h1,h2{font-family:fraunces,serif;font-weight:340;color:var(--ink);margin:0}a{color:inherit;text-decoration:none}a:focus-visible{outline:1px solid var(--olive);outline-offset:4px}.wrap{width:min(1180px,100% - 6rem);margin-inline:auto}@media(max-width:640px){.wrap{width:min(1180px,100% - 2.5rem)}}section{padding:7rem 0}.rule{border:none;border-top:1px solid var(--mist);opacity:var(--rule-opacity);margin:0}.section-intro{max-width:34rem;margin-bottom:5rem}.section-intro h2{font-size:clamp(1.6rem,3vw,2.1rem);margin-bottom:1.2rem}.section-intro p{font-size:1.02rem}.prose{max-width:38rem}.prose h2,.prose h3{font-family:fraunces,serif;color:var(--ink);margin:2.4rem 0 1rem}.prose p{font-size:1.02rem;margin:0 0 1.4rem}.prose img{max-width:100%;display:block;margin:2.4rem 0}.eyebrow{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--body);margin-bottom:2rem}header.site{padding:2.2rem 0;background:var(--olive)}header.site .wrap{display:flex;align-items:center;justify-content:space-between;gap:1.6rem;flex-wrap:wrap}.wordmark{font-family:work sans,sans-serif;font-size:.82rem;letter-spacing:.16em;text-transform:uppercase;color:var(--on-accent)}nav.primary ul{list-style:none;display:flex;gap:2.4rem;margin:0;padding:0;font-size:.82rem;font-weight:400;letter-spacing:.03em}nav.primary a{color:var(--on-accent);opacity:.72}nav.primary a:hover{opacity:1}nav.primary a.active{opacity:1}@media(max-width:720px){nav.primary ul{gap:1.2rem;font-size:.72rem}}.hero{position:relative;overflow:hidden;min-height:82vh;display:flex;flex-direction:column;justify-content:center;padding:4rem 0 6rem}.hero-media{position:absolute;inset:0;z-index:-2;background-image:url(/img/hero-studio-room.jpg);background-size:cover;background-position:50% 65%;filter:grayscale(1)}.hero-scrim{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,color-mix(in srgb,var(--cream) var(--scrim-top),transparent) 0%,color-mix(in srgb,var(--cream) var(--scrim-mid),transparent) 55%,var(--cream) 100%)}.hero .label{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--body);margin-bottom:2rem}.hero h1{font-size:clamp(2.6rem,6.2vw,5rem);line-height:1.12;max-width:16em;letter-spacing:-.01em}.hero h1 em{font-style:italic;color:var(--olive)}.hero .lede{margin-top:2.4rem;max-width:30rem;font-size:1.05rem;color:var(--body)}.hero .cta{display:inline-block;margin-top:2.6rem;font-size:.92rem;color:var(--ink);border-bottom:1px solid var(--ink);padding-bottom:.2rem}.hero .cta:hover{color:var(--olive);border-color:var(--olive)}.stage-list{display:grid;grid-template-columns:auto 1fr;column-gap:2.8rem;max-width:40rem}.stage{display:contents}.stage .dur{grid-column:1;padding:1.6rem 0;font-size:.82rem;color:var(--body);white-space:nowrap;align-self:start}.stage .content{grid-column:2;padding:1.6rem 0;border-top:1px solid var(--mist);border-opacity:.3}.stage:first-child .content{border-top:1px solid var(--mist)}.stage .name{font-family:fraunces,serif;font-size:1.25rem;color:var(--ink);margin-bottom:.35rem}.stage .note{font-size:.95rem;color:var(--body);max-width:28rem}.stage:nth-child(4) .content{border-bottom:1px solid var(--mist)}@media(max-width:560px){.stage-list{grid-template-columns:1fr;row-gap:0}.stage .dur{grid-column:1;padding-top:1.6rem;padding-bottom:0}.stage .content{grid-column:1;border-top:none;padding-top:.4rem}.stage:nth-child(4) .content{border-bottom:1px solid var(--mist)}}.flow-link{font-size:.95rem}.flow-link a{border-bottom:1px solid var(--ink);padding-bottom:.1rem}.flow-link a:hover{color:var(--olive);border-color:var(--olive)}.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:3.2rem}.team-grid-page{margin-top:3rem}.team-member figure{margin:0}.team-member .photo{aspect-ratio:3/4;overflow:hidden;background:var(--mist)}.team-member .photo img{width:100%;height:100%;object-fit:cover;display:block}.team-member figcaption{margin-top:1.1rem}.team-member .name{font-family:fraunces,serif;font-size:1.15rem;color:var(--ink)}.team-member .role{font-size:.86rem;color:var(--body);margin-top:.15rem}.team-member .bio{font-size:.86rem;color:var(--body);margin-top:.5rem;max-width:22rem}@media(max-width:720px){.team-grid{grid-template-columns:1fr;gap:2.6rem}}.about-logo{display:flex;justify-content:center;margin:0 auto 4rem}.about-logo img{width:140px;height:auto}.pull-quote{font-family:fraunces,serif;font-style:italic;font-size:clamp(1.3rem,2.4vw,1.7rem);color:var(--olive);max-width:30rem;line-height:1.5;margin:4rem 0}.about-photo{margin:4rem 0}.about-photo img{width:100%;height:auto;display:block}.team-link{margin-top:3rem;font-size:.95rem}.team-link a{border-bottom:1px solid var(--ink);padding-bottom:.1rem}.team-link a:hover{color:var(--olive);border-color:var(--olive)}.reviews-intro{margin-top:6rem}.review-item{padding:2rem 0;border-top:1px solid var(--mist);max-width:40rem}.reviews-list .review-item:last-child{border-bottom:1px solid var(--mist)}.review-stars{color:var(--olive);font-size:.9rem;letter-spacing:.1em;margin-bottom:.6rem}.review-text{font-size:.98rem;color:var(--body);margin:0 0 .6rem}.review-author{font-size:.82rem;color:var(--body)}.format-list{display:grid;grid-template-columns:auto 1fr;column-gap:2.8rem;max-width:42rem}.format-row{display:contents}.format-row .format-name{grid-column:1;padding:1.6rem 0;font-family:fraunces,serif;font-size:1.15rem;color:var(--ink);white-space:nowrap;align-self:start}.format-row .format-note{grid-column:2;padding:1.6rem 0;border-top:1px solid var(--mist);font-size:.95rem;color:var(--body)}.format-row:first-child .format-note{border-top:1px solid var(--mist)}.format-row:last-child .format-note{border-bottom:1px solid var(--mist)}@media(max-width:560px){.format-list{grid-template-columns:1fr;row-gap:0}.format-row .format-name{grid-column:1;padding-bottom:.4rem}.format-row .format-note{grid-column:1;border-top:none;padding-top:0}.format-row:last-child .format-note{border-bottom:1px solid var(--mist)}}.instrument-list{margin-top:3rem;font-size:.95rem;color:var(--body)}.trial-price{margin-top:1rem;font-size:.95rem;color:var(--ink)}.booking-intro{margin-top:5rem}.booking-widget{max-width:42rem}.event-row{padding:2rem 0;border-top:1px solid var(--mist);display:flex;flex-wrap:wrap;gap:.4rem 2rem;align-items:baseline}.event-list .event-row:last-child{border-bottom:1px solid var(--mist)}.event-row .event-type{font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:var(--olive);flex-basis:100%}.event-row .event-date{font-size:.82rem;color:var(--body);white-space:nowrap}.event-row .event-title{font-family:fraunces,serif;font-size:1.2rem;color:var(--ink);flex:auto}.event-row .event-desc{flex-basis:100%;font-size:.95rem;color:var(--body);max-width:34rem}.event-empty{padding:2rem 0;border-top:1px solid var(--mist);border-bottom:1px solid var(--mist);font-size:.95rem;color:var(--body)}.faq-item{padding:2rem 0;border-top:1px solid var(--mist);max-width:40rem}.faq-list .faq-item:last-child{border-bottom:1px solid var(--mist)}.faq-item h3{font-family:fraunces,serif;font-size:1.15rem;color:var(--ink);margin:0 0 .6rem}.faq-item .faq-answer{font-size:.98rem;color:var(--body)}.faq-item .faq-answer p{margin:0}.contact-list{display:grid;grid-template-columns:auto 1fr;column-gap:2.8rem;row-gap:1.2rem;max-width:34rem;margin-bottom:4rem;font-size:.98rem}.contact-list dt{color:var(--body);font-size:.82rem;letter-spacing:.06em;text-transform:uppercase;align-self:start;padding-top:.15rem}.contact-list dd{margin:0;color:var(--ink)}.contact-list .contact-note{font-size:.86rem;color:var(--body);margin-top:.2rem}@media(max-width:560px){.contact-list{grid-template-columns:1fr;row-gap:2rem}}.map-container{height:360px;margin:2rem 0 4rem;filter:grayscale(1)}.map-container .leaflet-container{height:100%;width:100%;background:var(--mist)}.form-note{font-size:.95rem;color:var(--body);margin-top:2rem}footer.site{padding:4rem 0 5rem}footer.site .wrap{display:flex;flex-direction:column;gap:1.6rem;font-size:.82rem;color:var(--body)}footer.site .footer-top{display:flex;justify-content:space-between;flex-wrap:wrap;gap:1rem}.footer-nav ul{list-style:none;display:flex;flex-wrap:wrap;gap:1.4rem;margin:0;padding:0}.footer-nav a{opacity:.72}.footer-nav a:hover{opacity:1}