.booking{gap:1rem;max-width:40rem;margin:0 auto;display:grid}.booking[hidden]{display:none}.booking fieldset{border:0;min-width:0;margin:0}.booking legend{float:left;width:100%;font-family:var(--font-heading);margin-bottom:.75rem;padding:0;font-size:1.6rem}.booking legend+*{clear:both}.booking fieldset:not([hidden]),#booking-success:not([hidden]){animation:booking-step .8s var(--ease) backwards}.booking__group h3{font-family:var(--font-body);letter-spacing:.16em;text-transform:uppercase;color:var(--color-muted);margin:1.5rem 0 .5rem;font-size:.75rem;font-weight:600}.booking__group:first-of-type h3{margin-top:.5rem}.booking__option{border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-surface);cursor:pointer;-webkit-tap-highlight-color:transparent;min-height:3.25rem;transition:border-color .5s var(--ease), background-color .5s var(--ease), box-shadow .5s var(--ease), transform .4s var(--ease);animation:booking-in .6s var(--ease) backwards;animation-delay:calc(var(--i,0) * 45ms);align-items:center;gap:.85rem;margin-block:.45rem;padding:.8rem 1rem;display:flex}@media (hover:hover) and (pointer:fine){.booking__option:hover{border-color:var(--color-line-strong)}}.booking__option:active{transform:scale(.98)}.booking__option:has(input:checked){border-color:var(--color-primary-ink);background:color-mix(in srgb, var(--color-accent) 9%, var(--color-surface));box-shadow:var(--shadow-chosen)}.booking__option input{appearance:none;border:1.5px solid var(--color-line-strong);background:var(--color-surface);width:1.3rem;height:1.3rem;transition:border-color .4s var(--ease);border-radius:50%;flex:none;place-items:center;margin:0;display:grid}.booking__option input:before{content:"";background:var(--color-primary-ink);width:.62rem;height:.62rem;transition:transform .5s var(--ease);border-radius:50%;transform:scale(0)}.booking__option input:checked{border-color:var(--color-primary-ink)}.booking__option input:checked:before{transform:scale(1)}.booking__option input:focus-visible{outline:2px solid var(--color-primary-ink);outline-offset:3px}.booking__option{flex-wrap:wrap;row-gap:.2rem}.booking__option-main{overflow-wrap:break-word;hyphens:auto;flex:auto;min-width:0;max-width:calc(100% - 2.15rem);font-weight:600;line-height:1.35}.booking__option .muted{text-align:right;font-variant-numeric:tabular-nums;margin-left:auto;font-size:.9rem}.booking__slots{grid-template-columns:repeat(auto-fill,minmax(4.75rem,1fr));gap:.5rem;display:grid}.booking__slot span{width:100%}.booking__slot{animation:booking-in .5s var(--ease) backwards;animation-delay:calc(var(--i,0) * 30ms);position:relative}.booking__slot input{opacity:0;width:1px;height:1px;position:absolute}.booking__slot span{border:1px solid var(--color-line-strong);background:var(--color-surface);cursor:pointer;font-variant-numeric:tabular-nums;-webkit-tap-highlight-color:transparent;min-width:4.75rem;min-height:2.75rem;transition:background-color .5s var(--ease), color .5s var(--ease), border-color .5s var(--ease), transform .4s var(--ease);border-radius:999px;justify-content:center;align-items:center;padding:.5rem 1rem;display:inline-flex}@media (hover:hover) and (pointer:fine){.booking__slot span:hover{border-color:var(--color-primary-ink)}}.booking__slot span:active{transform:scale(.95)}.booking__slot input:checked+span{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary);animation:booking-pop .5s var(--ease)}.booking__slot input:focus-visible+span{outline:2px solid var(--color-primary-ink);outline-offset:3px}.booking label:not(.booking__option):not(.booking__slot){gap:.4rem;margin-bottom:1rem;font-size:.92rem;font-weight:600;display:grid}.booking input[type=text],.booking input[type=tel],.booking input[type=email],.booking input[type=date],.booking textarea{font:inherit;width:100%;min-height:3rem;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-line-strong);border-radius:var(--radius-sm);transition:border-color .4s var(--ease), box-shadow .4s var(--ease);padding:.75rem 1rem;font-size:1rem;font-weight:400}.booking input:focus,.booking textarea:focus{border-color:var(--color-primary-ink);box-shadow:0 0 0 4px color-mix(in srgb, var(--color-accent) 25%, transparent);outline:none}.booking button[type=submit]{margin-top:.5rem}.booking input[type=date]{cursor:pointer;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;accent-color:var(--color-primary-ink);font-variant-numeric:tabular-nums;letter-spacing:.02em}@supports (-webkit-touch-callout:none){.booking input[type=date]{appearance:none;align-items:center;display:flex}}@media (hover:hover) and (pointer:fine){.booking input[type=date]:hover{border-color:var(--color-primary-ink)}}.booking input[type=date]::-webkit-date-and-time-value{text-align:left}.booking input[type=date]::-webkit-datetime-edit{padding:0}.booking input[type=date]::-webkit-datetime-edit-text{color:var(--color-muted);padding:0 .15em}.booking input[type=date]:invalid::-webkit-datetime-edit{color:var(--color-muted)}.booking input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;opacity:1;background:var(--color-primary-ink);width:1.15rem;height:1.15rem;-webkit-mask:var(--icon-calendar) center / 1.15rem no-repeat;-webkit-mask:var(--icon-calendar) center / 1.15rem no-repeat;mask:var(--icon-calendar) center / 1.15rem no-repeat;transition:transform .5s var(--ease);margin-right:-.3rem;padding:.4rem}@media (hover:hover) and (pointer:fine){.booking input[type=date]:hover::-webkit-calendar-picker-indicator{transform:scale(1.08)}}.booking{--icon-calendar:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='18' height='18' x='3' y='4' rx='3'/%3E%3Cpath d='M16 2v4M8 2v4M3 10h18'/%3E%3C/svg%3E")}.booking__field{gap:.4rem;margin-bottom:1rem;display:grid}.booking .booking__field>label[for]{margin:0}.booking__phone{grid-template-columns:auto minmax(0,1fr);gap:.5rem;display:grid;position:relative}.booking__sr{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.booking__dial-btn{height:100%;min-height:3rem;font:inherit;color:var(--color-text);cursor:pointer;white-space:nowrap;font-variant-numeric:tabular-nums;border:1px solid var(--color-line-strong);border-radius:var(--radius-sm);background:var(--color-surface);-webkit-tap-highlight-color:transparent;transition:border-color .4s var(--ease), box-shadow .4s var(--ease), transform .14s var(--ease);align-items:center;gap:.5rem;padding:0 .8rem 0 .9rem;display:inline-flex}.booking__dial-btn:active{transform:scale(.97)}.booking__dial-btn img,.booking__dial-list img{object-fit:cover;width:22px;height:16px;box-shadow:0 0 0 1px var(--color-line);border-radius:3px;flex:none}.booking__dial-btn svg{color:var(--color-muted);transition:transform .5s var(--ease)}@media (hover:hover) and (pointer:fine){.booking__dial-btn:hover{border-color:var(--color-primary-ink)}}.booking__dial-btn[aria-expanded=true] svg{transform:rotate(180deg)}.booking__dial-btn:focus-visible,.booking__dial-btn[aria-expanded=true]{border-color:var(--color-primary-ink);box-shadow:0 0 0 4px color-mix(in srgb, var(--color-accent) 25%, transparent);outline:none}.booking__dial-panel{z-index:20;background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-sm);box-shadow:var(--shadow-panel);animation:booking-in .4s var(--ease) backwards;padding:.5rem;position:absolute;top:calc(100% + .5rem);left:0;right:0}.booking__dial-panel[hidden]{display:none}.booking .booking__dial-search{font:inherit;width:100%;min-height:2.75rem;color:var(--color-text);background:var(--color-bg);border-radius:calc(var(--radius-sm) - 4px);border:1px solid #0000;padding:.5rem .85rem}.booking .booking__dial-search:focus{border-color:var(--color-line-strong);box-shadow:none}.booking__dial-list{overscroll-behavior:contain;max-height:min(18rem,45vh);margin:.4rem 0 0;padding:0;list-style:none;overflow-y:auto}.booking__dial-list li{cursor:pointer;min-height:2.75rem;transition:background-color .12s var(--ease);border-radius:10px;align-items:center;gap:.7rem;padding:.4rem .6rem;display:flex}.booking__dial-list li[hidden]{display:none}.booking__dial-list li.is-active{background:color-mix(in srgb, var(--color-accent) 12%, transparent)}@media (hover:hover) and (pointer:fine){.booking__dial-list li:hover{background:color-mix(in srgb, var(--color-accent) 12%, transparent)}}.booking__dial-list li[aria-selected=true] .booking__dial-name{font-weight:600}.booking__dial-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.booking__dial-code{color:var(--color-muted);font-variant-numeric:tabular-nums}.booking__dial-empty{margin:.75rem .6rem;font-size:.9rem}.booking input[name=phone]{letter-spacing:.06em;font-variant-numeric:tabular-nums}.btn-whatsapp{width:fit-content;margin-top:.5rem;display:flex}.btn-whatsapp[hidden]{display:none}.booking .btn-whatsapp{margin:0 0 .75rem}#booking-error{color:var(--color-error);font-weight:600}.booking [aria-invalid=true],.booking [aria-invalid=true]:focus{border-color:var(--color-error);box-shadow:0 0 0 4px color-mix(in srgb, var(--color-error) 14%, transparent)}.booking__dial-list li:active{background:color-mix(in srgb, var(--color-accent) 18%, transparent)}.booking__submit-label{transition:opacity .15s var(--ease)}.btn[aria-busy=true]:disabled{opacity:1;cursor:progress}#booking-error:not([hidden]){animation:booking-reveal .2s var(--ease) backwards}.booking .btn-whatsapp:not([hidden]){animation:booking-reveal .2s var(--ease) 60ms backwards}.booking__head p{text-align:center}#booking-title:focus{outline:none}.booking__head[data-done]>*{animation:booking-in .4s var(--ease) backwards}.booking__head[data-done]>p{animation-delay:60ms}#booking-success:not([hidden]) :is(.booking__summary>*,.btn-whatsapp){animation:booking-in .3s var(--ease) backwards;animation-delay:calc(.12s + var(--r,0) * 40ms)}.booking__summary>:nth-child(-n+2){--r:0}.booking__summary>:nth-child(n+3):nth-child(-n+4){--r:1}.booking__summary>:nth-child(n+5):nth-child(-n+6){--r:2}.booking__summary>:nth-child(n+7):nth-child(-n+8){--r:3}.booking__summary>:nth-child(n+9):nth-child(-n+10){--r:4}.booking__summary>:nth-child(n+11):nth-child(-n+12){--r:5}#booking-success .btn-whatsapp{--r:6}#booking-success{max-width:40rem;margin:0 auto}@keyframes booking-step{0%{opacity:0;transform:translateY(1.25rem)}to{opacity:1;transform:none}}@keyframes booking-in{0%{opacity:0;transform:translateY(.5rem)}to{opacity:1;transform:none}}@keyframes booking-reveal{0%{opacity:0;transform:translateY(-.25rem)}to{opacity:1;transform:none}}@keyframes booking-pop{0%{transform:scale(.92)}60%{transform:scale(1.04)}to{transform:scale(1)}}.booking__summary{grid-template-columns:max-content 1fr;gap:.35rem 1rem;display:grid}.booking__summary dt{font-weight:600}.booking__summary dd{margin:0}._wrap_ej4ga_2{justify-content:center;margin-bottom:clamp(1.5rem,4vw,2.5rem);display:flex}._back_ej4ga_3{min-height:2.75rem;color:var(--color-muted);letter-spacing:.12em;text-transform:uppercase;-webkit-tap-highlight-color:transparent;transition:color .5s var(--ease);align-items:center;gap:.7rem;padding-right:.5rem;font-size:.85rem;font-weight:600;text-decoration:none;display:inline-flex}._arrow_ej4ga_18{border:1px solid var(--color-line-strong);width:2.25rem;height:2.25rem;transition:border-color .5s var(--ease), background-color .5s var(--ease), color .5s var(--ease);border-radius:50%;place-items:center;display:grid}._arrow_ej4ga_18 svg{transition:transform .6s var(--ease)}._label_ej4ga_28{transition:background-size .6s var(--ease);background:linear-gradient(currentColor,currentColor) 100% 100%/0 1px no-repeat;padding-bottom:2px}._back_ej4ga_3:focus-visible{color:var(--color-primary-ink)}@media (hover:hover) and (pointer:fine){._back_ej4ga_3:hover{color:var(--color-primary-ink)}}._back_ej4ga_3:focus-visible ._arrow_ej4ga_18{border-color:var(--color-primary);background:var(--color-primary);color:var(--color-on-primary)}@media (hover:hover) and (pointer:fine){._back_ej4ga_3:hover ._arrow_ej4ga_18{border-color:var(--color-primary);background:var(--color-primary);color:var(--color-on-primary)}}._back_ej4ga_3:focus-visible ._arrow_ej4ga_18 svg{transform:translate(-3px)}@media (hover:hover) and (pointer:fine){._back_ej4ga_3:hover ._arrow_ej4ga_18 svg{transform:translate(-3px)}}._back_ej4ga_3:focus-visible ._label_ej4ga_28{background-position:0 100%;background-size:100% 1px}@media (hover:hover) and (pointer:fine){._back_ej4ga_3:hover ._label_ej4ga_28{background-position:0 100%;background-size:100% 1px}}._back_ej4ga_3:active ._arrow_ej4ga_18{transform:scale(.94)}._back_ej4ga_3:focus-visible{outline:none}._back_ej4ga_3:focus-visible ._arrow_ej4ga_18{box-shadow:0 0 0 3px var(--color-bg), 0 0 0 5px var(--color-primary-ink)}
