.appointment{border:0;border-top:1px solid var(--line);padding:24px 0 16px;margin:12px 0 0;min-width:0}.appointment legend{font-family:var(--serif);font-size:1.5rem;padding:0 10px 0 0}.appointment .form-intro{margin-top:10px}.calendar{margin:0 0 20px}.calendar-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:15px}.calendar-header p{font-size:1rem;text-transform:capitalize;font-weight:500;text-align:center}.calendar button{border:1px solid transparent;background:transparent;color:var(--ink);cursor:pointer;border-radius:3px;min-height:36px;padding:3px;font-size:.875rem}.calendar-header button{width:38px;font-size:1.5rem;line-height:1;border-color:var(--line)}.calendar-week,.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;text-align:center}.calendar-week{font-size:.875rem;color:var(--muted);margin-bottom:7px}.calendar button:disabled{color:#aaa;background:#f5f5f1;cursor:not-allowed}.calendar button:not(:disabled):hover{background:var(--wash);border-color:var(--green)}.calendar button[aria-pressed=true]{background:var(--green);color:white}.calendar button[aria-current=date]{text-decoration:underline;text-underline-offset:4px}.calendar-selection{font-size:.875rem;margin-top:15px;color:var(--green);min-height:3em}.appointment select{width:100%;min-height:46px;border:1px solid #cdd1c5;background:#fdfdfb;border-radius:2px;color:var(--ink);padding:10px;font:inherit}.appointment select:focus-visible{outline:2px solid var(--green);outline-offset:3px}.appointment select:disabled{color:var(--muted);background:var(--wash)}.community-join{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:start}.community-join h2{margin-bottom:25px}.community-join>div>p:not(.eyebrow){color:var(--muted)}.membership{padding:24px 0;border-top:1px solid var(--line)}.membership h3{font-size:1rem}.membership-price{font-family:var(--serif);font-size:3.3rem;letter-spacing:-.04em;margin:12px 0 22px}.membership-price span{font-family:var(--sans);font-size:.9375rem;letter-spacing:0;color:var(--muted)}.membership .button{width:100%}.nav a[aria-current=page]{text-decoration:underline;text-underline-offset:7px}.lesson{max-width:900px;padding-block:65px 100px}.lesson h1{font-size:clamp(2.8rem,5vw,4.5rem);margin-bottom:40px}.lesson-content{max-width:720px;font-size:1.125rem;line-height:1.8}.lesson-content h2{font-size:2.2rem;margin:50px 0 22px}.lesson-content h3{margin:35px 0 16px}.lesson-content video,.lesson-content iframe{max-width:100%;width:100%;aspect-ratio:16/9;border:0;margin-block:25px}.lesson-content blockquote{border-left:2px solid var(--green);padding-left:25px;margin:30px 0;font-family:var(--serif);font-size:1.6rem}.header .nav{flex-wrap:wrap;row-gap:4px}.header{height:auto;min-height:110px;padding-block:22px}.header .nav a{white-space:nowrap}.hero h1{overflow-wrap:normal}
@media(max-width:1100px){.header{flex-wrap:wrap;gap:22px}.header .nav{width:100%;justify-content:flex-start;gap:8px 23px}}
@media(max-width:700px){.community-join{grid-template-columns:1fr;gap:30px}.header .nav{font-size:.875rem;gap:4px 18px}.calendar-header button{width:36px}.appointment{padding-top:20px}.community-hero h1{font-size:clamp(3.5rem,12vw,5rem)}.course-hero h1{font-size:clamp(3rem,10.5vw,5rem)}}
.calendar button[aria-pressed=true]:not(:disabled):hover{background:var(--green);color:white}

.community-contact{max-width:720px;margin:auto}.community-contact h2{font-size:clamp(2rem,4vw,3rem);margin-bottom:24px}.community-contact .form-intro{font-size:1rem;line-height:1.8;margin-bottom:30px}

.journey-row p .journey-detail{display:block;margin-top:16px;font:inherit;color:inherit}.journey-row{align-items:start}
