/* Hero booking card, shared by the light and bold concepts. */
.hero{grid-template-columns:1.05fr 1fr;align-items:center;gap:64px;padding-top:46px;padding-bottom:46px}.hero-stage{padding-bottom:0}.booking-widget{min-width:0;background:#fff;border:1px solid #dce9e2;border-radius:26px;box-shadow:0 18px 55px #13544716;padding:28px 30px 0;scroll-margin-top:24px;color:#112b35;overflow:hidden}.booking-topline{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:15px}.booking-type{display:flex;align-items:center;gap:9px;font-size:.66rem;letter-spacing:.085em;font-weight:750;color:#36715d}.booking-type svg{width:23px;height:23px}.booking-preview{border:1px solid #d9e5df;background:#f4f8f5;padding:3px 9px;border-radius:20px;color:#526a60;font-size:.68rem;font-weight:600}.booking-widget h2{font-size:clamp(1.55rem,2.25vw,1.95rem);letter-spacing:-.04em;line-height:1.2}.booking-intro{font-size:.86rem;color:#5b7068;margin-top:8px;margin-bottom:22px}.booking-widget #find-care{display:block}.booking-field{margin-bottom:17px}.booking-field label,.booking-times legend{display:flex;align-items:center;gap:9px;font-size:.82rem;font-weight:650;margin-bottom:8px;letter-spacing:0}.booking-field label>span,.booking-times legend>span{display:inline-grid;place-items:center;width:21px;height:21px;border-radius:50%;background:#e9f4ee;color:#23734f;font-size:.65rem;flex-shrink:0}.booking-widget select{min-height:48px;padding:10px 13px;border-color:#cadbd2;border-radius:10px;background:#fcfefd;color:#183d2e;font-size:1rem}.booking-times{min-width:0}.booking-times legend{padding:0}.booking-timezone{font-size:.7rem;color:#62746c;margin:-2px 0 10px}.time-slots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.time-slot{position:relative;cursor:pointer;min-width:0}.time-slot input{position:absolute;inset:0;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}.time-slot>span{display:grid;place-items:center;min-height:44px;border:1px solid #c9dbd1;border-radius:9px;color:#335f4c;font-size:.9rem;font-weight:600;background:#fff;transition:background .15s,border-color .15s}.time-slot input:checked+span{background:#e7f5ed;border:2px solid #087d55;color:#075b3e;box-shadow:0 0 0 1px #087d550d}.time-slot:hover>span{background:#f0f8f3;border-color:#5a947b}.time-slot input:focus-visible+span{outline:3px solid #ef9b1c;outline-offset:3px}.booking-selection{font-size:.75rem;min-height:20px;color:#416953;margin:14px 0 12px}.booking-widget #booking-submit{width:100%;min-height:52px;border-radius:12px;justify-content:space-between;padding:13px 18px;font-size:.94rem;gap:12px;white-space:normal}.booking-widget #booking-submit:disabled{background:#e3ebe6;border-color:#e3ebe6;color:#586d61;box-shadow:none;transform:none}.booking-demo{color:#69796f;font-size:.68rem;text-align:center;line-height:1.6;margin:10px 0 17px}.booking-powered{background:#f6faf7;border-top:1px solid #e0ebe4;margin:0 -30px;padding:13px 20px;text-align:center;color:#697c70;font-size:.74rem}.booking-powered a{color:#2c5d43;font-weight:650;display:inline-block;padding:3px 0}.booking-powered a:hover{text-decoration:underline}.booking-unavailable{padding:16px;border:1px solid #e7d9a9;background:#fffae9;border-radius:12px;font-size:.875rem;line-height:1.65;margin:6px 0 20px;color:#655923}.booking-unavailable strong{display:block;color:#51451c;margin-bottom:4px}.booking-widget [hidden]{display:none!important}.appointment-summary{padding:17px;border:1px solid #d0e5d9;background:#f1f9f4;border-radius:12px;margin:0 0 14px}.appointment-summary strong{display:block;color:#16543a}.appointment-summary p{font-size:.875rem;color:#456553;margin-top:5px}.appointment-summary small{display:block;color:#60756a;margin-top:5px}.edit-appointment{border:0;background:none;text-decoration:underline;text-underline-offset:3px;min-height:44px;color:#176342;padding:7px 0;font-size:.875rem}.steps [aria-current]{color:#087d55}.steps [aria-current]>span{background:#087d55;border-color:#087d55}.check input,.choice input{accent-color:#087d55}.choice:has(input:checked){background:#f0f8f3;border-color:#087d55}
@media(min-width:761px) and (max-width:1100px){.hero{gap:30px;grid-template-columns:1fr 1.07fr}.booking-widget{padding:24px 22px 0}.booking-powered{margin-inline:-22px}.booking-widget h2{font-size:1.65rem}.hero h1{font-size:clamp(2.35rem,4.2vw,3.15rem)}}
@media(max-width:760px){.hero{grid-template-columns:1fr;gap:28px;padding-top:32px;padding-bottom:32px}.booking-widget{padding:24px 22px 0;border-radius:22px;scroll-margin-top:18px}.booking-widget h2{font-size:1.7rem}.booking-powered{margin-inline:-22px}.booking-intro{margin-bottom:21px;max-width:260px}.booking-widget #find-care .button{padding:14px 17px}.booking-field{margin-bottom:18px}.booking-widget select{min-height:50px}.time-slot>span{min-height:46px}.booking-demo{font-size:.68rem}.steps{font-size:.8rem;gap:5px}.steps li{gap:5px}.booking-selection{line-height:1.5}.hero-note{margin-top:14px}.hero-actions{margin-top:22px}}
@media(max-width:370px){.booking-widget{padding:22px 17px 0}.booking-powered{margin-inline:-17px}.booking-widget h2{font-size:1.45rem}.booking-type{font-size:.58rem;gap:6px}.booking-preview{font-size:.63rem}.booking-widget #booking-submit{font-size:.87rem}.booking-timezone{font-size:.66rem}.steps{font-size:.7rem}.steps li>span{width:20px;height:20px}.review>div{flex-wrap:wrap}.review dd{text-align:left}}
