[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.booking-shell{background:#edf2eb;padding:48px 5% 64px}.booking-heading,.booking-panel,.my-requests{max-width:760px;margin-left:auto;margin-right:auto}.booking-heading{text-align:center;margin-bottom:28px}.booking-heading .eyebrow{margin-bottom:10px}.booking-heading h1{font:600 clamp(2.5rem,6vw,4rem)/1.08 'Manrope',sans-serif;letter-spacing:-.06em;margin:0 0 12px}.booking-heading>p:not(.eyebrow){font-size:1.15rem;margin:0}.request-banner{margin:22px auto 0;padding:13px 18px;background:#fff7e9;border:1px solid #dfbd83;border-radius:9px;font-size:1rem;max-width:610px}.booking-panel{background:#fff;border:1px solid #cbd6cb;border-radius:18px;padding:32px 42px 38px;box-shadow:0 16px 44px rgba(22,56,50,.08);min-height:590px}.progress-wrap{margin-bottom:36px}.progress-wrap p{font-size:1rem;font-weight:700;margin:0 0 10px}.progress-track{height:9px;border-radius:20px;background:#e1e8df;overflow:hidden}.progress-track span{display:block;height:100%;width:14.285%;border-radius:20px;background:#c34d20;transition:width .25s ease}.booking-step h2,#booking-success h2{font:600 clamp(1.75rem,4vw,2.35rem)/1.18 'Manrope',sans-serif;letter-spacing:-.04em;margin:0 0 10px}.step-help{font-size:1.08rem;color:#435c53;margin:0 0 26px}.booking-step fieldset{border:0;padding:0;margin:0;min-width:0}.choice-list{display:grid;gap:12px}.choice-list label{display:flex;align-items:center;gap:16px;border:2px solid #aebeb2;border-radius:12px;padding:17px 19px;min-height:76px;cursor:pointer;background:#fff;transition:border-color .15s,background .15s,transform .15s}.choice-list label:hover{border-color:#557068;background:#f7faf6}.choice-list label:has(input:checked){border-color:#163832;background:#e5eee5;box-shadow:inset 0 0 0 1px #163832}.choice-list label:has(input:focus-visible){outline:4px solid #eea17f;outline-offset:3px}.choice-list input{accent-color:#163832;width:24px;height:24px;flex:0 0 24px}.choice-list strong{display:block;font-size:1.12rem;line-height:1.25}.choice-list small{display:block;font-size:.95rem;line-height:1.4;color:#4a6259;margin-top:4px}.two-up{grid-template-columns:1fr 1fr}.input-label,.contact-choice legend{display:block;font-size:1.05rem;font-weight:700;margin:22px 0 9px}.booking-step input:not([type=radio]):not([type=checkbox]){display:block;width:100%;min-height:58px;border:2px solid #8fa198;border-radius:10px;background:#fff;color:#163832;padding:12px 15px;font:1.1rem/1.4 'DM Sans',sans-serif}.booking-step input:focus-visible,button:focus-visible,a:focus-visible{outline:4px solid #eea17f;outline-offset:3px}.field-note{font-size:.98rem;line-height:1.55;color:#486058;margin:12px 0 0}.request-notice{background:#fff4e7;border-left:5px solid #c34d20;border-radius:7px;padding:18px 20px;margin:24px 0}.request-notice strong{font-size:1.08rem}.request-notice p{margin:5px 0 0;font-size:1rem}.consent{display:flex;align-items:flex-start;gap:13px;border:2px solid #aebeb2;border-radius:10px;padding:16px 18px;font-size:1rem;cursor:pointer}.consent:has(input:checked){border-color:#163832;background:#e5eee5}.consent input{width:24px;height:24px;flex:0 0 24px;margin:2px 0 0;accent-color:#163832}#request-summary{margin:22px 0}#request-summary>div{display:grid;grid-template-columns:145px 1fr;gap:16px;padding:13px 0;border-top:1px solid #d9e0d8}#request-summary dt{font-size:.95rem;color:#50665e}#request-summary dd{font-size:1.03rem;font-weight:600;overflow-wrap:anywhere}.booking-actions{display:flex;justify-content:space-between;gap:16px;margin-top:32px}.booking-actions .button{border:0;min-width:165px;min-height:58px;font-size:1.05rem;cursor:pointer;margin-left:auto}.secondary-button{min-height:52px;border:2px solid #81958a;color:#163832;background:#fff;border-radius:50px;padding:11px 22px;font:600 1rem 'DM Sans',sans-serif;cursor:pointer}.secondary-button:hover{background:#eef3ed}button:disabled{opacity:.6;cursor:wait}#booking-error{color:#a52a1c;background:#fff0ee;border-radius:8px;font-size:1rem;font-weight:600;margin:18px 0 0}#booking-error:not(:empty){padding:13px 16px}#booking-success{text-align:center;padding:22px 6%}.success-mark{display:inline-grid;place-items:center;width:72px;height:72px;border-radius:50%;background:#dfeedd;color:#163832;font-size:2.2rem;margin-bottom:20px}#booking-success>p{font-size:1.05rem}.reference{background:#edf3ec;border-radius:9px;padding:16px;font-size:.95rem!important}.reference strong{font-size:1.35rem;letter-spacing:.08em}.reference+.button{margin:8px 8px 8px 0}.my-requests{padding-top:46px}.requests-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.requests-heading h2{font-size:1.7rem;margin:0}.requests-heading .secondary-button{min-height:44px;padding:8px 18px}.my-requests>p{font-size:1rem}#requests-list{display:grid;gap:14px}#requests-list article{position:relative;background:#fff;border:1px solid #cbd6cb;border-radius:12px;padding:20px}#requests-list h3{font-size:1.12rem;margin:14px 0 4px}#requests-list p{font-size:1rem;margin:0 0 12px}#requests-list small{font-size:.9rem;display:block;overflow-wrap:anywhere}.request-status{display:inline-block;font-size:.9rem;font-weight:700;background:#fff0dd;border-radius:6px;padding:5px 10px}.cancel-request{background:none;border:0;border-bottom:2px solid #163832;padding:3px 0;color:#163832;font:600 .98rem 'DM Sans',sans-serif;margin-top:16px;cursor:pointer}.hero{padding-top:72px}.hero h2{font:600 clamp(48px,5.4vw,80px)/1.08 'Manrope',sans-serif;letter-spacing:-4px;margin:0 0 28px}.notice{padding:15px;background:#fff0dd;border-radius:8px}@media(max-width:650px){.booking-shell{padding:28px 4% 50px}.booking-heading{text-align:left}.booking-heading h1{font-size:2.55rem}.request-banner{font-size:1rem;margin-top:18px}.booking-panel{padding:25px 17px 28px;border-radius:14px;min-height:560px}.progress-wrap{margin-bottom:30px}.booking-step h2{font-size:1.8rem}.step-help{font-size:1rem}.choice-list label{min-height:74px;padding:15px}.choice-list strong{font-size:1.07rem}.choice-list small{font-size:.92rem}.two-up{grid-template-columns:1fr}.booking-actions{position:sticky;bottom:0;background:#fff;padding:16px 0 3px;margin-top:24px;z-index:2}.booking-actions button{flex:1}.booking-actions .button{min-width:0}.secondary-button{padding-left:15px;padding-right:15px}#request-summary>div{grid-template-columns:1fr;gap:3px}.my-requests{padding-top:34px}.requests-heading h2{font-size:1.45rem}.hero h2{font-size:clamp(45px,11.5vw,65px);letter-spacing:-2.5px}}@media(prefers-reduced-motion:reduce){.progress-track span,.choice-list label{transition:none}}
.account-state{margin:14px 0 0;padding:12px 14px;border-radius:10px;background:#fff;color:#163832;font-size:.95rem}.account-state a{font-weight:800;color:inherit}.therapist-picker{display:grid;gap:12px}.therapist-card{border:1px solid #bfd0c5;border-radius:13px;padding:16px;background:#fff}.therapist-card h3{margin:0 0 4px}.therapist-card p{margin:4px 0;color:#536b63}.slot-choices{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.therapist-choice{width:100%;text-align:left;border:2px solid #b5c5ba;border-radius:10px;background:#fff;color:#163832;padding:13px 15px;font:inherit;cursor:pointer}.therapist-choice strong,.therapist-choice span{display:block}.therapist-choice span{font-size:.9rem;color:#5d6e68;margin-top:4px}.therapist-choice.slot{width:auto}.therapist-choice.selected{border-color:#ff895a;background:#fff1e9;box-shadow:0 0 0 2px #ff895a33}.proposal{margin:16px 0;padding:16px;border-radius:12px;background:#e6f2e7;border:1px solid #99b79f}.proposal p{margin:5px 0}.confirm-offer,.reschedule-form button{border:0;border-radius:999px;background:#163832;color:#fff;padding:11px 16px;font-weight:800;cursor:pointer}.waiting{padding:11px 13px;border-radius:9px;background:#fff3df}.reschedule-toggle{margin-top:14px;border:1px solid #163832;border-radius:999px;background:#fff;color:#163832;padding:9px 13px;font-weight:700}.reschedule-form{display:grid;grid-template-columns:1fr 1fr auto;gap:8px;margin-top:10px}.reschedule-form input,.reschedule-form select{min-height:44px;border:1px solid #8ea097;border-radius:8px;padding:8px;font:inherit}@media(max-width:650px){.reschedule-form{grid-template-columns:1fr}.therapist-choice.slot{width:100%}}
.credential-state{display:inline-block!important;margin:8px 0!important;border-radius:7px;padding:6px 9px;font-size:.88rem;font-weight:800}.credential-state.official_source_checked{background:#dceedd;color:#255d36!important}.credential-state.website_claim_only{background:#fff0d9;color:#75520c!important}.credential-state.not_checked,.credential-state.sandbox{background:#f1e4df;color:#783329!important}.profile-link{display:inline-block;margin-top:9px;color:#163832;font-weight:800;text-underline-offset:3px}
