.payment-method-choices{gap:12px;margin:20px 0;display:grid}.payment-method-intro{color:#65745f;margin:0 0 4px}.payment-method-choice{text-align:left;color:#304d3f;width:100%;font:inherit;cursor:pointer;align-items:center;gap:16px;padding:20px;transition:background .15s,border-color .15s;display:flex}.payment-method-choice:hover:not(:disabled){background:#eef1e7;border-color:#879d87}.payment-method-choice:focus-visible,.revolut-payment-link:focus-visible{outline-offset:4px;outline:2px solid #416a54}.payment-method-choice:disabled{opacity:.55;cursor:default}.payment-method-choice>span:nth-child(2){flex:1;min-width:0}.payment-method-choice strong,.payment-method-choice small{display:block}.payment-method-choice strong{font-size:16px;font-weight:600;line-height:1.4}.payment-method-choice small{color:#69765f;margin-top:5px;font-size:13px;font-weight:400;line-height:1.5}.payment-method-icon{background:#edf0e5;border-radius:14px;flex-shrink:0;place-items:center;width:44px;height:44px;display:grid}.payment-method-icon--card{background:#e6efeb}.payment-method-icon--revolut{background:#f3eddf}.payment-method-icon>i{font-size:25px}.payment-method-arrow{color:#718467;font-size:23px}.payment-method-back{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;margin:8px 0;padding:8px 0;display:inline-flex}.revolut-payment{color:#304d3f;padding:12px 0 0;container-type:inline-size}.revolut-payment .revolut-payment-status{background:#edf0e3;border-radius:8px;margin:0 0 16px;padding:6px 10px;font-size:12px;line-height:1.5;display:inline-block}.revolut-payment-content{grid-template-columns:176px minmax(0,1fr);align-items:center;gap:20px;display:grid}.revolut-payment-content>svg{max-width:100%;height:auto;display:block}.revolut-payment h3{margin:0 0 6px;font-size:17px}.revolut-payment .revolut-payment-instructions{margin:0 0 12px;font-size:13px;line-height:1.5}.revolut-payment-reference{gap:4px;margin:0 0 12px;display:grid}.revolut-payment-reference span{color:#68765f;font-size:12px}.revolut-payment-reference strong{-webkit-user-select:text;user-select:text;overflow-wrap:anywhere;font-family:monospace;font-size:13px;line-height:1.5}.revolut-payment-reference .payment-method-back{text-underline-offset:3px;justify-self:start;min-height:36px;margin:0;padding:4px 0;font-size:12px;text-decoration:underline}.revolut-payment .revolut-payment-link{color:#fffdf8;background:#365d4a;border:0;border-radius:50px;justify-content:center;align-items:center;gap:20px;margin:0;padding:12px 20px;font-size:14px;text-decoration:none;display:inline-flex}.revolut-payment .revolut-payment-note{color:#68765f;margin:16px 0 0;font-size:12px;line-height:1.5}@container (width<=440px){.revolut-payment-content{grid-template-columns:minmax(0,1fr);gap:12px}.revolut-payment-content>svg{justify-self:center;width:144px}.revolut-payment .revolut-payment-link{display:flex}}@media (width<=380px){.payment-method-choice{gap:12px;padding:16px 12px}}.unpaid-pass-details{margin-block:1rem}.mobile-pass-wallet{margin-block:2rem}.mobile-pass-wallet article{border-bottom:1px solid var(--mobile-line,#dce2d6);padding-block:1rem}.mobile-pass-wallet h3{margin-block:0 .5rem}.mobile-pass-wallet p{font-size:.875rem;line-height:1.6}.mobile-pass-wallet summary{cursor:pointer;padding-block:.75rem}.unpaid-pass-confirm{align-items:flex-start;gap:.6rem;margin:.8rem 0;display:flex}.payment-change-dialog{color:#304d3f;background:#fffdf8;border:1px solid #dce3d8;border-radius:1.5rem;width:min(32rem,100% - 2rem);max-height:calc(100dvh - 2rem);padding:0;font-family:inherit;overflow:auto;box-shadow:0 24px 80px #172b2440}.payment-change-dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#253a2f80}.payment-change-dialog-body{padding:clamp(1.25rem,4vw,2rem)}.payment-change-dialog-heading{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.5rem;display:flex}.payment-change-dialog-heading h2{margin:0;font-size:1.5rem;line-height:1.25}.payment-change-dialog-heading p{color:#69765f;margin:.4rem 0 0}.payment-change-close{width:2.5rem;height:2.5rem;color:inherit;cursor:pointer;background:0 0;border:1px solid #dce3d8;border-radius:50%;flex:none;place-items:center;font-size:1.5rem;display:grid}.payment-change-dialog button:focus-visible{outline-offset:3px;outline:2px solid #416a54}.unpaid-pass-actions{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.unpaid-pass-actions>p{flex-basis:100%}.payment-change-dialog .payment-change-cancel{color:#fff;background:#a46856;border:1px solid #a46856;border-radius:1.5rem;width:100%;margin-block:1.25rem;padding:.75rem 1rem;text-decoration:none;display:block}.payment-change-dialog .payment-change-cancel:disabled{opacity:.5;cursor:not-allowed}.waiver-agreement{margin:20px 0}.waiver-document{border:1px solid #dce3dc;border-radius:10px;margin-bottom:16px;padding:16px}.waiver-document summary{cursor:pointer;font-weight:600}.waiver-text{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7}.waiver-choice{align-items:flex-start;line-height:1.6}.waiver-choice .form-toggle{margin-top:3px}.waiver-gate{margin-bottom:24px;padding:28px}.waiver-gate fieldset{border:0;min-width:0;padding:0}.waiver-agreement .waiver-reload{color:inherit;background:0 0;margin-top:12px;font-size:12px}.booking-dialog{color:#293b2c;background:#fffdf6;border:1px solid #ccd2c5;border-radius:4px;width:min(500px,100% - 32px);max-height:calc(100dvh - 32px);margin:auto;padding:0}.booking-dialog::backdrop{background:#1423188c}.booking-dialog header{letter-spacing:.1em;text-transform:uppercase;justify-content:space-between;align-items:center;font-size:12px;display:flex}.booking-dialog h1{font-size:28px;font-weight:400;line-height:1.2}.booking-dialog h2,.student-signin h2{font-size:22px;font-weight:400}.booking-dialog p,.student-signin p{font-size:14px;line-height:1.6}.booking-date{border-bottom:1px solid #d8ddcf;padding-bottom:18px}.booking-dialog button:where(:not(.payment-method-choice):not(.payment-method-back)),.student-signin button{font:inherit;cursor:pointer;min-height:44px;color:inherit;background:0 0;border:1px solid #aab7a4;border-radius:3px;padding:10px 14px}.booking-dialog header button{border:0;font-size:24px}.booking-dialog fieldset,.student-signin fieldset{border:0;gap:16px;min-width:0;margin:0;padding:0;display:grid}.student-name-fields{grid-template-columns:1fr 1fr;gap:14px;display:grid}.booking-dialog .student-primary,.student-signin .student-primary{color:#fff;background:#344d36;border-color:#344d36}.student-auth-actions{flex-wrap:wrap;justify-content:space-between;gap:8px;margin-top:16px;display:flex}.student-auth-actions button{border:0;padding:8px 0;font-size:13px;text-decoration:underline}.booking-dialog button:disabled,.student-signin button:disabled{opacity:.55;cursor:wait}.booking-dialog .member-error,.student-signin .member-error{color:#9c3028}.booking-dialog .member-notice,.student-signin .member-notice{background:#e9efdf;padding:12px}@media (width<=480px){.booking-dialog-body{padding:20px}.student-name-fields{grid-template-columns:1fr}}.booking-pass-options{border-top:1px solid #d8ddcf;margin:20px 0;padding-top:16px}.booking-pass-options h3{margin:0 0 10px;font-size:15px;font-weight:600}.booking-pass-options ul{margin:0;padding:0;list-style:none}.booking-pass-options li{justify-content:space-between;align-items:start;gap:14px;padding:12px 0;font-size:13px;display:flex}.booking-pass-options li strong{font-weight:500;line-height:1.5}.booking-pass-options li span{color:#586750;margin-top:5px;font-size:12px;display:block}.booking-pass-options li b{white-space:nowrap;font-variant-numeric:tabular-nums}.booking-pass-options li:has(button){grid-template-columns:1fr auto;display:grid}.booking-pass-options li>button{grid-column:1/-1;justify-self:start;min-height:42px}.booking-dialog{color:#293b30;background:#fff;border:1px solid #e0e7df;border-radius:24px;width:min(620px,100% - 32px);box-shadow:0 24px 80px #172b2426}.booking-dialog-body{padding:28px 36px 36px}.booking-dialog header{color:#738078;letter-spacing:.12em;font-size:10px}.booking-dialog header button{background:#f3f6f0;border-radius:50%;width:38px;min-height:38px;padding:0}.booking-emblem{color:#46684e;background:#edf3eb;border-radius:18px;place-items:center;width:60px;height:60px;font-size:24px;display:grid}.booking-dialog h1{letter-spacing:-.035em;font:600 28px/1.25 Arial,sans-serif}.booking-dialog h2,.student-signin h2{letter-spacing:-.025em;font:600 22px/1.3 Arial,sans-serif}.booking-dialog .booking-date{color:#738078;border-color:#e8ede5;margin:12px 0 0;padding-bottom:24px}.booking-dialog .booking-member{color:#738078;align-items:center;gap:9px;margin:18px 0;font-size:12px;display:flex}.booking-dialog .booking-intro{color:#738078;margin-top:0}.booking-dialog button:where(:not(.payment-method-choice):not(.payment-method-back)),.student-signin button{border-color:#dce5da;border-radius:10px}.booking-dialog .student-primary,.student-signin .student-primary{background:#344d3c;border-color:#344d3c;width:100%;min-height:50px;margin-top:8px}.booking-dialog .student-primary:hover:not(:disabled){background:#43634c}.booking-dialog :focus-visible,.student-signin :focus-visible{outline-offset:3px;outline:3px solid #789c7c}.booking-dialog button:disabled{cursor:not-allowed}.booking-pass-options{border:0;margin:22px 0 16px;padding:0}.booking-pass-options ul{gap:12px;display:grid}.booking-pass-options .pass-options-divider{color:#778279;white-space:nowrap;align-items:center;gap:14px;margin:18px 0;font-size:13px;font-weight:400;display:flex}.pass-options-divider:before,.pass-options-divider:after{content:"";border-top:1px solid #e3e8e0;flex:1}:is(.booking-pass-options li,.booking-pass-options li:has(button)){grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:14px;padding:20px 48px 20px 18px;transition:background .18s,border-color .18s;display:grid;position:relative}.booking-pass-options li:has(button:enabled:hover){background:#f3f8ef;border-color:#9fb69f}.booking-pass-options li:focus-within{border-color:#789c7c}.booking-pass-options li strong{font-weight:600}.booking-pass-options li b{color:#35573e;font-size:20px;font-weight:500}.pass-symbol,.booking-pass-options li .pass-symbol{color:#46684e;background:#edf3eb;border-radius:13px;flex-shrink:0;place-items:center;width:44px;height:44px;margin:0;font-size:19px;display:grid}.booking-pass-options li>.pass-purchase-action{border-radius:inherit;background:0 0;border:0;width:100%;height:100%;margin:0;padding:0;position:absolute;inset:0}.pass-purchase-action :is(i,svg){color:#607b60;position:absolute;top:50%;right:17px;transform:translateY(-50%)}.booking-dialog .booking-footnote{color:#738078;align-items:center;gap:8px;margin:20px 0 0;font-size:11px;display:flex}.booking-owned-pass{align-items:center;gap:16px;margin:22px 0;padding:24px;display:flex}.booking-owned-pass strong{font-size:15px}.booking-owned-pass p{color:#738078;margin:6px 0 0;font-size:12px}.pass-use{white-space:nowrap;text-align:right;color:#46684e;margin-left:auto;font-size:14px;font-weight:600}.pass-use small{font-size:11px;font-weight:400}.booking-success{padding:16px 0 0}.booking-success-heading{align-items:center;gap:12px;display:flex}.booking-success-heading h2{margin:0}.booking-success-icon{color:#46684e;background:#eaf3e3;border-radius:14px;flex-shrink:0;place-items:center;width:40px;height:40px;font-size:20px;display:grid}.booking-success a,.member-browse{color:#35573e;border:1px solid #dce5da;border-radius:10px;align-items:center;gap:24px;margin-top:14px;padding:14px 18px;text-decoration:none;display:inline-flex}@media (width<=480px){.booking-dialog-body{padding:22px}.booking-dialog{border-radius:20px}:is(.booking-pass-options li,.booking-pass-options li:has(button)){grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:18px 40px 18px 16px}.booking-pass-options li .pass-symbol{display:none}.booking-owned-pass{gap:12px;padding:18px}.booking-owned-pass .pass-symbol{display:none}}@media (prefers-reduced-motion:reduce){.booking-pass-options li{transition:none}}.booking-pass-options li>.pass-purchase-action{grid-area:auto;justify-self:stretch}.booking-pass-options li>.pass-purchase-action:hover:not(:disabled){background:0 0}.booking-dialog .booking-more-passes{color:#607560;text-underline-offset:4px;background:0 0;border:0;min-height:44px;margin:12px auto 0;padding:8px 12px;font-size:13px;text-decoration:underline;display:block}.booking-dialog .booking-more-passes:hover:not(:disabled){color:#35573e;background:#f3f8ef}.booking-pay-later{border-bottom:1px solid #d9d4c9;margin-bottom:24px;padding-bottom:24px}.booking-pay-later p{margin:12px 0 20px}.booking-pass-options .pass-restrictions{background:#f3f5ed;border-left:2px solid #83916e;margin-top:8px;padding:8px 10px;font-size:13px;line-height:1.5}.booking-pass-options .pass-restrictions strong{font-size:inherit;display:block}.member-pass-store{padding:clamp(16px,3vw,28px)}.member-pass-store>p{color:var(--muted)}.booking-dialog-heading{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;margin:8px 0 24px;display:grid}.booking-dialog-heading h1{overflow-wrap:anywhere}@media (width<=380px){.booking-dialog-heading{grid-template-columns:minmax(0,1fr) auto;gap:12px}.booking-dialog-heading .booking-emblem{display:none}}.class-share{color:#385a47;flex-wrap:wrap;align-items:center;gap:10px;margin:16px 0;font-size:12px;display:flex}.class-share .form-field{flex-basis:100%}.class-share .class-share-button{color:#385a47;min-height:44px;font:inherit;cursor:pointer;background:0 0;border:1px solid #cbd4c4;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:10px 14px;font-size:14px;line-height:1.4;text-decoration:none;transition:background-color .15s,border-color .15s;display:inline-flex}.class-share .class-share-button>i{flex-shrink:0;font-size:18px}.class-share .class-share-button:not(:disabled):hover{background:#e8eddf;border-color:#7e947b}.class-share .class-share-button:focus-visible{outline-offset:3px;outline:2px solid #385a47}
