@font-face{font-family:DM Sans;src:url(/assets/fonts/dm-sans-latin-wght-normal.woff2) format("woff2");font-weight:100 1000;font-style:normal;font-display:swap}@font-face{font-family:"Source Serif 4";src:url(/assets/fonts/source-serif-4-latin-wght-normal.woff2) format("woff2");font-weight:200 900;font-style:normal;font-display:swap}:root{color-scheme:light;--bg: #f7f8fa;--surface: #ffffff;--ink: #0f172a;--ink-2: #5b6472;--line: #e4e7ec;--line-strong: #b4bccb;--accent: #2a3fcb;--accent-hover: #1f309f;--on-accent: #ffffff;--accent-soft: #e8ebfb;--ok: #0b7a4b;--ok-soft: #e0f3ea;--danger: #b42318;--danger-soft: #fdecea;--focus: #2a3fcb;--font-display: "Source Serif 4", Georgia, serif;--font-body: "DM Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--text-xs: .8125rem;--text-sm: .9375rem;--text-md: 1rem;--text-lg: 1.25rem;--text-xl: 1.625rem;--text-2xl: clamp(2rem, 1.4rem + 3vw, 2.875rem);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--space-8: 72px;--radius-control: 10px;--radius-card: 14px;--radius-ticket: 20px;--shadow-ticket: 0 1px 0 rgba(20, 22, 27, .04), 0 18px 40px -18px rgba(42, 63, 203, .26);--tap: 44px;--navy: #0f172a;--gold: #c9a24b;--peri: #9db0ff;--ease: cubic-bezier(.2, .7, .2, 1)}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font:var(--text-md) / 1.5 var(--font-body);color:var(--ink);background:var(--bg)}h1,h2,h3{font-family:var(--font-display);font-weight:600;letter-spacing:-.015em;line-height:1.08;margin:0;text-wrap:balance}h1{font-size:var(--text-2xl)}h2{font-size:var(--text-xl)}h3{font-size:var(--text-lg);letter-spacing:-.01em}p{margin:0;max-width:62ch}a{color:var(--accent);text-underline-offset:3px}a:hover{color:var(--accent-hover)}:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:4px}[tabindex="-1"]:focus{outline:none}.muted{color:var(--ink-2)}.small{font-size:var(--text-sm)}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.hp{position:absolute;left:-9999px}.stack{display:flex;flex-direction:column;gap:var(--space-4)}.stack--lg{gap:var(--space-6)}.shell{min-height:100dvh;display:flex;flex-direction:column}.container{width:100%;max-width:1040px;margin:0 auto;padding-inline:var(--space-4)}@media (min-width: 720px){.container{padding-inline:var(--space-6)}}.skip{position:absolute;left:var(--space-4);top:-60px;z-index:10;padding:var(--space-2) var(--space-3);background:var(--surface);border-radius:var(--radius-control)}.skip:focus{top:var(--space-2)}.topbar{background:var(--navy);color:#fff}.topbar__in{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);min-height:60px}.brand{display:inline-flex;align-items:center;gap:10px;min-height:var(--tap);color:#fff;text-decoration:none;font:600 1.1875rem/1 var(--font-display);letter-spacing:-.01em}.brand:hover{color:#fff}.brand em{font-style:normal;color:var(--peri)}.brand__mark{width:32px;height:32px;border-radius:8px;background:var(--gold);color:var(--navy);display:grid;place-items:center;font:600 .9375rem/1 var(--font-display)}.topbar__back{display:inline-flex;align-items:center;min-height:var(--tap);color:#cbd3e1;font-size:var(--text-sm);text-decoration:none}.topbar__back:hover{color:#fff;text-decoration:underline}.topbar :focus-visible{outline-color:var(--gold)}.main{flex:1;padding-block:var(--space-5) var(--space-8)}@media (min-width: 900px){.main{padding-block:var(--space-7) var(--space-8)}}.footer{border-top:1px solid var(--line);padding-block:var(--space-5);color:var(--ink-2);font-size:var(--text-sm);display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-5)}.footer a{color:inherit}.prose{max-width:62ch;display:flex;flex-direction:column;gap:var(--space-4)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--tap);padding:0 var(--space-5);font:600 var(--text-md) / 1 var(--font-body);text-decoration:none;white-space:nowrap;border:1px solid transparent;border-radius:var(--radius-control);cursor:pointer;transition:background-color .15s var(--ease),border-color .15s var(--ease),transform .1s var(--ease)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled,.btn[aria-disabled=true]{cursor:not-allowed;opacity:.5}.btn--primary{background:var(--accent);color:var(--on-accent)}.btn--primary:hover:not(:disabled){background:var(--accent-hover);color:var(--on-accent)}.btn--secondary{background:var(--surface);color:var(--ink);border-color:var(--line-strong)}.btn--secondary:hover:not(:disabled){border-color:var(--ink);color:var(--ink)}.btn--ghost{background:transparent;color:var(--ink-2);padding-inline:var(--space-3)}.btn--ghost:hover:not(:disabled){color:var(--ink);background:color-mix(in srgb,var(--ink) 6%,transparent)}.btn--block{width:100%}.btn--icon{width:var(--tap);padding:0}.spinner{width:16px;height:16px;border-radius:50%;border:2px solid currentColor;border-right-color:transparent;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.field{display:flex;flex-direction:column;gap:6px}.field__label{font-weight:600;font-size:var(--text-sm)}.field__optional{font-weight:400;color:var(--ink-2)}.field__control{width:100%;min-height:var(--tap);padding:10px var(--space-3);font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-control);transition:border-color .15s var(--ease),box-shadow .15s var(--ease)}textarea.field__control{resize:vertical;min-height:96px}.field__control:hover{border-color:var(--ink-2)}.field__control:focus-visible{outline:none;border-color:var(--focus);box-shadow:0 0 0 3px color-mix(in srgb,var(--focus) 28%,transparent)}.field__control[aria-invalid=true]{border-color:var(--danger)}.field__hint{font-size:var(--text-xs);color:var(--ink-2)}.field__error{font-size:var(--text-sm);color:var(--danger);display:flex;gap:6px;align-items:flex-start}.field__error svg{flex:none;margin-top:3px}.stepper{display:flex;gap:var(--space-2);list-style:none;padding:0;margin:0;font-size:var(--text-sm)}.stepper li{display:flex;align-items:center;gap:var(--space-2);color:var(--ink-2)}.stepper li+li:before{content:"";width:20px;height:1px;background:var(--line-strong)}.stepper__item{display:inline-flex;align-items:center;gap:var(--space-2);min-height:32px;padding:0;background:none;border:0;font:inherit;color:inherit}button.stepper__item{cursor:pointer}button.stepper__item:hover{color:var(--ink)}.stepper__num{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-size:var(--text-xs);font-weight:600;border:1px solid var(--line-strong);font-variant-numeric:tabular-nums}.stepper [aria-current=step]{color:var(--ink);font-weight:600}.stepper [aria-current=step] .stepper__num{background:var(--ink);color:var(--bg);border-color:var(--ink)}.stepper .is-done .stepper__num{background:var(--accent-soft);color:var(--accent);border-color:transparent}@media (max-width: 519px){.stepper li:not(:has([aria-current=step])) .stepper__label{display:none}}.days__head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-2)}.days__month{font-family:var(--font-display);font-weight:600;font-size:var(--text-lg);letter-spacing:-.01em}.days__grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.days__weekday{text-align:center;font-size:var(--text-xs);color:var(--ink-2);padding-bottom:4px}.day{position:relative;aspect-ratio:1;min-height:var(--tap);max-height:64px;width:100%;display:grid;place-items:center;font:600 var(--text-md) / 1 var(--font-body);font-variant-numeric:tabular-nums;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-control);cursor:pointer;transition:border-color .15s var(--ease),background-color .15s var(--ease)}.day:hover:not(:disabled){border-color:var(--accent)}.day:disabled{background:transparent;border-color:transparent;color:var(--line-strong);font-weight:400;cursor:default}.day[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.day__month{position:absolute;top:5px;left:0;right:0;text-align:center;font-size:.625rem;font-weight:600;opacity:.75}.day--today:after{content:"";position:absolute;bottom:6px;width:4px;height:4px;border-radius:50%;background:currentColor;opacity:.6}.day--blank{visibility:hidden}.slots{display:flex;flex-direction:column;gap:var(--space-4)}.slots__part{font-size:var(--text-sm);color:var(--ink-2);margin-bottom:var(--space-2)}.slots__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:var(--space-2)}.slot{min-height:var(--tap);padding:0 var(--space-2);font:600 var(--text-sm) / 1 var(--font-body);font-variant-numeric:tabular-nums;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-control);cursor:pointer;transition:border-color .15s var(--ease),background-color .15s var(--ease)}.slot:hover{border-color:var(--accent);color:var(--accent)}.slot[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.notice{display:flex;gap:var(--space-3);align-items:flex-start;padding:var(--space-3) var(--space-4);border-radius:var(--radius-card);font-size:var(--text-sm);background:var(--accent-soft);color:var(--ink)}.notice svg{flex:none;margin-top:2px;color:var(--accent)}.notice--danger{background:var(--danger-soft)}.notice--danger svg{color:var(--danger)}.notice--ok{background:var(--ok-soft)}.notice--ok svg{color:var(--ok)}.notice .actions{flex-wrap:wrap}.notice__body{display:flex;flex-direction:column;gap:var(--space-2);align-items:flex-start}.notice__title{font-weight:600}.skeleton{border-radius:var(--radius-control);background:linear-gradient(90deg,var(--line) 25%,color-mix(in srgb,var(--line) 50%,var(--surface)) 50%,var(--line) 75%);background-size:200% 100%;animation:shimmer 1.4s linear infinite}@keyframes shimmer{to{background-position:-200% 0}}.ticket{position:relative;overflow:hidden;background:var(--surface);border:1px solid var(--line);border-top:3px solid var(--gold);border-radius:var(--radius-ticket);box-shadow:var(--shadow-ticket)}.ticket__top{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4) var(--space-5)}.ticket__issuer{font-family:var(--font-display);font-weight:600;font-size:1.0625rem;letter-spacing:-.01em}.ticket__status{font-size:var(--text-xs);font-weight:600;padding:4px 10px;border-radius:999px;background:var(--bg);color:var(--ink-2)}.ticket--booked .ticket__status{background:var(--ok-soft);color:var(--ok)}.ticket__time{padding:var(--space-2) var(--space-5) var(--space-5)}.ticket__clock{font-family:var(--font-display);font-weight:600;font-size:clamp(2.5rem,2rem + 2vw,3.25rem);letter-spacing:-.03em;line-height:1;font-variant-numeric:tabular-nums}.ticket__clock small{font-size:.42em;font-weight:600;letter-spacing:0;margin-left:.2em;color:var(--ink-2)}.ticket__clock--empty{color:var(--line-strong)}.ticket__clock--words{font-size:2rem;letter-spacing:-.02em}.ticket__day{margin-top:var(--space-2);color:var(--ink-2)}.ticket__tear{position:relative;border-top:1.5px dashed var(--line-strong)}.ticket__tear:before,.ticket__tear:after{content:"";position:absolute;top:-11px;width:20px;height:20px;border-radius:50%;background:var(--bg);border:1px solid var(--line)}.ticket__tear:before{left:-11px}.ticket__tear:after{right:-11px}.ticket__rows{margin:0;padding:var(--space-4) var(--space-5) var(--space-5);display:grid;grid-template-columns:auto 1fr;gap:var(--space-2) var(--space-4);font-size:var(--text-sm)}.ticket__rows dt{color:var(--ink-2)}.ticket__rows dd{margin:0;text-align:right;font-weight:600;font-variant-numeric:tabular-nums}.ticket__rows dd.is-empty{font-weight:400;color:var(--line-strong)}.ticket__changed{animation:flash .6s var(--ease)}@keyframes flash{0%{color:var(--accent)}}.ticket--booked{animation:stamp .5s var(--ease)}@keyframes stamp{0%{transform:scale(.96) rotate(-1.2deg);opacity:0}}.booking{display:grid;gap:var(--space-6)}.booking__intro{display:flex;flex-direction:column;gap:var(--space-3);margin-bottom:var(--space-5)}.booking__aside{display:none}.booking__aside.is-shown{display:block}.step{display:flex;flex-direction:column;gap:var(--space-5);min-width:0}.step__head{display:flex;flex-direction:column;gap:var(--space-2)}.actions{display:flex;align-items:center;gap:var(--space-3)}.actions--wrap{flex-wrap:wrap}.actions__summary{margin-right:auto;font-size:var(--text-sm);line-height:1.3;color:var(--ink-2);min-width:0;white-space:nowrap}.actions__summary strong{display:block;color:var(--ink);font-variant-numeric:tabular-nums}.tzline{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-3);font-size:var(--text-sm);color:var(--ink-2)}.linkbtn{background:none;border:0;padding:0;min-height:32px;font:inherit;color:var(--accent);text-decoration:underline;text-underline-offset:3px;cursor:pointer}.linkbtn:hover{color:var(--accent-hover)}.form{display:flex;flex-direction:column;gap:var(--space-4)}@media (max-width: 519px){.hide-narrow{display:none}}@media (max-width: 899px){.actions--sticky{position:sticky;bottom:0;margin-inline:calc(var(--space-4) * -1);padding:var(--space-3) var(--space-4) calc(var(--space-3) + env(safe-area-inset-bottom));background:color-mix(in srgb,var(--bg) 92%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-top:1px solid var(--line)}.booking__aside{order:-1}}@media (min-width: 900px){.booking{grid-template-columns:minmax(0,1fr) 340px;gap:var(--space-8);align-items:start}.booking__aside,.booking__aside.is-shown{display:block;position:sticky;top:var(--space-5)}.actions__summary{display:none}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
