.service-requests .request-confirmation[data-v-0c12e2ca]{grid-template-columns:minmax(0,1fr);gap:0}.request-confirmation-footer[data-v-0c12e2ca]{display:flex;flex-direction:column;align-items:flex-start;gap:16px;padding:20px 0;border-top:1px solid var(--line)}.request-confirmation-footer .button[data-v-0c12e2ca]{width:auto;min-height:48px;height:auto;align-self:flex-start;padding:12px 24px;white-space:normal}.request-requirements[data-v-0c12e2ca]{color:var(--ink);line-height:1.5}.request-requirements p[data-v-0c12e2ca]{margin:0 0 8px;font-weight:600}.request-requirements ul[data-v-0c12e2ca]{margin:0;padding-left:20px}.request-instruction[data-v-0c12e2ca]{font-weight:600;line-height:1.6}.request-deadline[data-v-0c12e2ca]{font-variant-numeric:tabular-nums}.request-action[data-v-0c12e2ca]{font-weight:700;color:var(--ink)}.request-selected[data-v-0c12e2ca]{display:block;font-weight:700;color:var(--ink)}.request-location[data-v-0c12e2ca]{font-weight:600}.request-alternative strong[data-v-0c12e2ca]:first-child{font-size:1.125rem}.request-alternative[data-v-0c12e2ca]{overflow-wrap:anywhere}.request-alternative>span[data-v-0c12e2ca]{min-width:0}.request-alternative.is-selected[data-v-0c12e2ca]{border-left:3px solid var(--ink);padding-left:12px}.service-requests .choice-copy[data-v-0c12e2ca]{min-width:0}.service-requests .choice-row[data-v-0c12e2ca]{overflow-wrap:anywhere}@media(max-width:600px){.request-confirmation-footer .button[data-v-0c12e2ca]{width:100%}}.request-status-filter[data-v-0c12e2ca]{display:grid;gap:8px;width:min(100%,360px);margin:20px 0}.request-status-filter .field-label[data-v-0c12e2ca]{margin:0}.request-status-filter select[data-v-0c12e2ca]{width:100%;min-height:49px;padding:0 13px;border:1px solid var(--line);border-radius:2px;background:var(--paper);color:var(--ink)}.request-status-filter select[data-v-0c12e2ca]:focus-visible{outline:3px solid var(--rose);outline-offset:3px;border-color:var(--green)}@media(max-width:600px){.request-status-filter[data-v-0c12e2ca]{width:100%}.request-status-filter select[data-v-0c12e2ca]{min-height:52px;font-size:1rem}}.service-requests .choice-row[data-v-0c12e2ca]{grid-template-columns:minmax(0,1fr) auto}.service-requests[data-v-0c12e2ca]{margin-bottom:40px}.service-requests h2[data-v-0c12e2ca]:focus{outline:2px solid currentColor;outline-offset:4px}.request-alternative[data-v-0c12e2ca]{display:flex;gap:12px;padding:18px 0;border-bottom:1px solid var(--line);align-items:flex-start}.request-alternative input[data-v-0c12e2ca]{margin-top:5px;flex-shrink:0}.request-alternative span[data-v-0c12e2ca]{line-height:1.7}.request-note[data-v-0c12e2ca]{white-space:pre-wrap;overflow-wrap:anywhere}fieldset[data-v-0c12e2ca]{border:0;padding:0;margin:20px 0;min-width:0}legend[data-v-0c12e2ca]{font-weight:600}.patient-form fieldset[data-v-0c12e2ca]{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}nav[data-v-0c12e2ca]{display:flex;align-items:center;justify-content:space-between;gap:8px}details[data-v-0c12e2ca]{margin-top:24px}button[data-v-0c12e2ca],a[data-v-0c12e2ca]{touch-action:manipulation}@media(max-width:600px){.patient-form fieldset[data-v-0c12e2ca]{grid-template-columns:1fr}.service-requests .choice-row[data-v-0c12e2ca]{grid-template-columns:minmax(0,1fr);gap:12px}.request-alternative[data-v-0c12e2ca]{padding:12px 0}nav[data-v-0c12e2ca]{flex-wrap:wrap}}.proposal-search[data-v-154784a3]{min-width:0}.proposal-search h3[data-v-154784a3]:focus-visible{outline:2px solid var(--green);outline-offset:4px}.proposal-search p[data-v-154784a3],.proposal-summary[data-v-154784a3]{overflow-wrap:anywhere}.proposal-search .day-strip[data-v-154784a3]{width:100%;margin-right:0}.proposal-summary[data-v-154784a3]{margin-top:24px;padding-block:18px;border-top:1px solid var(--line)}.proposal-search .slots-section[data-v-154784a3]{animation:none}.proposal-search button[data-v-154784a3]{touch-action:manipulation}.proposal-search button[data-v-154784a3]:focus-visible{outline:2px solid var(--green);outline-offset:4px}.proposal-search .text-button[data-v-154784a3]:not(:disabled):hover{color:var(--green-dark)}.proposal-search .day-strip button[data-v-154784a3]:not(:disabled):hover{border-color:var(--green)}.proposal-search-button[data-v-26109920]{margin-top:20px;touch-action:manipulation}.proposal-search-button[data-v-26109920]:focus-visible{outline:2px solid var(--green);outline-offset:4px}.proposal-options[data-v-26109920]{min-width:0;display:block;width:100%}.proposal-current[data-v-26109920],.proposal-choice[data-v-26109920]{padding-block:18px;border-bottom:1px solid var(--line)}.proposal-current strong[data-v-26109920],.proposal-choice strong[data-v-26109920],.proposal-choice span span[data-v-26109920]{display:block}.proposal-choices[data-v-26109920]{border:0;padding:0;margin:24px 0 0;min-width:0}.proposal-choice[data-v-26109920]{display:flex;align-items:center;gap:14px;cursor:pointer}.proposal-choice input[data-v-26109920]{width:20px;height:20px;flex-shrink:0}.proposal-choice span span[data-v-26109920]{margin-top:8px}.resources[data-v-d774ea9d]{margin:24px 0;padding:24px;border:1px solid var(--line);border-radius:16px;overflow-wrap:anywhere}.resources article[data-v-d774ea9d]{margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}.resources p[data-v-d774ea9d]{margin:10px 0}.description[data-v-d774ea9d]{white-space:pre-wrap}.visit-filter[data-v-d774ea9d]{display:grid;gap:8px;margin:16px 0}.visit-filter select[data-v-d774ea9d]{width:100%;min-width:0;padding:10px}.reports[data-v-6dc6c509]{margin:24px 0;padding:24px;border:1px solid var(--line);border-radius:16px;overflow-wrap:anywhere}.reports article[data-v-6dc6c509]{margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}.reports p[data-v-6dc6c509]{margin:10px 0}.report-dialog[data-v-6dc6c509]{position:fixed;inset:50% auto auto 50%;z-index:1000;width:min(460px,calc(100vw - 32px));padding:28px;transform:translate(-50%,-50%);background:#fff;box-shadow:0 0 0 100vmax #15231dc7,0 20px 60px #0004}.report-dialog form[data-v-6dc6c509]{display:grid;gap:14px}.report-dialog input[data-v-6dc6c509]{padding:13px;border:1px solid var(--line);font:inherit}.previsit-shell[data-v-1e7281e4]{max-width:820px;margin:28px auto 60px;padding:0 24px;color:var(--ink)}.previsit-head[data-v-1e7281e4]{display:grid;grid-template-columns:1fr auto;gap:20px;padding:24px 0;border-bottom:1px solid var(--line)}.previsit-head .back[data-v-1e7281e4]{grid-column:1/-1;justify-self:start;border:0;background:none;color:var(--green);cursor:pointer}.previsit-head span[data-v-1e7281e4]{color:var(--green);font-size:.74rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.previsit-head h1[data-v-1e7281e4]{margin:5px 0;font-size:2rem;letter-spacing:-.04em}.previsit-head p[data-v-1e7281e4]{margin:0;color:var(--muted)}.save-state[data-v-1e7281e4]{align-self:end;color:var(--muted)}.progress-copy[data-v-1e7281e4]{display:flex;justify-content:space-between;margin-top:28px;color:var(--muted);font-size:.78rem}.progress[data-v-1e7281e4]{height:3px;margin-top:8px;background:var(--sage)}.progress span[data-v-1e7281e4]{display:block;height:100%;background:var(--green);transition:width .24s ease}.question-section[data-v-1e7281e4]{padding:42px 0}.question-section h2[data-v-1e7281e4]{margin:0;font-size:1.55rem}.section-description[data-v-1e7281e4]{color:var(--muted)}.question[data-v-1e7281e4]{display:grid;gap:8px;padding:27px 0;border-bottom:1px solid var(--line)}.question>label[data-v-1e7281e4]{font-weight:720}.question>small[data-v-1e7281e4]{color:var(--muted)}.question input[type=text][data-v-1e7281e4],.question input[type=number][data-v-1e7281e4],.question input[type=date][data-v-1e7281e4],.question textarea[data-v-1e7281e4],.question select[data-v-1e7281e4],.repeat-row input[data-v-1e7281e4]{width:100%;padding:12px;border:1px solid var(--line);border-radius:8px;background:#fff;font:inherit}.choices[data-v-1e7281e4]{display:flex;flex-wrap:wrap;gap:9px}.choices label[data-v-1e7281e4]{cursor:pointer}.choices label span[data-v-1e7281e4]{display:block;padding:10px 14px;border:1px solid var(--line);border-radius:9px;background:#fff}.choices input[data-v-1e7281e4]{position:absolute;opacity:0}.choices input:focus-visible+span[data-v-1e7281e4]{outline:3px solid var(--aqua)}.choices input:checked+span[data-v-1e7281e4]{border-color:var(--green);background:var(--sage);color:var(--green-dark)}.scale[data-v-1e7281e4]{display:flex;flex-wrap:wrap;gap:8px}.scale button[data-v-1e7281e4]{min-width:42px;padding:9px;border:1px solid var(--line);border-radius:8px;background:#fff;text-align:center;color:var(--ink);cursor:pointer}.scale button.selected[data-v-1e7281e4]{border-color:var(--green);background:var(--sage);font-weight:800}.scale button[data-v-1e7281e4]:focus-visible{outline:3px solid var(--aqua)}.repeat-row[data-v-1e7281e4]{display:grid;grid-template-columns:30px 1fr;gap:12px;margin:12px 0;padding:16px;border-left:3px solid var(--aqua);background:var(--paper)}.repeat-row>label[data-v-1e7281e4]{grid-column:2;display:grid;gap:5px}.remove[data-v-1e7281e4]{grid-column:2;justify-self:start;border:0;background:none;color:#a63f46;cursor:pointer}.attachments[data-v-1e7281e4]{display:grid;gap:8px;margin-top:28px;font-weight:700}.attachments small[data-v-1e7281e4]{color:var(--muted);font-weight:400}.form-actions[data-v-1e7281e4]{display:grid;grid-template-columns:auto 1fr auto;align-items:center;padding:20px 0;border-top:1px solid var(--line)}.primary[data-v-1e7281e4],.secondary[data-v-1e7281e4]{min-height:44px;padding:0 18px;border-radius:9px;font-weight:750;cursor:pointer}.primary[data-v-1e7281e4]{border:1px solid var(--green);background:var(--green);color:#fff}.secondary[data-v-1e7281e4]{border:1px solid var(--line);background:#fff;color:var(--green-dark)}.download[data-v-1e7281e4]{margin-top:18px;border:0;background:none;color:var(--green);font-weight:700;cursor:pointer}.feedback[data-v-1e7281e4]{margin:18px 0;padding:13px 15px;border-left:3px solid var(--aqua);background:var(--sage)}.feedback.error[data-v-1e7281e4]{border-color:#bd4b52;background:#fff2f2;color:#8b2f35}.feedback.success[data-v-1e7281e4]{border-color:var(--aqua-dark)}.previsit-shell fieldset[data-v-1e7281e4]{min-width:0;margin:0;padding:0;border:0}@media(max-width:600px){.previsit-shell[data-v-1e7281e4]{margin-top:0;padding:0 18px}.previsit-head[data-v-1e7281e4]{grid-template-columns:1fr}.save-state[data-v-1e7281e4]{justify-self:start}.question-section[data-v-1e7281e4]{padding-top:30px}.choices[data-v-1e7281e4]{display:grid}.repeat-row[data-v-1e7281e4]{grid-template-columns:1fr}.repeat-row[data-v-1e7281e4]>*{grid-column:1!important}}.service-details[data-v-8c3c2ac6]{margin:26px 0 30px;padding:30px clamp(22px,4vw,46px);border-block:1px solid var(--line);background:color-mix(in srgb,var(--paper) 90%,var(--green) 10%);animation:detail-in-8c3c2ac6 .22s ease-out}.service-details header[data-v-8c3c2ac6]{padding-bottom:24px}.service-details header>div[data-v-8c3c2ac6]{display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:.68rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.service-details header>div>span[data-v-8c3c2ac6]{color:var(--green)}.service-details h2[data-v-8c3c2ac6]{margin:10px 0 8px;color:var(--ink);font-family:var(--serif);font-size:clamp(1.55rem,3vw,2.2rem);font-weight:500;letter-spacing:-.035em}.service-details header p[data-v-8c3c2ac6]{max-width:62ch;margin:0;color:var(--muted);font-size:.88rem;line-height:1.65}.service-details section[data-v-8c3c2ac6]{padding:21px 0;border-top:1px solid var(--line)}.service-details section h3[data-v-8c3c2ac6]{margin:0 0 9px;color:var(--ink);font-size:.68rem;letter-spacing:.09em;text-transform:uppercase}.rich-copy[data-v-8c3c2ac6]{color:var(--muted);font-size:.83rem;line-height:1.72}.rich-copy[data-v-8c3c2ac6] p,.rich-copy[data-v-8c3c2ac6] ul,.rich-copy[data-v-8c3c2ac6] ol{margin:0 0 .8em}.rich-copy[data-v-8c3c2ac6] a{color:var(--green);text-decoration-thickness:1px;text-underline-offset:3px}.service-details footer[data-v-8c3c2ac6]{padding-top:18px;border-top:1px solid var(--line)}.service-details footer>div[data-v-8c3c2ac6]{display:flex;justify-content:space-between;gap:20px;padding:5px 0}.service-details footer span[data-v-8c3c2ac6]{color:var(--muted);font-size:.75rem}.service-details footer strong[data-v-8c3c2ac6]{color:var(--ink);font-size:.84rem}.service-details .booking-terms[data-v-8c3c2ac6]{margin-top:18px;padding-bottom:0}.booking-terms dl[data-v-8c3c2ac6]{margin:0}.booking-terms dl div[data-v-8c3c2ac6]{display:flex;justify-content:space-between;gap:18px;padding:5px 0}.booking-terms dt[data-v-8c3c2ac6],.booking-terms dd[data-v-8c3c2ac6],.booking-terms p[data-v-8c3c2ac6]{font-size:.75rem}.booking-terms dt[data-v-8c3c2ac6],.booking-terms p[data-v-8c3c2ac6]{color:var(--muted)}.booking-terms dd[data-v-8c3c2ac6]{margin:0;text-align:right}.booking-terms p[data-v-8c3c2ac6]{margin:10px 0 0;line-height:1.5}@keyframes detail-in-8c3c2ac6{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.service-details[data-v-8c3c2ac6]{animation:none}}@media(max-width:620px){.service-details[data-v-8c3c2ac6]{margin-inline:-20px;padding-inline:20px}}.patient-auth[data-v-c9baab05]{position:relative;width:min(520px,calc(100vw - 32px));padding:34px;background:#fff;color:var(--ink);box-shadow:0 20px 70px #1d2a2450}.patient-auth h2[data-v-c9baab05]{font-family:Fira Sans,ui-sans-serif,sans-serif;font-size:2rem;font-weight:400}.patient-auth form[data-v-c9baab05],.patient-auth label[data-v-c9baab05]{display:grid;gap:12px}.patient-auth label[data-v-c9baab05]{font-size:.82rem;font-weight:700}.patient-auth input[data-v-c9baab05]{padding:13px;border:1px solid var(--line);font:inherit}.auth-primary[data-v-c9baab05],.auth-secondary[data-v-c9baab05],.auth-link[data-v-c9baab05]{width:100%;margin-top:12px;padding:14px;border:0;font-weight:700;cursor:pointer}.auth-primary[data-v-c9baab05]{background:var(--green);color:#fff}.auth-secondary[data-v-c9baab05]{background:var(--sage);color:var(--green)}.auth-link[data-v-c9baab05]{background:transparent;color:var(--muted)}.auth-close[data-v-c9baab05]{position:absolute;top:14px;right:16px;border:0;background:transparent;font-size:1.5rem}.auth-kicker[data-v-c9baab05]{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase}.patient-auth [role=alert][data-v-c9baab05]{color:#9a3827}.group-auth-overlay[data-v-ebf4850f]{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:16px;background:#15231dc7}.groups-view[data-v-ebf4850f]{width:min(1120px,calc(100% - 40px));margin:0 auto;padding:72px 0 120px;color:var(--ink)}.groups-error[data-v-ebf4850f]{margin:0 0 24px;padding:14px 18px;background:#fff0ec;color:#8a3827;border-left:3px solid #b9573e}.groups-loading[data-v-ebf4850f],.groups-empty[data-v-ebf4850f]{padding:80px 0;color:var(--muted)}.groups-hero[data-v-ebf4850f]{max-width:760px;margin-bottom:64px}.groups-hero>span[data-v-ebf4850f],.kicker[data-v-ebf4850f]{display:block;color:var(--aqua-dark);font-size:.74rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.groups-hero h1[data-v-ebf4850f],.event-detail h1[data-v-ebf4850f],.enrollment-form-wrap h1[data-v-ebf4850f],.group-outcome h1[data-v-ebf4850f]{margin:14px 0 18px;font-family:Fira Sans,ui-sans-serif,sans-serif;font-size:clamp(2.7rem,6vw,5.6rem);font-weight:400;line-height:1.04;letter-spacing:-.035em}.groups-hero p[data-v-ebf4850f],.event-description[data-v-ebf4850f],.group-outcome>p[data-v-ebf4850f]{max-width:690px;color:var(--muted);font-size:1.08rem;line-height:1.7}.event-ledger[data-v-ebf4850f]{border-top:1px solid var(--line)}.event-ledger button[data-v-ebf4850f]{display:grid;grid-template-columns:190px 1fr 210px 28px;gap:24px;align-items:center;width:100%;padding:28px 8px;border:0;border-bottom:1px solid var(--line);background:transparent;color:inherit;text-align:left;cursor:pointer}.event-ledger button[data-v-ebf4850f]:hover{background:var(--paper)}.event-ledger time[data-v-ebf4850f],.event-copy em[data-v-ebf4850f],.event-state small[data-v-ebf4850f]{color:var(--muted);font-size:.82rem;font-style:normal}.event-copy[data-v-ebf4850f],.event-state[data-v-ebf4850f]{display:flex;flex-direction:column;gap:6px}.event-copy small[data-v-ebf4850f]{color:var(--aqua-dark);text-transform:uppercase;letter-spacing:.08em}.event-copy strong[data-v-ebf4850f]{font-family:Fira Sans,ui-sans-serif,sans-serif;font-size:1.6rem;font-weight:400}.event-state b[data-v-ebf4850f]{font-size:.82rem}.event-state[data-active=true] b[data-v-ebf4850f]{color:#2d7252}.back[data-v-ebf4850f]{margin-bottom:38px;border:0;background:transparent;color:var(--muted);cursor:pointer}.event-detail[data-v-ebf4850f],.enrollment-form-wrap[data-v-ebf4850f],.group-outcome[data-v-ebf4850f]{max-width:900px;margin:0 auto}.threshold[data-v-ebf4850f]{margin:44px 0;padding:30px;border-left:4px solid #bd8a53;background:var(--sage)}.threshold[data-active=true][data-v-ebf4850f]{border-color:#4f8066;background:#eaf1ec}.threshold span[data-v-ebf4850f]{font-size:.75rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.threshold strong[data-v-ebf4850f]{display:block;margin:8px 0 12px;font-family:Fira Sans,ui-sans-serif,sans-serif;font-size:2rem;font-weight:400}.threshold p[data-v-ebf4850f],.economic-note p[data-v-ebf4850f]{margin:0;line-height:1.65}.event-facts[data-v-ebf4850f]{display:grid;grid-template-columns:.8fr 1.2fr;gap:56px;margin:50px 0}.event-facts dl[data-v-ebf4850f]{margin:0}.event-facts dl div[data-v-ebf4850f]{padding:16px 0;border-bottom:1px solid var(--line)}.event-facts dt[data-v-ebf4850f]{color:var(--muted);font-size:.78rem;text-transform:uppercase}.event-facts dd[data-v-ebf4850f]{margin:5px 0 0;font-size:1.1rem}.event-facts h2[data-v-ebf4850f],.group-consents h2[data-v-ebf4850f]{font-family:Fira Sans,ui-sans-serif,sans-serif;font-weight:400}.event-facts ol[data-v-ebf4850f]{padding:0;list-style:none}.event-facts li[data-v-ebf4850f]{display:flex;gap:18px;padding:15px 0;border-bottom:1px solid var(--line)}.event-facts li>span[data-v-ebf4850f]{color:var(--aqua-dark)}.event-facts li p[data-v-ebf4850f]{display:flex;flex-direction:column;gap:4px;margin:0}.event-facts li small[data-v-ebf4850f]{color:var(--muted)}.economic-note[data-v-ebf4850f]{margin:40px 0;padding:24px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.economic-note strong[data-v-ebf4850f]{display:block;margin-bottom:8px}.group-primary[data-v-ebf4850f]{padding:15px 24px;border:0;border-radius:2px;background:var(--green);color:#fff;font-weight:700;cursor:pointer}.group-primary[data-v-ebf4850f]:disabled{opacity:.45;cursor:not-allowed}.group-form[data-v-ebf4850f]{margin-top:42px}.group-fields[data-v-ebf4850f]{display:grid;grid-template-columns:1fr 1fr;gap:22px}.group-fields label[data-v-ebf4850f]{display:flex;flex-direction:column;gap:8px}.group-fields label span[data-v-ebf4850f]{font-size:.78rem;font-weight:700}.group-fields input[data-v-ebf4850f]{padding:14px;border:1px solid var(--line);background:#fff;font:inherit}.group-consents[data-v-ebf4850f]{margin:38px 0}.group-consents>label[data-v-ebf4850f]{display:flex;gap:12px;padding:15px 0;border-top:1px solid var(--line)}.group-consents details[data-v-ebf4850f]{margin-top:8px;color:var(--muted)}.payment-reference[data-v-ebf4850f],.pin-box[data-v-ebf4850f]{margin:34px 0;padding:24px;background:var(--sage)}.payment-reference span[data-v-ebf4850f],.pin-box span[data-v-ebf4850f]{display:block;color:var(--muted);font-size:.75rem;text-transform:uppercase}.payment-reference strong[data-v-ebf4850f],.pin-box strong[data-v-ebf4850f]{display:block;margin-top:8px;font-size:1.5rem}.simulator[data-v-ebf4850f]{margin:30px 0;padding:24px;border:1px dashed var(--line)}.simulator button[data-v-ebf4850f]{margin:8px 8px 0 0}.success-mark[data-v-ebf4850f]{display:grid;place-items:center;width:52px;height:52px;margin-bottom:28px;border-radius:50%;background:#315f47;color:#fff;font-size:1.6rem}@media(max-width:760px){.groups-view[data-v-ebf4850f]{width:min(100% - 28px,1120px);padding-top:44px}.event-ledger button[data-v-ebf4850f]{grid-template-columns:1fr 26px}.event-ledger time[data-v-ebf4850f],.event-copy[data-v-ebf4850f],.event-state[data-v-ebf4850f]{grid-column:1;min-width:0}.event-ledger button>span[aria-hidden][data-v-ebf4850f]{grid-column:2;grid-row:1}.event-facts[data-v-ebf4850f],.group-fields[data-v-ebf4850f]{grid-template-columns:1fr}.groups-hero h1[data-v-ebf4850f],.event-detail h1[data-v-ebf4850f],.enrollment-form-wrap h1[data-v-ebf4850f],.group-outcome h1[data-v-ebf4850f]{font-size:2.8rem}}.event-rich-sections[data-v-ebf4850f]{max-width:690px;margin:36px 0 0;border-top:1px solid var(--line)}.event-rich-section[data-v-ebf4850f]{padding:22px 0;border-bottom:1px solid var(--line)}.event-rich-section h2[data-v-ebf4850f]{margin:0 0 10px;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}.event-rich-copy[data-v-ebf4850f]{color:var(--muted);line-height:1.7}.event-rich-copy[data-v-ebf4850f] p,.event-rich-copy[data-v-ebf4850f] ul,.event-rich-copy[data-v-ebf4850f] ol{margin:0 0 .8em}.event-rich-copy[data-v-ebf4850f] a{color:var(--green);text-underline-offset:3px}.deferred-payment[data-v-2060db52]{grid-template-columns:minmax(0,1fr);gap:12px}.auth-overlay[data-v-c77fa3eb]{overflow-y:auto;position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:16px;background:#15231dc7}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fira-sans-latin-400-normal-a0AnQzuD.woff2) format("woff2"),url(/assets/fira-sans-latin-400-normal-66xCkunx.woff) format("woff")}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fira-sans-latin-500-normal-Bvbxc8ch.woff2) format("woff2"),url(/assets/fira-sans-latin-500-normal-Bkfzcwmr.woff) format("woff")}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fira-sans-latin-600-normal-CXKlxLG9.woff2) format("woff2"),url(/assets/fira-sans-latin-600-normal-DtSgd811.woff) format("woff")}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/fira-sans-latin-700-normal-CRhwpWTq.woff2) format("woff2"),url(/assets/fira-sans-latin-700-normal-DgqLm3Fi.woff) format("woff")}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/fira-sans-latin-800-normal-Cs3RH8Mk.woff2) format("woff2"),url(/assets/fira-sans-latin-800-normal-BtCVgJ_x.woff) format("woff")}:root{font-family:Fira Sans,ui-sans-serif,sans-serif;color:#3f3f3f;background:#fbf9f3;font-synthesis:none;text-rendering:optimizeLegibility;--ink: #3f3f3f;--muted: #5e5e5e;--green: #c13356;--green-dark: #9e2946;--aqua: #3aa38f;--aqua-dark: #226b5f;--sage: #f5e5e3;--paper: #fbf9f3;--line: #ded8d3;--rose: #9e2946;--serif: "Fira Sans", ui-sans-serif, sans-serif;--font-display: "Fira Sans", ui-sans-serif, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh}button,input{font:inherit}button{color:inherit}.site-shell{min-height:100vh;position:relative;overflow:hidden}.site-shell:before{content:"";position:fixed;z-index:-1;top:-230px;right:-130px;width:560px;height:560px;border:1px solid rgba(193,51,86,.12);border-radius:50%;box-shadow:0 0 0 70px #c1335606,0 0 0 140px #c1335605}.site-header{display:flex;align-items:center;justify-content:space-between;height:86px;padding:0 clamp(22px,5vw,76px);border-bottom:1px solid rgba(193,51,86,.15)}.brand{display:inline-flex;align-items:center;gap:11px;color:var(--ink);text-decoration:none}.brand-logo{display:block;width:214px;max-width:100%;height:auto}.header-actions{display:flex;align-items:center;gap:24px}.test-brand-selector{display:grid;gap:3px;color:var(--muted);font-size:.58rem;letter-spacing:.05em;text-transform:uppercase}.test-brand-selector select{min-width:130px;padding:6px 8px;border:1px solid var(--line);border-radius:2px;background:var(--paper);color:var(--ink);font-size:.7rem;text-transform:none}.header-note{color:var(--muted);font-size:.72rem}.header-note:before{content:"●";margin-right:7px;color:var(--aqua-dark);font-size:.55rem}.header-link{padding:8px 0;border:0;border-bottom:1px solid var(--green);background:transparent;color:var(--green);cursor:pointer;font-size:.72rem;font-weight:750}.header-link:disabled{cursor:wait;opacity:.5}.step-navigation{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));width:min(1180px,calc(100% - 44px));margin:28px auto 0;border-bottom:1px solid var(--line)}.step-navigation button{display:flex;align-items:center;gap:10px;padding:13px 4px 17px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--muted);cursor:default;font-size:.72rem;text-align:left}.step-navigation button span{font-size:.6rem;letter-spacing:.08em}.step-navigation button.complete{color:var(--green);cursor:pointer}.step-navigation button.active{border-color:var(--green);color:var(--ink);font-weight:700}.booking-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:clamp(42px,7vw,100px);width:min(1180px,calc(100% - 44px));margin:54px auto 90px}.booking-workspace{min-width:0}.step-panel{position:relative;animation:step-enter .3s cubic-bezier(.2,.8,.2,1) both}.eyebrow,.summary-kicker{display:inline-block;color:var(--rose);font-size:.66rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.step-panel h1,.confirmation-view h1{margin:12px 0;font-family:Fira Sans,ui-sans-serif,sans-serif;font-size:clamp(2.45rem,5.4vw,4.9rem);font-weight:400;line-height:1.04;letter-spacing:-.035em}.step-intro{max-width:600px;margin:0 0 44px;color:var(--muted);font-size:.92rem;line-height:1.65}.choice-list{border-top:1px solid var(--line)}.choice-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;width:100%;min-height:92px;padding:17px 10px;border:0;border-bottom:1px solid var(--line);background:transparent;cursor:pointer;text-align:left;transition:background .18s ease,padding .18s ease}.choice-row:hover{padding-inline:17px;background:#ffffff7a}.choice-row.selected{background:var(--paper)}.avatar{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--sage);color:var(--aqua-dark);font-family:Fira Sans,ui-sans-serif,sans-serif;font-size:1.25rem}.choice-copy{display:grid;gap:6px;min-width:0}.choice-copy strong{font-size:.96rem}.choice-copy small{overflow:hidden;color:var(--muted);font-size:.73rem;line-height:1.45;text-overflow:ellipsis}.choice-arrow{color:var(--green);font-size:1.35rem;transition:transform .18s ease}.choice-row:hover .choice-arrow{transform:translate(4px)}.selection-dot{width:19px;height:19px;border:1px solid var(--line);border-radius:50%;box-shadow:inset 0 0 0 4px var(--paper)}.selected .selection-dot{border-color:var(--green);background:var(--green)}.service-meta{display:grid;justify-items:end;gap:4px;min-width:92px}.service-meta strong{font-size:.87rem}.service-meta small{color:var(--muted);font-size:.65rem}.location-section,.slots-section{margin-top:38px;animation:reveal .22s ease both}.field-label{display:block;margin-bottom:13px;color:var(--muted);font-size:.68rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.location-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.location-grid button{display:grid;grid-template-columns:auto 1fr;gap:5px 10px;padding:17px;border:1px solid var(--line);border-radius:3px;background:#fbf9f399;cursor:pointer;text-align:left;transition:border-color .16s ease,transform .16s ease}.location-grid button:hover{transform:translateY(-2px);border-color:var(--green)}.location-grid button.selected{border-color:var(--green);background:var(--paper)}.location-grid .selection-dot{grid-row:1 / 3;margin-top:1px}.location-grid strong{font-size:.8rem}.location-grid small{color:var(--muted);font-size:.68rem;line-height:1.4}.online-note{margin:12px 0 0;color:var(--muted);font-size:.75rem}.meeting-link,.meeting-pending,.meeting-failed{display:inline-block;margin-top:8px;font-size:.74rem;font-weight:700}.meeting-link{color:var(--green)}.meeting-pending{color:var(--muted)}.meeting-failed{color:#9d3f35}.step-actions{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:42px;padding-top:22px;border-top:1px solid var(--line)}.button,.text-button{min-height:47px;border:0;cursor:pointer;font-weight:700}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:0 24px;border-radius:2px}.button.primary{background:var(--green);color:#fff}.button.primary:hover:not(:disabled){background:var(--green-dark)}.button.secondary{padding-inline:0;border-bottom:1px solid var(--green);background:transparent;color:var(--green)}.button:disabled{cursor:not-allowed;opacity:.38}.text-button{padding:0;background:transparent;color:var(--muted)}.day-strip{display:grid;grid-template-columns:repeat(7,minmax(90px,1fr));gap:7px;overflow-x:auto;padding-bottom:8px;scrollbar-width:thin}.availability-navigation{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:28px 0 14px}.availability-navigation strong{font-size:.78rem;font-weight:600;text-align:center}.availability-navigation .text-button{font-size:.75rem;white-space:nowrap}.availability-navigation .text-button:disabled{opacity:.4;cursor:not-allowed}.availability-loading{min-height:160px}.day-strip button{display:grid;justify-items:start;min-width:92px;min-height:96px;padding:13px;border:1px solid var(--line);background:#fbf9f380;cursor:pointer;text-align:left}.day-strip button span{color:var(--muted);font-size:.63rem;text-transform:capitalize}.day-strip button strong{margin:5px 0 8px;font-family:Fira Sans,ui-sans-serif,sans-serif;font-size:1rem;font-weight:400;text-transform:capitalize}.day-strip button small{color:var(--green);font-size:.59rem}.day-strip button.selected{border-color:var(--green);background:var(--green);color:#fff}.day-strip button.selected span,.day-strip button.selected small{color:#ffffffc7}.day-strip button:disabled{opacity:.4;cursor:not-allowed}.slot-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.slot-grid button{min-height:45px;border:1px solid var(--line);background:var(--paper);cursor:pointer;font-size:.78rem;font-weight:700}.slot-grid button:hover,.slot-grid button.selected{border-color:var(--green);background:var(--green);color:#fff}.patient-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 18px}.patient-form label{display:grid;gap:8px}.patient-form label>span{color:var(--muted);font-size:.68rem;font-weight:700}.patient-form input:not([type=checkbox]){width:100%;height:49px;padding:0 13px;border:1px solid var(--line);border-radius:2px;outline:none;background:#fbf9f3bf;transition:border-color .16s ease,box-shadow .16s ease}.patient-form input:focus{border-color:var(--green);box-shadow:0 0 0 3px #c133561a}.privacy-check{grid-column:1 / -1;display:grid!important;grid-template-columns:auto 1fr;align-items:start;gap:10px!important;margin-top:6px}.privacy-check input{width:17px;height:17px;accent-color:var(--green)}.privacy-check span{font-weight:400!important;line-height:1.5}.legal-consents{grid-column:1 / -1;padding:22px 0 4px;border-top:1px solid var(--line)}.legal-consents h2{margin:0 0 8px;font-family:Fira Sans,ui-sans-serif,sans-serif;font-size:1.25rem;font-weight:400}.legal-consents>p{margin:0;color:var(--muted);font-size:.75rem;line-height:1.5}.legal-consents .privacy-check{margin-top:16px}.legal-consents strong{display:block;color:var(--ink);font-size:.76rem}.legal-consents details{margin-top:7px;color:var(--green);font-size:.72rem}.legal-consents summary{cursor:pointer}.legal-consents details .rich-copy{max-height:240px;margin-top:10px;overflow:auto;padding:12px;border-left:2px solid var(--sage);background:#fff6}.legal-unavailable{color:var(--rose)!important;margin-top:14px!important}.patient-form .step-actions{grid-column:1 / -1}.billing-section{grid-column:1 / -1;display:grid;gap:16px;padding:22px;border:1px solid var(--line);background:#fbf9f38c}.billing-section h2,.billing-section p{margin:0}.billing-section p{color:var(--muted);line-height:1.55}.billing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.review-terms{grid-column:1 / -1;margin-top:8px;padding:22px 0;border-block:1px solid var(--line);animation:reveal .22s ease both}.review-terms h2{margin:0 0 12px;font-family:Fira Sans,ui-sans-serif,sans-serif;font-size:1.2rem;font-weight:400}.review-terms dl{margin:0}.review-terms dl div{display:flex;justify-content:space-between;gap:24px;padding:6px 0}.review-terms dt{color:var(--muted);font-size:.72rem}.review-terms dd{margin:0;font-size:.75rem;font-weight:750;text-align:right;text-transform:capitalize}.review-terms p{max-width:68ch;margin:12px 0 0;color:var(--muted);font-size:.69rem;line-height:1.55}.final-review{border-top:1px solid var(--ink)}.final-review>h2{margin:24px 0 10px;font-family:Fira Sans,ui-sans-serif,sans-serif;font-size:1.55rem;font-weight:400}.review-facts{margin:0}.review-facts>div{display:grid;grid-template-columns:145px minmax(0,1fr);gap:20px;padding:15px 0;border-bottom:1px solid var(--line)}.review-facts dt{color:var(--muted);font-size:.66rem;letter-spacing:.06em;text-transform:uppercase}.review-facts dd{display:grid;gap:4px;margin:0;font-size:.82rem}.review-facts dd small{color:var(--muted);font-size:.69rem}.review-economy{margin:30px 0 8px;padding:20px 0;border-block:1px solid var(--green)}.review-economy>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 20px;padding:6px 0}.review-economy span{color:var(--muted);font-size:.74rem}.review-economy strong{font-size:.86rem}.review-economy small{grid-column:2;color:var(--muted);font-size:.66rem;text-align:right}.review-copy{padding:22px 0;border-bottom:1px solid var(--line)}.review-copy h3{margin:0 0 9px;font-size:.68rem;letter-spacing:.09em;text-transform:uppercase}.rich-copy{color:var(--muted);font-size:.8rem;line-height:1.7}.rich-copy :where(p,ul,ol){margin:0 0 .8em}.rich-copy a{color:var(--green)}.booking-summary{position:sticky;top:26px;align-self:start;min-height:500px;padding:31px 29px;background:var(--green-dark);color:#fff}.booking-summary .summary-kicker{color:#f5e5e3}.summary-number{position:absolute;right:22px;top:8px;color:#ffffff14;font-family:Fira Sans,ui-sans-serif,sans-serif;font-size:6.4rem;line-height:1}.booking-summary dl{position:relative;margin:52px 0 0}.booking-summary dl div{padding:17px 0;border-bottom:1px solid rgba(255,255,255,.16);animation:reveal .22s ease both}.booking-summary dt{margin-bottom:6px;color:#ffffffc7;font-size:.59rem;letter-spacing:.1em;text-transform:uppercase}.booking-summary dd{margin:0;font-family:Fira Sans,ui-sans-serif,sans-serif;font-size:.98rem;line-height:1.35;text-transform:capitalize}.booking-summary dd small{display:block;margin-top:5px;color:#ffffffc7;font-family:Fira Sans,ui-sans-serif,sans-serif;font-size:.61rem}.booking-summary .empty dd{color:#ffffffb8}.booking-summary>p{margin:35px 0 0;color:#ffffffc7;font-size:.63rem;line-height:1.55}.loading-state,.empty-state{display:grid;place-items:center;min-height:260px;border-block:1px solid var(--line);text-align:center}.loading-state p,.empty-state p{margin:7px 0 0;color:var(--muted);font-size:.78rem}.empty-state.compact{min-height:150px;margin-top:28px}.loader{width:26px;height:26px;border:2px solid var(--sage);border-top-color:var(--green);border-radius:50%;animation:spin .7s linear infinite}.button-loader{width:15px;height:15px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}.error-banner{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:24px;padding:13px 16px;border-left:3px solid #a63d40;background:#f5e7e5;color:#793238;font-size:.75rem}.error-banner button{border:0;background:transparent;cursor:pointer;font-size:1.2rem}.confirmation-view{width:min(790px,calc(100% - 44px));margin:clamp(60px,10vw,120px) auto 110px;animation:step-enter .36s ease both}.confirmation-mark{display:grid;place-items:center;width:72px;height:72px;margin-bottom:30px;border-radius:50%;background:var(--aqua-dark);color:#fff;font-size:1.8rem}.confirmation-lead{max-width:560px;color:var(--muted);line-height:1.6}.confirmation-details{margin:45px 0 32px;border-top:1px solid var(--line)}.confirmation-details div{display:grid;grid-template-columns:150px 1fr;gap:20px;padding:16px 0;border-bottom:1px solid var(--line)}.confirmation-details dt{color:var(--muted);font-size:.66rem;text-transform:uppercase}.confirmation-details dd{margin:0;font-size:.85rem}.booking-code{overflow-wrap:anywhere;font-family:ui-monospace,monospace;font-size:.72rem!important}.pin-reveal{display:grid;grid-template-columns:190px 1fr;align-items:center;gap:30px;margin:38px 0 8px;padding:26px 28px;background:var(--green);color:#fff}.pin-reveal>div{display:grid;gap:7px}.pin-reveal span{color:#ffffffab;font-size:.62rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.pin-reveal strong{font-family:ui-monospace,monospace;font-size:2rem;letter-spacing:.16em}.pin-reveal p{margin:0;color:#ffffffb8;font-size:.72rem;line-height:1.65}.pin-reveal p strong{color:#fff;font-family:inherit;font-size:inherit;letter-spacing:0}.account-reminder{margin:34px 0 8px;padding:20px 22px;border-left:3px solid var(--green);background:var(--sage)}.account-reminder p{margin:6px 0 0;color:var(--muted);font-size:.75rem;line-height:1.5}.confirmation-actions{display:flex;align-items:center;gap:28px}.confirmation-reminder{margin:0 0 24px;padding:24px 0;border-block:1px solid var(--green)}.confirmation-reminder>span{color:var(--rose);font-size:.63rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.confirmation-reminder h2{margin:7px 0 12px;font-family:Fira Sans,ui-sans-serif,sans-serif;font-size:1.45rem;font-weight:400}.confirmation-notes{display:grid;gap:15px;margin-bottom:30px}.checkout-view{width:min(790px,calc(100% - 44px));margin:clamp(60px,10vw,120px) auto 110px;animation:step-enter .36s ease both}.checkout-view h1{margin:12px 0 16px;font-family:Fira Sans,ui-sans-serif,sans-serif;font-size:clamp(2.45rem,5.4vw,4.9rem);font-weight:400;line-height:1.04;letter-spacing:-.035em}.checkout-lead{max-width:620px;color:var(--muted);line-height:1.65}.checkout-details{margin:40px 0 28px;border-top:1px solid var(--line)}.checkout-details div{display:grid;grid-template-columns:180px 1fr;gap:20px;padding:16px 0;border-bottom:1px solid var(--line)}.checkout-details dt{color:var(--muted);font-size:.66rem;letter-spacing:.05em;text-transform:uppercase}.checkout-details dd{margin:0;font-size:.86rem;font-weight:700}.checkout-notice{margin:24px 0;padding:18px 20px;border-left:3px solid var(--rose);background:#f5e7e5;color:#793238;font-size:.78rem;line-height:1.55}.simulator-panel{margin:34px 0;padding:25px 0;border-block:1px solid var(--green)}.simulator-panel>span{color:var(--rose);font-size:.62rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.simulator-panel h2{margin:8px 0;font-family:Fira Sans,ui-sans-serif,sans-serif;font-size:1.4rem;font-weight:400}.simulator-panel p{margin:0 0 20px;color:var(--muted);font-size:.74rem;line-height:1.55}.simulator-panel>div{display:flex;flex-wrap:wrap;gap:22px}.auth-view{width:min(640px,calc(100% - 44px));min-height:calc(100vh - 165px);margin:clamp(56px,8vw,96px) auto 80px;animation:step-enter .3s ease both}.auth-view h1,.account-heading h1{margin:12px 0 14px;font-family:Fira Sans,ui-sans-serif,sans-serif;font-size:clamp(2.7rem,6vw,4.6rem);font-weight:400;line-height:1.04;letter-spacing:-.035em}.auth-back{display:block;min-height:auto;margin-bottom:62px;font-size:.7rem}.login-form{display:grid;grid-template-columns:1fr 170px;gap:18px 14px;margin-top:38px;padding-top:27px;border-top:1px solid var(--line)}.login-form label{display:grid;gap:8px}.login-form label span{color:var(--muted);font-size:.68rem;font-weight:700}.login-form input{width:100%;height:50px;padding:0 13px;border:1px solid var(--line);border-radius:2px;outline:none;background:#fbf9f3c7}.login-form input:focus{border-color:var(--green);box-shadow:0 0 0 3px #c133561a}.pin-input{font-family:ui-monospace,monospace;font-size:1.1rem;letter-spacing:.16em}.login-form .button{grid-column:1 / -1;margin-top:6px}.forgot-link{grid-column:1 / -1;border:0;background:transparent;color:var(--muted);font-size:.67rem}.forgot-link:disabled{opacity:.55}.account-view{width:min(1080px,calc(100% - 44px));min-height:calc(100vh - 165px);margin:62px auto 100px;animation:step-enter .3s ease both}.account-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:64px}.account-heading h1{font-size:clamp(2.8rem,6vw,4.8rem)}.account-heading p{margin:0;color:var(--muted);font-size:.83rem;line-height:1.55}.section-heading{display:flex;align-items:center;justify-content:space-between;padding-bottom:13px;border-bottom:1px solid var(--ink);color:var(--muted);font-size:.66rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.section-heading strong{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:var(--sage);color:var(--aqua-dark);font-size:.65rem}.appointment-list{border-bottom:1px solid var(--line)}.appointment-row{display:grid;grid-template-columns:150px minmax(0,1fr) auto;align-items:center;gap:30px;min-height:132px;padding:22px 8px;border-bottom:1px solid var(--line)}.appointment-row:last-child{border-bottom:0}.appointment-row time{display:grid;gap:7px}.appointment-row time strong{font-family:Fira Sans,ui-sans-serif,sans-serif;font-size:1.05rem;font-weight:400;text-transform:capitalize}.appointment-row time span{color:var(--green);font-size:.78rem;font-weight:800}.appointment-copy h2,.reschedule-panel h2{margin:7px 0 5px;font-family:Fira Sans,ui-sans-serif,sans-serif;font-size:1.35rem;font-weight:400}.appointment-copy p{margin:0;color:var(--muted);font-size:.7rem}.appointment-payment{display:grid;gap:8px;margin-top:14px;padding:12px 14px;border:1px solid var(--line);background:#ffffff4d}.appointment-payment dl{display:flex;flex-wrap:wrap;gap:10px 24px;margin:0}.appointment-payment dl div{display:flex;gap:7px;font-size:.7rem}.appointment-payment dt{color:var(--muted)}.appointment-payment dd{margin:0;font-weight:800}.appointment-payment .payment-status{color:var(--aqua-dark);font-weight:800}.appointment-payment .payment-attention{color:var(--rose)}.payment-actions{display:flex;flex-wrap:wrap;gap:8px}.payment-actions .button{min-height:38px;padding:0 14px;font-size:.67rem}.payment-refresh{border:0;background:transparent;color:var(--green);cursor:pointer;font-size:.67rem;font-weight:750}.balance-simulator{display:grid;gap:7px;padding-top:8px;border-top:1px solid var(--line);color:var(--muted);font-size:.62rem}.balance-simulator div{display:flex;flex-wrap:wrap;gap:7px}.balance-simulator button{min-height:34px;border:1px solid var(--line);background:transparent;color:var(--green);cursor:pointer;font-size:.62rem}.policy-timeline{display:flex;flex-wrap:wrap;gap:5px 14px;margin-top:11px;color:var(--muted);font-size:.64rem}.policy-timeline span:before{content:"·";margin-right:5px;color:var(--green)}.policy-timeline small{flex-basis:100%;color:var(--rose);font-size:.64rem}.status-label{color:var(--aqua-dark);font-size:.58rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.status-label[data-status=cancelled]{color:var(--rose)}.cancellation-outcome{margin:2rem 0;padding:1.25rem 0;border-block:1px solid var(--line);display:grid;gap:.45rem}.cancellation-outcome>span{color:var(--muted);font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}.cancellation-outcome>strong{font-family:var(--font-display);font-size:1.45rem}.cancellation-outcome p{margin:0;color:var(--muted)}.appointment-actions{display:flex;gap:9px}.appointment-actions button{min-height:39px;padding:0 15px;border:1px solid var(--green);background:transparent;color:var(--green);cursor:pointer;font-size:.67rem;font-weight:750}.appointment-actions .danger-action{border-color:transparent;color:var(--rose)}.appointment-actions button:disabled{cursor:wait;opacity:.45}.history-section{margin-top:68px}.history-list{opacity:.72}.history-list .appointment-row{grid-template-columns:150px minmax(0,1fr);min-height:110px}.reschedule-panel{animation:reveal .22s ease both}.reschedule-panel>.text-button{min-height:auto;margin-bottom:42px;font-size:.7rem}.reschedule-panel>h2{margin-top:12px;font-size:clamp(2.2rem,5vw,3.8rem)}.reschedule-panel>p{margin:0 0 35px;color:var(--muted);font-size:.82rem}.site-footer{display:flex;justify-content:space-between;padding:25px clamp(22px,5vw,76px);border-top:1px solid rgba(193,51,86,.14);color:var(--muted);font-size:.62rem}@keyframes step-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes reveal{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:900px){.booking-layout{grid-template-columns:minmax(0,1fr);margin-top:42px}.booking-summary{position:relative;top:auto;min-height:auto;order:-1;padding:18px 20px}.summary-number,.booking-summary .summary-kicker,.booking-summary>p{display:none}.booking-summary dl{display:flex;gap:20px;margin:0;overflow-x:auto}.booking-summary dl div{flex:0 0 auto;min-width:130px;padding:5px 16px 5px 0;border:0;border-right:1px solid rgba(255,255,255,.16)}.booking-summary dl div:last-child{border-right:0}.booking-summary dd{font-family:Fira Sans,ui-sans-serif,sans-serif;font-size:.75rem}.slot-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.appointment-row{grid-template-columns:120px minmax(0,1fr)}.appointment-actions{grid-column:2}}@media(max-width:620px){:root{--mobile-gutter: 18px}body{min-height:100svh}.site-shell{display:flex;min-height:100svh;overflow-x:clip;flex-direction:column}.site-shell:before{top:80px;right:-260px;width:520px;height:520px}.site-header{position:sticky;z-index:20;top:0;flex-wrap:wrap;gap:8px;min-height:68px;height:auto;padding:8px var(--mobile-gutter);background:#fbf9f3f0;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.brand{gap:9px}.brand-logo{width:158px}.header-note{display:none}.header-actions{flex:1 1 230px;flex-wrap:wrap;justify-content:flex-end;gap:4px 10px}.test-brand-selector select{min-width:110px}.header-link{min-height:44px;padding:0}.step-navigation{display:flex;width:calc(100% - (var(--mobile-gutter) * 2));margin-top:12px;overflow:hidden}.step-navigation button{flex:0 0 39px;justify-content:center;gap:7px;min-width:0;min-height:48px;padding:10px 0 11px;font-size:0;white-space:nowrap;transition:flex .22s ease,color .18s ease}.step-navigation button span{font-size:.62rem}.step-navigation button.active{flex:1 1 auto;justify-content:flex-start;padding-inline:8px;font-size:.68rem}.booking-layout{grid-template-columns:minmax(0,1fr);width:calc(100% - (var(--mobile-gutter) * 2));gap:24px;margin:28px auto 44px}.booking-workspace,.step-panel{width:100%;min-width:0}.step-panel h1{max-width:100%;margin-top:10px;font-size:clamp(2.45rem,12.7vw,3.25rem);line-height:1.02;overflow-wrap:break-word}.step-intro{max-width:none;margin-bottom:28px;font-size:.86rem;line-height:1.55}.choice-row{grid-template-columns:auto minmax(0,1fr);gap:13px;min-width:0;min-height:86px;padding:15px 4px}.choice-row:hover{padding-inline:4px;background:transparent}.choice-row.selected,.choice-row.selected:hover{background:var(--paper)}.choice-copy small{white-space:normal}.choice-arrow{display:none}.service-row{grid-template-columns:auto minmax(0,1fr)}.service-meta{grid-column:2;grid-template-columns:auto auto;justify-items:start;align-items:baseline;gap:10px;min-width:0}.service-meta strong{font-size:.82rem}.location-section,.slots-section{margin-top:30px}.location-grid,.patient-form,.billing-grid{grid-template-columns:1fr}.location-grid button{min-height:76px;padding:15px}.privacy-check,.patient-form .step-actions,.review-terms{grid-column:1}.review-terms dl div{align-items:flex-start;flex-direction:column;gap:3px}.review-terms dd{text-align:left}.review-facts>div{grid-template-columns:1fr;gap:5px}.review-economy>div{align-items:start}.day-strip{display:flex;width:calc(100% + var(--mobile-gutter));margin-right:calc(var(--mobile-gutter) * -1);scroll-snap-type:x mandatory;scroll-padding-inline:0 var(--mobile-gutter)}.availability-navigation{flex-wrap:wrap}.availability-navigation strong{order:-1;width:100%;text-align:left}.day-strip button{flex:0 0 104px;min-width:104px;min-height:104px;scroll-snap-align:start}.slot-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.slot-grid button{min-height:50px}.step-actions{position:sticky;z-index:10;bottom:0;display:grid;grid-template-columns:minmax(92px,auto) minmax(0,1fr);align-items:center;gap:12px;margin:34px calc(var(--mobile-gutter) * -1) -12px;padding:12px var(--mobile-gutter) calc(12px + env(safe-area-inset-bottom));border-top-color:#c133562e;background:#fbf9f3f5;box-shadow:0 -12px 28px #3f3f3f12;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.step-actions .button{width:100%;min-height:50px}.step-actions .text-button{min-height:48px;text-align:left}.booking-summary{display:flex;align-items:center;gap:16px;width:100%;max-width:100%;padding:13px 16px;overflow:hidden}.booking-summary .summary-kicker{display:block;flex:0 0 auto;color:#ffffffc7}.booking-summary dl{display:block;min-width:0;max-width:100%;margin:0;overflow:hidden}.booking-summary dl div{display:none;min-width:0;padding:0 0 0 16px;border:0;border-left:1px solid rgba(255,255,255,.18)}.booking-summary dl div:not(.empty):not(:has(~div:not(.empty))){display:block}.booking-summary dt{margin-bottom:4px}.booking-summary dd,.booking-summary dd small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.confirmation-details div{grid-template-columns:1fr;gap:6px}.confirmation-view,.auth-view{width:calc(100% - (var(--mobile-gutter) * 2))}.confirmation-view{margin-top:42px}.confirmation-view h1,.auth-view h1{font-size:clamp(2.5rem,12vw,3.35rem)}.confirmation-mark{width:60px;height:60px;margin-bottom:24px}.pin-reveal{grid-template-columns:1fr;gap:18px;padding:22px 20px}.confirmation-actions,.account-heading{align-items:stretch;flex-direction:column}.confirmation-actions .button,.account-heading .button{width:100%}.confirmation-actions{gap:14px}.auth-view{min-height:auto;margin-top:34px}.auth-back{margin-bottom:42px}.login-form{grid-template-columns:1fr}.login-form .button,.forgot-link{grid-column:1}.login-form input,.patient-form input:not([type=checkbox]){height:52px;font-size:1rem}.account-view{width:calc(100% - (var(--mobile-gutter) * 2));margin-top:36px}.account-heading{gap:28px;margin-bottom:45px}.appointment-row,.history-list .appointment-row{grid-template-columns:1fr;gap:16px;padding:26px 4px}.appointment-actions{grid-column:1}.appointment-actions button{flex:1;min-height:48px}.reschedule-panel .step-actions{margin-inline:calc(var(--mobile-gutter) * -1)}.site-footer{margin-top:auto;padding:22px var(--mobile-gutter)}.site-footer{align-items:flex-start;flex-direction:column;gap:8px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}.proposal-view{width:min(860px,calc(100% - 40px));margin:0 auto;padding:72px 0 96px}.proposal-view h1{margin:10px 0 14px;font-size:clamp(2.3rem,7vw,4.6rem);line-height:1.04;letter-spacing:-.035em}.proposal-comparison{display:grid;grid-template-columns:1fr 1fr;margin-top:42px;border-block:1px solid var(--line)}.proposal-comparison>div{padding:28px 30px 28px 0}.proposal-comparison>div+div{padding-left:30px;border-left:1px solid var(--line)}.proposal-comparison span,.proposal-deadline{color:var(--muted);font-size:.78rem}.proposal-comparison strong{display:block;margin-top:12px;font-size:1.15rem;text-transform:capitalize}.proposal-comparison p{margin:7px 0 0}.proposal-deadline{margin:18px 0 0}.proposal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:34px}.proposal-closed{margin-top:30px;padding-block:16px;border-block:1px solid var(--line)}.success-banner{margin-top:24px;padding:14px 0;border-block:1px solid #7c9d84;color:#315f3c}.account-proposals{min-width:0;grid-column:2 / -1;margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}.account-proposals h3{margin:0 0 8px;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}.account-proposal{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 0}.account-proposal p{margin:0}.account-proposal>div{display:flex;gap:8px}@media(max-width:680px){.proposal-view{width:min(100% - 28px,860px);padding-top:38px}.proposal-comparison{grid-template-columns:1fr}.proposal-comparison>div{padding:22px 0}.proposal-comparison>div+div{padding-left:0;border-top:1px solid var(--line);border-left:0}.proposal-actions,.account-proposal{align-items:stretch;flex-direction:column-reverse}.proposal-actions .button{width:100%}.account-proposals{min-width:0;grid-column:1 / -1}}.patient-tabs{display:flex;gap:6px;overflow-x:auto;max-width:100%;padding:4px 2px 10px;margin:16px 0}.patient-tabs button{flex:0 0 auto;min-height:44px;padding:10px 16px;border:1px solid currentColor;border-radius:8px;background:transparent;color:inherit;font:inherit;cursor:pointer}.patient-tabs button[aria-selected=true],.patient-tabs button[aria-pressed=true]{background:var(--green-dark);color:#fff;border-color:var(--green-dark);font-weight:700}.patient-tabs button:focus-visible{outline:3px solid #247bba;outline-offset:2px}.patient-tabs button:disabled{cursor:default;opacity:.65}[role=tabpanel][hidden]{display:none}.account-heading{gap:16px}.account-heading h1{font-size:clamp(24px,4vw,36px)}.account-heading p{overflow-wrap:anywhere}.patient-flow-notice{margin:12px 0}.secondary-tabs{margin-top:0}
