.public-schedule{gap:12px;min-width:0;max-width:100%;display:grid}.public-schedule-note{font-size:var(--h-site-meta);color:var(--h-color-ink);background:#eaf8fb;border:1px solid #cae8ef;border-radius:12px;margin:0;padding:12px 16px;line-height:1.55}.public-schedule-navigation{justify-content:space-between;align-items:center;gap:16px;min-width:0;display:flex}.public-schedule-week-title{min-width:0}.public-schedule-week-title h2{align-items:center;gap:8px;margin:0;font-size:18px;line-height:1.4;display:flex}.public-schedule-week-title p{color:var(--h-color-text-muted);margin:5px 0 0;font-size:14px;line-height:1.45}.public-schedule-week-title p strong{color:var(--h-color-ink);font-weight:500}.public-schedule-page-controls{flex-shrink:0;gap:6px;display:flex}.public-schedule-page-controls .icon-btn{width:44px;height:44px}.public-schedule-scroll-hint{color:var(--h-color-text-muted);margin:0;font-size:13px;line-height:1.4;display:block}.public-schedule-week-scroll{border:1px solid var(--h-color-border);scrollbar-width:thin;overscroll-behavior-x:contain;background:#f5f5f3;border-radius:16px;min-width:0;max-width:100%;max-height:680px;scroll-padding:80px 12px 12px 58px;overflow:auto;container-type:inline-size}.public-schedule-week-scroll:focus-visible{outline-offset:3px;outline:3px solid #00a9c5}.public-schedule-week-grid{align-items:stretch;display:grid;position:relative}.public-schedule-week-column{border-inline-end:1px solid #e2e2df;min-width:0}.public-schedule-week-column:last-child{border-inline-end:0}.public-schedule-week-heading{z-index:2;border-bottom:1px solid var(--h-color-border);box-sizing:border-box;background:#fff;align-items:center;height:76px;padding:8px 12px;display:flex;position:sticky;top:0}.public-schedule-day-label>span:first-child{text-transform:capitalize;color:var(--h-color-text-muted);font-size:13px}.public-schedule-week-heading strong{font-size:16px;font-weight:650;line-height:1.35}.is-today>.public-schedule-week-heading{color:#fff;background:#1b1b1f}.is-today .public-schedule-day-label>span:first-child{color:#ddd}.public-schedule-today{color:#00d7f5;font-size:11px;line-height:1.2}.public-schedule-day-track{background:repeating-linear-gradient(#e4e4e0 0 1px,#0000 1px 75px,#eeeeeb 75px 76px,#0000 76px 150px);position:relative}.public-schedule-time-axis{z-index:3;border-right:1px solid var(--h-color-border);box-sizing:border-box;background:#fafaf9;position:sticky;left:0}.public-schedule-axis-heading{z-index:4;border-bottom:1px solid var(--h-color-border);height:76px;color:var(--h-color-text-muted);box-sizing:border-box;background:#fafaf9;justify-content:center;align-items:center;font-size:12px;display:flex;position:sticky;top:0}.public-schedule-axis-body{position:relative}.public-schedule-hour{white-space:nowrap;font-variant-numeric:tabular-nums;color:#66656d;background:#fafaf9;font-size:12px;line-height:16px;position:absolute;right:8px;transform:translateY(-50%)}.public-schedule-hour.is-first{transform:none;top:3px!important}.public-schedule-hour.is-last{transform:translateY(-100%)}.public-schedule-week-events{height:100%;margin:0;padding:0;list-style:none;position:relative}.public-schedule-week-events>li{box-sizing:border-box;min-width:0;margin:0;padding:0 2px;position:absolute}.public-week-card{width:100%;min-width:0;height:100%;min-height:0;color:var(--h-color-ink);font:inherit;text-align:start;box-sizing:border-box;cursor:pointer;background:#fff;border:1px solid #dededb;border-inline-start:3px solid #99999d;border-radius:6px;flex-direction:column;align-items:flex-start;gap:4px;padding:7px 9px;display:flex;overflow:clip}.public-week-time{white-space:nowrap;font-variant-numeric:tabular-nums;flex-shrink:0;font-size:13px;font-weight:600;line-height:18px;display:block}.public-week-product{overflow-wrap:break-word;flex-shrink:0;font-size:14px;font-weight:650;line-height:18px;display:block}.public-week-private{color:var(--h-color-text-muted);font-size:11px;line-height:14px}.public-week-card:focus-visible{outline-offset:-3px;outline:3px solid #00a9c5}.public-schedule-event:focus-within{z-index:1}.is-short .public-week-card{gap:1px;padding-block:2px}.is-short .public-schedule-status{margin-top:0}.public-schedule-source:hover{filter:brightness(.97)}.public-schedule-source.source-review{border-inline-start-color:#c18d2f}.public-schedule-source.source-closed{color:#66656d;background:#ececea;border-inline-start-color:#bfbfc1}.public-schedule-status{color:#55545d;text-align:start;white-space:normal;background:#f1f1ef;border-radius:4px;flex-shrink:0;max-width:100%;margin-top:auto;padding:2px 5px;font-size:12px;font-weight:500;line-height:16px;display:inline-flex}.public-status-dot{display:none}.public-schedule-status.status-review{color:#795108;background:#fff2d8}.public-schedule-status.status-closed{color:#626168;background:#e1e1df}.public-week-published{cursor:pointer;border-inline-start-color:#009bad}.public-week-published:hover:not(:disabled){background:#e9faff;border-color:#009bad}.public-week-published.is-selected{background:#e4f9fd;border-color:#009bad;box-shadow:inset 0 0 0 1px #009bad}.public-week-published:focus-visible{outline-offset:2px;outline:3px solid #00a9c5}.public-week-published:disabled{cursor:default;color:#66656d;background:#efefed}.public-week-places{color:#006273;align-items:center;gap:4px;font-size:11px;line-height:14px;display:flex}.public-week-published:disabled .public-week-places{color:#66656d}.public-schedule-week-empty{text-align:center;color:var(--h-color-text-muted);flex-direction:column;align-items:center;gap:9px;margin:0;padding:30px 12px;font-size:13px;line-height:1.5;display:flex}.public-schedule-week-empty .text-link{font:inherit;min-height:44px;color:var(--h-color-ink);cursor:pointer;text-underline-offset:3px;background:0 0;border:0;padding:6px;font-size:13px;font-weight:600;text-decoration:underline}.public-schedule-week-empty .text-link:hover{color:#006273}.public-schedule-week-empty .text-link:focus-visible{outline-offset:2px;border-radius:6px;outline:3px solid #00a9c5}.is-outside-month{background:#ededeb}.is-outside-month>.public-schedule-week-heading{color:#77767c;background:#e9e9e7}.is-outside-month .public-schedule-day-label>span:first-child{color:#77767c}.public-schedule-detail{border:1px solid var(--h-color-border);box-sizing:border-box;width:min(440px,100vw - 32px);max-height:calc(100dvh - 40px);color:var(--h-color-ink);background:#fff;border-radius:20px;padding:24px;overflow:auto;box-shadow:0 16px 60px #0003}.public-schedule-detail::backdrop{background:#1b1b1f66}.public-schedule-detail-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.public-schedule-detail-heading h2{overflow-wrap:anywhere;min-width:0;margin:0;font-size:22px;line-height:1.3}.public-schedule-detail-heading h2:focus{outline:none}.public-schedule-detail-heading .icon-btn{flex-shrink:0}.public-schedule-detail p{font-size:15px;line-height:1.5}.public-schedule-detail .public-schedule-detail-time{font-size:20px;font-weight:600}.public-schedule-detail .public-schedule-status{padding:6px 9px;font-size:13px}.public-schedule-detail-note{color:var(--h-color-text-muted);margin-bottom:0}@media (max-width:1100px){.public-schedule-scroll-hint{display:block}}@media (max-width:620px){.public-schedule-note{padding:10px 13px}.public-schedule-navigation{gap:8px}.public-schedule-week-title h2{font-size:17px}.public-schedule-week-title p{font-size:13px}.public-schedule-week-title p span{display:block}.public-schedule-week-scroll{scroll-snap-type:x mandatory;border-radius:12px;max-height:620px}.public-schedule-detail{padding:20px}.public-schedule-detail-heading h2{font-size:20px}}.public-schedule-legend{color:var(--h-color-text-muted);flex-wrap:wrap;gap:8px 18px;font-size:12px;line-height:18px;display:flex}.public-schedule-legend>span{align-items:center;gap:5px;display:inline-flex}.public-state-symbol{box-sizing:border-box;border:1px solid;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;font-weight:650;line-height:1;display:inline-flex}.public-state-symbol.status-review{color:#795108;background:#fff2d8}.public-state-symbol.status-closed{color:#626168;background:#e1e1df}.public-week-places{flex-shrink:0;min-width:0;max-width:100%;margin-top:auto}.public-week-places>span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.public-week-places svg{flex-shrink:0}.public-schedule-day-label{flex-direction:column;justify-content:center;align-items:flex-start;gap:2px;width:max-content;max-width:100%;display:flex;position:sticky;left:70px}.public-schedule-day-jumps{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;max-width:700px;display:grid}.public-schedule-day-jumps button{border:1px solid var(--h-color-border);min-width:0;height:56px;color:var(--h-color-ink);font:inherit;cursor:pointer;background:#fff;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:2px;display:flex}.public-schedule-day-jumps button>span{text-transform:capitalize;font-size:12px;line-height:16px}.public-schedule-day-jumps button>strong{font-size:16px;line-height:20px}.public-schedule-day-jumps button.is-current{color:#fff;background:#1b1b1f;border-color:#1b1b1f}.public-schedule-day-jumps button:hover:not(.is-current){background:#e9faff;border-color:#009bad}.public-schedule-day-jumps button:focus-visible{outline-offset:2px;outline:3px solid #00a9c5}@media (max-width:620px){.public-schedule-day-jumps{overscroll-behavior-x:contain;grid-template-columns:repeat(7,minmax(44px,1fr));gap:4px;padding:4px;scroll-padding-inline:4px;overflow-x:auto}.public-schedule-day-jumps button{border-radius:8px}.public-schedule-day-jumps button>span{font-size:11px}}.public-week-card>.public-week-time,.public-week-card>.public-week-product,.public-week-card>.public-schedule-status,.public-week-card>.public-week-places{max-width:min(100%,100cqw - 88px);position:sticky;left:72px}.public-schedule-lane-anchor{pointer-events:none;scroll-snap-align:none start;width:1px;height:1px;position:absolute;top:0}
.month-picker{flex:0 0 260px;min-width:0;position:relative}.month-picker-trigger{border:1px solid var(--h-color-border-strong,#85838d);width:100%;min-height:48px;color:var(--h-color-ink);font:inherit;font-size:var(--h-site-control);cursor:pointer;text-align:left;box-sizing:border-box;background:#fff;border-radius:10px;align-items:center;gap:10px;padding:11px 14px;line-height:1.5;display:flex}.month-picker-trigger>span{text-transform:capitalize;white-space:nowrap;flex:1;min-width:0}.month-picker-trigger>svg{flex-shrink:0}.month-picker-trigger>svg:last-child{color:var(--h-color-text-muted);transition:transform .15s}.month-picker-trigger>svg.is-open{transform:rotate(180deg)}.month-picker-trigger:hover,.month-picker-trigger[aria-expanded=true]{border-color:var(--h-color-ink);background:#f7f7f6}.month-picker-trigger:focus-visible,.month-picker-popover button:focus-visible{outline-offset:2px;outline:3px solid #00a9c5}.month-picker-popover{z-index:50;border:1px solid var(--h-color-border);background:#fff;border-radius:16px;width:min(330px,100vw - 40px);padding:14px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 14px 40px #19191b24}.month-picker-heading{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.month-picker-heading>strong{font-size:20px}.month-picker-heading .icon-btn{border:0;width:44px;height:44px}.month-picker-months{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.month-picker-months button{min-width:0;min-height:44px;color:var(--h-color-ink);font:inherit;text-transform:capitalize;cursor:pointer;background:#fff;border:0;border-radius:8px;padding:8px 2px;font-size:14px;font-weight:500}.month-picker-months button:hover{background:#e8faff}.month-picker-months button[aria-pressed=true]{background:var(--h-color-ink);color:#fff}.month-picker-short-name{display:none}.month-picker-footer{border-top:1px solid var(--h-color-border);justify-content:space-between;align-items:center;margin-top:12px;padding-top:6px;display:flex}.month-picker-footer button{min-height:44px;font:inherit;cursor:pointer;color:var(--h-color-ink);background:0 0;border:0;padding:4px;font-size:14px;font-weight:600}.month-picker-footer button:hover{text-decoration:underline}@media (max-width:900px){.availability-controls>.month-picker{flex:1}.month-picker-popover{left:0;right:auto}}@media (max-width:360px){.month-picker-long-name{display:none}.month-picker-short-name{display:inline}}@media (prefers-reduced-motion:reduce){.month-picker-trigger>svg:last-child{transition:none}}
.RuAFJq_root{gap:8px;min-width:0;max-width:100%;display:grid}.RuAFJq_label{font-size:var(--h-site-meta);font-weight:600;line-height:1.5}.RuAFJq_controls{grid-template-columns:48px minmax(0,1fr) 48px;align-items:center;gap:8px;min-width:0;max-width:340px;display:grid}.RuAFJq_button{border:1px solid var(--h-color-control-border);background:var(--h-color-white);width:48px;min-width:48px;height:48px;min-height:48px;color:var(--h-color-ink);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;padding:0;display:inline-flex}.RuAFJq_button:hover:not(:disabled){border-color:var(--h-color-ink);background:var(--h-color-canvas)}.RuAFJq_button:disabled{cursor:not-allowed;color:var(--h-color-text-muted);background:var(--h-color-canvas);opacity:.55}.RuAFJq_select{font-size:max(16px,var(--h-site-control));min-width:0;min-height:48px}.RuAFJq_button:focus-visible,.RuAFJq_select:focus-visible{outline:3px solid var(--h-color-ink);outline-offset:3px}@media (max-width:380px){.RuAFJq_controls{grid-template-columns:44px minmax(0,1fr) 44px;gap:6px}.RuAFJq_button{width:44px;min-width:44px}.RuAFJq_select{padding-inline-start:10px}}
.customer-booking-progress{font-size:var(--h-site-meta);color:var(--h-color-text-muted);gap:24px;margin:0 0 24px;padding:0;list-style:none;display:flex}.customer-booking-progress li{align-items:center;gap:9px;min-width:0;display:flex}.customer-booking-progress li>span{border:1px solid var(--h-color-border);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex}.customer-booking-progress [aria-current=step]{color:var(--h-color-ink);font-weight:600}.customer-booking-progress [aria-current=step]>span{color:#fff;background:var(--h-color-ink);border-color:var(--h-color-ink)}.customer-booking-details{max-width:860px;margin-inline:auto}.customer-booking-back{min-height:44px;font:inherit;font-size:var(--h-site-meta);cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:8px 0;display:inline-flex}.customer-booking-back:disabled{opacity:.5;cursor:not-allowed}.customer-booking-summary{border:1px solid var(--h-color-border);background:var(--h-color-canvas);border-radius:12px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:16px 24px;margin:8px 0 24px;padding:16px 20px;display:grid}.customer-booking-summary>.customer-booking-session,.customer-booking-summary>.customer-booking-summary-price{gap:4px;min-width:0;display:grid}.customer-booking-summary-price{justify-items:end}.customer-booking-summary span{font-size:var(--h-site-meta);line-height:1.5}.customer-booking-summary>span{align-items:center;gap:6px;display:flex}.customer-booking-summary strong{font-size:var(--h-site-body);overflow-wrap:anywhere}.customer-booking-title{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 20px;margin-bottom:12px;display:flex}.customer-booking-title h2{margin:0;scroll-margin-top:110px;font-size:clamp(1.5rem,3vw,2rem)}.customer-booking-login{align-items:center;min-height:44px;display:inline-flex}.customer-booking-login[aria-disabled=true]{opacity:.5;pointer-events:none}.customer-booking-form{gap:20px;min-width:0;display:grid}.customer-booking-section{min-width:0;margin:0;padding:20px}.customer-booking-section legend{overflow-wrap:anywhere;max-width:100%;margin-left:-6px;padding:0 6px;font-size:1.2rem;font-weight:600}.customer-booking-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px;display:grid}.customer-booking-fields .field{flex-direction:column;gap:8px;min-width:0;margin:0;display:flex}.customer-booking-fields .field>span{font-weight:500;font-size:var(--h-site-meta)}.customer-booking-fields input{width:100%;min-width:0;min-height:48px;font:inherit;font-size:max(16px,var(--h-site-control));scroll-margin-block:110px 180px}.customer-booking-fields input:disabled{background:var(--h-color-canvas)}.customer-booking-copy{font-size:var(--h-site-meta);white-space:normal;min-height:44px;margin:16px 0 0}.customer-booking-people{gap:20px;margin:20px 0 16px;display:grid}.customer-booking-person+.customer-booking-person{border-top:1px solid var(--h-color-border);padding-top:20px}.customer-booking-person h3{font-size:var(--h-site-body);margin:0}.customer-booking-person .customer-booking-fields{margin-top:12px}.customer-booking-review{background:var(--h-color-canvas);font-size:var(--h-site-meta);border-radius:12px;gap:8px;padding:16px 20px;line-height:1.6;display:grid}.customer-booking-review p{margin:0}.customer-booking-review .text-link{align-items:center;min-height:44px;display:inline-flex}.customer-booking-actions{background:#fff;justify-content:space-between;align-items:center;gap:16px;padding:16px 0;display:flex}.customer-booking-actions>div{min-width:0;font-size:var(--h-site-meta);gap:4px;display:grid}.customer-booking-actions>div>strong{font-size:1.5rem}.customer-booking-actions .btn{white-space:normal;text-align:center;min-width:0;max-width:100%;min-height:48px}.customer-booking-form fieldset:disabled{opacity:.8}.customer-booking-receipt{gap:16px;max-width:760px;margin-inline:auto;padding:28px;display:grid}.customer-booking-receipt>svg{color:#14654b}.customer-booking-receipt h2{margin:0;scroll-margin-top:100px;font-size:1.7rem}.customer-booking-receipt>p{line-height:1.6}.customer-booking-receipt dl{border-block:1px solid var(--h-color-border);gap:12px;margin:0;padding-block:18px;display:grid}.customer-booking-receipt dl>div{grid-template-columns:140px minmax(0,1fr);gap:12px;display:grid}.customer-booking-receipt dt{font-size:var(--h-site-meta);color:var(--h-color-text-muted)}.customer-booking-receipt dd{font-size:var(--h-site-meta);overflow-wrap:anywhere;margin:0}.customer-booking-receipt>.btn{justify-self:start}.customer-booking-recent{margin-top:24px;padding:16px 20px}.customer-booking-recent summary{font-size:var(--h-site-meta);cursor:pointer;align-content:center;min-height:44px}.customer-booking-recent summary>span{color:var(--h-color-text-muted);margin-left:8px}.customer-booking-recent ul{margin:0;padding:0;list-style:none}.customer-booking-recent li{font-size:var(--h-site-meta);border-top:1px solid var(--h-color-border);gap:6px;padding:16px 0;display:grid}.customer-booking-recent li>span:last-child{color:var(--h-color-text-muted)}@media (max-width:640px){.customer-booking-progress{gap:18px;margin-bottom:20px}.customer-booking-progress li{gap:7px;font-size:14px}.customer-booking-summary{grid-template-columns:minmax(0,1fr);gap:10px 16px;margin-bottom:20px;padding:14px 16px}.customer-booking-summary>.customer-booking-session{grid-column:1/-1}.customer-booking-title h2{scroll-margin-top:100px}.customer-booking-summary-price{justify-items:end}.customer-booking-summary>.customer-booking-summary-price{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 12px;width:100%;display:flex}.customer-booking-section{padding:16px}.customer-booking-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.customer-booking-fields>.field:nth-child(n+3){grid-column:1/-1}.customer-booking-form{gap:18px}.customer-booking-copy{text-align:center;justify-content:center;width:100%}.customer-booking-review{padding:16px}.customer-booking-actions{z-index:3;border-top:1px solid var(--h-color-border);padding:12px 0 max(12px,env(safe-area-inset-bottom));gap:12px;position:sticky;bottom:0}.customer-booking-actions .btn{flex:1}.customer-booking-actions>div{max-width:40%;font-size:14px}.customer-booking-actions>div>strong{font-size:1.25rem}.customer-booking-form:has(input:focus) .customer-booking-actions{position:static}.customer-booking-receipt{padding:20px}.customer-booking-receipt dl>div{grid-template-columns:1fr;gap:4px}.customer-booking-receipt>.btn{text-align:center;white-space:normal;justify-content:center;width:100%}.customer-booking-recent{padding:12px 16px}}.booking-receipt-actions{flex-wrap:wrap;gap:12px;display:flex}.booking-receipt-actions .btn{white-space:normal;text-align:center;min-height:44px}.customer-booking-receipt[data-status-tone=warning]>svg{color:#805000}.customer-booking-receipt[data-status-tone=danger]>svg{color:#9a1934}.customer-booking-receipt[data-status-tone=neutral]>svg{color:var(--h-color-text-muted)}.customer-booking-recent>button{margin-bottom:12px}.customer-booking-recent li>button{min-height:44px;font:inherit;color:inherit;text-underline-offset:4px;cursor:pointer;background:0 0;border:0;justify-self:start;padding:6px 0;text-decoration:underline}.customer-booking-recent button:focus-visible{outline-offset:3px;outline:2px solid #008eac}@media (max-width:640px){.booking-receipt-actions .btn{flex:180px}}@media (max-width:420px){.customer-booking-fields{grid-template-columns:minmax(0,1fr)}.customer-booking-actions{flex-wrap:wrap}.customer-booking-actions>div{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 12px;width:100%;max-width:none;display:flex}.customer-booking-actions .btn{flex-basis:100%;width:100%}}.customer-booking-context-actions{flex-wrap:wrap;gap:12px;display:flex}.customer-booking-context-actions>.btn{white-space:normal;text-align:center;min-width:0;max-width:100%;min-height:44px}@media (max-width:420px){.customer-booking-context-actions>.btn{flex:100%}}
.availability-root{min-width:0;margin-top:28px}.availability-controls{flex-wrap:wrap;align-items:end;gap:16px;margin-bottom:24px;display:flex}.availability-controls>.field{min-width:0;margin:0}.availability-controls>.field:first-child{flex:1;min-width:220px}.availability-controls input,.availability-controls select{width:100%;font-size:var(--h-site-control)}.availability-controls>.icon-btn{margin-bottom:2px}.availability-layout{grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr);align-items:start;gap:24px;display:grid}.availability-sessions{gap:18px;min-width:0;display:grid}.availability-day{overflow:hidden}.availability-day h2{font-size:var(--h-site-body);background:var(--h-color-canvas);text-transform:capitalize;align-items:center;gap:9px;margin:0;padding:16px 20px;display:flex}.availability-day ul{margin:0;padding:0;list-style:none}.availability-day li+li{border-top:1px solid var(--h-color-border)}.availability-session{text-align:left;width:100%;font:inherit;cursor:pointer;color:inherit;background:#fff;border:0;grid-template-columns:56px minmax(0,1fr) auto;align-items:center;gap:16px;padding:20px;display:grid}.availability-session:hover:not(:disabled),.availability-session.is-selected{background:#e8faff}.availability-session.is-selected{box-shadow:inset 4px 0 #00bedd}.availability-session:disabled{cursor:not-allowed;color:var(--h-color-text-muted);background:#f7f7f6}.availability-session:focus-visible{outline:3px solid var(--h-color-ink);outline-offset:-3px}.availability-time,.availability-service{gap:4px;min-width:0;display:grid}.availability-time strong,.availability-service strong{font-size:var(--h-site-body);overflow-wrap:anywhere;font-weight:600}.availability-time>span,.availability-service>span{font-size:var(--h-site-meta);color:var(--h-color-text-muted)}.availability-places{font-size:var(--h-site-meta);align-items:center;gap:5px;font-weight:500;display:flex}.availability-places svg{flex-shrink:0}.availability-empty{justify-items:start;gap:16px;padding:28px;display:grid}.availability-empty h2{font-size:var(--h-site-body);line-height:1.5}.availability-empty p{font-size:var(--h-site-body);color:var(--h-color-text-muted);line-height:1.6}.availability-selection{padding:24px;position:sticky;top:110px}.availability-selection h2{margin:0;font-size:1.4rem}.availability-selection>p{font-size:var(--h-site-body);color:var(--h-color-text-muted)}.availability-selection form{gap:16px;display:grid}.availability-selection-detail{gap:8px;display:grid}.availability-selection-detail strong{font-size:var(--h-site-body)}.availability-selection-detail p{font-size:var(--h-site-meta);line-height:1.6}.availability-selection .field{margin:0}.availability-selection input{width:100%}.availability-selection .btn{justify-content:center;width:100%}.availability-help{font-size:var(--h-site-meta);color:var(--h-color-text-muted);margin:0;line-height:1.6}.availability-message{border:1px solid var(--h-color-border);font-size:var(--h-site-meta);background:#fff;border-radius:12px;margin:0 0 18px;padding:16px 20px;line-height:1.6}.availability-message .btn{margin-top:12px}.availability-selection-heading{justify-content:space-between;align-items:center;gap:8px;margin-bottom:16px;display:flex}.availability-selection-heading h2{scroll-margin-top:100px}.availability-quantity{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;display:flex}.availability-quantity>label{margin:0}.availability-quantity>.availability-help{flex-basis:100%}.availability-stepper{border:1px solid var(--h-color-border);background:#fff;border-radius:10px;align-items:center;max-width:100%;display:flex;overflow:hidden}.availability-stepper>.icon-btn{border:0;border-radius:0;flex-shrink:0;width:48px;height:48px}.availability-stepper input{text-align:center;width:56px;min-width:0;height:48px;font:inherit;appearance:textfield;border:0;border-radius:0;padding:4px;font-size:16px}.availability-stepper input::-webkit-inner-spin-button{appearance:none;margin:0}.availability-stepper input::-webkit-outer-spin-button{appearance:none;margin:0}.availability-stepper input:focus-visible,.availability-stepper .icon-btn:focus-visible{outline-offset:-3px}.availability-estimate{border-top:1px solid var(--h-color-border);font-size:var(--h-site-meta);justify-content:space-between;align-items:baseline;gap:12px;padding-top:12px;display:flex}.availability-estimate strong{white-space:nowrap;font-size:1.4rem}.availability-submit{gap:10px;display:grid}.availability-optional-login a{align-items:center;min-height:44px;display:inline-flex}@media (max-width:900px){.availability-root{margin-top:20px}.availability-layout{grid-template-columns:1fr;gap:16px}.availability-selection{order:-1;position:static}.availability-selection:not(:has(form)){display:none}.availability-controls{gap:12px;margin-bottom:16px}.availability-controls>.field:first-child{flex-basis:100%}.availability-controls>.field:nth-child(2){flex:1}.availability-selection-heading{margin-bottom:10px}.availability-selection form{gap:12px}.availability-selection input{scroll-margin-block:100px 180px}.availability-submit .btn{min-height:48px}}@media (max-width:520px){.availability-day h2{padding:14px 16px}.availability-session{grid-template-columns:52px minmax(0,1fr);gap:10px 12px;padding:16px}.availability-places{grid-column:2}.availability-time{grid-row:1/3;align-self:start}.availability-selection,.availability-empty{padding:18px}.availability-selection h2{font-size:1.25rem}.availability-selection .btn{white-space:normal;text-align:center}}.availability-empty-actions{flex-wrap:wrap;align-items:center;gap:12px 20px;display:flex}.availability-empty-actions .btn{white-space:normal;text-align:center}.availability-empty-actions .text-link{align-items:center;gap:8px;min-height:44px;display:inline-flex}.availability-message[tabindex]{scroll-margin-top:110px}.availability-places{overflow-wrap:anywhere}.availability-layout.is-timetable-only{grid-template-columns:1fr}.availability-layout.is-timetable-only>.availability-selection{display:none}.availability-layout.has-week-calendar{grid-template-columns:1fr}.availability-layout.has-week-calendar>.availability-selection{box-sizing:border-box;order:0;justify-self:end;width:100%;max-width:560px;position:static}.availability-layout.has-week-calendar>.availability-selection:not(:has(form)){display:none}.availability-layout.is-empty{grid-template-columns:minmax(0,1fr)}.availability-controls.has-activity-filter{grid-template-columns:minmax(160px,.65fr) minmax(220px,1.5fr) minmax(190px,.8fr) auto;display:grid}.availability-controls.has-activity-filter>.field{min-width:0}@media (max-width:900px){.availability-controls.has-activity-filter{grid-template-columns:minmax(0,1fr) auto}.availability-controls.has-activity-filter>.availability-activity,.availability-controls.has-activity-filter>.availability-modality{grid-column:1/-1}}
