.footer{background:var(--bg);border-block-start:var(--hairline)}.footer__inner{max-width:var(--content-max);padding:var(--gap-xl) var(--section-pad-x);align-items:center;gap:var(--gap-lg);color:var(--text-muted);font-family:var(--font-text);font-size:var(--fs-caption);letter-spacing:var(--ls-body);flex-direction:column;margin-inline:auto;display:flex}.footer__logo{display:block}.footer__logo-img{object-fit:contain;width:auto;max-width:100%;height:clamp(56px,15vw,84px);display:block}:root:is([data-theme=light]:not([data-a11y-contrast=high]),[data-a11y-contrast=invert]) .footer__logo-img{filter:brightness(0)}.footer__line{align-items:center;gap:var(--gap-xs);text-align:center;flex-direction:column;margin:0;display:flex}.footer__links{align-items:baseline;gap:var(--gap-xs) var(--gap-sm);display:inline-flex}.footer__link{color:inherit;transition:color var(--dur-fast) var(--ease);text-decoration:none}.footer__link:hover,.footer__link:focus-visible{color:var(--accent)}.footer__sep{color:var(--text-faint)}
.a11y-panel-root{z-index:60;position:fixed;inset:0}.a11y-panel__backdrop{background:var(--backdrop);cursor:default;width:100%;height:100%;animation:a11y-fade var(--dur-fast) var(--ease) both;border:0;padding:0;position:absolute;inset:0}.a11y-panel{background:var(--surface-side);width:min(360px,100vw - 32px);color:var(--text);box-shadow:0 18px 48px var(--backdrop);flex-direction:column;display:flex;position:absolute;top:0;bottom:0}.a11y-panel--left{border-inline-end:1px solid var(--border-accent);animation:a11y-in-left var(--dur-mid) var(--ease) both;left:0;right:auto}.a11y-panel--right{border-inline-start:1px solid var(--border-accent);animation:a11y-in-right var(--dur-mid) var(--ease) both;left:auto;right:0}@keyframes a11y-fade{0%{opacity:0}to{opacity:1}}@keyframes a11y-in-left{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes a11y-in-right{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes a11y-in-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes a11y-fade-out{0%{opacity:1}to{opacity:0}}@keyframes a11y-out-left{0%{transform:translate(0)}to{transform:translate(-100%)}}@keyframes a11y-out-right{0%{transform:translate(0)}to{transform:translate(100%)}}@keyframes a11y-out-down{0%{transform:translateY(0)}to{transform:translateY(100%)}}.a11y-panel--left.a11y-panel--out{animation-name:a11y-out-left}.a11y-panel--right.a11y-panel--out{animation-name:a11y-out-right}.a11y-panel__backdrop--out{animation-name:a11y-fade-out}@media (prefers-reduced-motion:reduce){.a11y-panel,.a11y-panel__backdrop{animation:none}}.a11y-panel__head{justify-content:space-between;align-items:center;gap:var(--gap-sm);padding:var(--gap-sm) var(--gap-md);border-block-end:var(--hairline);display:flex}.a11y-panel__title{font-family:var(--font-display);font-size:var(--fs-h3);font-weight:var(--fw-regular);letter-spacing:var(--ls-body);color:var(--text);margin:0}.a11y-panel__close{width:38px;height:38px;color:var(--text-muted);cursor:pointer;transition:color var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);background:0 0;border:1px solid #0000;border-radius:999px;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.a11y-panel__close svg{width:18px;height:18px}.a11y-panel__close:hover,.a11y-panel__close:focus-visible{color:var(--accent);border-color:var(--border-accent)}.a11y-panel__body{padding:var(--gap-sm) var(--gap-md) var(--gap-md);flex-direction:column;gap:22px;display:flex;overflow-y:auto}.a11y-group{display:block}.a11y-group--fieldset{border:0;min-width:0;margin:0;padding:0}.a11y-group__label{font-family:var(--font-text);font-size:var(--fs-eyebrow);font-weight:var(--fw-medium);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--text-faint);margin:0 0 14px;padding:0}.a11y-steppers{justify-content:space-between;align-items:center;gap:var(--gap-sm);display:flex}.a11y-stepper{border:1px solid var(--border-accent);width:42px;height:42px;color:var(--text);font-family:var(--font-text);font-size:15px;font-weight:var(--fw-medium);cursor:pointer;transition:border-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease), background-color var(--dur-fast) var(--ease);background:0 0;border-radius:999px;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.a11y-stepper:hover:not(:disabled),.a11y-stepper:focus-visible:not(:disabled){background:var(--accent);border-color:var(--accent);color:var(--accent-contrast)}.a11y-stepper:disabled{opacity:.3;cursor:not-allowed}.a11y-stepper__value{font-family:var(--font-display);font-variant-numeric:tabular-nums;letter-spacing:var(--ls-body);color:var(--text);font-size:22px}.a11y-steps{justify-content:center;align-items:center;gap:9px;margin:10px 0 0;padding:0;list-style:none;display:flex}.a11y-steps__dot{background:var(--border);width:6px;height:6px;transition:background-color var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease);border-radius:999px}.a11y-steps__dot--on{background:var(--accent);transform:scale(1.25)}.a11y-segments{gap:var(--gap-xs);grid-template-columns:repeat(3,1fr);display:grid}.a11y-segment{display:flex;position:relative}.a11y-segment input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.a11y-segment__chip{flex-direction:column;flex:1;align-items:stretch;gap:7px;display:flex}.a11y-segment__swatch{border:1px solid var(--border-accent);height:40px;font-family:var(--font-display);transition:border-color var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease);justify-content:center;align-items:center;font-size:16px;display:flex}.a11y-segment__swatch--normal{background:var(--bg);color:var(--text)}.a11y-segment__swatch--high{color:#ffd400;background:#000;border-color:#ffd400}.a11y-segment__swatch--invert{color:#000;background:#fff;border-color:#b8b8b8}.a11y-segment__name{text-align:center;font-family:var(--font-text);font-size:var(--fs-caption);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);transition:color var(--dur-fast) var(--ease)}.a11y-segment input:checked+.a11y-segment__chip .a11y-segment__swatch{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent)}.a11y-segment input:checked+.a11y-segment__chip .a11y-segment__name{color:var(--accent)}.a11y-segment input:hover:not(:checked)+.a11y-segment__chip .a11y-segment__swatch{border-color:var(--accent)}.a11y-segment input:focus-visible+.a11y-segment__chip .a11y-segment__swatch{outline:2px solid var(--accent);outline-offset:3px}.a11y-toggles{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.a11y-toggle{align-items:center;gap:var(--gap-sm);cursor:pointer;min-height:38px;color:var(--text);border-block-end:var(--hairline);display:flex;position:relative}.a11y-toggles li:last-child .a11y-toggle{border-block-end:0}.a11y-toggle input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.a11y-toggle__box{border:1px solid var(--border-accent);color:#0000;width:22px;height:22px;transition:border-color var(--dur-fast) var(--ease), background-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);flex:none;justify-content:center;align-items:center;display:inline-flex}.a11y-toggle__box svg{width:14px;height:14px}.a11y-toggle input:checked+.a11y-toggle__box{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast)}.a11y-toggle input:hover+.a11y-toggle__box{border-color:var(--accent)}.a11y-toggle input:focus-visible+.a11y-toggle__box{outline:2px solid var(--accent);outline-offset:2px}.a11y-toggle__text{font-family:var(--font-text);font-size:var(--fs-body);line-height:1.4}.a11y-reset{min-height:42px;padding:0 var(--gap-md);border:1px solid var(--border-accent);color:var(--text);font-family:var(--font-text);font-size:var(--fs-button);letter-spacing:var(--ls-button);text-transform:uppercase;cursor:pointer;transition:border-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);background:0 0;border-radius:999px}.a11y-reset:hover:not(:disabled),.a11y-reset:focus-visible:not(:disabled){border-color:var(--accent);color:var(--accent)}.a11y-reset:disabled{opacity:.35;cursor:not-allowed}.a11y-statement{align-items:center;gap:var(--gap-xs);min-height:28px;color:var(--text-muted);font-family:var(--font-text);font-size:var(--fs-button);letter-spacing:var(--ls-body);text-underline-offset:3px;transition:color var(--dur-fast) var(--ease);text-decoration:underline;display:inline-flex}.a11y-statement:hover,.a11y-statement:focus-visible{color:var(--accent)}[dir=rtl] .a11y-statement__arrow{transform:scaleX(-1)}@media (max-width:560px){.a11y-panel,.a11y-panel--left,.a11y-panel--right{border:0;border-block-start:1px solid var(--border-accent);width:100%;max-height:82vh;animation:a11y-in-up var(--dur-mid) var(--ease) both;inset:auto 0 0}.a11y-panel.a11y-panel--out{animation-name:a11y-out-down}}
.a11y-fab{z-index:45;background:var(--surface-side);border:1px solid var(--border-accent);width:54px;height:54px;color:var(--text);box-shadow:0 8px 24px var(--backdrop);cursor:grab;touch-action:none;transition:border-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease);border-radius:999px;justify-content:center;align-items:center;padding:0;display:inline-flex;position:fixed}.a11y-fab svg{pointer-events:none;width:24px;height:24px}.a11y-fab:hover,.a11y-fab:focus-visible{border-color:var(--accent);color:var(--accent)}.a11y-fab--dragging{cursor:grabbing;box-shadow:0 14px 34px var(--backdrop);transition:none}
.booking-fab{bottom:var(--gap-md);right:var(--gap-md);z-index:45;background:var(--accent);border:1px solid var(--accent);width:54px;height:54px;color:var(--accent-contrast);box-shadow:0 8px 24px var(--backdrop);cursor:pointer;transition:transform var(--dur-fast) var(--ease), background-color var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);border-radius:999px;justify-content:center;align-items:center;text-decoration:none;display:inline-flex;position:fixed}.booking-fab svg{width:24px;height:24px}.booking-fab:hover,.booking-fab:focus-visible{background:var(--accent-hover);border-color:var(--accent-hover);transform:translateY(-2px)}@media (prefers-reduced-motion:reduce){.booking-fab{transition:none}.booking-fab:hover,.booking-fab:focus-visible{transform:none}}
