.services{display:block;padding-block:76px 65px}
.appointment-heading{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:34px}
.appointment-heading .eyebrow{color:var(--gold-dark);margin-bottom:12px}
.appointment-heading h2{font-size:clamp(48px,4.5vw,70px);text-wrap:balance}
.appointment-heading>p{font-size:14px;line-height:1.8;color:var(--muted);max-width:330px;margin-bottom:4px}
.appointment-board{display:grid;grid-template-columns:1.05fr 1fr;gap:34px;align-items:start}
.appointment-section-label{display:flex;align-items:center;gap:12px;font-size:11px;font-weight:650;letter-spacing:1px;margin-bottom:16px}
.appointment-section-label>span{color:var(--gold-dark);font:700 22px/1 var(--display)}
.service-list{display:grid;grid-template-columns:1fr 1fr;gap:14px;border:0}
.service-choice{display:flex;flex-direction:column;position:relative;text-align:left;min-height:225px;padding:22px;background:var(--panel);border:1px solid var(--line);color:var(--ink);isolation:isolate;overflow:hidden;transition:background .25s,color .25s,border-color .25s,transform .25s}
.choice-top{display:flex;justify-content:space-between;align-items:center;width:100%;margin-bottom:30px}
.choice-number{font:700 23px/1 var(--display);color:var(--gold-dark)}
.choice-state{display:grid;place-items:center;width:26px;height:26px;border:1px solid #77786e66;font-size:18px;line-height:1}
.choice-tool{position:absolute;right:20px;top:42px;width:72px;height:72px;color:var(--gold-dark);opacity:.19;z-index:-1;transform:rotate(-10deg);transition:transform .45s,opacity .3s}
.choice-title{font:700 29px/1.1 var(--display);letter-spacing:0;margin-bottom:9px}
.choice-description{font-size:12px;line-height:1.65;color:var(--muted);max-width:230px;padding-right:10px;min-height:40px}
.choice-bottom{display:flex;justify-content:space-between;align-items:center;gap:15px;border-top:1px solid #77786e33;padding-top:15px;margin-top:20px;width:100%;font-size:11px;color:var(--muted)}
.choice-bottom strong{font-size:17px;font-weight:650;color:var(--ink)}
.service-choice[aria-pressed="true"]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.service-choice[aria-pressed="true"] .choice-number,.service-choice[aria-pressed="true"] .choice-state{color:var(--gold)}
.service-choice[aria-pressed="true"] .choice-state{border-color:var(--gold)}
.service-choice[aria-pressed="true"] .choice-description,.service-choice[aria-pressed="true"] .choice-bottom{color:#cac9c0}
.service-choice[aria-pressed="true"] .choice-bottom strong{color:var(--paper)}
.service-choice[aria-pressed="true"] .choice-tool{color:var(--gold);opacity:.35}
.service-choice:hover{border-color:var(--gold-dark)}
.service-choice:hover .choice-tool{transform:rotate(2deg) translateY(-3px);opacity:.45}
.service-choice:focus-visible{outline-offset:3px}
.appointment-calendar{padding:25px 28px 23px;background:#fcfbf8;border:1px solid var(--line);border-top:3px solid var(--gold-dark)}
.calendar-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px}
.calendar-heading .appointment-section-label{margin:0}
.calendar-heading>span{text-transform:capitalize;font-size:11px;color:var(--muted)}
.picker-days{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.picker-day{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:80px;background:none;border:1px solid var(--line);padding:8px 2px;transition:background .2s,border-color .2s,color .2s}
.picker-day>span{font-size:10px;line-height:1.5;color:var(--muted)}
.picker-day>strong{font:700 25px/1.4 var(--display)}
.picker-day>i{width:3px;height:3px;border-radius:50%;background:var(--gold-dark)}
.picker-day[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.picker-day[aria-pressed="true"]>span{color:#d2d0c8}
.picker-day[aria-pressed="true"]>i{background:var(--gold)}
.picker-day:hover{border-color:var(--gold-dark)}
.picker-custom-date{display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid var(--line);padding-block:14px 18px;margin-bottom:20px}
.picker-custom-date label{font-size:11px;color:var(--muted)}
.picker-custom-date input{width:150px;height:44px;margin:0;background:transparent;font-size:12px;padding:0 7px}
.picker-time-label{display:block;font-size:11px;font-weight:650;margin-bottom:11px}
.picker-slots{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;min-height:144px;align-content:start}
.picker-slot{min-height:44px;background:none;border:1px solid var(--line);font-size:12px;transition:background .2s,color .2s,border-color .2s}
.picker-slot:hover{border-color:var(--gold-dark)}
.picker-slot[aria-pressed="true"]{background:var(--gold);border-color:var(--gold-dark);color:var(--ink);font-weight:750}
.picker-message{grid-column:1/-1;font-size:12px;color:var(--muted);line-height:1.8;padding:16px 0;max-width:340px}
.picker-message .text-link{display:block;font-size:12px}
.picker-summary{border-top:1px solid var(--line);margin-top:20px;padding-top:18px;display:flex;justify-content:space-between;align-items:start;gap:15px}
.picker-summary strong{font-size:14px;font-weight:650;display:block}
.picker-summary small{font-size:11px;color:var(--muted);display:block;margin-top:2px}
.picker-summary #picker-total{font-size:20px;white-space:nowrap}
#picker-selection{font-size:11px;color:var(--muted);min-height:20px;line-height:1.8;margin:8px 0 14px}
#picker-next{width:100%;justify-content:space-between;font-size:13px}
.picker-payment{display:flex;align-items:center;justify-content:center;gap:7px;font-size:10px;color:var(--muted);margin-top:12px}
.picker-payment svg{width:14px;height:14px}
.appointment-price-note{font-size:10px;color:var(--muted);margin-top:17px;line-height:1.8}
@media(max-width:1150px){.appointment-board{gap:24px}.service-choice{padding:19px;min-height:235px}.appointment-calendar{padding-inline:20px}.choice-title{font-size:28px}.picker-slots{grid-template-columns:repeat(4,1fr)}}
@media(max-width:900px){.appointment-board{gap:24px;grid-template-columns:1fr}.appointment-calendar{padding:25px}.service-choice{min-height:210px}.choice-description{max-width:none}.choice-tool{width:85px;height:85px;top:30px}.appointment-heading>p{max-width:250px;font-size:12px}.picker-slots{grid-template-columns:repeat(6,1fr);min-height:94px}.picker-custom-date input{height:44px}.appointment-heading h2{font-size:56px}}
@media(max-width:650px){.services{padding-block:46px}.appointment-heading{display:block;margin-bottom:25px}.appointment-heading h2{font-size:50px}.appointment-heading>p{max-width:310px;font-size:13px;margin-top:15px}.appointment-heading .eyebrow{font-size:10px}.appointment-board{gap:26px}.appointment-section-label{font-size:10px;margin-bottom:12px}.service-list{gap:10px}.service-choice{padding:16px;min-height:215px}.choice-top{margin-bottom:24px}.choice-title{font-size:26px}.choice-description{font-size:11px;min-height:38px;padding-right:0}.choice-tool{width:63px;height:63px;top:45px;right:13px}.choice-bottom{margin-top:14px;padding-top:12px;gap:8px;font-size:10px}.choice-bottom strong{font-size:15px}.appointment-calendar{padding:20px 15px}.calendar-heading{gap:8px}.calendar-heading>span{font-size:10px}.picker-days{gap:8px;grid-template-columns:repeat(4,1fr)}.picker-day{min-height:64px}.picker-day>span{font-size:9px}.picker-day>strong{font-size:23px}.picker-custom-date label{font-size:10px}.picker-custom-date input{width:146px;font-size:16px}.picker-slots{grid-template-columns:repeat(4,1fr);min-height:144px}.picker-summary strong{font-size:13px}.picker-summary #picker-total{font-size:18px}.appointment-price-note{font-size:10px}.picker-payment{font-size:10px}}
@media(prefers-reduced-motion:reduce){.service-choice:hover .choice-tool{transform:none}.service-choice,.choice-tool,.picker-day,.picker-slot{transition:none}}
