.rf-booking{position:relative;min-height:min(980px,100svh);padding:calc(88px + clamp(48px, 5.5vw, 84px)) 0 clamp(64px,6vw,96px);overflow:hidden;background:var(--rfs-black);color:var(--rfs-chrome)}.rf-booking__backdrop{position:absolute;inset:0;opacity:.3;pointer-events:none;background-image:linear-gradient(color-mix(in srgb,var(--rfs-ring) 5%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--rfs-ring) 5%,transparent) 1px,transparent 1px);background-size:52px 52px;-webkit-mask-image:radial-gradient(circle at 70% 36%,black,transparent 74%);mask-image:radial-gradient(circle at 70% 36%,black,transparent 74%)}.rf-booking__panel{position:relative;display:grid;grid-template-columns:minmax(240px,300px) minmax(0,1fr);max-width:1040px;margin:0 auto;border:1px solid color-mix(in srgb,var(--rfs-chrome) 18%,transparent);border-radius:var(--radius-panel);background:linear-gradient(180deg,var(--rfs-panel),var(--rfs-night));box-shadow:var(--shadow-panel-deep)}.rf-booking__about{display:grid;align-content:start;grid-gap:14px;gap:14px;padding:clamp(22px,2.6vw,32px);border-right:1px solid color-mix(in srgb,var(--rfs-chrome) 14%,transparent)}.rf-booking__about h1{margin:0;color:var(--rfs-white);font-size:var(--type-title);line-height:1.15}.rf-booking__meta{display:grid;grid-gap:8px;gap:8px;margin:0;padding:0;list-style:none;color:var(--rfs-chrome-2);font-size:var(--type-row);font-weight:600}.rf-booking__meta li{display:flex;align-items:center;gap:10px}.rf-booking__meta span{width:18px;color:var(--rfs-ring);text-align:center}.rf-booking__lede{line-height:1.5}.rf-booking__alt,.rf-booking__lede{margin:0;color:var(--rfs-chrome-3);font-size:var(--type-caption)}.rf-booking__alt a{color:var(--rfs-ring);text-decoration:underline;text-underline-offset:3px}.rf-booking__card{position:relative;min-height:460px;padding:clamp(22px,2.6vw,32px);color:var(--rfs-chrome)}.rf-booking__card h2{margin:0 0 6px;color:var(--rfs-white);font-size:var(--type-title);line-height:1.15}.rf-booking__step:focus{outline:none}.rf-booking__notice{margin:0 0 16px;padding:12px 14px;border:1px solid color-mix(in srgb,var(--signal-watch) 40%,transparent);border-radius:var(--radius-control);background:color-mix(in srgb,var(--signal-watch) 8%,transparent);color:var(--signal-watch);font-size:var(--type-caption)}.rf-booking__loading{display:flex;align-items:center;gap:12px;color:var(--rfs-chrome-2);font-size:var(--type-caption)}.rf-booking__card>.rf-booking__loading{min-height:340px;justify-content:center}.rf-booking__spinner{width:18px;height:18px;border:2px solid color-mix(in srgb,var(--rfs-ring) 25%,transparent);border-top-color:var(--rfs-ring);border-radius:var(--radius-panel);animation:rf-booking-spin .8s linear infinite}@keyframes rf-booking-spin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.rf-booking__spinner{animation-duration:2.4s}}.rf-booking__picker{display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,190px);grid-gap:clamp(18px,2.4vw,28px);gap:clamp(18px,2.4vw,28px);margin-top:16px}.rf-booking__month{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;color:var(--rfs-white);font-size:var(--type-row)}.rf-booking__date,.rf-booking__nav,.rf-booking__time{border:1px solid transparent;border-radius:var(--radius-control);background:none;color:var(--rfs-chrome);font:inherit;cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease}.rf-booking__nav{width:40px;height:40px;font-size:var(--type-section);line-height:1}.rf-booking__nav:disabled{opacity:.3;cursor:default}.rf-booking__dates,.rf-booking__weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:4px;gap:4px;text-align:center}.rf-booking__weekdays{margin-bottom:4px;color:var(--rfs-chrome-3);font-size:var(--type-micro);font-weight:600;text-transform:uppercase;letter-spacing:.04em}.rf-booking__date{aspect-ratio:1;min-height:40px;font-size:var(--type-row);font-weight:600}.rf-booking__date:not(:disabled){background:color-mix(in srgb,var(--rfs-ring) 14%,transparent);color:var(--rfs-white)}.rf-booking__date:disabled{color:var(--rfs-chrome-3);opacity:.45;font-weight:400;cursor:default}.rf-booking__date[aria-current=date]{text-decoration:underline;text-underline-offset:4px}.rf-booking__date[aria-pressed=true]{border-color:var(--rfs-ring);background:var(--rfs-ring);color:var(--rfs-white)}.rf-booking__date:not(:disabled):hover,.rf-booking__nav:not(:disabled):hover{border-color:color-mix(in srgb,var(--rfs-ring) 70%,transparent)}.rf-booking__change:focus-visible,.rf-booking__date:focus-visible,.rf-booking__field input:focus-visible,.rf-booking__field select:focus-visible,.rf-booking__field textarea:focus-visible,.rf-booking__nav:focus-visible,.rf-booking__time:focus-visible{outline:2px solid var(--rfs-ring);outline-offset:2px}.rf-booking__zone{margin:14px 0 0;color:var(--rfs-chrome-3);font-size:var(--type-micro)}.rf-booking__slots{display:grid;align-content:start;grid-gap:10px;gap:10px}.rf-booking__slots-day{min-height:40px;display:flex;align-items:center;color:var(--rfs-white);font-size:var(--type-caption)}.rf-booking__times{display:grid;grid-gap:8px;gap:8px;max-height:340px;overflow-y:auto;padding-right:2px}.rf-booking__time{min-height:var(--rfs-touch-target);border-color:color-mix(in srgb,var(--rfs-ring) 55%,transparent);color:var(--rfs-white);font-size:var(--type-row);font-weight:600}.rf-booking__time:hover{background:color-mix(in srgb,var(--rfs-ring) 14%,transparent)}.rf-booking__time[aria-pressed=true]{background:var(--rfs-ring)}.rf-booking__form{display:grid;grid-gap:14px;gap:14px}.rf-booking__chosen{display:grid;grid-gap:2px;gap:2px;padding:14px 16px;border:1px solid color-mix(in srgb,var(--rfs-ring) 35%,transparent);border-radius:var(--radius-card);background:color-mix(in srgb,var(--rfs-ring) 8%,transparent)}.rf-booking__chosen span{color:var(--rfs-chrome-3);font-size:var(--type-micro)}.rf-booking__chosen b{color:var(--rfs-white);font-size:var(--type-row)}.rf-booking__change{justify-self:start;margin-top:6px;padding:0;border:0;background:none;color:var(--rfs-ring);font:inherit;font-size:var(--type-label);text-decoration:underline;text-underline-offset:3px;cursor:pointer}.rf-booking__field{display:grid;grid-gap:6px;gap:6px}.rf-booking__field span{color:var(--rfs-chrome-2);font-size:var(--type-label);font-weight:600}.rf-booking__field em{color:var(--rfs-chrome-3);font-style:normal;font-weight:400}.rf-booking__field input,.rf-booking__field select,.rf-booking__field textarea{width:100%;min-height:var(--rfs-touch-target);padding:12px 14px;border:1px solid color-mix(in srgb,var(--rfs-chrome) 22%,transparent);border-radius:var(--radius-control);background:color-mix(in srgb,var(--rfs-white) 4%,transparent);color:var(--rfs-white);font:inherit;font-size:var(--type-row)}.rf-booking__field textarea{resize:vertical}.rf-booking__field select{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto;cursor:pointer}.rf-booking__field option{background:var(--rfs-night);color:var(--rfs-white)}.rf-booking__field [aria-invalid=true]{border-color:var(--signal-critical)}.rf-booking__error{color:var(--signal-critical);font-size:var(--type-micro)}.rf-booking__trap{position:absolute!important;left:-10000px;width:1px;height:1px;overflow:hidden}.rf-booking__submit{width:100%;min-height:52px;justify-content:center}.rf-booking__submit[disabled]{opacity:.75;cursor:progress}.rf-booking__fine{margin:0;color:var(--rfs-chrome-3);font-size:var(--type-micro);line-height:1.45}.rf-booking__qualify{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px;margin:6px 0 0;padding:16px 0 0;border:0;border-top:1px solid color-mix(in srgb,var(--rfs-chrome) 14%,transparent)}.rf-booking__qualify legend{float:left;grid-column:1/-1;width:100%;margin-bottom:2px;color:var(--rfs-white);font-size:var(--type-row);font-weight:700}.rf-booking__qualify>.rf-booking__field:has(select[name=challenge]),.rf-booking__qualify>.rf-booking__field:nth-last-child(-n+2):has(textarea){grid-column:1/-1}.rf-booking__closed,.rf-booking__done{display:grid;grid-gap:12px;gap:12px;align-content:start}.rf-booking__closed p,.rf-booking__done p{margin:0;color:var(--rfs-chrome-2);font-size:var(--type-row);line-height:1.5}.rf-booking__closed a:not(.btn),.rf-booking__done a:not(.btn){color:var(--rfs-ring);text-decoration:underline;text-underline-offset:3px}.rf-booking__done h2:focus{outline:none}.rf-booking__when{color:var(--rfs-white)!important;font-size:var(--type-body)!important;font-weight:600}.rf-booking__eyebrow{color:var(--rfs-ring);font-size:var(--type-micro);font-weight:700;letter-spacing:.06em;text-transform:uppercase}.rf-booking__check{display:grid;place-items:center;width:44px;height:44px;-webkit-clip-path:circle(50%);clip-path:circle(50%);background:color-mix(in srgb,var(--signal-confirmed) 14%,transparent);color:var(--signal-confirmed);font-size:var(--type-title)}.rf-booking__closed-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}@media (max-width:860px){.rf-booking__panel{grid-template-columns:minmax(0,1fr)}.rf-booking__about{border-right:0;border-bottom:1px solid color-mix(in srgb,var(--rfs-chrome) 14%,transparent)}}@media (max-width:680px){.rf-booking{padding:calc(var(--rfs-header-mobile) + 20px) 0 48px}.rf-booking__picker{grid-template-columns:minmax(0,1fr)}.rf-booking__times{grid-template-columns:repeat(3,minmax(0,1fr));max-height:none}.rf-booking__card{min-height:0;padding:18px}.rf-booking__qualify{grid-template-columns:minmax(0,1fr)}.rf-booking__about{padding:18px}.rf-booking__closed-actions .btn{width:100%;justify-content:center}}.rf-booking.rf-booking.rf-booking .rf-booking__about h1{max-width:none!important;font-size:var(--rfs-display-h3)!important;line-height:1.05!important;letter-spacing:-.01em!important}.rf-booking.rf-booking.rf-booking section h2{max-width:none!important;margin:0 0 4px;font-size:var(--type-title)!important;line-height:1.15!important;letter-spacing:0!important}