@font-face{font-family:Italiana;src:url('/assets/serif.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:'DM Sans';src:url('/assets/sans.woff2') format('woff2');font-weight:100 900;font-display:swap}
:root{--paper:#f8f7f4;--white:#fffefa;--ink:#302b27;--muted:#6e6b64;--line:#dfdcd5;--stone:#e9e4dc;--olive:#77766b;--green:#476346;--serif:Italiana,Georgia,serif;--sans:'DM Sans','Helvetica Neue',sans-serif;--gutter:clamp(24px,5.3vw,90px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.65 var(--sans);-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}a{color:inherit;text-decoration:none}button{cursor:pointer;color:inherit}button:disabled{cursor:default;opacity:.45}button{border:0;background:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:2px solid #6d6d4c;outline-offset:5px}::selection{background:#d8d0be}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:400}h1,h2{font-family:var(--serif);letter-spacing:-.04em;line-height:1.1}h1{font-size:clamp(46px,4.8vw,76px)}h2{font-size:clamp(36px,3.3vw,54px)}h3{font-size:18px;line-height:1.4}p{color:var(--muted)}em{font-style:normal}small{font-size:12px}.eyebrow{font:500 10px/1.5 var(--sans);letter-spacing:.18em;color:var(--muted)}.muted,.quiet-note{color:var(--muted)}.quiet-note{font-size:12px;line-height:1.75}.text-link{font-size:13px;display:inline-flex;gap:30px;align-items:center;border-bottom:1px solid var(--ink);padding:5px 0;text-align:left}.text-link:hover{color:#74715a}.text-link span{font-size:18px}.underlined{font-size:13px;border-bottom:1px solid var(--line);padding-bottom:4px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:38px;min-height:50px;padding:13px 24px;background:var(--ink);color:var(--paper);border:1px solid var(--ink);border-radius:2px;font-size:13px;font-weight:500;line-height:1.5;transition:background .2s,transform .2s}.button:hover{background:#514a42}.button:active{transform:scale(.985)}.button span{font-size:18px;line-height:1}.button.outline{color:var(--ink);background:transparent;border-color:#bcb7ad}.button.outline:hover{background:var(--stone)}.button.light{color:var(--green);background:#edf0e8;border-color:transparent}.button.compact{min-height:42px;padding:9px 16px;font-size:12px;gap:26px}.full-width{width:100%;margin-top:20px}.button-row{display:flex;gap:14px;margin-top:25px;flex-wrap:wrap}.skip-link{position:fixed;top:-100px;left:20px;padding:12px;background:var(--ink);color:white;z-index:100}.skip-link:focus{top:10px}
.preview-bar{height:30px;display:flex;align-items:center;justify-content:space-between;padding:0 var(--gutter);font-size:10px;color:var(--muted);background:#efede8;border-bottom:1px solid #e7e4dd;letter-spacing:.025em}.preview-bar a{font-size:10px}.header{height:115px;display:flex;align-items:center;justify-content:space-between;padding:0 var(--gutter);border-bottom:1px solid var(--line);gap:32px}.wordmark{display:inline-flex;flex-direction:column;text-align:center;line-height:1;flex-shrink:0}.wordmark>span{font-family:var(--serif);font-size:31px;letter-spacing:.015em}.wordmark small{font-size:8px;letter-spacing:.35em;margin-top:9px;padding-left:4px}.header nav{display:flex;gap:36px;margin-left:auto;margin-right:auto;font-size:12px}.header nav a{padding:7px 0;border-bottom:1px solid transparent}.header nav a:hover,.header nav a.active{border-color:var(--ink)}.header-cta{font-size:12px;display:flex;gap:30px;align-items:center}.header-cta span{font-size:21px}.mobile-menu{display:none}.internal{height:100px}.profile{display:flex;align-items:center;gap:10px;font-size:12px}.profile small{display:block;color:var(--muted);font-size:10px}.avatar{width:34px;height:34px;border-radius:50%;background:#eae6dd;display:inline-flex;align-items:center;justify-content:center;font-size:10px;flex-shrink:0;color:#59554d}
.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:5.4vw;padding:42px var(--gutter) 58px;max-width:1800px;margin:auto}.hero-copy{padding:4.2vw 0 0;display:flex;align-items:flex-start;flex-direction:column}.hero h1{font-size:clamp(62px,6.7vw,113px);line-height:1.025;letter-spacing:-.046em;margin:28px 0 27px}.hero h1 em{font-size:.84em;white-space:nowrap}.hero-lede{font-size:14px;line-height:1.9}.hero-actions{display:flex;gap:27px;align-items:center;margin-top:31px}.hero-foot{display:flex;align-items:center;gap:14px;font-size:10px;letter-spacing:.08em;margin-top:auto;padding-top:48px;color:var(--muted)}.small-rule{display:block;width:34px;height:1px;background:#afa79b}.hero-image{position:relative;align-self:stretch;min-height:555px;max-height:760px;overflow:hidden;background:#e4ded2}.hero-image img{width:100%;height:100%;display:block;object-fit:cover;object-position:50% 55%}.hero-image figcaption{position:absolute;left:24px;right:24px;bottom:19px;color:#fffdf7;font-size:9px;letter-spacing:.16em;text-shadow:0 1px 7px #302b27;display:flex;justify-content:space-between;gap:20px}.hero-image figcaption span{letter-spacing:0;font-size:8px}.section-pad{padding:75px var(--gutter);max-width:1800px;margin:auto}.approach{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.approach-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:9vw;align-items:center;margin-top:24px}.approach-grid h2{font-size:clamp(36px,3.8vw,61px)}.approach-grid p{max-width:430px;font-size:14px}.approach-grid p+p{margin-top:18px;color:var(--ink)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:38px}.section-heading h2{margin-top:13px}.section-heading>p{font-size:13px}.training-section{padding-top:82px;padding-bottom:90px}.training-grid{display:grid;grid-template-columns:1fr 1fr 1fr;border:1px solid var(--line)}.training-card{padding:35px 30px 26px;display:flex;flex-direction:column;border-right:1px solid var(--line)}.training-card:last-child{border:0}.training-card h3{font-family:var(--serif);font-size:33px;line-height:1.2;margin:22px 0 15px}.training-card p{font-size:13px;max-width:290px}.card-bottom{margin-top:42px}.card-bottom>span{display:block;font-size:10px;letter-spacing:.06em;color:var(--muted);margin-bottom:11px}.card-bottom .text-link{width:100%;justify-content:space-between;border-bottom:0}.training-card.plain{background:#efede7}.closing{padding:75px 24px 85px;text-align:center;background:#e9e5dc}.closing h2{font-size:clamp(46px,4.7vw,76px);margin:20px 0 28px}.closing .button{min-width:215px}.footer{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:45px;padding:55px var(--gutter) 20px;max-width:1800px;margin:auto}.footer .wordmark{margin:0 0 20px}.footer p{font-size:12px}.footer>div:nth-child(2) p{margin:14px 0 12px}.footer .text-link{font-size:12px}.footer-links{display:flex;flex-direction:column;align-items:flex-start;gap:10px;font-size:12px}.footer-links a:hover{text-decoration:underline}.footer-bottom{grid-column:1/-1;display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:19px;font-size:10px;color:var(--muted);margin-top:17px}
.app-main{padding:58px var(--gutter) 75px;max-width:1550px;margin:auto;min-height:640px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:40px;margin-bottom:47px}.page-heading h1{margin-top:16px}.page-heading p:not(.eyebrow){margin-top:17px;font-size:13px}.page-heading .button{flex-shrink:0}.allowance{display:flex;flex-direction:column;align-items:flex-end;font-size:11px;color:var(--muted)}.allowance strong{font-weight:400;font-family:var(--serif);font-size:56px;color:var(--ink);line-height:1.2}.allowance strong span{font-size:27px;color:var(--muted)}.tabs{display:flex;gap:36px;border-bottom:1px solid var(--line)}.tabs button{font-size:13px;padding:14px 0 15px;position:relative;color:var(--muted)}.tabs button[aria-selected=true]{color:var(--ink)}.tabs button[aria-selected=true]:after{content:'';height:2px;background:var(--ink);position:absolute;left:0;right:0;bottom:-1px}.schedule-head{display:flex;align-items:center;justify-content:space-between;gap:30px;margin:43px 0 27px}.schedule-head h2{font-size:36px}.schedule-head p{font-size:12px;margin-top:8px}.week-controls{display:flex;align-items:center;gap:18px;font-size:12px}.week-controls button{width:34px;min-height:38px;border:1px solid var(--line);font-size:15px}.week-controls button:hover:not(:disabled){background:var(--stone)}.week-controls>span{min-width:184px;text-align:center}.class-row{display:grid;grid-template-columns:58px 1.4fr 1fr 1.25fr 130px;gap:28px;align-items:center;padding:25px 0;border-top:1px solid var(--line)}.class-row:last-child{border-bottom:1px solid var(--line)}.class-date{border-right:1px solid var(--line);display:flex;flex-direction:column;line-height:1.5}.class-date span{text-transform:uppercase;font-size:9px;letter-spacing:.14em;color:var(--muted)}.class-date strong{font-family:var(--serif);font-size:34px;font-weight:400;line-height:1.2}.class-info h3{font-size:15px}.class-info p{font-size:11px;margin-top:5px}.class-time{font-size:17px}.class-time small{display:block;font-size:10px;color:var(--muted)}.availability{font-size:11px;color:#55634c;display:flex;align-items:center;gap:8px}.availability:before{content:'';width:4px;height:4px;border-radius:50%;background:currentColor}.availability.full{color:var(--muted)}.class-list+.quiet-note{margin-top:20px}.help-strip{margin-top:65px;padding:22px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;font-size:12px}.empty{padding:46px 25px;text-align:center}.empty h3{font-family:var(--serif);font-size:32px}.empty p{font-size:13px;margin:9px 0 22px}.empty .button{margin-top:8px}.pt-layout{display:grid;grid-template-columns:1fr 1.65fr;gap:80px;margin-top:45px}.pt-layout h2{font-size:40px}.pt-layout>div>p{font-size:13px;margin-top:18px}.details-list{margin:26px 0;font-size:12px}.details-list>div{display:flex;justify-content:space-between;gap:15px;border-top:1px solid var(--line);padding:13px 0}.details-list dt{color:var(--muted)}.details-list dd{margin:0;text-align:right}.pt-calendar{border:1px solid var(--line);padding:25px 30px 27px}.pt-calendar .week-controls{justify-content:space-between}.day-picker{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin:27px 0 29px}.day-picker button{border:1px solid var(--line);padding:12px 0;display:flex;flex-direction:column;align-items:center;font-size:10px}.day-picker strong{font-family:var(--serif);font-weight:400;font-size:27px}.day-picker button.selected{background:var(--ink);color:var(--paper);border-color:var(--ink)}.pt-calendar h3{font-size:12px;font-weight:400;margin-bottom:14px}.time-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;min-height:85px}.time-grid button{font-size:12px;min-height:40px;border:1px solid var(--line);padding:7px}.time-grid button:hover{background:var(--stone)}.time-grid button[aria-pressed=true]{background:var(--ink);color:white}.empty-slots{grid-column:1/-1;font-size:13px;padding:20px 0}.slot-action{display:flex;justify-content:space-between;gap:20px;align-items:center;border-top:1px solid var(--line);margin-top:25px;padding-top:22px}.slot-action>span{font-size:11px;color:var(--muted)}.slot-action .button{min-height:44px;font-size:12px;padding:10px 16px;gap:20px}
.member-overview{display:grid;grid-template-columns:1.4fr 1fr 1fr;border:1px solid var(--line)}.member-overview>div{padding:33px;display:flex;flex-direction:column;align-items:flex-start;border-right:1px solid var(--line)}.member-overview>div:last-child{border:0}.next-session{background:#eae6dd}.next-session h2{font-size:39px;margin:22px 0 13px}.next-session p{font-size:12px;margin-bottom:25px}.next-session .text-link{margin-top:auto}.member-allowance .allowance-number{font-size:75px;font-family:var(--serif);line-height:1;margin-top:24px}.allowance-number span{font-size:12px;font-family:var(--sans);margin-left:10px;color:var(--muted)}.allowance-track{display:flex;gap:5px;width:100%;margin:23px 0 12px}.allowance-track span{height:3px;background:#c5cabb;flex:1}.allowance-track .used{background:#dedbd2}.member-allowance p{font-size:11px}.member-plan h3{font-size:20px;margin:26px 0 12px}.member-plan p{font-size:12px}.member-plan .text-link{margin-top:auto}.upcoming-heading{margin-top:55px;margin-bottom:20px}.upcoming-heading>span{font-size:11px}.booking-row{display:grid;grid-template-columns:52px 1.5fr 1fr auto;align-items:center;gap:25px;border-top:1px solid var(--line);padding:21px 0}.booking-row:last-child{border-bottom:1px solid var(--line)}.date-tile{text-align:center;padding-right:18px;border-right:1px solid var(--line);line-height:1.2}.date-tile strong{font:32px var(--serif);display:block}.date-tile span{text-transform:uppercase;font-size:9px;letter-spacing:.06em}.booking-row h3{font-size:14px}.booking-row p{font-size:11px;margin-top:4px}.booking-row .text-link{border:0}.recurrence{font-size:11px;color:var(--muted)}
.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;padding:26px 0}.segmented{display:flex;border:1px solid var(--line);padding:3px}.segmented button{font-size:11px;padding:6px 19px;min-height:34px}.segmented button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.owner-calendar{display:grid;grid-template-columns:195px 1fr;border:1px solid var(--line);min-height:450px}.owner-days{border-right:1px solid var(--line);padding:12px}.owner-days button{display:grid;grid-template-columns:1fr 32px;width:100%;text-align:left;padding:17px 14px;margin-bottom:5px;align-items:center}.owner-days span{font-size:12px}.owner-days strong{font:28px var(--serif);grid-column:2;grid-row:1/3;text-align:right}.owner-days small{color:var(--muted);font-size:10px;grid-column:1}.owner-days button.selected{background:#e9e5dc}.day-agenda{padding:29px 33px 35px}.agenda-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:24px}.agenda-heading h2{font-size:31px}.agenda-heading>span{font-size:11px}.agenda-event{display:flex;text-align:left;align-items:center;gap:25px;width:100%;padding:22px 20px;border:1px solid var(--line);border-left:3px solid #aaa291;margin:12px 0;background:#f1eee7;transition:background .2s}.agenda-event:hover{background:#e8e3d9}.agenda-event.class{background:#edefe7;border-left-color:#7a8269}.agenda-event.block{background:transparent;border-left-color:#c0bcb2;color:var(--muted)}.event-time{font-size:15px;min-width:46px}.event-time small{display:block;font-size:10px;color:var(--muted)}.event-content{flex:1}.event-content strong{font-size:14px;font-weight:500;display:block}.event-content small{font-size:11px;color:var(--muted)}.event-tag{font-size:10px;display:flex;align-items:center;gap:20px}.event-tag span{font-size:17px}.calendar-legend{display:flex;gap:23px;font-size:10px;color:var(--muted);padding-top:18px}.calendar-legend>span{display:flex;align-items:center;gap:7px}.calendar-legend>span:last-child{margin-left:auto}.calendar-legend i{width:6px;height:6px;border-radius:50%;display:inline-block}.pt-dot{background:#aaa291}.class-dot{background:#7a8269}.block-dot{background:#c0bcb2}.week-grid{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));border:1px solid var(--line);overflow:auto;min-height:420px}.week-grid>section{padding:16px 12px;border-right:1px solid var(--line)}.week-grid>section:last-child{border:0}.week-grid-heading{display:flex;align-items:center;justify-content:space-between;font-size:11px;border-bottom:1px solid var(--line);padding:0 4px 14px;margin-bottom:20px}.week-grid-heading strong{font:29px var(--serif)}.week-event{text-align:left;display:flex;flex-direction:column;gap:8px;width:100%;margin-bottom:10px;padding:14px 12px;background:#eae5dc;border-left:2px solid #aaa291;min-height:95px}.week-event span{font-size:10px}.week-event strong{font-size:12px;font-weight:500;line-height:1.4}.week-event small{font-size:9px;color:var(--muted)}.week-event.class{background:#edefe7;border-left-color:#7a8269}.week-event.block{background:#f0eee9;border-left-color:#c0bcb2}.week-empty{font-size:11px;padding:20px 0;text-align:center}.members-heading{display:flex;justify-content:space-between;align-items:center;gap:30px;margin:35px 0 20px}.members-heading h2{font-size:38px}.search{font-size:10px}.search input{display:block;min-width:230px}.member-row{display:flex;align-items:center;gap:20px;border-bottom:1px solid var(--line);padding:21px 0}.member-row>div{flex:1}.member-row h3{font-size:14px}.member-row p{font-size:11px}.member-row>span:not(.avatar){font-size:11px;color:var(--muted);margin-right:35px}.member-row .text-link{border:0}.activity{max-width:900px;padding-top:35px}.activity>p{margin-top:15px;font-size:12px}.activity article{display:flex;gap:30px;border-bottom:1px solid var(--line);padding:20px 0}.activity article span{font-size:11px;padding-top:2px}.activity article p{font-size:13px;color:var(--ink)}
.plan-composer{display:grid;grid-template-columns:1.4fr 1fr;gap:100px}.plan-composer h2{font-size:38px}.plan-base{display:flex;justify-content:space-between;margin:25px 0 35px;padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:14px}.plan-base strong{font-family:var(--serif);font-size:30px;font-weight:400}.plan-base small{display:block;font-family:var(--sans);font-size:10px;color:var(--muted);font-weight:400}.plan-composer label{display:block;font-size:12px;margin:20px 0 8px}.plan-composer select{width:100%}.plan-composer .quiet-note{margin-top:23px}.plan-summary{background:#eae6dd;padding:35px;align-self:start}.plan-total{font:80px var(--serif);margin:20px 0;line-height:1.2}.plan-total span{font:12px var(--sans);margin-left:10px;color:var(--muted)}#plan-breakdown{padding:14px 0 25px}#plan-breakdown p{display:flex;justify-content:space-between;font-size:12px;padding:10px 0;border-bottom:1px solid #d3cfc5}.plan-summary>.muted{font-size:11px;margin-bottom:12px}.plan-summary .button{width:100%}.contact-page h1{margin:17px 0 60px}.contact-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:55px}.contact-grid h2{font-size:36px;margin-bottom:22px}.contact-grid h3{margin-bottom:25px}.contact-grid p{font-size:13px;margin-bottom:20px}.contact-grid>div:nth-child(2)>a{display:block;font-size:13px;margin:12px 0}.contact-grid>div:nth-child(2)>p{margin-top:25px}.contact-note{background:#ece8df;padding:25px}.contact-note h3{font-family:var(--serif);font-size:31px;line-height:1.15;margin-bottom:16px}.contact-note .button{font-size:12px;gap:22px}.design-page{max-width:1200px}.design-page h1{font-size:clamp(62px,6vw,90px);margin:20px 0 25px}.large-copy{font-size:17px;max-width:650px}.design-swatches{display:grid;grid-template-columns:repeat(4,1fr);margin:45px 0 65px;border:1px solid var(--line)}.design-swatches span{padding:50px 20px 18px;font-size:11px}.design-doc{max-width:770px}.design-doc h2{font-size:35px;margin:45px 0 15px}.design-doc p{font-size:14px}.legal-page{max-width:950px}.legal-page h1{margin:20px 0 40px}.legal-page>p:not(.eyebrow){margin-bottom:25px}.legal-page .text-link{margin-top:15px}
dialog{border:1px solid var(--line);background:var(--paper);color:var(--ink);width:min(530px,calc(100% - 32px));padding:42px;max-height:calc(100dvh - 40px);overflow:auto;border-radius:3px;box-shadow:0 18px 75px #302b2712}dialog::backdrop{background:rgba(35,31,27,.38);backdrop-filter:blur(3px)}dialog h2{font-size:45px;line-height:1.1;margin:16px 0 22px}dialog p{font-size:13px;margin:13px 0}.close-dialog{position:absolute;right:14px;top:10px;font-size:26px;width:36px;height:36px;line-height:1}.review-session{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0;margin:23px 0}.review-session h3{font-size:18px}.review-session p{font-size:12px;margin:10px 0 0}.review-session p:has(span){display:flex;justify-content:space-between}fieldset{border:0;padding:0;margin:25px 0 0}legend{font-size:12px;padding:0;margin-bottom:12px}.radio-option{display:flex;align-items:flex-start;gap:12px;border:1px solid var(--line);padding:13px 15px;margin:9px 0;cursor:pointer;font-size:12px}.radio-option small{display:block;color:var(--muted);font-size:10px;margin-top:3px}.radio-option input{margin-top:4px}.radio-option:has(input:checked){background:#eeebe3;border-color:#aaa395}input[type=radio],input[type=checkbox]{accent-color:var(--ink);width:16px;height:16px;flex-shrink:0}form>label,.form-split label{display:block;font-size:11px;margin:16px 0}input:not([type=checkbox],[type=radio]),select{border:1px solid #c8c3b9;border-radius:2px;background:transparent;color:var(--ink);min-height:43px;padding:10px 12px;font-size:13px}form>label>input,form>label>select,.form-split input{display:block;width:100%;margin-top:6px}.form-split{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-split label{min-width:0}.form-error{padding:12px 14px;background:#f3e5df;color:#823e28;margin-top:16px;font-size:12px!important;border-left:2px solid #a3644f}.form-error[hidden]{display:none}.success-note{color:#426240;font-size:12px;padding:12px;background:#edf0e5}.conflict-box{background:#f0e6dc;border-left:2px solid #a88964;padding:17px;margin:20px 0}.conflict-box h3{font-size:15px}.conflict-box p{font-size:11px}.check-option{display:flex;gap:10px;font-size:11px;align-items:flex-start;margin-top:20px}.check-option input{margin-top:4px}.roster label{display:flex;align-items:center;gap:13px;padding:14px 0;border-bottom:1px solid var(--line);font-size:12px}.roster label>span:nth-child(2){flex:1}.toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,15px);background:var(--ink);color:var(--paper);font-size:13px;padding:15px 25px;opacity:0;pointer-events:none;transition:transform .25s,opacity .25s;z-index:100;max-width:calc(100% - 32px);width:max-content;border-radius:2px;box-shadow:0 4px 25px #302b270c}.toast.visible{opacity:1;transform:translate(-50%,0)}
@media(min-width:1650px){.hero-copy{padding-top:65px}.hero{gap:105px}.hero h1{margin-top:35px}.hero-image{height:720px}.app-main{padding-top:70px}}
@media(max-width:1100px){.hero{gap:40px}.hero-copy{padding-top:30px}.hero h1{font-size:7vw}.hero-image{min-height:490px}.hero-actions{gap:20px}.hero-actions .button{padding:12px 16px;gap:24px}.hero-actions .underlined{font-size:11px}.training-card{padding:28px 23px}.training-card h3{font-size:29px}.class-row{gap:20px;grid-template-columns:50px 1.4fr .8fr 1.1fr 115px}.class-row .button{gap:16px}.pt-layout{gap:35px}.member-overview>div{padding:25px}.next-session h2{font-size:33px}.plan-composer{gap:55px}.contact-grid{gap:28px}.contact-note .button{padding:10px 14px;gap:12px}.owner-calendar{grid-template-columns:160px 1fr}.day-agenda{padding:23px}.agenda-heading h2{font-size:28px}}
@media(max-width:800px){.header nav{gap:23px}.header-cta{gap:18px}.header{height:94px}.hero{gap:28px;padding-top:28px;padding-bottom:37px}.hero h1{font-size:7.8vw;margin-top:24px}.hero h1 em{font-size:.76em}.hero-image{min-height:440px}.hero-copy{padding-top:23px}.hero-lede{font-size:12px}.hero-actions{align-items:flex-start;flex-direction:column;gap:17px;margin-top:25px}.hero-foot{font-size:8px;padding-top:30px;gap:8px}.hero-image figcaption{left:15px;right:15px;font-size:7px;flex-direction:column;gap:3px}.section-pad{padding-top:50px;padding-bottom:50px}.approach-grid{gap:40px}.approach-grid p{font-size:12px}.training-grid{grid-template-columns:1fr}.training-card{padding:25px;border:0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;column-gap:25px}.training-card h3{grid-column:1;margin-top:12px}.training-card p{grid-column:2;grid-row:1/4;align-self:center}.card-bottom{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;margin-top:18px;gap:35px}.card-bottom>span{margin:0}.card-bottom .text-link{width:auto;gap:30px}.section-heading>p{display:none}.app-main{padding-top:40px}.page-heading{gap:25px}.page-heading h1{font-size:49px}.page-heading>.button{font-size:12px;padding:10px 15px;gap:15px}.schedule-head{align-items:flex-start;flex-direction:column;gap:25px}.class-row{grid-template-columns:46px 1.4fr 1fr 110px;gap:18px;padding:22px 0}.availability{grid-column:2/4;grid-row:2;margin-top:-13px;font-size:10px}.class-row .button{grid-column:4;grid-row:1/3}.class-date{grid-row:1/3}.class-time{font-size:15px}.pt-layout{grid-template-columns:1fr;gap:25px}.pt-layout>div:first-child{display:grid;grid-template-columns:1fr 1fr;gap:0 35px}.pt-layout>div:first-child h2{grid-column:1;grid-row:1}.pt-layout>div:first-child>.muted{grid-column:1;grid-row:2}.pt-layout>div:first-child .details-list{grid-column:2;grid-row:1/4;margin:0}.pt-layout>div:first-child>.quiet-note{display:none}.member-overview{grid-template-columns:1fr 1fr}.member-plan{grid-column:1/-1;border-top:1px solid var(--line)!important;display:grid!important;grid-template-columns:1fr 1fr;gap:8px 25px}.member-plan>.eyebrow{grid-column:1}.member-plan h3{margin:0;grid-column:1}.member-plan p{grid-column:2;grid-row:1/3}.member-plan .text-link{grid-column:1/-1;margin-top:8px}.member-overview>div:nth-child(2){border-right:0}.owner-calendar{grid-template-columns:1fr}.owner-days{display:flex;gap:4px;overflow:auto;border-right:0;border-bottom:1px solid var(--line);padding:8px}.owner-days button{display:flex;flex-direction:column;align-items:center;gap:1px;padding:10px;min-width:85px;margin:0;flex:1}.owner-days span{font-size:10px}.owner-days small{font-size:9px}.owner-days strong{font-size:25px}.week-grid{grid-template-columns:repeat(5,minmax(155px,1fr))}.plan-composer{gap:30px}.plan-summary{padding:25px}.plan-total{font-size:63px}.plan-total span{font-size:10px}.contact-grid{grid-template-columns:1fr 1fr}.contact-note{grid-column:1/-1}.contact-note .button{width:max-content}.footer{gap:30px}.footer>div:nth-child(2){font-size:11px}}
@media(max-width:580px){:root{--gutter:22px}.preview-bar{font-size:9px;height:29px}.preview-bar>span:nth-child(2){display:none}.preview-bar a{font-size:9px}.header{height:88px;gap:15px;position:relative}.wordmark>span{font-size:28px}.wordmark small{font-size:7px}.header nav{display:none}.header nav.open{position:absolute;display:flex;flex-direction:column;gap:10px;left:0;right:0;top:88px;padding:20px 22px;background:var(--paper);border-bottom:1px solid var(--line);z-index:20;margin:0}.header-cta{margin-left:auto;font-size:10px;gap:12px}.header-cta span{font-size:16px}.mobile-menu{display:block;font-size:10px;padding:8px 0 8px 12px;border-left:1px solid var(--line);margin-left:8px}.profile{margin-left:auto;font-size:11px;gap:7px}.profile small{font-size:8px}.profile .avatar{height:29px;width:29px;font-size:9px}.hero{display:flex;flex-direction:column;padding-top:28px;gap:34px}.hero-copy{padding-top:3px}.hero h1{font-size:clamp(61px,16vw,89px);line-height:1.01;margin:24px 0}.hero h1 em{font-size:.75em}.hero .eyebrow{font-size:9px}.hero-lede{font-size:13px}.hero-actions{flex-direction:row;align-items:center;gap:20px;margin-top:27px}.hero-actions .button{font-size:11px;min-height:47px;padding:12px 15px;gap:21px}.hero-actions .underlined{font-size:10px;white-space:nowrap}.hero-foot{display:none}.hero-image{min-height:0;height:410px;max-height:110vw;align-self:auto}.hero-image img{object-position:50% 61%}.hero-image figcaption{font-size:8px;flex-direction:row;bottom:14px}.hero-image figcaption span{font-size:7px}.approach-grid{grid-template-columns:1fr;gap:25px;margin-top:20px}.approach-grid h2{font-size:41px}.approach-grid p{font-size:13px;max-width:360px}.section-pad{padding-top:41px;padding-bottom:42px}.section-heading{margin-bottom:25px}.section-heading h2{font-size:41px}.training-card{grid-template-columns:1fr;padding:25px 22px}.training-card h3{font-size:32px;margin:12px 0}.training-card p{grid-column:1;grid-row:auto;max-width:310px;font-size:12px}.training-card .card-bottom{margin-top:25px;gap:15px}.card-bottom>span{font-size:9px}.card-bottom .text-link{font-size:11px;gap:15px}.closing{padding:48px 22px 55px}.closing h2{font-size:50px}.closing .eyebrow{font-size:9px}.footer{grid-template-columns:1fr 1fr;gap:35px 25px;padding-top:40px}.footer>div:first-child{grid-column:1/-1}.footer>div:first-child p{font-size:11px}.footer .wordmark{margin-bottom:13px}.footer p{font-size:11px}.footer-links{font-size:11px;gap:11px}.footer-bottom{margin-top:0;font-size:8px}.app-main{padding-top:33px;padding-bottom:45px;min-height:600px}.page-heading{align-items:flex-start;flex-direction:column;margin-bottom:30px;gap:24px;position:relative}.page-heading h1{font-size:46px;line-height:1.12;max-width:330px}.page-heading p:not(.eyebrow){font-size:12px;margin-top:12px}.page-heading .eyebrow{font-size:9px}.allowance{position:absolute;right:0;bottom:-58px;font-size:8px;align-items:flex-end}.allowance strong{font-size:25px}.allowance strong span{font-size:16px}.tabs{gap:23px;padding-right:55px}.tabs button{font-size:11px;padding:12px 0 17px;white-space:nowrap}.schedule-head{margin:29px 0 22px;gap:22px}.schedule-head h2{font-size:34px}.schedule-head p{font-size:11px}.week-controls{gap:8px;width:100%;justify-content:space-between}.week-controls>span{font-size:11px;min-width:0}.week-controls button{min-height:38px;width:34px}.class-row{grid-template-columns:37px 1fr 83px;gap:12px;padding:24px 0}.class-date{grid-row:1/4;align-self:start}.class-date strong{font-size:29px}.class-date span{font-size:8px}.class-info{grid-column:2;grid-row:1}.class-info h3{font-size:13px}.class-info p{font-size:10px}.class-time{grid-column:3;grid-row:1;text-align:right;font-size:15px}.class-time small{font-size:9px}.availability{grid-column:2;grid-row:2;align-self:center;margin:0;font-size:9px;gap:5px}.class-row .button{grid-column:3;grid-row:2;min-height:37px;font-size:10px;padding:8px 10px;gap:10px}.class-row .button span{font-size:14px}.quiet-note{font-size:10px}.class-list+.quiet-note{margin-top:16px}.help-strip{margin-top:35px;font-size:11px}.help-strip .text-link{font-size:11px;gap:15px}.pt-layout{gap:28px;margin-top:30px}.pt-layout>div:first-child{display:block}.pt-layout h2{font-size:36px}.pt-layout>div:first-child>.muted{font-size:12px;margin-top:13px}.pt-layout .details-list{display:none}.pt-calendar{padding:18px 15px 20px}.day-picker{gap:5px;margin:20px 0}.day-picker button{padding:8px 0;font-size:9px}.day-picker strong{font-size:25px}.pt-calendar h3{font-size:10px}.time-grid{gap:7px}.time-grid button{font-size:11px;min-height:39px}.slot-action{flex-direction:column;align-items:stretch;gap:15px;margin-top:20px;padding-top:16px}.slot-action .button{width:100%}.member-overview{grid-template-columns:1fr}.member-overview>div{padding:26px;border-right:0;border-bottom:1px solid var(--line)}.next-session h2{font-size:37px}.member-allowance{display:grid!important;grid-template-columns:1fr 1fr;gap:10px}.member-allowance .eyebrow{grid-column:1/-1}.member-allowance .allowance-number{margin-top:3px;font-size:57px}.allowance-number span{font-size:10px;margin-left:5px}.allowance-track{margin-top:12px;align-self:center}.member-allowance p{grid-column:1/-1;font-size:10px}.member-plan{border-top:0!important;gap:10px 15px}.member-plan h3{font-size:17px}.member-plan p{font-size:11px}.member-plan .text-link{font-size:11px}.upcoming-heading{margin-top:35px}.upcoming-heading h2{font-size:38px}.upcoming-heading>span{font-size:9px}.booking-row{grid-template-columns:38px 1fr auto;gap:14px;padding:20px 0}.date-tile{padding-right:10px;grid-row:1/3}.date-tile strong{font-size:28px}.date-tile span{font-size:8px}.booking-row h3{font-size:12px}.booking-row p{font-size:10px}.booking-row .text-link{font-size:10px;gap:10px;grid-column:3;grid-row:1/3}.recurrence{grid-column:2;grid-row:2;font-size:9px;margin-top:-8px}.calendar-toolbar{gap:15px;flex-wrap:wrap;padding:23px 0 20px}.calendar-toolbar .week-controls{width:100%}.segmented{margin-left:auto}.segmented button{font-size:10px;min-height:28px;padding:5px 17px}.owner-days{padding:6px;gap:2px}.owner-days button{min-width:0;padding:9px 7px}.owner-days span{font-size:0}.owner-days span:first-letter{font-size:10px}.owner-days strong{font-size:24px}.owner-days small{font-size:8px;white-space:nowrap}.day-agenda{padding:22px 14px}.agenda-heading{margin-bottom:16px;gap:15px}.agenda-heading h2{font-size:25px}.agenda-heading>span{font-size:9px;white-space:nowrap}.agenda-event{padding:17px 11px;gap:13px;margin:10px 0}.event-time{font-size:12px;min-width:36px}.event-time small{font-size:9px}.event-content strong{font-size:12px}.event-content small{font-size:9px}.event-tag{font-size:0;gap:0}.event-tag span{font-size:15px}.calendar-legend{gap:13px;flex-wrap:wrap;font-size:8px}.calendar-legend>span:last-child{margin-left:0;width:100%}.calendar-legend i{width:5px;height:5px}.owner-tabs{padding-right:0;gap:30px}.members-heading{flex-direction:column;align-items:stretch;gap:20px}.members-heading h2{font-size:36px}.search input{width:100%;min-width:0;margin-top:5px}.member-row{display:grid;grid-template-columns:32px 1fr auto;gap:12px}.member-row>span:not(.avatar){grid-column:2;font-size:10px;margin-top:-8px;margin-right:0}.member-row>.text-link{grid-column:3;grid-row:1/3;font-size:11px;gap:10px}.member-row h3{font-size:12px}.member-row p{font-size:10px}.member-row .avatar{width:30px;height:30px;grid-row:1/3}.activity h2{font-size:36px}.activity article{gap:18px}.activity article p{font-size:12px}.plan-composer{grid-template-columns:1fr;gap:33px}.plan-composer h2{font-size:36px}.plan-composer .quiet-note{font-size:11px}.plan-summary{padding:28px}.plan-total{font-size:75px}.plan-composer label{font-size:11px}.contact-page h1{margin-bottom:38px;font-size:49px}.contact-grid{grid-template-columns:1fr;gap:38px}.contact-grid h2{font-size:36px;margin-bottom:20px}.contact-note{grid-column:1}.design-page h1{font-size:65px}.large-copy{font-size:15px}.design-swatches{grid-template-columns:1fr 1fr;margin:35px 0 45px}.design-swatches span{font-size:10px;padding:45px 16px 16px}.design-doc h2{font-size:32px;margin-top:35px}.design-doc p{font-size:13px}.legal-page h1{font-size:49px}.legal-page p{font-size:13px}dialog{padding:30px 24px;max-height:calc(100dvh - 24px);width:calc(100% - 24px)}dialog h2{font-size:40px}dialog p{font-size:12px}.close-dialog{right:10px;top:8px}.radio-option{padding:12px;font-size:11px}.radio-option small{font-size:10px}.form-split{gap:12px}.toast{font-size:12px;bottom:15px;padding:14px 18px;text-align:center}.button.full-width{font-size:12px}.review-session h3{font-size:16px}.roster label{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}dialog::backdrop{backdrop-filter:none}}

.roster-row{display:flex;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid var(--line);font-size:12px}.roster-row>span:nth-child(2){flex:1}.roster-row .text-link{font-size:10px;margin-left:7px;border:0}.roster-row .avatar{width:30px;height:30px}
