.booking-page{--booking-gold:#c4a46c;--booking-cream:#f2eee5;--booking-muted:#aba99f;--booking-line:#ffffff20;--booking-panel:#20211d}.booking-main{max-width:1220px;margin:auto;padding:30px 40px 60px}.booking-back{color:var(--booking-muted);align-items:center;gap:8px;font-size:14px;display:inline-flex}.booking-back:hover{color:var(--booking-gold)}.booking-heading{justify-content:space-between;align-items:flex-end;gap:36px;margin:27px 0;display:flex}.booking-eyebrow{color:var(--booking-gold);text-transform:uppercase;letter-spacing:.18em;font-size:12px;font-weight:700}.booking-heading h1{font-family:var(--font-cormorant),Georgia,serif;letter-spacing:-.025em;margin-top:10px;font-size:clamp(40px,4.4vw,64px);font-weight:400;line-height:1.06}.booking-heading h1 em{color:var(--booking-gold);white-space:nowrap}.booking-intro{max-width:305px;color:var(--booking-muted);font-size:15px;line-height:1.8}.booking-host{align-items:center;gap:14px;margin:0 0 26px;display:flex}.booking-monogram{width:46px;height:46px;font-family:var(--font-cormorant),Georgia,serif;color:var(--booking-gold);border:1px solid #c4a46c80;border-radius:50%;place-items:center;font-size:24px;display:grid}.booking-host strong{font-size:16px;font-weight:500;display:block}.booking-host>div>span{color:var(--booking-muted);margin-top:4px;font-size:13px;display:block}.booking-host .booking-host-meta{gap:24px;margin-left:auto;display:flex}.booking-host .booking-host-meta span{color:var(--booking-cream);align-items:center;gap:8px;font-size:14px;display:flex}.booking-host-meta svg{color:var(--booking-gold)}.booking-layout{background:var(--booking-panel);border:1px solid #c4a46c55;grid-template-columns:380px minmax(0,1fr);display:grid;box-shadow:0 16px 48px #0002}.booking-date-panel{border-right:1px solid var(--booking-line);padding:28px}.booking-step{letter-spacing:.02em;align-items:center;gap:10px;font-size:14px;font-weight:600;display:flex}.booking-step>span{color:var(--booking-gold);border:1px solid #c4a46c60;border-radius:50%;place-items:center;width:24px;height:24px;font-size:12px;display:inline-grid}.booking-month{--cell-size:2.65rem;--cell-radius:2px;--primary:var(--booking-gold);--primary-foreground:#171815;--muted:#ffffff12;--muted-foreground:#9b9d90;--foreground:var(--booking-cream);--ring:var(--booking-gold);color:var(--booking-cream);margin-top:24px;background:0 0!important;width:100%!important;padding:0!important}.booking-month .rdp-caption_label{font-family:var(--font-cormorant),Georgia,serif;font-size:26px;font-weight:500}.booking-month .rdp-weekday{font-size:13px}.booking-month button{border-radius:2px;font-size:14px}.booking-month button:not(:disabled):hover{color:var(--booking-cream);background:#c4a46c25}.booking-month button[data-selected-single=true],.booking-month button[data-selected-single=true]:hover{background:var(--booking-gold);color:#171815;font-weight:700}.booking-month .rdp-disabled{opacity:.25}.booking-month .rdp-today:not([data-selected]){background:0 0}.booking-month .rdp-today button:not([data-selected-single=true]){box-shadow:inset 0 0 0 1px #c4a46c70}.booking-zone{color:var(--booking-muted);align-items:center;gap:9px;margin-top:25px;font-size:14px;display:flex}.booking-hours{border-top:1px solid var(--booking-line);margin-top:24px;padding-top:20px}.booking-hours h3{color:var(--booking-cream);margin-bottom:12px;font-size:14px}.booking-hours p{color:var(--booking-muted);justify-content:space-between;gap:15px;font-size:13px;line-height:2;display:flex}.booking-times-panel{min-width:0;padding:28px 32px}.booking-date-title{justify-content:space-between;align-items:center;gap:8px;margin-top:24px;display:flex}.booking-date-title h2{font-family:var(--font-cormorant),Georgia,serif;font-size:32px;font-weight:500;line-height:1.15}.booking-refresh{color:var(--booking-muted)}.booking-duration{color:var(--booking-muted);align-items:center;gap:8px;margin-top:12px;font-size:14px;display:flex}.booking-duration>span{margin:0 4px}.booking-filters{gap:6px;margin:22px 0 18px;display:flex}.booking-filters button{color:var(--booking-muted);border-radius:2px;padding:0 13px;font-size:14px}.booking-filters button[aria-pressed=true]{color:var(--booking-gold);background:#c4a46c20}.booking-time-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.booking-time{min-height:47px;font-weight:500;color:var(--booking-cream)!important;background:0 0!important;border:1px solid #c4a46c65!important;border-radius:2px!important;justify-content:space-between!important;padding:0 14px!important;font-size:15px!important}.booking-time svg{color:var(--booking-gold);opacity:.55}.booking-time:hover{background:var(--booking-gold)!important;color:#171815!important;border-color:var(--booking-gold)!important}.booking-time:hover svg{color:#171815;opacity:1}.booking-time:focus-visible{outline:2px solid var(--booking-gold);outline-offset:3px}.booking-state{text-align:center;min-height:180px;color:var(--booking-muted);flex-direction:column;justify-content:center;align-items:center;gap:15px;font-size:15px;line-height:1.7;display:flex}.booking-footnote{color:var(--booking-muted);margin-top:22px;font-size:13px;line-height:1.7}.booking-notice{border-left:2px solid var(--booking-gold);color:#cec6b6;background:#c4a46c0c;margin-top:18px;padding:12px 14px;font-size:14px;line-height:1.7}.booking-notice a,.booking-help a{color:var(--booking-gold);text-underline-offset:4px;text-decoration:underline}.booking-help{text-align:center;color:var(--booking-muted);margin-top:24px;font-size:14px;line-height:1.8}.booking-help>span{margin:0 5px}.booking-dialog{--booking-gold:#c4a46c;--booking-cream:#f2eee5;--booking-muted:#aba99f;--primary:#c4a46c;--primary-foreground:#171815;--ring:#c4a46c;max-height:calc(100dvh - 32px);overflow:auto;box-shadow:0 30px 120px #000b;color:var(--booking-cream)!important;background:#20211d!important;border:1px solid #c4a46c60!important;border-radius:3px!important;gap:13px!important;max-width:min(580px,100vw - 32px)!important;padding:30px!important}.booking-dialog [data-slot=dialog-close]{color:var(--booking-cream);background:0 0;border-radius:2px}.booking-dialog [data-slot=dialog-close]:is(:hover,:focus-visible){color:var(--booking-gold)!important;background:#c4a46c20!important}.booking-dialog [data-slot=dialog-close]:focus-visible{outline:2px solid var(--booking-gold);outline-offset:2px}.booking-dialog-title{font-family:var(--font-cormorant),Georgia,serif!important;font-size:38px!important;font-weight:400!important;line-height:1.1!important}.booking-dialog-description{line-height:1.6;color:var(--booking-muted)!important;font-size:15px!important}.booking-selection{color:var(--booking-gold);background:#c4a46c10;border:1px solid #c4a46c30;align-items:center;gap:13px;margin:4px 0 6px;padding:15px;display:flex}.booking-selection strong{color:var(--booking-cream);font-size:15px;font-weight:500;display:block}.booking-selection span{color:var(--booking-muted);margin-top:5px;font-size:13px;display:block}.booking-form{gap:14px;display:grid}.booking-form label{font-size:14px;line-height:1.6;display:block}.booking-form input,.booking-form select,.booking-form textarea{width:100%;color:var(--booking-cream);background:#171815;border:1px solid #ffffff2b;border-radius:2px;outline:none;min-height:44px;margin-top:6px;padding:10px 12px;font-size:16px;display:block}.booking-form :is(input,select,textarea):focus{border-color:var(--booking-gold);box-shadow:0 0 0 1px var(--booking-gold)}.booking-form textarea{resize:vertical}.booking-form input::placeholder,.booking-form textarea::placeholder{color:#85887d}.booking-field-pair{grid-template-columns:1fr 1fr;gap:14px;display:grid}.booking-optional{color:var(--booking-muted);margin-left:4px;font-size:12px}.booking-privacy{color:var(--booking-muted);font-size:12px;line-height:1.6}.booking-privacy a,.booking-form-error a{text-underline-offset:3px;text-decoration:underline}.booking-form-error{color:#ead3a3;border-left:2px solid var(--booking-gold);background:#c4a46c10;padding:10px 12px;font-size:14px;line-height:1.7}.booking-primary{justify-content:center;align-items:center;gap:12px;width:100%;display:flex;background:var(--booking-gold)!important;color:#171815!important;border-radius:2px!important;height:auto!important;min-height:49px!important;padding:12px!important;font-size:14px!important;font-weight:700!important}.booking-primary:disabled{opacity:.4}.booking-primary:hover{background:#dac093!important}.booking-secondary{min-height:46px;color:var(--booking-cream)!important;background:0 0!important;border:1px solid #c4a46c70!important;border-radius:2px!important}.booking-success-icon{border:1px solid var(--booking-gold);width:52px;height:52px;color:var(--booking-gold);border-radius:50%;place-items:center;margin-bottom:10px;display:grid}.booking-confirm-note{color:var(--booking-muted);font-size:15px;line-height:1.8}@media (max-width:1000px){.booking-main{padding:24px}.booking-heading{display:block}.booking-intro{max-width:580px;margin-top:14px}.booking-layout{grid-template-columns:335px minmax(0,1fr)}.booking-date-panel,.booking-times-panel{padding:23px}.booking-time-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-month{--cell-size:2.35rem}}@media (max-width:720px){.booking-main{padding:22px 18px 40px}.booking-heading{margin:22px 0}.booking-heading h1{font-size:42px}.booking-intro{font-size:14px;line-height:1.7}.booking-host{flex-wrap:wrap}.booking-host .booking-host-meta{gap:22px;width:100%;margin-top:3px;margin-left:0}.booking-layout{grid-template-columns:1fr}.booking-date-panel{border-right:none;border-bottom:1px solid var(--booking-line);padding:24px}.booking-month{--cell-size:2.8rem;max-width:360px;margin:22px auto 0}.booking-hours{display:none}.booking-zone{justify-content:center;margin-top:20px;font-size:13px}.booking-times-panel{padding:24px}.booking-date-title h2{font-size:29px}.booking-time-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.booking-time{justify-content:center!important;padding:0 10px!important;font-size:14px!important}.booking-time svg{display:none}.booking-dialog{padding:24px!important}.booking-dialog-title{font-size:34px!important}.booking-field-pair{grid-template-columns:1fr;gap:14px}}@media (max-width:360px){.booking-date-panel,.booking-times-panel{padding:18px}.booking-month{--cell-size:2.15rem}.booking-time-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.booking-month .rdp-weekdays,.booking-month .rdp-week{grid-template-columns:repeat(7,minmax(0,1fr));width:100%;display:grid}.booking-month .rdp-week>td{aspect-ratio:1;width:100%;min-width:0;height:auto}.booking-month .rdp-day_button{width:100%;min-width:0;height:100%}.booking-screen{flex-direction:column;min-height:100dvh;display:flex}.booking-main{flex-direction:column;flex:1;width:100%;margin:0 auto;padding-bottom:clamp(40px,6dvh,72px);display:flex}.booking-back{align-self:flex-start}.booking-layout{flex:1}@media (min-width:721px){.booking-main{padding-top:16px}.booking-heading{margin:14px 0}.booking-heading h1{margin-top:6px;font-size:clamp(40px,3.6vw,52px)}.booking-host{margin-bottom:16px}.booking-monogram{width:38px;height:38px}.booking-layout{grid-template-columns:320px minmax(0,1fr)}.booking-date-panel,.booking-times-panel{padding:20px}.booking-month{--cell-size:2rem;margin-top:12px}.booking-month .rdp-month{gap:8px}.booking-month .rdp-week{margin-top:2px}.booking-zone{margin-top:12px}.booking-hours{margin-top:12px;padding-top:12px}.booking-hours h3{margin-bottom:5px}.booking-date-title{margin-top:14px}.booking-duration{margin-top:8px}.booking-filters{margin:14px 0 12px}.booking-time-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.booking-time{min-height:42px;font-size:14px!important}.booking-footnote{margin-top:12px}}@media (max-width:720px){.booking-dialog{max-height:calc(100dvh - 24px);gap:8px!important;padding:16px!important}.booking-dialog-title{font-size:28px!important}.booking-dialog-description{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.booking-dialog .booking-step{padding-right:24px;font-size:13px}.booking-selection{gap:8px;margin:2px 0;padding:10px}.booking-selection strong{font-size:14px}.booking-selection span{margin-top:3px;font-size:12px}.booking-form,.booking-field-pair{gap:8px}.booking-form label{font-size:13px;line-height:1.4}.booking-form input,.booking-form select,.booking-form textarea{min-height:40px;margin-top:4px;padding:8px 10px}.booking-form textarea{resize:none;height:48px}.booking-primary{min-height:44px!important;padding:10px!important;font-size:13px!important}}
