#agenda{scroll-margin-top:140px}
.booking-section{padding-top:64px}
.booking-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(290px,1fr);gap:28px;align-items:start}
.booking-layout:not(.booking-ready){grid-template-columns:minmax(0,700px);justify-content:center}
.booking-layout [hidden]{display:none!important}
.booking-controls{display:grid;gap:30px;min-width:0}
.booking-fieldset{border:0;padding:0;min-width:0}
.booking-fieldset legend{font-size:21px;font-weight:800;letter-spacing:-.02em;margin-bottom:18px;padding:0}
.booking-step{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;font-size:13px;background:#0b0b0c;color:#fff;margin-right:8px;vertical-align:middle}
.barber-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.barber-option,.service-option{position:relative;display:block;cursor:pointer}
.booking-radio{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.barber-choice{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;position:relative;min-height:123px;padding:18px 12px;border:1.5px solid var(--b);border-radius:18px;background:#fff;text-align:center;font-size:14px;font-weight:700;transition:border-color .18s,background .18s,box-shadow .18s}
.barber-avatar{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;background:var(--sil);font-size:15px;font-weight:800;color:#2e3136;overflow:hidden}
.barber-avatar img{width:100%;height:100%;object-fit:cover}
.choice-check{display:none;position:absolute;top:9px;right:10px;font-size:12px;line-height:1;color:#0b0b0c}
.booking-radio:checked+.barber-choice,.booking-radio:checked+.service-choice{border-color:#0b0b0c;box-shadow:inset 0 0 0 .5px #0b0b0c;background:#f4f5f7}
.booking-radio:checked+span .choice-check{display:block}
.booking-radio:focus-visible+span{outline:3px solid #666c74;outline-offset:4px}
.barber-option:hover .barber-choice,.service-option:hover .service-choice{border-color:#90959b}
.service-options{display:grid;gap:10px}
.service-choice{position:relative;display:flex;align-items:center;justify-content:space-between;gap:18px;border:1.5px solid var(--b);border-radius:18px;background:#fff;padding:20px 26px 20px 20px;transition:border-color .18s,background .18s,box-shadow .18s}
.service-choice strong{display:block;font-size:17px}
.service-choice small{display:block;font-size:13px;color:var(--g);margin-top:3px;font-weight:400}
.service-value{font-size:20px;font-weight:800;white-space:nowrap;text-align:right}
.service-value small{font-size:10px;letter-spacing:.14em}
.booking-summary{position:sticky;top:142px;background:#0b0b0c;color:#fff;border-radius:24px;padding:32px 28px}
.booking-summary>.eye{font-size:10px;color:#bfc3c8;letter-spacing:.2em}
.booking-summary h2{font-size:30px;letter-spacing:-.035em;line-height:1.1;margin:12px 0 24px}
.booking-person{color:#bfc3c8;font-size:14px;margin-bottom:24px}
.booking-person strong{display:block;color:#fff;font-size:25px;line-height:1.25;margin-top:5px}
.booking-selection dl{margin-bottom:28px;border-top:1px solid #35373b;padding-top:18px}
.booking-selection dl>div{display:flex;justify-content:space-between;gap:18px;margin-bottom:12px;align-items:baseline}
.booking-selection dt{font-size:13px;color:#bfc3c8}
.booking-selection dd{margin:0;text-align:right;font-weight:700}
.booking-selection dd strong{font-size:21px}
.booking-selection dd small{font-size:10px;letter-spacing:.08em;color:#bfc3c8}
.booking-summary .booking-action{width:100%;gap:8px;background:#fff;border-color:#fff;color:#0b0b0c;padding:15px 16px;font-size:14px;line-height:1.4;text-align:center}
.booking-summary .booking-action:hover{background:#e9ebee;border-color:#e9ebee}
.booking-hint,.booking-noscript{font-size:12px;line-height:1.7;color:#bfc3c8;margin-top:18px;text-align:center}
.booking-action:focus-visible,.wa:focus-visible{outline:3px solid #969ca5;outline-offset:5px}
@media(max-width:900px){.booking-layout{grid-template-columns:minmax(0,1.4fr) minmax(270px,1fr);gap:20px}.barber-options{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-summary{padding:28px 22px}}
@media(max-width:680px){.booking-layout{grid-template-columns:1fr}.booking-summary{position:static}.booking-section{padding-top:40px}.booking-fieldset legend{font-size:20px}.booking-summary h2{font-size:28px}.barber-choice{min-height:112px}.booking-layout{gap:26px}.service-choice{padding:18px 22px 18px 16px}.service-choice strong{font-size:16px}.service-choice small{font-size:12px}.service-value{font-size:18px}.booking-section .steps{gap:12px}.booking-section .stp{padding:22px}.booking-summary .booking-action{font-size:15px}#agenda{scroll-margin-top:120px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.barber-choice,.service-choice{transition:none}}
