:root{--petrol:#007d88;--deep:#07515b;--aqua:#29a6ab;--ink:#173f47;--muted:#536e73;--mist:#eff7f7;--line:#d9e8e9}.agenda-shell{padding-bottom:44px}.agenda-header{min-height:112px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.back-link{display:flex;align-items:center;gap:9px;min-height:44px;padding:0 15px;border:1px solid var(--line);border-radius:99px;font-size:.875rem;font-weight:700;color:var(--petrol)}.back-link:hover{background:var(--mist)}.agenda-hero{max-width:730px;padding:50px 0 34px}.agenda-hero .eyebrow{display:flex;align-items:center;gap:10px;margin-bottom:20px}.agenda-hero .eyebrow span{width:24px;height:1px;background:var(--aqua)}.agenda-hero h1{font-size:clamp(2.6rem,5.2vw,4rem);line-height:1.04;letter-spacing:-2px}.agenda-hero h1 em{font-style:normal;color:var(--petrol)}.agenda-hero>p:last-child{max-width:580px;margin-top:20px;color:var(--muted);font-size:1rem}.scheduler{border:1px solid var(--line);border-radius:24px;overflow:hidden;background:#fff;box-shadow:0 15px 50px #07515b0d}.schedule-progress{display:flex;align-items:center;padding:17px 30px;background:var(--mist);color:var(--petrol);font-size:.75rem;font-weight:700}.schedule-progress span{display:grid;place-items:center;width:23px;height:23px;border-radius:50%;border:1px solid #9fd7da}.schedule-progress span:first-child{background:var(--petrol);border-color:var(--petrol);color:#fff}.schedule-progress i{height:1px;width:45px;background:#b9dcdd}.scheduler-grid{display:grid;grid-template-columns:1.2fr .8fr}.calendar-card,.time-card{padding:32px}.calendar-card{border-right:1px solid var(--line)}.calendar-heading{display:flex;justify-content:space-between;align-items:start;gap:12px}.calendar-heading h2,.time-card h2{font-size:1.65rem;line-height:1.2;letter-spacing:-.5px;margin-top:9px}.calendar-nav{display:flex;gap:8px}.month-button{display:grid;place-items:center;width:39px;height:39px;border:1px solid var(--line);border-radius:50%;background:white;color:var(--petrol);font:1.6rem/1 Arial;cursor:pointer}.month-button:hover{background:var(--mist)}.month-button:focus-visible,.calendar-day:focus-visible,.time-option:focus-visible,.continue-button:focus-visible{outline:3px solid var(--deep);outline-offset:3px}.current-month{margin:28px 0 16px;font-weight:700;color:var(--ink);text-transform:capitalize}.weekdays,.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:7px}.weekdays{margin-bottom:7px}.weekdays span{padding:5px 0;text-align:center;font-size:.6875rem;font-weight:700;color:var(--muted)}.calendar-day{display:grid;place-items:center;aspect-ratio:1;border:0;border-radius:50%;background:transparent;color:var(--ink);font:inherit;cursor:pointer}.calendar-day:hover:not(:disabled){background:var(--mist);color:var(--petrol)}.calendar-day:disabled{color:#b7c5c7;cursor:not-allowed}.calendar-day.is-selected{background:var(--petrol);color:#fff;font-weight:700;box-shadow:0 6px 14px #007d8840}.calendar-day.is-today{box-shadow:inset 0 0 0 1px var(--aqua)}.time-card{background:#fcfefe}.time-helper{min-height:48px;margin:19px 0 18px;color:var(--muted);font-size:.875rem}.time-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.time-option{min-height:45px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--ink);font:inherit;font-size:.875rem;cursor:pointer}.time-option:hover{border-color:var(--aqua);color:var(--petrol)}.time-option.is-selected{background:var(--petrol);border-color:var(--petrol);color:#fff;font-weight:700}.service-select{display:block;margin-top:28px;margin-bottom:8px;font-size:.8125rem;font-weight:700;color:var(--ink)}.service-select span{font-weight:400;color:var(--muted)}select{width:100%;min-height:47px;padding:0 13px;border:1px solid var(--line);border-radius:9px;background:white;color:var(--ink);font:inherit}.booking-summary{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:22px 30px;border-top:1px solid var(--line);background:var(--petrol);color:#fff}.booking-summary .eyebrow{color:#bfe8ea;font-size:.6875rem}.booking-summary strong,.booking-summary span{display:block}.booking-summary strong{font-size:1.0625rem;margin-top:3px}.booking-summary span:not(.eyebrow){font-size:.875rem;opacity:.9}.continue-button{display:flex;align-items:center;justify-content:center;gap:14px;min-height:51px;padding:0 20px;border:0;border-radius:8px;background:#fff;color:var(--petrol);font:700 .875rem Arial;cursor:pointer}.continue-button:disabled{opacity:.55;cursor:not-allowed}.booking-note{display:flex;align-items:flex-start;gap:12px;max-width:760px;margin:24px auto 0;color:var(--muted);font-size:.8125rem;line-height:1.6}.booking-note p{margin:0}.note-icon{display:grid;place-items:center;width:20px;height:20px;flex-shrink:0;border-radius:50%;background:var(--mist);color:var(--petrol);font-size:.75rem;font-weight:700}.confirmation{max-width:650px;padding:44px;margin:35px auto 0;border-radius:22px;background:var(--mist);text-align:center}.confirmation[hidden]{display:none}.confirmation-check{display:grid;place-items:center;width:57px;height:57px;margin:0 auto 17px;border-radius:50%;background:var(--petrol);color:white;font-size:1.6rem}.confirmation h2{font-size:2rem;line-height:1.15;letter-spacing:-.7px;margin-top:10px}.confirmation p:not(.eyebrow){margin:16px auto 0;max-width:500px;color:var(--muted)}.confirmation .confirmation-detail{font-size:.875rem}.confirmation .button{margin:27px auto 0}.confirmation .button span{margin-left:6px}@media(max-width:760px){.agenda-shell{padding:0 26px 33px}.agenda-header{min-height:94px}.back-link{width:43px;padding:0;justify-content:center;font-size:0}.back-link span{font-size:1.15rem}.agenda-hero{padding:33px 0 27px}.agenda-hero h1{font-size:2.6rem;letter-spacing:-1.5px}.agenda-hero>p:last-child{font-size:.9375rem}.scheduler{border-radius:16px}.schedule-progress{padding:14px 20px}.scheduler-grid{grid-template-columns:1fr}.calendar-card,.time-card{padding:25px 20px}.calendar-card{border-right:0;border-bottom:1px solid var(--line)}.calendar-heading h2,.time-card h2{font-size:1.45rem}.weekdays,.calendar-days{gap:5px}.booking-summary{display:block;padding:21px}.continue-button{width:100%;margin-top:17px}.booking-note{font-size:.8125rem}.confirmation{padding:33px 22px}.confirmation h2{font-size:1.7rem}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
