.booking-container{width:100%;max-width:1000px;margin-top:2em;display:flex;flex-direction:column;padding:24px;box-sizing:border-box;overflow:hidden}.booking-container .booking-header{position:relative;width:100%;display:flex;flex-direction:column;align-items:center;margin-bottom:12px}.booking-container .booking-header .back-arrow-button{position:absolute;top:0;left:0;background:none;border:none;margin:0;display:flex;align-items:center;justify-content:center;color:#1d1d1f;border-radius:50%;width:40px;height:40px;transition:all .2s;z-index:5}@media (hover:hover) and (pointer:fine){.booking-container .booking-header .back-arrow-button:hover{background-color:rgba(0,0,0,.05);color:#0071e3;transform:translateX(-2px)}}.booking-container .booking-header .back-arrow-button:focus{outline:none;box-shadow:0 0 0 2px rgba(0,113,227,.3)}.booking-container .booking-header .back-arrow-button svg{width:20px;height:20px;stroke-width:2.5px}.booking-container .booking-header .step-title{font-size:1.5rem;font-weight:600;text-align:center;color:#1d1d1f;position:relative}.booking-container .booking-content{background-color:#fff;padding:12px;width:100%}.booking-container .booking-content .doctor-selection,.booking-container .booking-content .service-selection,.booking-container .booking-content .specialty-selection,.booking-container .booking-content .time-selection{width:100%}@media(max-width:768px){.booking-container{padding:16px}.booking-container .booking-header{margin-bottom:20px}.booking-container .booking-header .back-arrow-button{top:-6px;left:-6px}.booking-container .booking-header .step-title{font-size:1rem;margin-bottom:10px;padding-bottom:10px}.booking-container .booking-header .step-title:after{width:50px;height:2px}.booking-container .booking-content{padding:16px}}.vita-card-bezel-soft{position:relative;border-radius:24px;border:1px solid rgba(0,0,0,.1);box-shadow:0 3px 8px rgba(0,0,0,.06),0 1px 2px rgba(0,0,0,.04),inset 1px 1px 1.5px hsla(0,0%,100%,.65),inset -1px -1px 1.5px rgba(0,0,0,.06),inset 0 0 0 1px hsla(0,0%,100%,.1)}.vita-card-bezel-soft:before{content:"";position:absolute;inset:2px;border-radius:24px;pointer-events:none;background:linear-gradient(135deg,rgba(255,255,255,.22),rgba(255,255,255,.08) 40%,rgba(255,255,255,0))}.vita-hover-lift{transition:transform .15s var(--ease-out)}@media(hover:hover)and (pointer:fine){.vita-hover-lift:hover{transform:translateY(-1px)}}.vita-hover-lift:active{transform:translateY(0)}.vita-card-bezel{position:relative;border-radius:24px;border:1px solid rgba(0,0,0,.12);box-shadow:0 6px 14px rgba(0,0,0,.1),0 2px 4px rgba(0,0,0,.05),inset 1.5px 1.5px 2.5px hsla(0,0%,100%,.8),inset -1.5px -1.5px 3px rgba(0,0,0,.1),inset 0 0 0 1px hsla(0,0%,100%,.18)}.vita-card-bezel:before{content:"";position:absolute;inset:2px;border-radius:24px;pointer-events:none;background:linear-gradient(135deg,rgba(255,255,255,.32),rgba(255,255,255,.12) 42%,rgba(255,255,255,0))}.vita-card-bezel-max{position:relative;border:1px solid rgba(0,0,0,.16);box-shadow:0 12px 28px rgba(0,0,0,.18),0 4px 10px rgba(0,0,0,.1),0 1px 1px hsla(0,0%,100%,.1),inset 2px 2px 4px hsla(0,0%,100%,.9),inset -2px -2px 6px rgba(0,0,0,.18),inset 0 0 0 1px hsla(0,0%,100%,.24),inset 0 -1px 0 rgba(0,0,0,.06);border-radius:24px}.vita-card-bezel-max:before{content:"";position:absolute;inset:2px;border-radius:24px;pointer-events:none;background:linear-gradient(130deg,rgba(255,255,255,.45),rgba(255,255,255,.18) 35%,rgba(255,255,255,.057) 60%)}.is-readable:before{background:rgba(0,0,0,0)!important}.booking-search{max-width:1040px;padding-block:var(--space-lg,18px) var(--space-xxl,36px)}.booking-search__results-anchor{scroll-margin-top:var(--space-lg,18px)}.booking-search-panel{border:1px solid var(--border-color);border-radius:var(--card-border-radius);padding:var(--space-xl,24px);color:var(--text-color)}.booking-search-panel__header{max-width:680px;margin-bottom:var(--space-lg,18px)}.booking-search-panel__logo{display:block;max-height:56px;max-width:220px;-o-object-fit:contain;object-fit:contain;margin-bottom:var(--space-sm,8px)}.booking-search-panel__eyebrow{display:block;color:var(--primary-color);font-size:var(--font-xs,10.5px);font-weight:700;letter-spacing:.08em;margin-bottom:var(--space-xs,3px);text-transform:uppercase}.booking-search-panel__title{font-family:var(--header-font-family,inherit);font-size:clamp(var(--font-xl,19px),3vw,var(--font-xxl,22px));font-weight:700;letter-spacing:-.02em;margin:0}.booking-search-panel__subtitle{color:var(--hard-gray);font-size:var(--font-md,14px);margin:var(--space-xs,3px) 0 0}.booking-search-panel__controls{display:grid;grid-gap:var(--space-md,12px);gap:var(--space-md,12px);padding:var(--space-lg,18px);background:rgba(var(--primary-color-rgb,var(--primary-rgb)),.04);border:1px solid var(--border-color);border-radius:calc(var(--card-border-radius)*.65)}.booking-search-panel__relationship-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-gap:var(--space-md,12px);gap:var(--space-md,12px);align-items:start}.booking-search-panel__relationship{min-height:20px;margin:0;color:var(--primary-color-dark);font-size:var(--font-sm,12.5px);font-weight:600}.booking-search-panel__optional-filter,.booking-search-panel__returning-user{border-top:1px solid var(--border-color);padding-top:var(--space-sm,6px)}.booking-search-panel__optional-filter summary,.booking-search-panel__returning-user summary{width:-moz-fit-content;width:fit-content;color:var(--hard-gray);cursor:pointer;font-size:var(--font-sm,12.5px);font-weight:600;min-height:32px;padding-block:var(--space-xs,3px)}.booking-search-panel__optional-filter[open] summary,.booking-search-panel__returning-user[open] summary{color:var(--primary-color);margin-bottom:var(--space-sm,6px)}.booking-search-panel__optional-filter>.vita-form-field,.booking-search-panel__returning-user>.vita-form-field{max-width:440px}.booking-search-panel__month{margin-top:var(--space-lg,18px)}.booking-search-panel__section-heading{display:flex;align-items:center;gap:var(--space-sm,6px);margin-bottom:var(--space-sm,6px)}.booking-search-panel__section-heading>svg{color:var(--primary-color);font-size:22px}.booking-search-panel__section-heading h2{font-size:var(--font-md,14px);font-weight:700;margin:0}.booking-search-panel__section-heading p{color:var(--medium-gray);font-size:var(--font-xs,10.5px);margin:0}.booking-search-panel__section-heading p strong{text-transform:capitalize}.booking-search-panel__months{display:flex;gap:var(--space-sm,6px);overflow-x:auto;padding:var(--space-xs,3px);scroll-snap-type:x proximity;scrollbar-width:thin}.booking-search-panel__month-button{flex:0 0 104px;min-height:56px;display:grid;place-content:center;grid-gap:var(--space-2xs,2px);gap:var(--space-2xs,2px);border:1px solid var(--border-color);border-radius:calc(var(--card-border-radius)*.45);background:rgba(0,0,0,0);color:var(--hard-gray);cursor:pointer;scroll-snap-align:start;transition:border-color .18s ease,background-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease}.booking-search-panel__month-button span{font-size:var(--font-md,14px);font-weight:700;text-transform:capitalize}.booking-search-panel__month-button small{color:var(--medium-gray);font-size:var(--font-xs,10.5px)}@media (hover:hover) and (pointer:fine){.booking-search-panel__month-button:hover{border-color:var(--primary-color-50);background:rgba(var(--primary-color-rgb,var(--primary-rgb)),.05);transform:translateY(-1px)}}.booking-search-panel__month-button.is-selected{border-color:var(--primary-color);background:var(--primary-color);color:var(--off-white);box-shadow:0 5px 14px var(--primary-color-25),inset 0 1px 0 var(--secondary-color-50)}.booking-search-panel__month-button.is-selected small{color:var(--off-white)}.booking-search-panel__returning-user{margin-top:var(--space-md,12px)}.booking-search-panel__actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-md,12px);margin-top:var(--space-lg,18px)}.booking-search-panel__actions .vita-action-button{min-width:190px}.booking-search-panel__required{color:var(--hard-gray);font-size:var(--font-sm,12.5px)}.booking-search-panel :is(button,input,[role=combobox],summary):focus-visible{outline:3px solid var(--primary-color-25);outline-offset:2px}.booking-search__empty,.booking-search__error,.booking-search__progress{border:1px solid var(--border-color);border-radius:calc(var(--card-border-radius)*.5);color:var(--hard-gray);margin:var(--space-lg,18px) 0 0;padding:var(--space-md,12px);text-align:center}.booking-search__error{color:var(--danger-color)}.booking-search__results-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md,12px);margin-top:var(--space-xl,24px)}.booking-search__results-heading span{display:block;font-size:var(--font-lg,16px);font-weight:700}.booking-search__results-heading p{color:var(--hard-gray);font-size:var(--font-sm,12.5px);margin:0}.booking-search__results-heading strong{display:grid;place-items:center;min-width:34px;min-height:34px;border-radius:999px;background:var(--primary-color-25);color:var(--primary-color-dark);font-size:var(--font-sm,12.5px)}.booking-search__results{display:grid;grid-gap:var(--space-md,12px);gap:var(--space-md,12px);list-style:none;margin:var(--space-md,12px) 0 0;padding:0}.booking-search-result{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);grid-gap:var(--space-lg,18px);gap:var(--space-lg,18px);align-items:start;padding:var(--space-lg,18px);border:1px solid var(--border-color);border-radius:calc(var(--card-border-radius)*.65);background:rgba(0,0,0,0);box-shadow:0 8px 24px var(--soft-gray-25),inset 0 1px 0 var(--off-white)}.booking-search-result__person{display:flex;align-items:center;gap:var(--space-md,12px);min-width:0}.booking-search-result__avatar{width:64px;height:64px;flex:0 0 64px;border:2px solid var(--off-white);border-radius:50%;background:var(--primary-color-25);box-shadow:0 0 0 1px var(--border-color),0 6px 14px var(--soft-gray-25);-o-object-fit:cover;object-fit:cover}.booking-search-result__avatar--fallback{display:grid;place-items:center;color:var(--primary-color-dark);font-size:var(--font-lg,16px);font-weight:700}.booking-search-result__identity{min-width:0}.booking-search-result__name{font-size:var(--font-lg,16px);font-weight:700;line-height:1.2;margin:0}.booking-search-result__specialty{color:var(--hard-gray);font-size:var(--font-sm,12.5px);margin:var(--space-2xs,2px) 0 0}.booking-search-result__meta{display:flex;flex-wrap:wrap;gap:var(--space-xs,3px);margin-top:var(--space-sm,6px)}.booking-search-result__meta span{max-width:100%;padding:var(--space-2xs,2px) var(--space-sm,6px);border-radius:999px;background:rgba(var(--primary-color-rgb,var(--primary-rgb)),.07);color:var(--primary-color-dark);font-size:var(--font-xs,10.5px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.booking-search-result__availability{min-width:0;padding-left:var(--space-lg,18px);border-left:1px solid var(--border-color)}.booking-search-result__next{display:grid;grid-template-columns:auto 1fr;grid-column-gap:var(--space-xs,3px);-moz-column-gap:var(--space-xs,3px);column-gap:var(--space-xs,3px);align-items:center;margin-bottom:var(--space-sm,6px)}.booking-search-result__next svg{grid-row:1/span 2;color:var(--primary-color);font-size:20px}.booking-search-result__next span{color:var(--medium-gray);font-size:var(--font-xs,10.5px)}.booking-search-result__next strong{font-size:var(--font-sm,12.5px);text-transform:capitalize}.booking-search-result__next--empty{color:var(--medium-gray);display:block;font-size:var(--font-sm,12.5px);font-style:italic}.booking-search-result__day{overflow:hidden}.booking-search-result__day+.booking-search-result__day{margin-top:var(--space-md,12px)}.booking-search-result__day-label{color:var(--hard-gray);font-size:var(--font-xs,10.5px);font-weight:600;margin:0 0 var(--space-xs,3px);text-transform:capitalize}.booking-search-result__chips{display:flex;flex-wrap:wrap;gap:var(--space-sm,6px)}.booking-search-result__chip{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;min-width:76px;min-height:44px;padding-inline:var(--space-md,12px);border:1px solid var(--primary-color-50);border-radius:calc(var(--card-border-radius)*.35);background:rgba(var(--primary-color-rgb,var(--primary-rgb)),.06);color:var(--primary-color-dark);cursor:pointer;font-size:var(--font-md,14px);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:700;box-shadow:inset 0 1px 0 var(--off-white);transition:background-color .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease}@media (hover:hover) and (pointer:fine){.booking-search-result__chip:hover{border-color:var(--primary-color);background:var(--primary-color);color:var(--off-white);box-shadow:0 5px 12px var(--primary-color-25);transform:translateY(-1px)}}.booking-search-result__chip:active{box-shadow:inset 0 2px 4px var(--primary-color-dark-25);transform:translateY(1px)}.booking-search-result__chip small{font-size:9px;font-weight:600;line-height:1.15;white-space:nowrap}.booking-search-result__chip.is-advance-restricted,.booking-search-result__chip:disabled{cursor:not-allowed;border-color:var(--border-color);background:var(--light-gray,#eef1f2);color:var(--medium-gray,#66777c);box-shadow:none;opacity:.8}.booking-search-result__chip.is-advance-restricted:active,.booking-search-result__chip:disabled:active{transform:none;border-color:var(--border-color);background:var(--light-gray,#eef1f2);color:var(--medium-gray,#66777c);box-shadow:none}@media (hover:hover) and (pointer:fine){.booking-search-result__chip.is-advance-restricted:hover,.booking-search-result__chip:disabled:hover{transform:none;border-color:var(--border-color);background:var(--light-gray,#eef1f2);color:var(--medium-gray,#66777c);box-shadow:none}}.booking-search-result__expand{display:inline-flex;align-items:center;gap:var(--space-xs,3px);min-height:44px;margin-top:var(--space-xs,3px);padding:0;border:0;background:rgba(0,0,0,0);color:var(--primary-color);cursor:pointer;font-size:var(--font-sm,12.5px);font-weight:700}.booking-search-result__expand svg{transition:transform .18s ease}.booking-search-result__expand svg.is-open{transform:rotate(180deg)}.booking-search-result :is(button):focus-visible{outline:3px solid var(--primary-color-25);outline-offset:2px}.booking-search__more{display:flex;margin:var(--space-lg,18px) auto 0}@media(prefers-reduced-motion:reduce){.booking-search-panel__month-button,.booking-search-result__chip,.booking-search-result__expand svg{transition-duration:.01ms}}@media(max-width:767.98px){.booking-search{padding-block:var(--space-sm,8px) var(--space-xl,32px)}.booking-search-panel{border-radius:calc(var(--card-border-radius)*.65)}.booking-search-panel,.booking-search-panel__controls{padding:var(--space-md,16px)}.booking-search-panel__relationship-grid{grid-template-columns:minmax(0,1fr)}.booking-search-panel__month-button{flex-basis:92px;min-height:52px}.booking-search-panel__actions{align-items:stretch;flex-direction:column}.booking-search-panel__actions .vita-action-button{min-width:0;width:100%}.booking-search-panel :is(input,[role=combobox]){font-size:16px}.booking-search-panel summary{min-height:44px;display:flex;align-items:center}.booking-search-result{grid-template-columns:minmax(0,1fr);gap:var(--space-md,16px);padding:var(--space-md,16px)}.booking-search-result__availability{padding-left:0;padding-top:var(--space-md,16px);border-left:0;border-top:1px solid var(--border-color)}.booking-search-result__chips{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:var(--space-sm,8px);gap:var(--space-sm,8px)}.booking-search-result__chip{min-width:0}}@media(max-width:390px){.booking-search-result__chips{grid-template-columns:repeat(2,minmax(0,1fr))}}