.booking{border-top:1px solid var(--border-color);background:var(--bg-primary)}.booking__inner{width:calc(100% - var(--gutter) * 2);max-width:calc(var(--container) - var(--gutter) * 2);padding:var(--s-10) var(--s-7);border-inline:1px solid var(--border-color);margin-inline:auto}.booking__head{text-align:center}.booking__title{margin-top:var(--s-4);font-family:var(--font-serif);font-size:clamp(34px,4.45vw,64px);font-weight:var(--w-semibold);line-height:var(--lh-tight)}.scheduler{--sched-line:#0f0d0e1a;--sched-muted:#6f7075;--sched-ink:#1a1a1c;--sched-tint:#f6f5f5;max-width:1040px;margin:var(--s-9) auto 0;background:var(--c-white);color:var(--sched-ink);border-radius:12px;grid-template-columns:280fr 480fr 280fr;font-size:14px;line-height:1.45;display:grid;overflow:hidden;box-shadow:0 1px 2px #0f0d0e0f}.scheduler>*+*{border-left:1px solid var(--sched-line)}.scheduler__event,.scheduler__calendar,.scheduler__slots{padding:var(--s-5)}.scheduler__avatar{object-fit:cover;border-radius:50%;width:28px;height:28px}.scheduler__host{margin-top:var(--s-3);color:var(--sched-muted);font-size:14px}.scheduler__event-name{margin-top:var(--s-2);font-family:var(--font-ui);font-size:var(--t-lg);font-weight:600;line-height:1.2}.scheduler__event-note{margin-top:var(--s-3);color:var(--sched-muted)}.scheduler__meta{gap:var(--s-3);margin-top:var(--s-6);padding:0;list-style:none;display:grid}.scheduler__meta li{align-items:center;gap:var(--s-3);display:flex}.scheduler__icon{fill:none;width:16px;height:16px;stroke:var(--sched-ink);stroke-width:1.3px;stroke-linecap:round;stroke-linejoin:round;flex:none}.scheduler__icon--meet{stroke:none}.scheduler__zone{align-items:center;gap:var(--s-1);color:var(--sched-ink);padding:0;font-size:14px;display:inline-flex}.scheduler__caret{fill:none;stroke:currentColor;stroke-width:1.3px;stroke-linecap:round;stroke-linejoin:round;width:14px;height:14px}.cal__head{justify-content:space-between;align-items:center;gap:var(--s-4);display:flex}.cal__month{font-size:var(--t-md)}.cal__month strong{font-weight:600}.cal__month span{color:var(--sched-muted)}.cal__nav{gap:var(--s-1);display:flex}.cal__arrow{width:30px;height:30px;color:var(--sched-muted);border-radius:50%;place-items:center;display:grid}.cal__arrow:disabled{opacity:.3;cursor:default}.cal__arrow:not(:disabled):hover{background:var(--sched-tint);color:var(--sched-ink)}.cal__arrow svg{fill:none;stroke:currentColor;stroke-width:1.4px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.cal__grid{width:100%;margin-top:var(--s-5);border-collapse:separate;border-spacing:2px;table-layout:fixed}.cal__caption{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.cal__grid th{padding-bottom:var(--s-2);font-size:12px;font-weight:var(--w-regular);letter-spacing:.06em;color:var(--sched-ink)}.cal__grid th abbr{text-decoration:none}.cal__day{width:100%;height:60px;color:var(--sched-muted);border-radius:6px;place-items:center;font-size:14px;display:grid}.cal__day.is-outside{opacity:.35}.cal__day.is-open{background:var(--sched-tint);color:var(--sched-ink);cursor:pointer;font-weight:500}.cal__day.is-open:hover{background:#edecec}.cal__day.is-selected,.cal__day.is-selected:hover{background:var(--c-ink);color:var(--c-white)}.cal__day.is-today{position:relative}.cal__day.is-today:after{content:"";background:currentColor;border-radius:50%;width:3px;height:3px;position:absolute;bottom:8px}.cal__turn{position:relative}.cal__turn:before{content:attr(data-month);background:var(--sched-tint);letter-spacing:.04em;color:var(--sched-muted);border-radius:4px;padding:1px 5px;font-size:10px;position:absolute;top:-9px;left:50%;transform:translate(-50%)}.slots__head{justify-content:space-between;align-items:center;gap:var(--s-4);display:flex}.slots__day{font-size:var(--t-md)}.slots__day strong{font-weight:600}.slots__day span{color:var(--sched-muted)}.slots__clock{background:var(--sched-tint);border-radius:7px;gap:2px;padding:2px;display:flex}.slots__clock button{color:var(--sched-muted);border-radius:5px;padding:4px 10px;font-size:13px}.slots__clock button.is-on{background:var(--c-white);color:var(--sched-ink);font-weight:500;box-shadow:0 1px 2px #0f0d0e1a}.slots__list{margin-top:var(--s-5);scrollbar-width:thin;gap:10px;max-height:468px;padding:0;list-style:none;display:grid;overflow-y:auto}.slot{border:1px solid var(--sched-line);background:var(--c-white);border-radius:8px;place-items:center;width:100%;padding-block:10px;font-size:14px;font-weight:500;display:grid}.slots__empty{padding-top:var(--s-4);color:var(--sched-muted);font-size:13px;line-height:1.5}.slot:not(:disabled):hover{border-color:var(--sched-muted)}.scheduler[data-avail=loading] .cal__grid,.scheduler[data-avail=loading] .cal__nav{opacity:.45;pointer-events:none}.slot-skeleton{background:linear-gradient(90deg, var(--sched-tint) 25%, #0f0d0e0a 37%, var(--sched-tint) 63%);background-size:360% 100%;border-radius:8px;height:41px;animation:1.3s ease-in-out infinite slot-shimmer}@keyframes slot-shimmer{0%{background-position:120% 0}to{background-position:-20% 0}}@media (prefers-reduced-motion:reduce){.slot-skeleton{animation:none}}.slots__retry{color:var(--sched-ink);font-size:inherit;text-underline-offset:3px;padding:0;text-decoration:underline}@media (max-width:1024px){.scheduler{grid-template-columns:1fr;max-width:520px}.scheduler>*+*{border-left:0;border-top:1px solid var(--sched-line)}}@media (max-width:640px){.booking__inner{padding:var(--s-10) var(--s-5)}.scheduler{margin-top:var(--s-7)}.cal__day{height:44px}}.scheduler{transition:max-width .32s}.scheduler[data-view=calendar] .scheduler__summary,.scheduler[data-view=calendar] .scheduler__form,.scheduler[data-view=calendar] .scheduler__done,.scheduler[data-view=confirm] .scheduler__event,.scheduler[data-view=confirm] .scheduler__calendar,.scheduler[data-view=confirm] .scheduler__slots,.scheduler[data-view=confirm] .scheduler__done,.scheduler[data-view=done] .scheduler__event,.scheduler[data-view=done] .scheduler__calendar,.scheduler[data-view=done] .scheduler__slots,.scheduler[data-view=done] .scheduler__summary,.scheduler[data-view=done] .scheduler__form{display:none}.scheduler[data-view=confirm]{grid-template-columns:5fr 7fr;max-width:896px}.scheduler[data-view=done]{grid-template-columns:1fr;max-width:560px}.scheduler__summary,.scheduler__form,.scheduler__done{animation:.26s both sched-in}@keyframes sched-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.scheduler{transition:none}.scheduler__summary,.scheduler__form,.scheduler__done{animation:none}}.scheduler__summary{padding:var(--s-5)}.scheduler__when{align-items:flex-start;gap:var(--s-3);margin-top:var(--s-5);padding:var(--s-3) 0 0;border-top:1px solid var(--sched-line);font-weight:500;line-height:1.4;display:flex}.scheduler__form{padding:var(--s-5)}.intake__back{color:var(--sched-muted);align-items:center;gap:6px;padding:0;font-size:13px;display:inline-flex}.intake__back:hover{color:var(--sched-ink)}.intake__back svg{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:14px;height:14px}.intake{gap:var(--s-4);margin-top:var(--s-4);display:grid}.field{gap:6px;display:grid}.field__label{font-size:13px;font-weight:500}.field__req{color:var(--sched-muted)}.field__input{width:100%;font:inherit;color:var(--sched-ink);background:0 0;border:1px solid #0f0d0e26;border-radius:12px;padding:11px 14px;font-size:14px}.field__input:hover{border-color:#0f0d0e4d}.field__input:focus{border-color:var(--sched-ink);outline:none}.field__select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%231a1a1c' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 6.5 8 10.5l4-4'/%3E%3C/svg%3E");background-position:right 13px center;background-repeat:no-repeat;background-size:15px;padding-right:38px}.intake{--field-error:#b3261e}.field__input[aria-invalid=true]{border-color:var(--field-error)}.field__error{color:var(--field-error);font-size:12.5px;line-height:1.35}.intake__submit{width:100%;margin-top:var(--s-2);border-radius:12px;justify-content:center;padding-block:12px}.intake__submit[disabled]{opacity:.6;cursor:progress}.intake__status{color:var(--field-error);font-size:12.5px;line-height:1.4}.scheduler__done{justify-items:start;gap:var(--s-3);padding:var(--s-8) var(--s-5);display:grid}.booked__tick{fill:none;width:30px;height:30px;stroke:var(--sched-ink);stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round}.booked__title{font-family:var(--font-serif);font-size:var(--t-2xl);font-weight:var(--w-semibold);line-height:var(--lh-snug)}.booked__note{color:var(--sched-muted);line-height:var(--lh-body)}.booked__again{margin-top:var(--s-3);border-radius:var(--r-pill)}@media (max-width:1024px){.scheduler[data-view=confirm]{grid-template-columns:1fr;max-width:520px}}.scheduler__avatar--mark{border-radius:var(--r-round);background-color:var(--c-lime);width:28px;height:28px;display:inline-block;position:relative;-webkit-mask:none;mask:none}.scheduler__avatar--mark:after{content:"";background-color:var(--c-ink);position:absolute;inset:0;-webkit-mask:url(/assets/images/brand/logo-icon.png) 50%/46% no-repeat;mask:url(/assets/images/brand/logo-icon.png) 50%/46% no-repeat}@media (pointer:coarse),(max-width:1024px){.scheduler__zone{min-height:44px}.cal__arrow{width:44px;height:44px}.cal__nav{margin-inline-end:-7px}.slots__clock button{min-width:44px;min-height:40px}}
