.booking-shell{max-width:1040px;margin:0 auto;padding:36px 24px 72px}.booking-heading{text-align:center;max-width:750px;margin:0 auto 36px}.booking-heading h1{font-size:clamp(34px,5vw,54px);line-height:1.12;letter-spacing:-1.6px;margin:12px 0 18px}.booking-heading p{font-size:18px;line-height:1.7;color:#536a6c}.booking-kicker{font-size:14px!important;text-transform:uppercase;letter-spacing:1.5px;color:#3d7773!important}.service-options{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:28px 0}.service-option{font:inherit;text-align:left;border:1px solid #b5c7c3;background:#eef3ee;border-radius:16px;color:#173e49;padding:24px;cursor:pointer;min-height:170px}.service-option[aria-pressed=true]{border:2px solid #275f60;background:#e1eeea;box-shadow:0 9px 24px #193f4710;padding:23px}.service-option strong{display:block;font-size:25px;margin:8px 0}.service-option span{display:block;font-size:17px;line-height:1.6}.service-price{font-size:30px!important;font-weight:600;letter-spacing:-1px}.booking-panel{background:#fff;border:1px solid #d6e1dc;border-radius:18px;padding:30px;margin:24px 0;box-shadow:0 12px 34px #123b4507}.booking-panel h2{font-size:27px;line-height:1.25;margin:0 0 16px}.booking-panel p,.booking-panel li{font-size:17px;line-height:1.7;color:#4b6265}.booking-alert{padding:18px 20px;border-radius:12px;background:#edf3ef;border-left:4px solid #447c75;font-size:17px;line-height:1.7;margin:20px 0;overflow-wrap:anywhere}.booking-alert[role=alert]{background:#fff4e8;border-color:#976b40}.booking-status{min-height:28px;font-size:17px}.booking-slots{display:grid;gap:24px}.booking-day h3{font:600 18px system-ui;margin:6px 0 12px}.booking-day-times{display:flex;flex-wrap:wrap;gap:10px}.booking-time{font:600 18px system-ui;border:1px solid #b1c5bf;background:#f2f6f2;color:#193e49;border-radius:10px;min-height:48px;padding:10px 22px;cursor:pointer}.booking-time[aria-pressed=true]{background:#173f4b;color:#fff;border-color:#173f4b}.booking-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.booking-field{display:flex;flex-direction:column;gap:8px;font-size:17px;color:#193e49}.booking-field input{font:inherit;border:1px solid #aebfbb;padding:13px 14px;border-radius:8px;min-width:0;width:100%;background:#fff}.booking-field small{font-size:15px;color:#607375}.booking-check{display:flex;gap:12px;align-items:flex-start;font-size:16px;line-height:1.65;margin:19px 0;color:#405b60}.booking-check input{width:20px;height:20px;flex:none;margin-top:3px}.booking-check a,.booking-panel a:not(.button){color:#205f62;text-decoration:underline;text-underline-offset:3px}.booking-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.booking-actions .button{font-size:17px;min-height:50px}.booking-shell button:disabled{cursor:wait;opacity:.55}.booking-shell :focus-visible{outline:3px solid #b06c38;outline-offset:4px}.booking-selected{font-size:18px!important;color:#163e48!important;font-weight:600}.booking-back{display:inline-block;margin-bottom:22px;font-size:16px}.booking-subtle{font-size:15px!important;color:#5c7172!important}.booking-policy{font-size:16px;line-height:1.8;color:#496166;padding-left:21px}.booking-table{width:100%;border-collapse:collapse;margin:20px 0}.booking-table th,.booking-table td{text-align:left;padding:14px 10px;border-bottom:1px solid #d5e0d9;font-size:17px}.patient-rates{display:grid;gap:14px;margin:22px 0}.patient-rate{padding:18px;border-radius:12px;background:#fff9;display:grid;grid-template-columns:1fr auto;gap:8px}.patient-rate strong{font-size:22px}.patient-rate span{font-size:17px;line-height:1.5}.patient-rate .rate-price{font-size:25px;font-weight:600;grid-column:2;grid-row:1/3;align-self:center;color:#123d49}.patient-schedule{font-size:17px;line-height:1.7;margin:18px 0}.terms-copy{max-width:800px}.terms-copy h2{font-size:27px;margin:32px 0 16px}.terms-copy p,.terms-copy li{font-size:18px;line-height:1.8}.terms-copy ul{padding-left:24px}.booking-test-banner{padding:12px 18px;background:#fff0d6;border:1px solid #d9be91;border-radius:8px;margin-bottom:22px;font-size:16px}.booking-shell [hidden]{display:none!important}
@media(max-width:620px){.booking-shell{padding:25px 18px 48px}.booking-heading{text-align:left;margin-bottom:24px}.booking-heading h1{letter-spacing:-1px}.service-options{grid-template-columns:1fr;gap:12px}.service-option{min-height:0;padding:20px}.service-option[aria-pressed=true]{padding:19px}.service-option strong{font-size:23px}.service-price{font-size:27px!important}.booking-panel{padding:23px 18px}.booking-form-grid{grid-template-columns:1fr}.booking-actions{flex-direction:column}.booking-actions .button{width:100%;justify-content:center}.booking-table th,.booking-table td{font-size:15px;padding:12px 5px}.patient-rate{grid-template-columns:1fr}.patient-rate .rate-price{grid-column:1;grid-row:auto}.booking-alert{padding:16px}.booking-time{padding:10px 20px}.booking-check{font-size:16px}}
