.ondemand{gap:1.5rem;min-width:0;display:grid}.ondemand h2{font-size:clamp(1.6rem,3vw,2.4rem)}.ondemand .panel{min-width:0;margin:0}.ondemand .button-row{flex-wrap:wrap}.ondemand .button,.ondemand-filters button,.ondemand a{min-height:44px}.ondemand button:focus-visible,.ondemand a:focus-visible,.ondemand summary:focus-visible{outline:3px solid var(--sage-dark);outline-offset:4px}.ondemand-offering{border:1px solid var(--line);background:var(--sage-pale);border-radius:1.4rem;grid-template-columns:1.4fr 1fr;gap:3rem;margin-block:0 4rem;padding:3rem;display:grid}.ondemand-offering h2{font-size:clamp(2rem,4vw,3.5rem)}.ondemand-offering p{max-width:42rem}.ondemand-offering__mark{color:var(--sage-dark);flex-direction:column;justify-content:center;align-items:center;gap:1rem;display:flex}.ondemand-offering__mark svg{stroke-width:1px;width:5rem;height:5rem}.ondemand-offering__mark span{font-family:Playfair Display,serif;font-size:2rem}.ondemand-public{padding-block:3.5rem}.ondemand-membership{background:var(--sage-pale);grid-template-columns:minmax(0,1fr) auto;gap:1.5rem;display:grid}.ondemand-membership p{margin-bottom:.7rem}.ondemand-membership__actions{flex-direction:column;justify-content:center;align-items:start;display:flex}.ondemand-status{color:var(--sage-dark);font-weight:600}.ondemand-terms{margin-block:1rem}.ondemand-terms summary{cursor:pointer;padding-block:.7rem;font-weight:600}.ondemand-terms>div{white-space:pre-wrap;border:1px solid var(--line);background:#fff;border-radius:.7rem;max-height:24rem;padding:1rem;line-height:1.7;overflow-y:auto}.ondemand-library-heading{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1.2rem;display:flex}.ondemand-library-heading h2{margin-bottom:.5rem}.ondemand-library-heading p{margin-bottom:0}.ondemand-search{gap:.5rem;width:min(100%,22rem);display:grid}.ondemand-search input{border:1px solid var(--line);border-radius:.7rem;width:100%;padding:.8rem 1rem}.ondemand-filters{flex-wrap:wrap;gap:.6rem;margin-bottom:1.5rem;display:flex}.ondemand-filters button{color:var(--sage-dark);border:1px solid var(--line);background:#fff;border-radius:2rem;padding:.55rem 1rem;font-weight:600}.ondemand-filters button[aria-pressed=true]{background:var(--sage-dark);color:#fff;border-color:var(--sage-dark)}.ondemand-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.3rem;display:grid}.ondemand-card{border:1px solid var(--line);background:#fff;border-radius:1rem;min-width:0;overflow:hidden}.ondemand-card--selected{outline:2px solid var(--sage-dark);outline-offset:3px}.ondemand-card__select{text-align:left;width:100%;height:100%;color:var(--ink);background:0 0;border:0;padding:0;display:block}.ondemand-card__image{aspect-ratio:16/9;background:var(--sage-pale);place-items:center;display:grid;position:relative;overflow:hidden}.ondemand-card__image>img{object-fit:cover;width:100%;height:100%}.ondemand-card__image>svg{width:3rem;height:3rem;color:var(--sage-dark)}.ondemand-card__play{background:#00000021;place-items:center;display:grid;position:absolute;inset:0}.ondemand-card__play svg{color:#fff;filter:drop-shadow(0 1px 3px #333);width:3.2rem;height:3.2rem}.ondemand-card__duration{color:#fff;background:#253e3e;border-radius:.4rem;align-items:center;gap:.35rem;padding:.3rem .5rem;font-size:.78rem;display:flex;position:absolute;bottom:.6rem;right:.6rem}.ondemand-card__duration svg{width:.85rem;height:.85rem}.ondemand-card__body{padding:1.1rem}.ondemand-card__body .eyebrow{margin-bottom:.55rem;font-size:.7rem;display:block}.ondemand-card__body h3{margin-bottom:.5rem;font-size:1.12rem}.ondemand-card__body p{color:var(--muted);margin-bottom:.6rem;font-size:.9rem}.ondemand-card__body small{color:var(--muted)}.ondemand-selected{scroll-margin-top:12rem}.ondemand-player,.ondemand-player-placeholder{aspect-ratio:16/9;background:#263333;border:0;border-radius:.8rem;width:100%;margin-bottom:1rem}.ondemand-player-placeholder{place-items:center;display:grid;position:relative;overflow:hidden}.ondemand-player-placeholder img{object-fit:cover;opacity:.6;width:100%;height:100%;position:absolute}.ondemand-player-placeholder button{max-width:calc(100% - 2rem);position:relative}.ondemand-admin-list{gap:1rem;margin-top:1rem;display:grid}.ondemand-admin-video__heading{align-items:center;gap:1.3rem;margin-bottom:1rem;display:flex}.ondemand-admin-video__heading img{aspect-ratio:16/9;object-fit:cover;border-radius:.6rem;width:min(32%,240px);height:auto}.ondemand-admin-video__heading h2{margin-bottom:.5rem;font-family:inherit;font-size:1.2rem}.ondemand-admin-video__heading p{margin-bottom:.3rem}.ondemand-admin .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ondemand-upload{border-top:1px solid var(--line);margin-top:1.5rem;padding-top:1rem}.ondemand-upload label{gap:.5rem;display:grid}.ondemand-upload input{max-width:100%}.ondemand-upload progress{width:100%;accent-color:var(--sage-dark)}.ondemand-pricing{border-top:2px solid var(--line);margin-top:2rem;padding-top:2rem;scroll-margin-top:12rem}.ondemand-pricing>button{justify-self:start}.ondemand-publish{border-top:1px solid var(--line);margin-top:1.2rem;padding-top:1rem}.ondemand-import{gap:1.25rem;min-width:0;display:grid}.ondemand-import .panel__heading{flex-wrap:wrap;gap:1rem}.ondemand-import h3{font-family:inherit;font-size:1.15rem}.ondemand-import label{gap:.45rem;display:grid}.ondemand-import input,.ondemand-import select{max-width:100%;min-height:44px}.ondemand-import .checkbox{align-items:start;display:flex}.ondemand-import .checkbox input{flex-shrink:0;min-height:auto;margin-top:.25rem}.ondemand-import-summary{background:var(--sage-pale);border-radius:.7rem;flex-wrap:wrap;gap:.7rem 1.5rem;padding:1rem;display:flex}.ondemand-import-summary p{margin:0}.ondemand-import-summary p:last-child{flex-basis:100%}.ondemand-import-list{gap:1rem;display:grid}.ondemand-import-card{gap:.6rem;display:grid}.ondemand-import-card p,.ondemand-import-card h3{margin:0}.ondemand-import-card ul{margin:0;padding-left:1.5rem}.ondemand-import-filename{overflow-wrap:anywhere;color:var(--muted);font-size:.85rem}.ondemand-import-progress{gap:.5rem;display:grid}.ondemand-import-progress progress{width:100%;accent-color:var(--sage-dark)}.ondemand-import-preview{border-top:1px solid var(--line);gap:1rem;padding-top:1rem;display:grid}.ondemand-import-thumbnail{aspect-ratio:16/9;object-fit:cover;border-radius:.6rem;width:min(100%,320px)}@media (width<=1000px){.ondemand-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ondemand-membership{grid-template-columns:1fr}}@media (width<=680px){.ondemand-offering{grid-template-columns:1fr;gap:1.5rem;padding:1.5rem}.ondemand-offering__mark{display:none}.ondemand-grid{grid-template-columns:1fr}.ondemand-public{padding-block:2rem}.ondemand-admin .form-grid{grid-template-columns:1fr}.ondemand-membership__actions,.ondemand-membership__actions .button{width:100%}.ondemand-admin-video__heading{flex-direction:column;align-items:start}.ondemand-admin-video__heading img{width:100%}.ondemand-selected{scroll-margin-top:9rem}}.calendar-options{max-width:100%;position:relative}.calendar-options>summary{cursor:pointer;white-space:normal;list-style:none}.calendar-options>summary::-webkit-details-marker{display:none}.calendar-options>summary:focus-visible,.calendar-options__links a:focus-visible{outline-offset:3px;outline:3px solid #537575}.calendar-options__links{background:#fff;border:1px solid #cddada;border-radius:12px;gap:4px;min-width:min(240px,100%);margin-top:8px;padding:8px;display:grid}.calendar-options__links a{color:#33333b;border-radius:6px;padding:10px 8px;font-size:13px;font-weight:700;display:block}.calendar-options__links a:hover{background:#ecf2f2}.calendar-options__links span{font-size:11px;font-weight:400}.calendar-options__links small{color:#5f646b;padding:4px 8px;font-size:11px;line-height:1.5}.calendar-options--compact>summary{padding:6px 8px;font-size:11px}.calendar-options--compact .calendar-options__links{min-width:0}.staff-push-settings{margin-bottom:1.25rem}.staff-push-settings summary{cursor:pointer;flex-wrap:wrap;align-items:center;gap:.7rem;min-height:44px;font-weight:650;display:flex}.staff-push-settings summary:focus-visible{outline:3px solid var(--sage,#64766a);outline-offset:5px;border-radius:4px}.staff-push-settings summary svg{flex:none;width:20px;height:20px}.staff-push-settings__state{margin-left:auto;font-size:.8rem;font-weight:400}.staff-push-settings__content{gap:1rem;padding-top:1.1rem;display:grid}.staff-push-settings__content p{margin:0}.staff-push-settings__content .notice{display:block}.staff-push-settings__preferences{border:0;gap:.5rem;margin:0;padding:0;display:grid}.staff-push-settings__preferences legend{margin-bottom:.5rem;font-weight:650}.staff-push-settings__preferences label,.staff-push-settings__studio label{align-items:center;gap:.7rem;min-height:44px;display:flex}.staff-push-settings input[type=checkbox]{flex:0 0 20px;width:20px;height:20px;margin:0}.staff-push-settings__studio{border-top:1px solid #dfe4df;padding-top:.8rem}.staff-push-settings__studio small{padding-top:.35rem;display:block}@media (width<=430px){.staff-push-settings__state{flex-basis:100%;margin-left:1.95rem}.staff-push-settings .button-row>button{justify-content:center;width:100%}}.online-registration-admin{margin-bottom:1.5rem}.online-registration-admin>p{max-width:75ch}.online-version-list,.online-admin-actions{flex-wrap:wrap;gap:.65rem;margin:1rem 0;display:flex}.online-wording-editor{border:1px solid #d3dfdf;border-radius:12px;margin:1rem 0;padding:1rem}.online-wording-editor summary,.online-record-modal summary{cursor:pointer;min-height:44px;padding:.65rem 0;font-weight:700}.online-wording-editor textarea{width:100%;min-height:70px}.online-record-modal{max-width:850px}.online-record-modal details{border-top:1px solid #d3dfdf;padding:.75rem 0}.online-record-modal summary{align-items:center;gap:.5rem;display:flex}.online-registration-admin .form-stack{margin-top:1rem}@media (width<=600px){.online-admin-actions{flex-direction:column}.online-admin-actions .button{width:100%}.online-wording-editor{padding:.75rem}}.online-client-preview{border:1px solid #d3dfdf;border-radius:12px;margin:1rem 0;padding:1rem}.online-client-preview>summary{cursor:pointer;min-height:44px;padding:.65rem 0;font-weight:700}.online-client-preview>.online-registration{padding-top:1rem}.online-record-modal>.online-registration__record{margin-top:1rem;padding:0}.online-record-modal>.online-registration__record>summary{padding:1rem 1.2rem}.online-record-modal>.online-registration__record>summary>span{min-width:0}.online-record-modal>.online-registration__record>summary small{font-weight:400}.online-record-modal>.online-registration__record>summary>svg{margin-left:auto}.online-registration{--registration-border:#d6e3e3;--registration-accent:#2f7372;width:min(900px,100%);color:var(--ink,#33333b);margin-inline:auto}.online-registration__heading{max-width:720px;margin-bottom:1.6rem}.online-registration__heading h1{margin-bottom:.8rem;font-size:clamp(2.2rem,5vw,3.5rem);line-height:1.08}.online-registration__heading>p:last-child{color:var(--muted);margin-bottom:0;font-size:1.05rem}.online-registration__outline{color:var(--registration-accent);flex-wrap:wrap;gap:.5rem 1.2rem;margin:1.3rem 0;padding:0;font-size:.88rem;font-weight:700;list-style:none;display:flex}.online-registration__outline a{align-items:center;gap:.45rem;min-height:44px;display:inline-flex}.online-registration__outline span{background:#ecf2f2;border-radius:50%;place-items:center;width:1.45rem;height:1.45rem;font-size:.75rem;display:grid}.online-registration__form{gap:1.25rem;display:grid}.online-registration__section{border:1px solid var(--registration-border);background:#fff;border-radius:1.15rem;min-width:0;padding:clamp(1.15rem,3vw,2rem);scroll-margin-top:100px}.online-registration__section>header{grid-template-columns:auto minmax(0,1fr);gap:.85rem;margin-bottom:1.5rem;display:grid}.online-registration__number{width:2.1rem;height:2.1rem;color:var(--registration-accent);background:#ecf2f2;border-radius:50%;flex:none;place-items:center;font-weight:800;display:grid}.online-registration__section h2{margin-bottom:.5rem;font-size:clamp(1.7rem,3vw,2.2rem);line-height:1.15}.online-registration__section header p{color:var(--muted);margin-bottom:0;font-size:.95rem}.online-registration__section header .eyebrow{color:var(--registration-accent);margin-bottom:.4rem;font-size:.72rem}.online-registration__grid{grid-template-columns:1fr 1fr;gap:1.15rem 1.25rem;display:grid}.online-registration__wide{grid-column:1/-1}.online-registration label{align-content:start;gap:.5rem;min-width:0;font-weight:650;line-height:1.45;display:grid}.online-registration label small,.online-registration__hint{color:var(--muted);font-size:.88rem;font-weight:400;line-height:1.5}.online-registration input:not([type=radio]):not([type=checkbox]),.online-registration textarea{width:100%;min-width:0;min-height:50px;color:var(--ink);font:inherit;background:#fff;border:1px solid #a6bdbd;border-radius:.65rem;padding:.8rem .9rem;font-size:1rem;line-height:1.45}.online-registration textarea{resize:vertical;min-height:105px}.online-registration input::placeholder,.online-registration textarea::placeholder{color:#70777a}.online-registration :is(input,textarea,button,a,summary):focus-visible{outline-offset:3px;outline:3px solid #2f7372}.online-registration [aria-invalid=true]{border-color:#a03e2e!important}.online-registration__field-error{color:#993d2d;font-size:.88rem;font-weight:500}.online-registration__login-email{border-top:1px solid var(--registration-border);color:var(--muted);align-items:flex-start;gap:.65rem;margin:1.35rem 0 0;padding-top:1rem;font-size:.86rem;display:flex}.online-registration__login-email svg{flex:none;margin-top:.15rem}.online-registration__login-email span{overflow-wrap:anywhere}.online-registration label>span{color:var(--ink);font-size:1rem;font-weight:650}.online-registration label.online-registration__confirmation>span{font-size:.95rem;font-weight:400;line-height:1.65}.online-registration label>.online-registration__field-error{color:#993d2d;font-size:.88rem;font-weight:500}.online-registration__choices{border:0;min-width:0;margin:0;padding:0}.online-registration__choices legend{width:100%;margin-bottom:.75rem;padding:0;font-size:1rem;font-weight:650;line-height:1.6}.online-registration__choices>div{flex-wrap:wrap;gap:.75rem;display:flex}.online-registration__choices label{cursor:pointer;flex:1;min-width:100px;max-width:160px;position:relative}.online-registration__choices input{opacity:0;width:1px;height:1px;position:absolute}.online-registration__choices label span{background:#fff;border:1px solid #a6bdbd;border-radius:.7rem;justify-content:center;align-items:center;gap:.55rem;min-height:52px;padding:.75rem 1.3rem;font-weight:750;display:flex}.online-registration__choices input:checked+span{border:2px solid var(--registration-accent);color:#265e5d;background:#e9f3f2;padding:calc(.75rem - 1px) calc(1.3rem - 1px)}.online-registration__choices input:focus-visible+span{outline:3px solid var(--registration-accent);outline-offset:3px}.online-registration__choices input[aria-invalid=true]+span{border-color:#a03e2e}.online-registration__questions{gap:1.5rem;display:grid}.online-registration__question{gap:.85rem;display:grid}.online-registration__question+.online-registration__question{border-top:1px solid var(--registration-border);padding-top:1.5rem}.online-registration__question-details{border-left:3px solid #b2d7d5;padding-left:1rem}.online-registration__privacy{color:#49605f;background:#f2f7f6;border-radius:.75rem;align-items:flex-start;gap:.7rem;margin:0 0 1.3rem;padding:1rem;font-size:.88rem;display:flex}.online-registration__privacy svg{flex:none;margin-top:.1rem}.online-registration__privacy p{margin:0}.online-registration__consent-note{border-left:3px solid var(--registration-accent);background:#f2f7f6;border-radius:0 .7rem .7rem 0;margin:1.2rem 0 0;padding:1rem 1.1rem}.online-registration__consent-note p{margin:.4rem 0 0}.online-registration__consent-note strong{display:block}.online-registration__health-questions{border-top:1px solid var(--registration-border);margin-top:1.7rem;padding-top:1.5rem}.online-registration__declaration{color:#40464a;font-size:1rem;line-height:1.8}.online-registration__declaration p{white-space:pre-wrap;margin-bottom:1.1rem;line-height:1.8}.online-registration__declaration p:last-child{margin-bottom:0}.online-registration__sign{border-top:1px solid var(--registration-border);gap:1.25rem;margin-top:1.5rem;padding-top:1.5rem;display:grid}.online-registration label.online-registration__confirmation{border:1px solid var(--registration-border);background:#f8faf9;border-radius:.75rem;grid-template-columns:24px minmax(0,1fr);gap:.8rem;padding:1rem;font-size:.95rem;font-weight:500;display:grid}.online-registration__confirmation input{width:21px;height:21px;accent-color:var(--registration-accent);margin:3px 0 0}.online-registration__signature{max-width:560px}.online-registration__sign-note{color:var(--muted);margin:0;font-size:.84rem}.online-registration__submit{min-height:54px!important}.online-registration__error{color:#7e3426;background:#fff7f3;border:1px solid #b56856;border-radius:.75rem;padding:1rem 1.15rem;scroll-margin-top:100px}.online-registration__error p{margin:.35rem 0 0}.online-registration__error ul{gap:.35rem;margin:.65rem 0 0;padding-left:1.2rem;display:grid}.online-registration__error a{text-underline-offset:3px;text-decoration:underline}.online-registration__pending{background:#edf5f3;border:1px solid #b5d4d0;border-radius:.85rem;gap:.8rem;margin:0 0 1.3rem;padding:1rem 1.2rem;display:flex}.online-registration__pending>svg{flex:none;margin-top:.1rem}.online-registration__pending p{color:var(--muted);margin:.2rem 0 0;font-size:.9rem}.online-registration__complete{background:#f1f7f5;border:1px solid #b7d3cd;border-radius:1.15rem;gap:1rem;padding:clamp(1.4rem,4vw,2.5rem);scroll-margin-top:100px;display:grid}.online-registration__complete-icon{color:#2d695c;background:#d4eae2;border-radius:50%;place-items:center;width:3rem;height:3rem;display:grid}.online-registration__complete-icon svg{width:1.55rem;height:1.55rem}.online-registration__complete h2{margin:0;font-size:clamp(1.9rem,4vw,2.6rem);line-height:1.15}.online-registration__complete p{max-width:680px;margin:0}.online-registration__statuses{flex-wrap:wrap;gap:.55rem;margin:.3rem 0;display:flex}.online-registration__statuses span{background:#fff;border:1px solid #b9d2cb;border-radius:999px;align-items:center;gap:.4rem;padding:.4rem .65rem;font-size:.8rem;font-weight:650;display:inline-flex}.online-registration__aftercare{border:1px solid var(--registration-border);background:#fff;border-radius:.85rem;margin-top:1.2rem;padding:1rem 1.2rem}.online-registration__aftercare p{color:var(--muted);margin:.45rem 0 0;font-size:.9rem}.online-registration__aftercare .button-row{margin-top:.8rem}.online-registration__withdraw{border-top:1px solid var(--registration-border);margin-top:1rem;padding-top:1rem}.online-registration__withdraw p{margin-bottom:.8rem}.online-registration__history{gap:1rem;margin-top:1.5rem;display:grid}.online-registration__history h2{margin-bottom:.3rem;font-size:1.8rem}.online-registration__history>header p{color:var(--muted);margin:0;font-size:.92rem}.online-registration__record{border:1px solid var(--registration-border,#d6e3e3);color:var(--ink,#33333b);background:#fff;border-radius:.9rem;overflow:hidden}.online-registration__record>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:.9rem;min-height:66px;padding:1.1rem 1.2rem;list-style:none;display:flex}.online-registration__record>summary::-webkit-details-marker{display:none}.online-registration__record>summary>span{gap:.25rem;display:grid}.online-registration__record>summary small{color:var(--muted);font-size:.8rem}.online-registration__record>summary>svg{flex:none}.online-registration__record[open]>summary>svg{transform:rotate(180deg)}.online-registration__record-body{border-top:1px solid var(--registration-border,#d6e3e3);gap:1.5rem;padding:clamp(1rem,3vw,1.5rem);display:grid}.online-registration__record-body h3{margin-bottom:.7rem;font-size:1.1rem}.online-registration__record-body p{white-space:pre-wrap;overflow-wrap:anywhere}.online-registration__record-body dl{gap:.85rem;margin:0;display:grid}.online-registration__record-body dl>div{gap:.25rem;display:grid}.online-registration__record-body dt{color:var(--muted);font-size:.86rem;line-height:1.55}.online-registration__record-body dd{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:.95rem;line-height:1.55}.online-registration__record-meta{color:var(--muted);overflow-wrap:anywhere;font-size:.78rem;line-height:1.65}.online-registration__record-privacy{background:#f2f7f6;border-radius:.5rem;margin:0;padding:.8rem 1rem;font-size:.87rem}.online-registration__draft-banner{background:#fff5e4;border:1px solid #d7b876;border-radius:.8rem;margin:0 0 1.5rem;padding:1rem 1.2rem}.online-registration__draft-banner p{margin:.4rem 0 0}.online-registration__loading{color:var(--muted);align-items:center;gap:.65rem;padding:1.5rem 0;display:flex}@media (width<=600px){.online-registration__grid{grid-template-columns:1fr}.online-registration__section>header{gap:.6rem}.online-registration__section{padding:1.15rem 1rem}.online-registration__number{width:1.8rem;height:1.8rem;font-size:.85rem}.online-registration__outline{gap:.15rem .8rem;font-size:.8rem}.online-registration__complete .button-row,.online-registration__aftercare .button-row{grid-template-columns:1fr;display:grid}.online-registration__complete .button,.online-registration__aftercare .button{width:100%}.online-registration__record>summary{padding:1rem}.online-registration__confirmation{padding:.8rem!important}.online-registration__login-email{font-size:.82rem}.online-registration__question-details{padding-left:.75rem}}@media (prefers-reduced-motion:reduce){.online-registration *{scroll-behavior:auto;transition:none!important}}.booking-journey-summary{background:#f7faf5;border:1px solid #d7dfd5;margin-bottom:1.25rem}.booking-journey-summary .eyebrow{align-items:center;gap:.5rem;display:flex}.booking-journey-summary .eyebrow svg{width:1rem;height:1rem}.booking-journey-summary h2{margin:.4rem 0}.booking-journey-summary p{max-width:65ch}.client-schedule-toolbar .select-label select{max-width:100%;min-height:44px}.client-schedule-toolbar{flex-wrap:wrap}@media (width<=600px){.booking-journey-summary .button-row{align-items:stretch}.booking-journey-summary .button-row>button{width:100%;min-height:44px}.client-schedule-toolbar .select-label{flex:44%;min-width:0}.client-schedule-toolbar .select-label select{width:100%}}.client-achievements{min-width:0;color:var(--ink)}@media (width<=900px){.app-nav.app-nav--client nav:not(.open){overscroll-behavior-inline:contain;flex-flow:row;max-width:100%;margin-top:0;display:flex;overflow-x:auto}.app-nav.app-nav--client nav button{white-space:nowrap;flex:none;min-height:44px}}.achievement-heading{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.achievement-heading h1,.achievement-heading h2{margin-bottom:.6rem}.achievement-heading p:not(.eyebrow){max-width:40rem;color:var(--muted)}.achievement-heading .button{flex-shrink:0;min-height:44px}.achievement-summary{border:1px solid var(--line);background:linear-gradient(125deg,#f2f8f7,#fff);border-radius:1.2rem;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);margin:0 0 2rem;display:grid;overflow:hidden}.achievement-summary__progress{min-width:0;padding:1.6rem}.achievement-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:0;display:grid}.achievement-stats>div{flex-direction:column-reverse;justify-content:flex-end;gap:.4rem;min-width:0;display:flex}.achievement-stats dt{color:var(--muted);font-size:.78rem;line-height:1.5}.achievement-stats dd{color:var(--sage-dark);letter-spacing:-.05em;font-variant-numeric:tabular-nums;flex-wrap:wrap;align-items:baseline;gap:.35rem;margin:0;font-size:2.3rem;font-weight:700;line-height:1.15;display:flex}.achievement-stats dd span{letter-spacing:0;color:var(--muted);font-family:DM Sans,system-ui,sans-serif;font-size:.75rem;font-weight:500}.achievement-week-status{color:var(--sage-dark);align-items:flex-start;gap:.5rem;margin:1.2rem 0 0;font-size:.82rem;line-height:1.6;display:flex}.achievement-week-status svg{flex-shrink:0;margin-top:.08rem}.achievement-next{border-left:1px solid var(--line);background:#ffffff80;align-items:flex-start;gap:.9rem;min-width:0;padding:1.6rem;display:flex}.achievement-next>div{flex:1;min-width:0}.achievement-next__icon{width:2.5rem;height:2.5rem;color:var(--sage-dark);background:#e4f0ed;border-radius:50%;flex-shrink:0;place-items:center;display:grid}.achievement-next__icon svg{width:1.2rem;height:1.2rem}.achievement-next__label{color:var(--sage-dark);margin:0 0 .4rem;font-size:.72rem;font-weight:700}.achievement-next strong{font-size:1.03rem;line-height:1.5;display:block}.achievement-next small{color:var(--muted);font-size:.72rem;display:block}.achievement-next p:not(.achievement-next__label){color:var(--muted);margin:.5rem 0 0;font-size:.8rem}.achievement-progress{appearance:none;width:100%;height:6px;color:var(--sage-dark);accent-color:var(--sage-dark);background:#e1e9e8;border:0;border-radius:999px;display:block;overflow:hidden}.achievement-progress::-webkit-progress-bar{background:#e1e9e8;border-radius:999px}.achievement-progress::-webkit-progress-value{background:var(--sage-dark);border-radius:999px}.achievement-progress::-moz-progress-bar{background:var(--sage-dark);border-radius:999px}.achievement-next .achievement-progress{margin:.9rem 0 .4rem}.achievement-collection-heading{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.6rem;margin-bottom:1.75rem;display:flex}.achievement-collection-heading h2{margin:0;font-size:1.8rem}.achievement-collection-heading>span{color:var(--sage-dark);border:1px solid var(--line);background:#fff;border-radius:999px;padding:.45rem .8rem;font-size:.8rem}.achievement-first-note{color:var(--muted);margin-top:-.5rem;font-size:.9rem}.achievement-category{margin-bottom:2.5rem}.achievement-category h2{letter-spacing:0;margin:0 0 .35rem;font-family:DM Sans,system-ui,sans-serif;font-size:1.15rem;line-height:1.4}.achievement-category__intro{color:var(--muted);max-width:45rem;margin-bottom:1.1rem;font-size:.85rem}.achievement-badges{grid-template-columns:repeat(auto-fit,minmax(min(100%,160px),1fr));gap:1rem;margin:0;padding:0;list-style:none;display:grid}.achievement-badge{border:1px solid var(--line);text-align:center;background:#fff;border-radius:1rem;flex-direction:column;align-items:center;min-width:0;padding:1.2rem 1rem 1.1rem;display:flex}.achievement-badge--earned{background:linear-gradient(155deg,#f2f8f6 0%,#fff 75%);border-color:#a9cdca}.achievement-medal{stroke-width:1.5px;flex-shrink:0;width:82px;height:94px;margin-bottom:.75rem;display:block}.achievement-medal__ribbon{fill:#eef2f1;stroke:#c3d0ce}.achievement-medal__outer{fill:#eef3f2;stroke:#c3d0ce}.achievement-medal__inner{fill:#fff;stroke:#c3d0ce}.achievement-medal__laurel{stroke:#b3c5c2;stroke-width:1.8px}.achievement-medal__number{fill:#788d88;letter-spacing:-1px;font-family:DM Sans,system-ui,sans-serif;font-size:22px;font-weight:700}.achievement-medal__number--wide{letter-spacing:-.5px;font-size:17px}.achievement-medal__unit{fill:#788d88;letter-spacing:1px;font-family:DM Sans,system-ui,sans-serif;font-size:5px;font-weight:700}.achievement-medal__spark{fill:#e4eeeb;stroke:#9cb2ad;stroke-width:1.8px}.achievement-medal--earned .achievement-medal__ribbon{fill:#83c9c7;stroke:#4b9692}.achievement-medal--earned .achievement-medal__outer{fill:#cae5dd;stroke:#69a69b}.achievement-medal--earned .achievement-medal__inner{fill:#f7fbf6;stroke:#82b4a7}.achievement-medal--earned .achievement-medal__laurel{stroke:#7cab9b}.achievement-medal--earned .achievement-medal__number,.achievement-medal--earned .achievement-medal__unit{fill:#2f7372}.achievement-medal--earned .achievement-medal__spark{fill:#b1d8ca;stroke:#2f7372}.achievement-badge h3{margin:0 0 .45rem;font-size:.97rem;line-height:1.4}.achievement-badge__description{color:var(--muted);margin:0 0 1rem;font-size:.78rem;line-height:1.6}.achievement-badge__result{width:100%;color:var(--muted);flex-direction:column;align-items:center;gap:.65rem;margin-top:auto;font-size:.72rem;display:flex}.achievement-badge__state{border:1px solid #d6e0de;border-radius:999px;justify-content:center;align-items:center;gap:.3rem;padding:.25rem .65rem;font-size:.65rem;font-weight:700;line-height:1.5;display:inline-flex}.achievement-badge__state--earned{color:#285e54;background:#e3f0e8;border-color:#bcd6c8}.achievement-badge__state svg{width:.85rem;height:.85rem}.achievement-badge__result time{line-height:1.5}.achievement-badge__result small{font-size:.72rem}.achievement-footnote{border-top:1px solid var(--line);color:var(--muted);padding-top:1rem}.achievement-footnote p{margin:0 0 .5rem;font-size:.76rem;line-height:1.7}.achievement-footnote p:last-child{margin-bottom:0}.achievement-footnote svg{vertical-align:-.12rem;width:.85rem;height:.85rem;margin-right:.2rem}.achievement-unavailable{border:1px dashed var(--line);background:#fff;border-radius:.8rem;margin:1rem 0 1.5rem;padding:1.25rem}.achievement-unavailable p{color:var(--muted);font-size:.9rem}.achievement-refresh-error{color:var(--muted);border-left:3px solid var(--sage-dark);background:var(--sage-pale);padding:.65rem 1rem;font-size:.85rem}.client-achievements .button:focus-visible{outline:3px solid var(--sage-dark);outline-offset:3px}.client-achievements--compact .achievement-heading{align-items:center;margin-bottom:1rem}.client-achievements--compact .achievement-heading h2{margin:0;font-size:1.6rem}.client-achievements--compact .achievement-heading .button{padding:.55rem .9rem;font-size:.8rem}.client-achievements--compact .achievement-summary{border-radius:.8rem;margin-bottom:1rem}.client-achievements--compact .achievement-summary__progress,.client-achievements--compact .achievement-next{padding:1.2rem}.client-achievements--compact .achievement-stats dd{font-size:2rem}.client-achievements--compact .achievement-stats dt{font-size:.72rem}.client-achievements--compact .achievement-next__icon{display:none}.client-achievements--compact .achievement-next strong{font-size:.95rem}.achievement-preview{margin-bottom:1.2rem}.achievement-collection-count{color:var(--muted);margin:0 0 .75rem;font-size:.8rem}.achievement-collection-count strong{color:var(--sage-dark)}.achievement-preview__empty{color:var(--muted);margin:0;font-size:.82rem}.achievement-recent{grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;margin:0;padding:0;list-style:none;display:grid}.achievement-recent li{align-items:center;gap:.65rem;min-width:0;display:flex}.achievement-recent .achievement-medal{width:38px;height:46px;margin:0}.achievement-recent li>span{gap:.25rem;min-width:0;display:grid}.achievement-recent strong{font-size:.78rem;line-height:1.5}.achievement-recent small{color:var(--muted);font-size:.65rem;line-height:1.5}@media (width<=1150px){.achievement-summary{grid-template-columns:minmax(0,1fr)}.achievement-next{border-left:0;border-top:1px solid var(--line)}.achievement-recent{grid-template-columns:repeat(auto-fit,minmax(min(100%,175px),1fr))}}@media (width<=480px){.achievement-summary__progress,.achievement-next{padding:1.1rem}.achievement-stats{gap:.65rem}.achievement-stats dd{gap:.2rem;font-size:1.85rem}.achievement-stats dd span{font-size:.65rem}.achievement-stats dt{font-size:.69rem}.achievement-next{gap:.65rem}.achievement-collection-heading h2{font-size:1.55rem}.achievement-heading .button{width:100%}.client-achievements--compact .achievement-summary__progress,.client-achievements--compact .achievement-next{padding:.85rem}.client-achievements--compact .achievement-stats dd{font-size:1.8rem}.client-achievements--compact .achievement-stats dt{font-size:.66rem}.achievement-recent{grid-template-columns:1fr}.achievement-recent .achievement-medal{width:34px;height:42px}.achievement-badges{gap:.8rem}.achievement-category{margin-bottom:2rem}}@media (forced-colors:active){.achievement-medal__ribbon,.achievement-medal__outer,.achievement-medal__inner,.achievement-medal__laurel,.achievement-medal__spark{stroke:canvastext}.achievement-medal__number,.achievement-medal__unit{fill:canvastext}.achievement-progress{appearance:auto}.achievement-badge__state--earned{border:1px solid canvastext}}.client-cancellation .notice{display:block}.client-cancellation .notice p{margin:.65rem 0 0}.client-cancellation .form-stack{margin-top:1rem}.client-cancellation .checkbox{align-items:flex-start}.client-cancellation .checkbox input{flex:none;margin-top:.2rem}@media (width<=480px){.client-cancellation .button-row{flex-direction:column;align-items:stretch}.client-cancellation .button-row .button{white-space:normal;width:100%}}:root{color:#33333b;font-synthesis:none;--ink:#33333b;--muted:#5f646b;--sage:#83c9c7;--sage-dark:#2f7372;--sage-pale:#ecf2f2;--cream:#fff;--clay:#2f7372;--warm:#ecf2f2;--white:#fff;--line:#d6e3e3;--shadow:0 20px 60px #33333b1a;background:#fff;font-family:DM Sans,system-ui,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:#fff;min-width:0;min-height:100vh;margin:0}button,input,textarea,select{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}a{color:inherit;text-decoration:none}svg{stroke-width:1.8px;width:1.15rem;height:1.15rem}h1,h2,h3,p{margin-top:0}h1,h2{letter-spacing:-.025em;font-family:Playfair Display,serif}h1{font-size:clamp(2.5rem,6vw,5.6rem);line-height:.98}h2{font-size:clamp(2rem,4vw,3.4rem);line-height:1.05}h3{font-size:1.1rem}p{line-height:1.65}.muted{color:var(--muted)}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;background:var(--ink);color:#fff;border-radius:.5rem;padding:.8rem 1rem;position:fixed;top:-5rem;left:1rem}.skip-link:focus{top:1rem}.section-shell{width:min(1180px,100% - 3rem);margin-inline:auto}.section{padding:7rem 0}.section--tint{background:var(--sage-pale)}.site-header{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);z-index:50;background:#fffffff5;border-bottom:1px solid #83c9c759;justify-content:space-between;align-items:center;height:76px;padding:0 max(1.5rem,50vw - 590px);display:flex;position:sticky;top:0}.brand{color:var(--ink);background:0 0;border:0;align-items:center;gap:.7rem;font-size:1rem;display:flex}.brand>span,.brand-mark{background:var(--sage);color:#fff;border-radius:50%;place-items:center;width:2.25rem;height:2.25rem;display:grid}.site-nav{align-items:center;gap:1.4rem;display:flex}.site-nav>button:not(.button):not(.icon-button),.site-nav>a{color:#4f525a;background:0 0;border:0;font-weight:600}.site-nav>button:hover,.site-nav>a:hover{color:var(--sage-dark)}.mobile-menu{background:0 0;border:0;display:none}.site-footer{background:var(--ink);color:#fff;grid-template-columns:2fr 1fr 1fr;gap:3rem;padding:4rem max(1.5rem,50vw - 590px);display:grid}.site-footer>div{flex-direction:column;align-items:flex-start;gap:.7rem;display:flex}.site-footer p,.site-footer span,.site-footer a{color:#d7e4e4;font-size:.92rem}.site-footer .brand-mark{background:var(--sage);margin-bottom:.5rem}.button{border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:.55rem;min-height:46px;padding:.72rem 1.2rem;font-weight:700;transition:all .2s;display:inline-flex}.button:hover{transform:translateY(-1px)}.button--primary{background:var(--ink);color:#fff;box-shadow:0 8px 22px #33333b2e}.button--primary:hover{background:#202027}.button--ghost{color:var(--ink);background:#ffffffb8;border-color:#abc5c4}.button--small{min-height:38px;padding:.5rem .9rem;font-size:.88rem}.button--wide{width:100%}.button--danger-ghost{color:#963f2c;background:#fff;border-color:#d9a89a}.button-row{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.icon-button{color:inherit;background:0 0;border:0;border-radius:50%;place-items:center;width:2.5rem;height:2.5rem;display:grid}.icon-button:hover{background:#83c9c733}.text-button{color:var(--sage-dark);background:0 0;border:0;padding:.35rem 0;font-weight:700}.eyebrow{text-transform:uppercase;letter-spacing:.13em;color:var(--sage-dark);align-items:center;gap:.45rem;margin-bottom:.8rem;font-size:.74rem;font-weight:800;display:flex}.hero{grid-template-columns:1.05fr .95fr;align-items:center;gap:6vw;min-height:calc(100vh - 76px);padding-block:5rem;display:grid}.hero__copy h1{margin-bottom:1.5rem}.hero__copy h1 em{color:var(--clay);font-weight:600}.hero__lead{max-width:620px;color:var(--muted);font-size:1.13rem}.hero__facts{color:var(--muted);flex-wrap:wrap;gap:1.4rem;margin-top:2.5rem;font-size:.86rem;display:flex}.hero__facts span{align-items:center;gap:.4rem;display:flex}.launch-banner{background:var(--warm);border:1px solid #b9d9d8;border-radius:1rem;gap:1rem;margin-top:-2rem;padding:1.1rem 1.4rem;display:flex}.launch-banner span{color:#33333b}.section-heading{justify-content:space-between;align-items:flex-end;gap:2rem;margin-bottom:2.5rem;display:flex}.section-heading h2{margin-bottom:.6rem}.section-heading p{color:var(--muted);margin-bottom:0}.view-toggle{background:var(--sage-pale);border-radius:999px;padding:.25rem;display:flex}.view-toggle button{color:var(--muted);background:0 0;border:0;border-radius:999px;padding:.6rem 1rem;font-weight:700}.view-toggle button.active{color:var(--ink);background:#fff;box-shadow:0 3px 10px #25332d1a}.timetable-tools{justify-content:space-between;align-items:center;margin-bottom:1.2rem;display:flex}.date-nav{align-items:center;gap:.7rem;display:flex}.select-label{align-items:center;gap:.5rem;display:flex}.select-label select,.booking-row select{border:1px solid var(--line);background:#fff;border-radius:.65rem;min-height:42px;padding:.55rem .8rem}.class-list{gap:.75rem;display:grid}.class-card{border:1px solid var(--line);background:#fff;border-radius:1.2rem;align-items:stretch;transition:all .2s;display:flex;overflow:hidden}.class-card:hover{border-color:#aebdb5;box-shadow:0 10px 30px #2d433912}.class-card__date{background:var(--sage-pale);flex-direction:column;justify-content:center;align-items:center;min-width:90px;display:flex}.class-card__date strong{font:600 1.8rem Playfair Display}.class-card__date span{text-transform:uppercase;letter-spacing:.08em;font-size:.72rem}.class-card__body{flex:1;justify-content:space-between;align-items:center;gap:1rem;padding:1.15rem 1.3rem;display:flex}.class-card__body h3{margin:.35rem 0}.class-card__body p{color:var(--muted);flex-wrap:wrap;align-items:center;gap:.35rem;margin:0;font-size:.87rem;display:flex}.class-card__availability{text-align:right;flex-direction:column;align-items:flex-end;gap:.35rem;display:flex}.class-card__availability>strong{font-size:1.05rem}.spaces{color:#2f7372;font-size:.8rem;font-weight:700}.waitlist{color:#a1533c;font-size:.8rem;font-weight:700}.pill{text-transform:capitalize;border-radius:999px;padding:.25rem .55rem;font-size:.68rem;font-weight:800;display:inline-flex}.pill--group,.pill--private{color:#2f7372;background:#ecf2f2}.package-grid{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.package-card{border:1px solid var(--line);background:#fff;border-radius:1.2rem;padding:2rem;position:relative}.package-card--featured{border:2px solid var(--sage);transform:translateY(-.6rem)}.popular{background:var(--sage-dark);color:#fff;border-radius:999px;padding:.3rem .65rem;font-size:.7rem;position:absolute;top:1rem;right:1rem}.package-price{flex-direction:column;margin:1.5rem 0;display:flex}.package-price strong{font:600 2.2rem Playfair Display}.package-price span{color:var(--muted);font-size:.8rem}.package-card ul{gap:.7rem;margin:1.5rem 0;padding:0;list-style:none;display:grid}.package-card li{align-items:center;gap:.5rem;font-size:.9rem;display:flex}.package-card li svg{color:var(--clay)}.contact-layout{grid-template-columns:.85fr 1.15fr;align-items:start;gap:8vw;display:grid}.contact-promise{background:var(--sage-pale);border-radius:1rem;gap:.8rem;padding:1rem;display:flex}.contact-promise>svg{color:var(--sage)}.contact-promise div{display:grid}.contact-promise span{color:var(--muted);font-size:.82rem}.contact-form{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:1.2rem;padding:2rem}.form-stack{gap:1rem;display:grid}.form-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}label{gap:.4rem;display:grid}label>span{color:#536159;font-size:.82rem;font-weight:700}input,textarea,select{width:100%;color:var(--ink);background:#fff;border:1px solid #bfd1d1;border-radius:.65rem;outline:0;padding:.72rem .8rem}input:focus,textarea:focus,select:focus{border-color:var(--sage);box-shadow:0 0 0 3px #83c9c738}textarea{resize:vertical}.checkbox{grid-template-columns:auto 1fr;align-items:flex-start;gap:.7rem;display:flex}.checkbox input{width:1.05rem;height:1.05rem;margin-top:.15rem}.checkbox span{font-weight:500}.input-with-icon{background:#fff;border:1px solid #bfd1d1;border-radius:.65rem;align-items:center;padding-left:.7rem;display:flex}.input-with-icon input{border:0;box-shadow:none!important}.input-with-icon>svg{color:var(--muted);flex:none}.modal-backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:80;background:#33333b94;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.auth-panel,.form-modal{width:min(480px,100%);max-height:calc(100vh - 2rem);box-shadow:var(--shadow);background:#fff;border-radius:1.4rem;padding:2.2rem;position:relative;overflow:auto}.auth-panel__close,.form-modal__close{position:absolute;top:1rem;right:1rem}.auth-panel h2{font-size:2.3rem}.form-modal{width:min(680px,100%)}.legal-copy{white-space:pre-wrap;border:1px solid var(--line);color:var(--muted);background:#fff;border-radius:.8rem;margin-bottom:1.2rem;padding:1rem}.toast{z-index:100;max-width:min(420px,100% - 2rem);box-shadow:var(--shadow);color:#fff;border-radius:.8rem;align-items:center;gap:.7rem;padding:.85rem 1rem;display:flex;position:fixed;bottom:1rem;right:1rem}.toast--success{background:#2f6550}.toast--error{background:#94422f}.toast .icon-button{margin-left:auto}.app-shell{background:#ecf2f2;grid-template-columns:250px 1fr;min-height:calc(100vh - 76px);display:grid}.app-nav{background:var(--ink);color:#fff;min-height:calc(100vh - 76px);padding:2rem 1rem}.app-nav--admin{background:#33333b}.app-nav__welcome{align-items:center;gap:.7rem;padding:.5rem .6rem 2rem;display:flex}.app-nav__welcome div{display:grid}.app-nav__welcome small{color:#aebcb5}.avatar{background:var(--clay);border-radius:50%;place-items:center;width:2.4rem;height:2.4rem;font-weight:800;display:grid}.app-nav nav{gap:.35rem;display:grid}.app-nav nav button{color:#c6d0cb;text-align:left;background:0 0;border:0;border-radius:.65rem;align-items:center;gap:.65rem;padding:.8rem;font-weight:600;display:flex}.app-nav nav button.active,.app-nav nav button:hover{color:#fff;background:#ffffff1a}.nav-badge{background:var(--clay);color:#fff;border-radius:999px;margin-left:auto;padding:.1rem .4rem;font-size:.7rem}.app-content{min-width:0;padding:3rem clamp(1.2rem,4vw,4rem)}.app-heading{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:2rem;display:flex}.app-heading h1{margin-bottom:.5rem;font-size:clamp(2.2rem,5vw,3.8rem)}.app-heading p:last-child{color:var(--muted);margin-bottom:0}.notice{text-align:left;border:0;border-radius:1rem;gap:.8rem;width:100%;margin-bottom:1rem;padding:1rem 1.2rem;display:flex}.notice>svg{flex:none}.notice p{margin:0}.notice--warm{background:var(--warm);color:#33333b}.notice--action{background:var(--sage-pale);color:var(--ink)}.stat-grid{grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1rem;display:grid}.stat-grid--four{grid-template-columns:repeat(4,1fr)}.stat-grid>article{border:1px solid var(--line);background:#fff;border-radius:1rem;align-items:center;gap:1rem;padding:1.2rem;display:flex}.stat-grid>article>span:first-child:not(.package-balance span){background:var(--sage-pale);width:2.8rem;height:2.8rem;color:var(--sage);border-radius:.8rem;place-items:center;display:grid}.stat-grid article div{display:grid}.stat-grid article div strong{font-size:1.45rem}.stat-grid article small{color:var(--muted)}.panel-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.panel{border:1px solid var(--line);background:#fff;border-radius:1rem;min-width:0;margin-bottom:1rem;padding:1.4rem}.panel--span{grid-row:span 2}.panel__heading{justify-content:space-between;align-items:center;display:flex}.panel h2{font-size:1.45rem}.compact-row,.credit-row{border-top:1px solid #d6e3e3;align-items:center;gap:.8rem;padding:.8rem 0;display:flex}.compact-row div,.credit-row div{display:grid}.compact-row small,.credit-row small{color:var(--muted)}.credit-row>span{background:var(--sage-pale);border-radius:999px;margin-left:auto;padding:.3rem .6rem;font-size:.78rem;font-weight:700}.date-chip{background:var(--sage-pale);border-radius:.6rem;place-items:center;width:2.5rem;height:2.5rem;font:600 1.1rem Playfair Display;display:grid}.mini-empty,.empty-state{text-align:center;color:var(--muted);padding:2rem}.mini-empty svg,.empty-state svg{color:#83c9c7;width:2.3rem;height:2.3rem}.empty-state{background:#fff;border:1px dashed #83c9c7;border-radius:1rem}.class-card--selectable{padding-left:3.3rem;position:relative}.class-card--selectable.selected{border-color:var(--sage);box-shadow:0 0 0 2px #83c9c72e}.class-select{position:absolute;top:50%;left:1rem;transform:translateY(-50%)}.class-select input{opacity:0;position:absolute}.fake-check{border:1px solid #83c9c7;border-radius:.35rem;place-items:center;width:1.4rem;height:1.4rem;display:grid}.class-select input:checked+.fake-check{background:var(--sage);color:#fff}.booking-row{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:1rem;padding:1rem 0;display:flex}.booking-row h3{margin:.4rem 0}.booking-row p{color:var(--muted);margin:0}.package-balance{grid-template-columns:1fr auto;gap:.6rem;display:grid!important}.package-balance>span{text-align:right;font-size:1.7rem;font-weight:800;display:grid}.package-balance progress{width:100%;height:.5rem;accent-color:var(--sage);grid-column:1/-1}.subheading{margin:2rem 0 1rem;font-size:1.5rem}.form-card-grid{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.form-card{border:1px solid var(--line);background:#fff;border-radius:1rem;padding:1.4rem}.form-card>svg{width:2rem;height:2rem;color:var(--sage);margin:1rem 0}.form-status{text-transform:capitalize;border-radius:999px;align-items:center;gap:.3rem;padding:.25rem .55rem;font-size:.7rem;font-weight:800;display:inline-flex}.form-status.complete,.form-status.required{color:#2f7372;background:#ecf2f2}.consent-box{background:var(--sage-pale);border-radius:.8rem;padding:1rem}.consent-box span{display:grid}.consent-box small{color:var(--muted)}.privacy-action{border-top:1px solid var(--line);gap:.8rem;padding-top:1rem;display:flex}.privacy-action p{color:var(--muted);font-size:.85rem}.table-scroll{overflow:auto}table{border-collapse:collapse;text-align:left;width:100%}th{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:.72rem}th,td{border-bottom:1px solid var(--line);padding:.8rem}td small{color:var(--muted);display:block}.metric-list{gap:.8rem;display:grid}.metric-list span{border-bottom:1px solid var(--line);justify-content:space-between;padding-bottom:.6rem;display:flex}.panel-icon{background:var(--sage-pale);width:3rem;height:3rem;color:var(--sage);border-radius:.8rem;place-items:center;display:grid}details summary{cursor:pointer;color:var(--sage-dark);margin-top:1rem;font-weight:700}.enquiry-list{gap:1rem;display:grid}.enquiry-card{grid-template-columns:1fr 1fr;gap:2rem;display:grid}.staff-page{min-height:calc(100vh - 76px);padding-block:4rem}.register-row{border-top:1px solid var(--line);grid-template-columns:1fr auto auto;align-items:center;gap:1rem;padding:.9rem 0;display:grid}.safety-flag{color:#a34f38;display:block}.security-page,.fatal-state{background:radial-gradient(circle at top right,#ecf2f2,transparent 45%),var(--cream);place-items:center;min-height:100vh;padding:2rem;display:grid}.security-card{width:min(660px,100%);box-shadow:var(--shadow);background:#fff;border-radius:1.5rem;padding:clamp(1.5rem,4vw,3rem)}.security-card--small{width:min(460px,100%)}.security-card h1{font-size:clamp(2rem,5vw,3.4rem)}.security-icon{background:var(--sage-pale);width:3.5rem;height:3.5rem;color:var(--sage);border-radius:50%;place-items:center;margin-bottom:1rem;display:grid}.setup-step{border-top:1px solid var(--line);margin-top:1.2rem;padding-top:1.2rem}.totp-uri{white-space:normal;overflow-wrap:anywhere;background:#ecf2f2;border-radius:.5rem;margin-top:.7rem;padding:.8rem;font-size:.7rem;display:block}.recovery-codes{background:#ecf2f2;border-radius:.6rem;grid-template-columns:1fr 1fr;gap:.4rem;padding:1rem;display:grid}.recovery-codes code{font-weight:700}.fatal-state{text-align:center;align-content:center}.fatal-state>svg{width:3rem;height:3rem;color:var(--sage)}@media (width<=900px){.hero{grid-template-columns:1fr;padding-top:3rem}.package-grid,.form-card-grid{grid-template-columns:1fr 1fr}.app-shell{grid-template-columns:1fr}.app-nav{z-index:35;min-height:auto;padding:.6rem;position:sticky;top:76px}.app-nav__welcome{display:none}.app-nav nav{display:flex;overflow:auto}.app-nav nav button{white-space:nowrap}.stat-grid--four{grid-template-columns:1fr 1fr}.contact-layout{grid-template-columns:1fr}.site-footer{grid-template-columns:1.5fr 1fr 1fr}}@media (width<=680px){.section-shell{width:min(100% - 2rem,1180px)}.section{padding:4.5rem 0}.site-header{height:68px;padding-inline:1rem}.mobile-menu{display:grid}.site-nav{box-shadow:var(--shadow);background:#fff;flex-direction:column;align-items:stretch;padding:1rem;display:none;position:absolute;top:68px;left:0;right:0}.site-nav.open{display:flex}.site-nav .icon-button{align-self:center}.hero{min-height:auto;padding-block:3.5rem}.hero__facts{gap:.7rem}.launch-banner{flex-direction:column;margin-top:0}.section-heading{flex-direction:column;align-items:flex-start}.timetable-tools{flex-direction:column;align-items:stretch;gap:.8rem}.date-nav{justify-content:space-between}.class-card__date{min-width:62px}.class-card__body{flex-direction:column;align-items:flex-start}.class-card__availability{text-align:left;flex-direction:row;align-items:center;width:100%}.class-card__availability .button{margin-left:auto}.package-grid,.form-card-grid,.panel-grid,.form-grid,.stat-grid,.stat-grid--four{grid-template-columns:1fr}.package-card--featured{transform:none}.contact-form{padding:1.2rem}.site-footer{grid-template-columns:1fr}.app-nav{top:68px}.app-content{padding:1.5rem 1rem}.app-heading{flex-direction:column;align-items:flex-start}.booking-row,.register-row{flex-direction:column;align-items:flex-start;display:flex}.enquiry-card{grid-template-columns:1fr}.auth-panel,.form-modal{padding:1.4rem}.recovery-codes{grid-template-columns:1fr}.class-card--selectable{padding-left:2.8rem}.hero__copy .button-row .button{width:100%}}.totp-qr{border:1px solid var(--line);background:#fff;border-radius:1rem;width:fit-content;max-width:100%;margin:1rem auto;padding:1rem;box-shadow:0 8px 24px #173f3914}.totp-qr svg{max-width:100%;height:auto;display:block}.security-page{min-height:100dvh;padding-top:max(2rem,env(safe-area-inset-top));padding-bottom:max(2rem,env(safe-area-inset-bottom))}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}html,body{overflow-x:hidden}.hero,.hero__copy,.hero__facts,.site-header{min-width:0;max-width:100%}.mobile-menu{flex:none}@media (width<=680px){.hero__copy{overflow-wrap:anywhere;width:100%}.hero__facts{width:100%}.hero__facts span{white-space:nowrap}.site-header{width:100vw}.brand{min-width:0}.brand strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.hero__copy .button-row{grid-template-columns:minmax(0,1fr);width:100%;display:grid}.hero__copy .button-row .button{width:100%;max-width:100%}.section-shell{width:auto;margin-inline:1.5rem}.hero__copy{overflow-wrap:normal;word-break:normal}.hero__lead{width:100%}.hero__facts{flex-direction:column;align-items:flex-start}.site-header{width:auto;padding-inline:1.5rem}}html{background:#fff}.site-frame,body{min-height:100dvh}body{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.site-header{height:auto;min-height:76px;padding-top:env(safe-area-inset-top)}.brand img{object-fit:contain;flex:none;width:104px;height:auto}.brand strong{font-size:1rem}.footer-logo{background:#fff;border-radius:.5rem;width:160px;height:auto}.brand-mark{display:none!important}.pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.pricing-card{border:1px solid var(--line);background:#fff;border-radius:1.2rem;flex-direction:column;padding:1.5rem;display:flex}.pricing-card .button{margin-top:auto}.pricing-options{margin:1rem 0 1.5rem;display:grid}.pricing-options>div{border-top:1px solid var(--line);justify-content:space-between;gap:1rem;padding:.72rem 0;display:flex}.pricing-options span{color:var(--muted);font-size:.88rem}.pricing-options strong{white-space:nowrap}.turnstile-shell{width:100%;min-height:65px;overflow:hidden}.cf-turnstile{width:100%}.inline-admin-form{align-items:center;gap:.5rem;min-width:230px;display:flex}.inline-admin-form input{min-width:0}.private-rate{background:var(--aqua-pale,#ecf2f2);border-radius:.9rem;gap:.2rem;margin:1rem 0;padding:1rem;display:grid}.private-rate span,.private-rate small{color:var(--muted);font-size:.82rem}.private-rate strong{font-size:1.15rem}.class-card--private-slot{border-color:var(--aqua,#83c9c7)}.class-type-settings{align-items:end;gap:.6rem;min-width:500px;display:flex}.class-type-settings label:not(.checkbox){gap:.25rem;min-width:110px;display:grid}.class-type-settings label>span{color:var(--muted);font-size:.78rem}.form-modal--compact{max-width:540px}.schedule-change-note{background:var(--warm);border-radius:.65rem;max-width:680px;padding:.7rem .8rem;color:#6f4638!important;margin-top:.65rem!important}.form-stack input[readonly]{color:var(--muted);background:#f3f5f4}.modal-backdrop{padding-top:max(1rem,env(safe-area-inset-top));padding-bottom:max(1rem,env(safe-area-inset-bottom));overflow:auto}.auth-panel,.form-modal{max-height:calc(100dvh - 2rem - env(safe-area-inset-top) - env(safe-area-inset-bottom));overscroll-behavior:contain}.site-footer{padding-bottom:max(4rem,calc(2rem + env(safe-area-inset-bottom)))}@media (width<=680px){button,.button,.icon-button,.text-button,.site-nav>a{min-height:44px}.mobile-menu,.icon-button,.date-nav>button{min-width:44px}input,textarea,select,.select-label select,.booking-row select{min-height:46px;font-size:16px}.checkbox input{min-height:1.1rem}.site-header{min-height:68px;padding-left:max(1rem,env(safe-area-inset-left));padding-right:max(1rem,env(safe-area-inset-right))}.brand img{width:80px}.brand strong{font-size:.9rem}.pricing-grid{grid-template-columns:1fr}.pricing-card{padding:1.2rem}.section-shell{margin-inline:1rem}.site-nav{padding-bottom:max(1rem,env(safe-area-inset-bottom))}.app-nav nav button{min-height:44px}.site-footer a{align-items:center;min-width:44px;min-height:44px;display:flex}.table-scroll{-webkit-overflow-scrolling:touch}.auth-panel,.form-modal{border-radius:1rem;padding:1.25rem}.inline-admin-form{flex-direction:column;align-items:stretch;min-width:150px}.class-type-settings{min-width:420px}.class-card--private-slot .class-card__availability{align-items:stretch}.class-card--private-slot .button{width:100%}}.auth-logo{width:150px;height:auto;margin:0 0 1rem;display:block}.request-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:1rem;margin-bottom:2rem;display:grid}.request-card{flex-direction:column;gap:.8rem;display:flex}.request-card h2,.request-card h3{margin:.35rem 0}.package-group{margin-top:2rem}.package-group>h3{margin-bottom:1rem}.package-card label{gap:.45rem;margin:1rem 0;display:grid}.package-card select{border:1px solid var(--line);background:#fff;border-radius:.7rem;width:100%;min-height:44px;padding:.65rem}.safety-flag{color:#8a4b32;align-items:center;gap:.35rem;margin-top:.3rem;display:flex}.safety-flag svg{width:16px;height:16px}.register-row .button-row{flex-wrap:wrap}@media (width<=600px){.request-grid{grid-template-columns:1fr}.request-card .panel__heading{align-items:flex-start}.request-card .button-row,.register-row .button-row{grid-template-columns:1fr;width:100%;display:grid}.request-card .button,.register-row .button{width:100%;min-height:44px}.package-group{margin-top:1.5rem}}.package-catalogue-admin{gap:1rem;display:grid}.catalogue-toolbar{align-items:flex-start}.catalogue-form{max-width:920px}.catalogue-preview{margin:0}.catalogue-preview>div{gap:.35rem;display:grid}.catalogue-list-panel{margin-top:.5rem}.catalogue-filters{flex-wrap:wrap}.catalogue-list,.catalogue-card{margin:0}.form-status.retired{color:#705d46;background:#f0ece6}.form-status.discarded{color:#8a4b32;background:#f5e9e6}.verification-state{gap:1rem;display:grid}.verification-state h2,.verification-state p{margin:0}.verification-state__icon{color:#fff;background:var(--sage-dark);border-radius:50%;place-items:center;width:3.25rem;height:3.25rem;display:grid}.verification-state__icon svg{width:1.8rem;height:1.8rem}.verification-state__actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.verification-state__actions .text-button{align-items:center;gap:.4rem;display:inline-flex}.verification-state__actions svg{width:1rem;height:1rem}.notice--preview{color:var(--sage-dark);background:#ecf2f2;border-color:#83c9c7}.notice--preview>svg{color:var(--sage-dark)}.notice--credits{border:1px solid var(--line);color:var(--ink);background:#fff}.notice--credits>svg{color:var(--sage-dark)}.form-status.draft{color:#2f7372;background:#ecf2f2}.form-card--draft{border-style:dashed}.form-card--draft>.button{margin-top:auto}.draft-field-preview{gap:.65rem;margin:1rem 0 1.5rem;display:grid}.draft-field-preview>div{border:1px dashed var(--line);background:#fff;border-radius:.75rem;justify-content:space-between;align-items:flex-start;gap:1rem;padding:.8rem;display:flex}.draft-field-preview span{color:var(--muted);text-align:right;font-size:.86rem}.preview-access-panel{margin:1.5rem 0 2rem}.preview-access-panel>.form-stack{max-width:760px;margin-bottom:1.5rem}.preview-access-panel textarea{resize:vertical}@media (width<=680px){.verification-state__actions{grid-template-columns:1fr;display:grid}.verification-state__actions .text-button{justify-content:center;width:100%}.draft-field-preview>div{flex-direction:column}.draft-field-preview span{text-align:left}.preview-access-panel .panel__heading{flex-direction:column;align-items:flex-start}.preview-access-panel>.form-stack .button{width:100%}}.site-header{height:auto;min-height:0;padding-top:max(.65rem,env(safe-area-inset-top));grid-template-rows:auto auto;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);place-items:center;row-gap:.35rem;padding-bottom:.65rem;display:grid}.site-header__spacer{grid-area:1/1}.brand{grid-area:1/2;justify-self:center;padding:0}.brand img{width:160px;max-width:100%;height:auto;display:block}.site-nav{text-align:center;flex-wrap:wrap;grid-area:2/1/auto/-1;justify-content:center;justify-self:center;min-width:0}.mobile-menu{grid-area:1/3;justify-self:end}.site-footer{color:var(--ink);border-top:1px solid var(--line);padding:3rem max(1.5rem,calc((100vw - 1180px)/2)) max(3rem,calc(2rem + env(safe-area-inset-bottom)));text-align:center;background:#fff;flex-direction:column;justify-content:center;align-items:center;gap:.8rem;display:flex}.site-footer .footer-logo{background:#fff;border-radius:0;width:180px;max-width:100%;height:auto;display:block}.site-footer p,.site-footer span,.site-footer a{color:var(--ink);margin:0}.site-footer nav,.site-footer__policies{text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:.65rem 1.25rem;display:flex}.site-footer a{color:var(--sage-dark);font-weight:700}.site-footer__policies{color:var(--muted);font-size:.88rem}.site-footer>.site-footer__policies{text-align:center;flex-direction:column;align-items:center;gap:.3rem;width:100%}.site-footer__policies span{text-align:center;width:100%;display:block}.site-footer .site-footer__credit{min-height:44px;color:var(--muted);border-radius:.25rem;justify-content:center;align-items:center;gap:.4rem;margin-top:.5rem;padding:.25rem .5rem;font-size:.8125rem;font-weight:400;line-height:1.4;text-decoration:none;display:inline-flex}.site-footer__credit strong{font-weight:600}.site-footer__credit .bytemotive-credit-mark{flex:none;width:22px;height:22px;display:block}.site-footer .site-footer__credit:hover,.site-footer .site-footer__credit:focus-visible{color:var(--sage-dark)}.site-footer .site-footer__credit:focus-visible{outline:2px solid var(--sage-dark);outline-offset:3px}.auth-logo{width:180px;max-width:100%;height:auto;margin:0 auto 1rem}.app-shell,.app-nav,.app-content,.app-content>*,.app-heading,.app-heading>*,.notice,.notice>div,.stat-grid,.stat-grid>*,.panel-grid,.panel,.panel>*,.panel__heading,.panel__heading>*,.compact-row,.compact-row>*,.credit-row,.credit-row>*,.mini-empty,.empty-state,.package-balance,.package-balance>*{min-width:0;max-width:100%}.app-content{overflow-wrap:anywhere;width:100%}.notice{align-items:flex-start;overflow:hidden}.notice>div{flex:1}.notice strong,.notice p,.panel h2,.panel h3,.compact-row strong,.compact-row small,.credit-row strong,.credit-row small,.mini-empty p,.empty-state p{overflow-wrap:anywhere;word-break:normal}.panel__heading{flex-wrap:wrap;gap:.75rem}.stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.panel-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.package-balance{grid-template-columns:minmax(0,1fr) auto}.class-card,.class-card__body,.class-card__body>div{min-width:0;max-width:100%}.class-card:focus,.client-calendar-session:focus{outline:3px solid var(--sage-dark);outline-offset:3px}.contact-layout,.contact-layout>*,.contact-form,.contact-promise,.contact-promise>*{min-width:0;max-width:100%}.contact-form{width:100%}@media (width<=680px){.site-header{padding-left:max(1rem,env(safe-area-inset-left));padding-right:max(1rem,env(safe-area-inset-right));padding-bottom:.55rem;position:relative;top:auto}.brand img{width:130px}.site-nav{text-align:center;grid-area:auto;justify-content:center;align-items:stretch;top:100%;left:0;right:0}.site-nav>button,.site-nav>a{text-align:center;justify-content:center;width:100%}.app-shell{width:100%;max-width:100vw;overflow:hidden}.app-nav{width:100%;max-width:100vw;position:relative;top:auto;overflow:hidden}.app-nav nav{overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;width:100%;max-width:100%;overflow-x:auto}.app-nav nav button{flex:none}.app-content{width:100%;max-width:100vw;padding:1.25rem 1rem;overflow:hidden}.app-heading{align-items:flex-start;width:100%}.notice{gap:.65rem;width:100%;padding:1rem}.stat-grid,.panel-grid{grid-template-columns:minmax(0,1fr)}.stat-grid>article,.panel{width:100%}.stat-grid>article{padding:1rem}.panel__heading{align-items:flex-start}.mini-empty,.empty-state{width:100%;padding:1.25rem .5rem}.compact-row,.credit-row{align-items:flex-start}.compact-row div,.credit-row div{flex:1}.credit-row>span{white-space:nowrap;flex:none}.class-card__body{width:100%}.class-card__availability{flex-wrap:wrap;min-width:0;max-width:100%}.site-footer{padding-inline:1rem}.site-footer nav,.site-footer__policies{width:100%}}@media (width<=340px){.section-shell{margin-inline:.5rem}.contact-form{padding:.75rem}.turnstile-shell{justify-content:center;display:flex}}.site-header{height:64px;min-height:64px;padding-top:env(safe-area-inset-top);justify-content:center;align-items:center;padding-bottom:0;display:flex}.site-nav{grid-area:auto;justify-content:center;justify-self:auto}.hero__brand-lockup{grid-template-columns:minmax(190px,245px) minmax(0,1fr);align-items:center;gap:clamp(1.25rem,3vw,2.5rem);margin-bottom:1.5rem;display:grid}.hero__logo{object-fit:contain;width:100%;height:auto;display:block}.hero__opening{min-width:0}.hero__opening h1{margin-bottom:0;font-size:clamp(2.55rem,4.7vw,4.5rem)}.hero__copy>p,.hero__copy>.button-row,.hero__copy>.hero__facts{margin-left:0}.turnstile-explainer,.turnstile-status{margin:0;font-size:.88rem;line-height:1.5}.turnstile-explainer{color:var(--muted)}.turnstile-status{background:var(--sage-pale);color:var(--sage-dark);border-radius:.75rem;padding:.75rem .9rem;font-weight:700}.document-actions,.document-action-bar{flex-wrap:wrap;align-items:center;gap:.55rem;display:flex}.document-actions{margin-top:1rem}.document-action-bar{margin:1rem 0}.upload-button{cursor:pointer;position:relative}.document-filename{overflow-wrap:anywhere;color:var(--ink);gap:.25rem;display:grid}.document-filename small{color:var(--muted);font-size:.78rem;font-weight:400}.admin-document-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr))}.admin-document-grid .form-card{flex-direction:column;align-items:flex-start;display:flex}.admin-document-grid .document-actions{margin-top:auto}.document-history{gap:.6rem;margin-top:.8rem;display:grid}.document-history>div{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:.75rem;padding:.65rem 0;display:flex}.document-history>div>span:first-child{display:grid}.form-modal--document{width:min(1180px,100%)}.document-completion-layout{grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);align-items:start;gap:1.25rem;display:grid}.form-document-frame{border:1px solid var(--line);background:#f7f9f9;border-radius:.8rem;width:100%;height:min(68vh,720px);display:block}.form-document-frame--draft{height:min(58vh,640px);margin-bottom:1rem}.form-completion-fields{min-width:0}.booking-gate-notice{margin-bottom:1rem}@media (width<=900px){.hero__brand-lockup{grid-template-columns:220px minmax(0,1fr);max-width:760px}.document-completion-layout{grid-template-columns:minmax(0,1fr) minmax(280px,.9fr)}}@media (width<=680px){.site-header{height:60px;min-height:60px;padding-top:env(safe-area-inset-top);justify-content:flex-end;position:relative;top:auto}.mobile-menu{margin-left:auto}.site-nav{grid-area:auto;top:100%;left:0;right:0}.hero__brand-lockup{flex-direction:column;align-items:center;gap:.6rem;margin-bottom:1.5rem;display:flex}.hero__logo{width:min(250px,80vw)}.hero__opening{width:100%}.hero__opening .eyebrow{text-align:center;justify-content:center}.hero__opening h1{text-align:center;font-size:clamp(2.55rem,12vw,3.8rem)}.hero__lead{text-align:center;font-family:inherit;font-size:.74rem;font-weight:800}.hero__copy>.button-row,.hero__facts{text-align:left}.document-actions,.document-action-bar{grid-template-columns:minmax(0,1fr);width:100%;display:grid}.document-actions .button,.document-action-bar .button,.upload-button,.form-modal--document{width:100%}.document-completion-layout{display:block}.form-document-frame{display:none}.document-action-bar{margin-bottom:1.25rem}.document-history>div{flex-direction:column;align-items:flex-start}}@media (width<=340px){.hero__logo{width:min(210px,80vw)}.hero__opening h1{font-size:clamp(2.3rem,12vw,2.9rem)}}.onboarding-pack-summary{border-color:#a9cfce;justify-content:space-between;align-items:center;gap:1.25rem;padding:clamp(1.25rem,3vw,2rem);display:flex}.onboarding-pack-summary h2{margin-bottom:.55rem;font-size:clamp(1.55rem,3vw,2.25rem)}.onboarding-pack-summary p:last-child{color:var(--muted);margin-bottom:0}.onboarding-form{gap:1.25rem;width:min(980px,100%);margin-inline:auto;display:grid}.onboarding-section{border:1px solid var(--line);background:#fff;border-radius:1.25rem;gap:1.25rem;padding:clamp(1.15rem,3.5vw,2.25rem);display:grid;box-shadow:0 10px 35px #33333b0d}.onboarding-step-heading{border-bottom:1px solid var(--line);grid-template-columns:auto auto minmax(0,1fr);align-items:start;gap:.75rem;padding-bottom:1rem;display:grid}.onboarding-step-heading h2{margin:0 0 .35rem;font-size:clamp(1.65rem,3.5vw,2.35rem)}.onboarding-step-heading p{color:var(--muted);margin:0}.onboarding-step-number,.onboarding-step-icon{border-radius:50%;flex:none;place-items:center;width:2.4rem;height:2.4rem;font-weight:800;display:grid}.onboarding-step-number{background:var(--ink);color:#fff}.onboarding-step-icon{background:var(--sage-pale);color:var(--sage-dark)}.onboarding-profile-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.onboarding-field--wide{grid-column:1/-1}.onboarding-profile-grid input[readonly]{color:var(--muted);background:#f4f7f7}.onboarding-document{border:1px solid var(--line);background:#fbfcfc;border-radius:1rem;gap:1rem;padding:1rem;display:grid}.onboarding-document-header{border:1px solid var(--line);background:var(--sage-pale);border-radius:1rem;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1rem;display:flex}.onboarding-document .onboarding-document-header{border:0;border-bottom:1px solid var(--line);background:0 0;border-radius:0;padding:0 0 1rem}.onboarding-document-header h3{margin:.65rem 0 .25rem;font-size:1.15rem}.onboarding-document-header p{color:var(--muted);overflow-wrap:anywhere;margin:0;font-size:.82rem}.onboarding-document-header .document-actions{justify-content:flex-end;margin:0}.onboarding-inline-document{gap:.65rem;display:grid}.onboarding-inline-document__frame{border:1px solid var(--line);background:#fff;border-radius:.8rem;width:100%;height:min(72vh,780px);min-height:560px;display:block}.onboarding-inline-document small{color:var(--muted)}.onboarding-question-list,.onboarding-policy-list{gap:1rem;display:grid}.yes-no-field{background:#fff;border:1px solid #bfd1d1;border-radius:1rem;min-width:0;margin:0;padding:1rem}.yes-no-field legend{width:100%;color:var(--ink);padding:0 .2rem;font-weight:750;line-height:1.45}.yes-no-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin-top:.8rem;display:grid}.yes-no-options label{cursor:pointer;display:block;position:relative}.yes-no-options input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.yes-no-options label>span{min-height:54px;color:var(--ink);background:#fff;border:2px solid #bfd1d1;border-radius:.8rem;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1rem;font-size:1rem;font-weight:800;transition:border-color .15s,background .15s,color .15s;display:flex}.yes-no-options input:focus-visible+span{outline-offset:2px;outline:3px solid #2f737259}.yes-no-options input:checked+span{border-color:var(--sage-dark);background:var(--sage-pale);color:var(--sage-dark);box-shadow:inset 0 0 0 1px var(--sage-dark)}.yes-no-options label:last-child input:checked+span{color:#3f4449;background:#f1f2f2;border-color:#5f646b;box-shadow:inset 0 0 0 1px #5f646b}.yes-no-field>small{color:var(--muted);margin-top:.65rem;display:block}.yes-no-field--acknowledgement{background:#f8fbfb;border-color:#a9cfce}.health-question{gap:.75rem;display:grid}.health-question-details{border-left:4px solid var(--sage);background:var(--sage-pale);border-radius:.5rem;padding:1rem}.health-question-details textarea{background:#fff}.onboarding-signature{border:2px solid #a9cfce}.onboarding-signature>.document-actions{margin:0}.onboarding-signature-intent{align-items:center;padding:1.1rem}.onboarding-signature-intent input{flex:none;width:1.35rem;height:1.35rem}.onboarding-submit{min-height:54px;font-size:1rem}.onboarding-privacy-note{text-align:center;color:var(--muted);margin:0;font-size:.84rem}.onboarding-draft-notice{margin-top:2rem}.auth-verification-notice{margin-top:1rem}.auth-verification-notice strong{margin-bottom:.3rem;display:block}.auth-verification-actions{margin:.2rem 0 1rem}.notice--action-pending{color:var(--ink);background:#fff;border:2px solid #a9cfce}.forms-heading{margin-bottom:1rem}.required-agreement{border:2px solid #a9cfce;width:min(980px,100%);margin:0 auto 1.5rem}.agreement-document-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.agreement-document-list>div{border:1px solid var(--line);background:var(--sage-pale);border-radius:.8rem;align-items:flex-start;gap:.7rem;padding:.9rem;display:flex}.agreement-document-list svg{width:1.25rem;color:var(--sage-dark);flex:none}.agreement-document-list span{display:grid}.agreement-document-list small{color:var(--muted);overflow-wrap:anywhere}.agreement-acceptance{padding-top:.25rem}.agreement-intent{align-items:flex-start}.agreement-intent input{flex:none;width:1.35rem;height:1.35rem}.agreement-combined-document .onboarding-inline-document__frame{height:min(70vh,760px)}.agreement-complete-card{border:2px solid #a9cfce;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1rem;display:grid}.agreement-complete-card>svg{background:var(--sage-pale);width:2.8rem;height:2.8rem;color:var(--sage-dark);border-radius:50%;padding:.6rem}.agreement-complete-card h2,.agreement-complete-card p{margin-bottom:.35rem}.agreement-complete-card .button-row{justify-content:flex-end}.adult-confirmation{border-color:#d5a778;align-items:flex-start;gap:1rem;display:flex}.adult-confirmation>svg{color:#955e30;flex:none}.adult-confirmation h2{margin-bottom:.35rem}.adult-confirmation p{color:var(--muted)}.adult-confirmation .checkbox{margin-block:.8rem}.optional-forms{gap:.8rem;width:min(980px,100%);margin:2rem auto;display:grid}.optional-forms__heading{margin-bottom:.25rem}.optional-forms__heading h2{margin-bottom:.35rem;font-size:clamp(1.6rem,3vw,2.2rem)}.optional-forms__heading p:last-child{color:var(--muted);margin:0}.optional-form-card{border:1px solid var(--line);background:#fff;border-radius:1rem;overflow:hidden}.optional-form-card>summary{color:var(--ink);grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:.8rem;margin:0;padding:1rem 1.15rem;list-style:none;display:grid}.optional-form-card>summary::-webkit-details-marker{display:none}.optional-form-card>summary>svg:first-child{width:1.5rem;color:var(--sage-dark)}.optional-form-card>summary>span:nth-child(2){display:grid}.optional-form-card>summary small{color:var(--muted);font-weight:500}.optional-form-card>summary>svg:last-child{transition:transform .15s}.optional-form-card[open]>summary>svg:last-child{transform:rotate(180deg)}.optional-form-card__status{background:var(--sage-pale);color:var(--sage-dark);border-radius:999px;padding:.25rem .55rem;font-size:.75rem;font-weight:800}.optional-form-card__body{border-top:1px solid var(--line);padding:1.15rem}.optional-inline-document .onboarding-inline-document__frame{height:min(62vh,650px)}.staff-assessment-modal{gap:1rem;width:min(780px,100%);max-height:calc(100dvh - 2rem);display:grid}.staff-assessment-modal h2{margin-bottom:0;padding-right:2.5rem;font-size:clamp(1.85rem,4vw,2.8rem)}.staff-assessment-modal>.muted{margin-bottom:0}.staff-assessment-modal>.loading{min-height:180px;color:var(--muted);justify-content:center;align-items:center;gap:.7rem;display:flex}.staff-assessment-document{border:1px solid var(--line);background:var(--sage-pale);border-radius:1rem;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1rem;display:flex}.staff-assessment-document h3{margin:.55rem 0 0}.staff-assessment-document .document-actions{margin:0}.staff-assessment-form{padding-block:.25rem}.spinner{border:2px solid #bfd1d1;border-top-color:var(--sage-dark);border-radius:50%;width:1.15rem;height:1.15rem;animation:.75s linear infinite pulse-spin}@keyframes pulse-spin{to{transform:rotate(360deg)}}@media (width<=760px){.onboarding-pack-summary,.onboarding-document-header,.staff-assessment-document{flex-direction:column;align-items:stretch}.onboarding-profile-grid{grid-template-columns:minmax(0,1fr)}.onboarding-field--wide{grid-column:auto}.onboarding-document-header .document-actions,.staff-assessment-document .document-actions{justify-content:stretch}.onboarding-document-header .document-actions .button,.staff-assessment-document .document-actions .button{width:100%}.onboarding-inline-document__frame{height:68vh;min-height:520px}.agreement-document-list{grid-template-columns:1fr}.agreement-complete-card{grid-template-columns:auto minmax(0,1fr)}.agreement-complete-card .button-row{grid-column:1/-1;grid-template-columns:1fr;width:100%;display:grid}.agreement-complete-card .button{width:100%}}@media (width<=480px){.onboarding-section{border-radius:1rem;padding:1rem}.onboarding-step-heading{grid-template-columns:auto minmax(0,1fr)}.onboarding-step-icon{display:none}.yes-no-options{gap:.5rem}.yes-no-options label>span{min-height:56px;padding:.65rem .5rem}.staff-assessment-modal{padding:1.1rem}.optional-form-card>summary{grid-template-columns:auto minmax(0,1fr) auto}.optional-form-card__status{grid-column:2}.optional-form-card>summary>svg:last-child{grid-area:1/3/3}.agreement-combined-document .onboarding-inline-document__frame,.optional-inline-document .onboarding-inline-document__frame{min-height:440px}}.public-home{min-width:0;overflow:clip}.public-home section[id]{scroll-margin-top:7rem}.public-home :where(a,button):focus-visible{outline:3px solid var(--sage-dark);outline-offset:3px}.public-home .button,.public-home .icon-button,.public-home select{min-height:44px}.public-home .icon-button{width:44px;height:44px}.public-home .hero{grid-template-columns:minmax(0,1.08fr) minmax(360px,.82fr);align-items:center;gap:clamp(2.5rem,5vw,5.5rem);min-height:auto;padding-block:clamp(3.75rem,6vw,6.75rem)}.public-home .hero__copy{min-width:0}.public-home .hero__brand-lockup{grid-template-columns:clamp(155px,17vw,220px) minmax(0,1fr);gap:clamp(1.25rem,2.7vw,2.4rem);margin-bottom:1.75rem}.public-home .hero__opening h1{margin:0;font-size:clamp(2.7rem,4.45vw,4.65rem);line-height:.98}.public-home .hero__lead{text-align:left;max-width:590px;margin-bottom:1.6rem;font-size:1.06rem;font-weight:400}.public-home .hero__facts{gap:.8rem 1.25rem;margin-top:2rem}.public-home .hero__facts span{min-height:32px}.public-home .hero__media{aspect-ratio:4/5;background:var(--sage-pale);width:100%;box-shadow:var(--shadow);isolation:isolate;border-radius:44% 44% 1.5rem 1.5rem;margin:0;position:relative;overflow:hidden}.public-home .hero__media picture,.public-home .hero__image{width:100%;height:100%;display:block}.public-home .hero__image{object-fit:cover}.public-home .hero__media figcaption{color:#4f525a;background:#ffffffe0;border:1px solid #fff9;border-radius:999px;padding:.35rem .6rem;font-size:.75rem;line-height:1.2;position:absolute;bottom:.8rem;right:.8rem;box-shadow:0 5px 18px #25332d1f}.public-home .movement-discovery{background:linear-gradient(180deg,#f8fafa 0%,var(--sage-pale) 100%);padding-block:clamp(4.75rem,7vw,7rem)}.public-home .movement-discovery__heading{text-align:center;width:min(760px,100%);margin:0 auto clamp(2rem,4vw,3.25rem)}.public-home .movement-discovery__heading .eyebrow{justify-content:center}.public-home .movement-discovery__heading h2{margin-bottom:1rem}.public-home .movement-discovery__heading>p:last-child{color:var(--muted);margin:0;font-size:1.04rem}.public-home .discovery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1rem,2vw,1.5rem);display:grid}.public-home .discovery-card{background:#fff;border:1px solid #83c9c773;border-radius:1.35rem;flex-direction:column;min-width:0;transition:transform .2s,box-shadow .2s,border-color .2s;display:flex;overflow:hidden;box-shadow:0 16px 42px #33333b14}.public-home .discovery-card:hover{border-color:var(--sage);transform:translateY(-3px);box-shadow:0 22px 50px #33333b1f}.public-home .discovery-card__picture,.public-home .discovery-card__picture img{width:100%;height:auto;display:block}.public-home .discovery-card__picture{background:#dde8e5;overflow:hidden}.public-home .discovery-card__body{flex-direction:column;flex:1;padding:clamp(1.25rem,2.3vw,1.75rem);display:flex}.public-home .discovery-card__body h3{margin:0 0 .7rem;font:600 clamp(1.35rem,2vw,1.65rem) Playfair Display,serif}.public-home .discovery-card__body p{color:var(--muted);margin:0 0 1.35rem}.public-home .discovery-card__link{min-height:44px;color:var(--sage-dark);align-items:center;gap:.5rem;margin-top:auto;font-weight:800;display:inline-flex}.public-home .discovery-card__link svg{transition:transform .2s}.public-home .discovery-card__link:hover svg{transform:translate(.2rem)}.public-home .timetable-heading{align-items:flex-end}.public-home .timetable-heading__copy{min-width:0;max-width:720px}.public-home .next-class-summary{border-left:4px solid var(--sage-dark);background:var(--sage-pale);border-radius:.75rem;gap:.1rem;width:min(620px,100%);margin-top:1.25rem;padding:.9rem 1rem;display:grid}.public-home .next-class-summary span,.public-home .next-class-summary small{color:var(--muted);font-size:.78rem}.public-home .next-class-summary strong{color:var(--ink)}.public-home .view-toggle button{min-width:72px;min-height:44px}@media (width<=960px){.public-home .hero{grid-template-columns:minmax(0,1fr);gap:2.5rem;padding-top:3.25rem}.public-home .hero__brand-lockup{grid-template-columns:200px minmax(0,1fr);max-width:760px}.public-home .hero__copy>.button-row{grid-template-columns:minmax(0,1fr);width:100%;display:grid}.public-home .hero__copy>.button-row .button{width:100%}.public-home .hero__media{aspect-ratio:4/3;border-radius:1.5rem}.public-home .discovery-grid{grid-template-columns:minmax(0,1fr)}.public-home .discovery-card{width:min(680px,100%);margin-inline:auto}}@media (width<=680px){.public-home section[id]{scroll-margin-top:1rem}.public-home .hero{gap:2rem;padding-block:2.75rem 3.75rem}.public-home .hero__brand-lockup{flex-direction:column;align-items:center;gap:.65rem;margin-bottom:1.4rem;display:flex}.public-home .hero__logo{width:min(220px,72vw)}.public-home .hero__opening{width:100%}.public-home .hero__opening .eyebrow{text-align:center;justify-content:center}.public-home .hero__opening h1{text-align:center;font-size:clamp(2.55rem,12vw,3.55rem)}.public-home .hero__lead{text-align:center;font-size:1rem;font-weight:400;line-height:1.65}.public-home .hero__facts{text-align:left;grid-template-columns:minmax(0,1fr);justify-items:start;width:fit-content;margin:1.5rem auto 0;display:grid}.public-home .hero__media{border-radius:1.2rem}.public-home .hero__media figcaption{bottom:.6rem;right:.6rem}.public-home .movement-discovery{padding-block:4.5rem}.public-home .movement-discovery__heading{margin-bottom:2rem}.public-home .movement-discovery__heading>p:last-child{font-size:1rem}.public-home .discovery-card__body{padding:1.25rem}.public-home .timetable-heading{align-items:stretch}.public-home .view-toggle{align-self:flex-start}.public-home .next-class-summary{margin-top:1rem}}@media (width<=340px){.public-home .hero__logo{width:min(190px,72vw)}.public-home .hero__opening h1{font-size:clamp(2.25rem,12vw,2.75rem)}.public-home .discovery-card__body{padding:1.05rem}}.class-select{cursor:pointer;place-items:center;width:44px;height:44px;display:grid;left:.35rem}.class-select input{cursor:pointer;width:44px;height:44px;inset:0}.fake-check{border:2px solid var(--sage-dark)}.class-select input:focus-visible+.fake-check{outline:3px solid var(--sage-dark);outline-offset:3px}@media (width<=680px){.class-card--selectable{padding-left:3.2rem}}.timetable-heading{align-items:flex-start}.timetable-heading__actions{flex-wrap:wrap;justify-content:flex-end}#one-class-credits{scroll-margin-top:1rem}.fake-check svg{opacity:0;transition:opacity .12s}.class-select input:checked+.fake-check svg{opacity:1}.credit-compatibility{color:var(--sage-dark);font-size:.76rem;font-weight:750}.credit-compatibility--blocked{color:#8a4b32}.stripe-wallet-copy{color:var(--muted);margin:.25rem 0 1rem;font-size:.86rem}.mobile-book-action{z-index:25;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff5;border:1px solid #a9cfce;border-radius:1rem;justify-content:flex-end;align-items:center;gap:1rem;margin:1rem 0;padding:.8rem 1rem;display:flex;position:sticky;bottom:1rem;box-shadow:0 12px 35px #33333b29}.mobile-book-action.mobile-book-action--inline{z-index:auto;position:static;bottom:auto}.mobile-book-action span{margin-right:auto;font-weight:750;display:grid}.mobile-book-action span small{color:var(--muted);font-size:.72rem;font-weight:500}.button--selected{background:var(--sage-dark);color:#fff}.reschedule-dialog{gap:1rem;display:grid}.reschedule-dialog>h2,.reschedule-dialog>p{margin-bottom:0}.reschedule-source{background:var(--sage-pale);border-radius:.9rem;gap:.2rem;padding:1rem;display:grid}.reschedule-source span,.reschedule-source small{color:var(--muted);font-size:.8rem}.reschedule-options{border:0;gap:.65rem;margin:0;padding:0;display:grid}.reschedule-options legend{margin-bottom:.65rem;font-weight:800}.reschedule-option{cursor:pointer;border:1px solid #bfd1d1;border-radius:.9rem;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.75rem;padding:.9rem;display:grid;position:relative}.reschedule-option:has(input:checked){border-color:var(--sage-dark);background:var(--sage-pale);box-shadow:inset 0 0 0 1px var(--sage-dark)}.reschedule-option input{width:1.15rem;height:1.15rem;margin-top:.15rem}.reschedule-option>span{gap:.15rem;display:grid}.reschedule-option small{color:var(--muted)}.pricing-option__details{gap:.2rem;min-width:0;display:grid}.pricing-options .pricing-option__details>strong{white-space:normal;color:var(--ink)}.pricing-option__details small{color:var(--muted);font-size:.8rem}@media (width<=680px){.timetable-heading__actions{justify-content:stretch;width:100%;display:grid}.timetable-heading__actions .button,.timetable-heading__actions .text-button{justify-content:center;width:100%}.class-card__availability{align-items:flex-start}.mobile-book-action{bottom:max(.5rem,env(safe-area-inset-bottom));margin-bottom:max(1rem,env(safe-area-inset-bottom));flex-direction:column;align-items:stretch}.mobile-book-action .button{width:100%}.reschedule-dialog .button-row{grid-template-columns:minmax(0,1fr);display:grid}.reschedule-dialog .button-row .button{width:100%}}.app-content .table-scroll>table{min-width:680px}.admin-schedule-browser{gap:1rem;margin-top:1.2rem;display:grid}.admin-schedule-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.admin-schedule-toolbar .view-toggle{width:max-content}.admin-schedule-toolbar .view-toggle button{min-width:72px;min-height:44px}.admin-calendar-nav{justify-content:flex-end;align-items:center;gap:.55rem;display:flex}.admin-calendar-range{color:var(--ink);justify-content:space-between;align-items:baseline;gap:1rem;margin:0;display:flex}.admin-calendar-range span{color:var(--muted);font-size:.8rem}.admin-calendar-status{background:var(--sage-pale);color:var(--ink);border-radius:.75rem;margin:0;padding:1rem}.notice--error.admin-calendar-status{color:#763523;background:#fff4f0;border:1px solid #d9a394;align-items:center}.notice--error.admin-calendar-status .button{flex:none;margin-left:auto}.admin-calendar-scroll{-webkit-overflow-scrolling:touch;max-width:100%;padding-bottom:.35rem;overflow-x:auto}.admin-calendar-grid{border-top:1px solid var(--line);border-left:1px solid var(--line);background:var(--line);grid-template-columns:repeat(7,minmax(118px,1fr));gap:1px;min-width:860px;display:grid}.admin-calendar-weekday{background:var(--sage-pale);color:var(--muted);text-align:center;text-transform:uppercase;letter-spacing:.08em;padding:.55rem .65rem;font-size:.72rem;font-weight:800}.admin-calendar-day{background:#fff;min-height:170px;padding:.55rem}.admin-calendar-grid--week .admin-calendar-day{min-height:280px}.admin-calendar-day>header{color:var(--ink);justify-content:space-between;align-items:center;gap:.35rem;margin-bottom:.5rem;font-weight:800;display:flex}.admin-calendar-day>header small{white-space:nowrap;background:var(--sage-dark);color:#fff;text-transform:uppercase;border-radius:999px;flex:none;padding:.15rem .4rem;font-size:.62rem}.admin-calendar-day--outside{color:var(--muted);background:#f5f7f6}.admin-calendar-day--outside>header{color:var(--muted)}.admin-calendar-day--today{box-shadow:inset 0 0 0 2px var(--sage-dark)}.admin-calendar-day__sessions{gap:.45rem;display:grid}.admin-calendar-day__empty{color:var(--muted);font-size:.72rem}.admin-calendar-session{background:var(--sage-pale);border:1px solid #b9d9d8;border-radius:.65rem;display:grid;overflow:hidden}.admin-calendar-session__edit{width:100%;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;gap:.08rem;padding:.55rem;display:grid}.admin-calendar-session__edit:hover{background:#83c9c72e}.admin-calendar-session__edit:focus-visible,.admin-calendar-session__bookings:focus-visible,.admin-calendar-session__cancel:focus-visible{z-index:1;outline:3px solid var(--sage-dark);outline-offset:-3px;position:relative}.admin-calendar-session__time{color:var(--sage-dark);font-size:.72rem;font-weight:850}.admin-calendar-session__name{font-size:.78rem;font-weight:800;line-height:1.2}.admin-calendar-session__meta{color:var(--muted);text-overflow:ellipsis;font-size:.68rem;line-height:1.25;overflow:hidden}.admin-calendar-session__bookings{min-height:34px;color:var(--sage-dark);cursor:pointer;background:#fff;border:0;border-top:1px solid #b9d9d8;font-size:.68rem;font-weight:850}.admin-calendar-session__cancel{color:#963f2c;cursor:pointer;background:#ffffffb8;border:0;border-top:1px solid #b9d9d8;min-height:32px;font-size:.68rem;font-weight:800}.admin-calendar-session button:disabled{cursor:not-allowed;opacity:.58}.admin-schedule-list .admin-calendar-session__edit,.admin-schedule-list .admin-calendar-session__cancel{width:auto;display:inline-flex}.admin-schedule-bookings{justify-items:start;gap:.35rem;min-width:148px;display:grid}.admin-schedule-bookings>span{font-weight:750}.admin-schedule-bookings .button{white-space:nowrap}.admin-booked-clients{width:min(560px,100%)}.admin-booked-clients__class{border:1px solid var(--line);background:var(--sage-pale);border-radius:.8rem;gap:.25rem;margin:.7rem 0 1.25rem;padding:1rem;display:grid}.admin-booked-clients__class span{color:var(--muted);font-size:.86rem}.admin-booked-clients__status{margin:0}.notice--error.admin-booked-clients__status{color:#763523;background:#fff4f0;border:1px solid #d9a394;align-items:center}.notice--error.admin-booked-clients__status .button{flex:none;margin-left:auto}.admin-booked-clients__summary{color:var(--muted);margin:0 0 .75rem}.admin-booked-clients__summary strong{color:var(--ink);font-size:1.2rem}.admin-booked-clients__list{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.admin-booked-clients__list li{border:1px solid var(--line);background:#fff;border-radius:.7rem;align-items:center;gap:.7rem;padding:.8rem;display:flex}.admin-booked-clients__list svg{width:1.15rem;height:1.15rem;color:var(--sage-dark);flex:none}@media (width<=760px){.admin-schedule-toolbar{flex-direction:column;align-items:stretch}.admin-schedule-toolbar .view-toggle{grid-template-columns:repeat(3,minmax(0,1fr));width:100%;display:grid}.admin-calendar-nav{grid-template-columns:1fr 1fr 1fr;width:100%;display:grid}.admin-calendar-nav .button{white-space:nowrap;gap:.25rem;width:100%;min-width:0;padding-inline:.35rem;font-size:.78rem}.admin-calendar-range{flex-direction:column;align-items:flex-start;gap:.1rem}.admin-calendar-grid--week{border-right:1px solid var(--line);grid-template-columns:minmax(0,1fr);min-width:0}.admin-calendar-grid--week .admin-calendar-weekday{display:none}.admin-calendar-grid--week .admin-calendar-day{min-height:0;padding:.8rem}.admin-calendar-grid--week .admin-calendar-day__empty{display:none}.admin-calendar-grid--month{grid-template-columns:repeat(7,minmax(100px,1fr));min-width:720px}.admin-calendar-day{min-height:145px}.admin-calendar-session__edit,.admin-calendar-session__bookings,.admin-calendar-session__cancel{min-height:44px}}@media (width<=480px){.admin-booked-clients{width:100%}.admin-booked-clients__class{padding:.8rem}.notice--error.admin-booked-clients__status{flex-direction:column;align-items:stretch}.notice--error.admin-booked-clients__status .button{width:100%;margin-left:0}.admin-booked-clients__list li{padding:.75rem .65rem}}.client-schedule-browser{gap:1rem;margin-top:1.2rem;display:grid}.client-schedule-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.client-schedule-toolbar .view-toggle{width:max-content}.client-schedule-toolbar .view-toggle button{min-width:72px;min-height:44px}.client-calendar-nav{justify-content:flex-end;align-items:center;gap:.55rem;display:flex}.client-calendar-range{color:var(--ink);justify-content:space-between;align-items:baseline;gap:1rem;margin:0;display:flex}.client-calendar-range span{color:var(--muted);font-size:.8rem}.client-calendar-status{background:var(--sage-pale);color:var(--ink);border-radius:.75rem;margin:0;padding:1rem}.notice--error.client-calendar-status{color:#763523;background:#fff4f0;border:1px solid #d9a394;align-items:center}.notice--error.client-calendar-status .button{flex:none;margin-left:auto}.client-calendar-scroll{-webkit-overflow-scrolling:touch;max-width:100%;padding-bottom:.35rem;overflow-x:auto}.client-calendar-scroll:focus-visible{outline:3px solid var(--sage-dark);outline-offset:3px}.client-calendar-grid{border-top:1px solid var(--line);border-left:1px solid var(--line);background:var(--line);grid-template-columns:repeat(7,minmax(118px,1fr));gap:1px;min-width:860px;display:grid}.client-calendar-grid--week{grid-template-columns:repeat(8,minmax(118px,1fr));min-width:960px}.client-calendar-weekday{background:var(--sage-pale);color:var(--muted);text-align:center;text-transform:uppercase;letter-spacing:.08em;padding:.55rem .65rem;font-size:.72rem;font-weight:800}.client-calendar-day{background:#fff;min-height:190px;padding:.55rem}.client-calendar-grid--week .client-calendar-day{min-height:320px}.client-calendar-day>header{color:var(--ink);justify-content:space-between;align-items:center;gap:.35rem;margin-bottom:.5rem;font-weight:800;display:flex}.client-calendar-day>header small{white-space:nowrap;background:var(--sage-dark);color:#fff;text-transform:uppercase;border-radius:999px;flex:none;padding:.15rem .4rem;font-size:.62rem}.client-calendar-day--outside{color:var(--muted);background:#f5f7f6}.client-calendar-day--outside>header{color:var(--muted)}.client-calendar-day--today{box-shadow:inset 0 0 0 2px var(--sage-dark)}.client-calendar-day__sessions{gap:.45rem;display:grid}.client-calendar-day__empty{color:var(--muted);font-size:.72rem}.client-calendar-session{background:var(--sage-pale);color:var(--ink);border:1px solid #b9d9d8;border-radius:.65rem;gap:.35rem;padding:.55rem;display:grid;overflow:hidden}.client-calendar-session.selected{border-color:var(--sage-dark);box-shadow:inset 0 0 0 1px var(--sage-dark)}.client-calendar-session--full{background:#f7f3ef;border-color:#dac9be}.client-calendar-session__heading{justify-content:space-between;align-items:center;gap:.3rem;display:flex}.client-calendar-session__heading time{color:var(--sage-dark);font-size:.72rem;font-weight:850}.client-calendar-session>strong{font-size:.78rem;line-height:1.2}.client-calendar-session>small{color:var(--muted);text-overflow:ellipsis;font-size:.68rem;line-height:1.25;overflow:hidden}.client-calendar-session .credit-compatibility{color:var(--sage-dark)}.client-calendar-session .credit-compatibility--blocked{color:#963f2c}.client-calendar-session .button{white-space:normal;width:100%;min-width:0;min-height:38px;padding:.35rem .45rem;font-size:.7rem}.client-calendar-session__availability{color:var(--muted);font-size:.68rem;font-weight:700}@media (width<=760px){.client-schedule-toolbar{flex-direction:column;align-items:stretch}.client-schedule-toolbar .view-toggle{grid-template-columns:repeat(3,minmax(0,1fr));width:100%;display:grid}.client-calendar-nav{grid-template-columns:1fr 1fr 1fr;width:100%;display:grid}.client-calendar-nav .button{white-space:nowrap;gap:.25rem;width:100%;min-width:0;padding-inline:.35rem;font-size:.78rem}.client-calendar-range{flex-direction:column;align-items:flex-start;gap:.1rem}.client-calendar-grid--week{border-right:1px solid var(--line);grid-template-columns:minmax(0,1fr);min-width:0}.client-calendar-grid--week .client-calendar-weekday{display:none}.client-calendar-grid--week .client-calendar-day{min-height:0;padding:.8rem}.client-calendar-grid--week .client-calendar-day__empty{display:none}.client-calendar-grid--month{grid-template-columns:repeat(7,minmax(100px,1fr));min-width:720px}.client-calendar-day{min-height:145px}.client-calendar-session .button{min-height:44px}}.package-card__actions{gap:.75rem;display:grid}.package-card__actions .button{white-space:normal;text-align:center}.register-workspace .panel{margin-bottom:1.25rem}.register-filters{margin:1rem 0}.register-client{border-top:1px solid var(--line,#e1e5df);padding:1.25rem 0}.register-payment{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-top:.75rem;display:flex}.class-notes{border-top:1px solid var(--line,#e1e5df);margin-top:1.5rem;padding-top:1.5rem}.class-note{border-top:1px solid var(--line,#e1e5df);margin-top:1rem;padding:1rem 0}.class-note__body{white-space:pre-wrap;overflow-wrap:anywhere}.class-note>.text-button{margin:.5rem 0;display:block}.register-workspace .button-row{flex-wrap:wrap}.register-workspace .button{min-height:44px}@media (width<=480px){.register-workspace .panel__heading{align-items:flex-start;gap:1rem}.register-workspace .booking-row{flex-wrap:wrap}.register-filters{grid-template-columns:1fr}}.app-nav nav a{color:#c6d0cb;text-align:left;background:0 0;border:0;border-radius:.65rem;align-items:center;gap:.65rem;min-width:0;padding:.8rem;font-weight:600;text-decoration:none;display:flex}.app-nav nav a.active,.app-nav nav a:hover,.app-nav nav a:focus-visible{color:#fff;background:#ffffff1a}.admin-nav-toggle{display:none}.workspace-subnav{flex-wrap:wrap;gap:.5rem;margin:0 0 1rem;display:flex}.workspace-subnav a{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:.75rem;align-items:center;gap:.45rem;padding:.7rem .9rem;font-weight:700;text-decoration:none;display:inline-flex}.workspace-subnav a.active{background:var(--sage-dark);border-color:var(--sage-dark);color:#fff}.workspace-subnav svg,.route-card svg{flex:none;width:1.15rem;height:1.15rem}.route-back{margin-bottom:1rem}.client-directory-tools{justify-content:space-between;align-items:end;gap:1rem;display:flex}.client-directory-tools label{width:min(34rem,100%)}.client-card-list,.invitation-card-list,.class-default-card-list,.admin-schedule-list{gap:1rem;display:grid}.client-card{gap:1rem;margin:0;display:grid}.client-card__identity,.admin-schedule-card__heading{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.client-card__identity h2,.admin-schedule-card h3{margin:0 0 .25rem}.client-card__identity p,.admin-schedule-card__heading p{margin:0}.client-card__identity p{overflow-wrap:anywhere}.client-card__metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;display:grid}.client-card__metrics>span{background:var(--sage-pale);color:var(--muted);border-radius:.75rem;gap:.15rem;padding:.8rem;display:grid}.client-card__metrics strong{color:var(--ink);overflow-wrap:anywhere;font-size:1.05rem}.client-card__actions{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.summary-card{border:1px solid var(--line);background:#fff;border-radius:.8rem;justify-content:space-between;align-items:center;gap:1rem;min-width:0;padding:1rem;display:flex}.summary-card>div{gap:.2rem;display:grid}.summary-card span,.summary-card small{color:var(--muted)}.focused-form{width:min(46rem,100%)}.route-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.route-card{color:var(--ink);align-items:flex-start;gap:1rem;margin:0;text-decoration:none;transition:border-color .15s,transform .15s;display:flex}.route-card>svg{width:1.6rem;height:1.6rem;color:var(--sage-dark)}.route-card h2{margin:0 0 .4rem}.route-card p{color:var(--muted);margin:0}.route-card:hover,.route-card:focus-visible{border-color:var(--sage);transform:translateY(-1px)}.class-default-card .class-type-settings{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;min-width:0;display:grid}.class-default-card .class-type-settings>.muted{grid-column:1/-1}.admin-schedule-card{gap:1rem;margin:0;display:grid}.admin-schedule-card .button-row{align-items:center}.retrospective-attendance{gap:1rem;display:grid}.retrospective-range{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:end;gap:.75rem;display:grid}.retrospective-attendance__form{border-top:1px solid var(--line);width:min(44rem,100%);padding-top:1rem}.workspace-history-list{gap:.8rem;display:grid}.workspace-history-card{border:1px solid var(--line);background:#fff;border-radius:.8rem;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:1rem;min-width:0;padding:1rem;display:grid}.workspace-history-card h3{margin:.45rem 0 .25rem}.workspace-history-card p{color:var(--muted);overflow-wrap:anywhere;margin:.2rem 0}.workspace-history-card dl{gap:.5rem;margin:0;display:grid}.workspace-history-card dl>div{grid-template-columns:minmax(6rem,auto) minmax(0,1fr);gap:.7rem;display:grid}.workspace-history-card dt{color:var(--muted)}.workspace-history-card dd{text-align:right;overflow-wrap:anywhere;margin:0}.workspace-history-card__action{border-top:1px solid var(--line);grid-column:1/-1;width:min(34rem,100%);padding-top:.8rem}.register-detail{width:100%}.register-detail-heading{flex-wrap:wrap;gap:1rem}.register-add-client{overflow-y:auto}.register-add-client h2{padding-right:2rem}.register-add-client .notice{display:block}.register-remove-client>h2{overflow-wrap:anywhere;padding-right:2rem}.register-remove-client .notice{padding:0;display:block}.register-remove-client .notice p+p{margin-top:.75rem}.register-remove-client .button-row .button{white-space:normal}@media (width<=480px){.register-remove-client .button-row{grid-template-columns:minmax(0,1fr);display:grid}.register-remove-client .button-row .button{width:100%}}.register-add-candidate{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:.75rem;padding:.85rem 0;display:flex}.register-add-candidate>div{overflow-wrap:anywhere;min-width:0}.register-add-candidate p{color:var(--muted);margin:.25rem 0;font-size:.86rem}.register-add-selection{border:1px solid var(--line);overflow-wrap:anywhere;border-radius:.8rem;padding:1rem}.register-add-selection h3{margin:0}.register-add-selection label{gap:.4rem;display:grid}.register-add-client .text-button{align-items:center;gap:.4rem;display:flex}@media (width<=480px){.register-detail-heading>.button-row{flex-direction:column;align-items:stretch;width:100%}.register-add-candidate{flex-direction:column;align-items:stretch}.register-add-client .button-row{grid-template-columns:1fr;display:grid}.register-add-client .button-row .button{width:100%}}.register-list-card>div{min-width:0}.register-list-card h3 a{color:var(--ink)}@media (width<=900px){.app-nav{padding:.7rem 1rem;position:relative;top:auto}.admin-nav-toggle{color:#fff;background:#ffffff14;border:1px solid #ffffff2e;border-radius:.7rem;justify-content:space-between;align-items:center;gap:.65rem;width:100%;padding:.75rem;font-weight:750;display:flex}.admin-nav-toggle svg:last-child{transition:transform .15s}.admin-nav-toggle svg:last-child.rotated{transform:rotate(180deg)}.app-nav nav{width:100%;max-width:none;margin-top:.55rem;display:grid;overflow:visible}.app-nav nav:not(.open){display:none}.app-nav nav a{white-space:normal;width:100%;min-height:44px}}@media (width<=680px){.app-shell{overflow:visible}.app-content{overflow-x:hidden}.client-card__identity,.admin-schedule-card__heading,.client-directory-tools,.summary-card{flex-direction:column;align-items:flex-start}.client-card__metrics,.route-card-grid,.class-default-card .class-type-settings,.retrospective-range,.workspace-history-card,.workspace-history-card dl>div{grid-template-columns:1fr}.workspace-history-card dd{text-align:left}.client-card__actions,.workspace-subnav{grid-template-columns:1fr;width:100%;display:grid}.client-card__actions .button,.workspace-subnav a{justify-content:center;width:100%}.admin-schedule-card .button-row{grid-template-columns:1fr;width:100%;display:grid}.admin-schedule-card .button-row>.button{width:100%}.class-default-card .class-type-settings label:not(.checkbox){min-width:0}.register-list-card>.button{width:100%}}
