.booking-page{background:#f4f3ed}.booking-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;max-width:1400px;margin:auto;padding:20px 5%;display:flex}.back-site{font-size:13px}.booking-shell{max-width:800px;margin:auto;padding:56px 5% 80px}.booking-shell h1{letter-spacing:-1.8px;margin:16px 0 12px;font-size:clamp(34px,4.2vw,52px);line-height:1.1}.booking-shell>section>p.muted{margin-bottom:28px}.booking-notice{background:#e8ebdb;border-left:3px solid #89965f;margin-bottom:28px;padding:14px 18px;font-size:13px;line-height:1.6}.duration-field{border:0;margin:0 0 28px;padding:0}.duration-field legend,.date-label{margin-bottom:12px;font-size:13px;font-weight:600;display:block}.duration-options{color:var(--muted);flex-wrap:wrap;gap:10px;font-size:13px;display:flex}.duration-options button{border:1px solid var(--line);background:#fff;border-radius:3px;padding:13px 18px;font-size:13px}.duration-options [aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}.calendar{border:1px solid var(--line);background:#fff;border-radius:5px;max-width:540px;margin:0 0 32px;padding:20px}.calendar-toolbar{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.calendar-toolbar h3{font-size:18px}.calendar-toolbar button{background:var(--ink);width:40px;height:40px;color:var(--paper);border-radius:3px}.calendar-toolbar button:disabled{opacity:.3;cursor:default}.calendar-weekdays,.calendar-days{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.calendar-weekdays{color:var(--muted);text-align:center;margin-bottom:12px;font-size:11px}.calendar-days button{background:0 0;border:1px solid #0000;border-radius:3px;min-height:48px;padding-bottom:13px;font-size:14px;position:relative}.calendar-days button:hover:not(:disabled){background:#e9ebe2}.calendar-days button:disabled{color:#b9bcb1;cursor:default}.calendar-days button[aria-current=date]{border-color:var(--olive)}.calendar-days button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.calendar-days button[aria-pressed=true]:hover{background:var(--ink)}.calendar-days button[data-availability]:after{content:"";border-radius:50%;width:6px;height:6px;position:absolute;bottom:7px;left:50%;transform:translate(-50%)}.calendar-days button[data-availability=available]:after,.calendar-legend .available{background:#31b967}.calendar-days button[data-availability=limited]:after,.calendar-legend .limited{background:#ee9b14}.calendar-days button[data-availability=fully-booked]:after,.calendar-legend .fully-booked{background:#eb4051}.calendar-days button[aria-pressed=true]:after{box-shadow:0 0 0 2px var(--ink),0 0 0 3px currentColor}.calendar-status-row{align-items:center;gap:8px;margin:18px 0 10px;display:flex}.calendar-status{min-height:18px;color:var(--muted);margin:0;font-size:11px;line-height:1.5}.spinner{border:2px solid var(--line);border-top-color:var(--ink);border-radius:50%;flex:none;width:13px;height:13px;animation:.7s linear infinite spin}.spinner[hidden]{display:none}@keyframes spin{to{transform:rotate(360deg)}}.calendar-legend{color:var(--muted);flex-wrap:wrap;gap:10px 18px;font-size:11px;display:flex}.calendar-legend span{align-items:center;gap:7px;display:flex}.calendar-legend i{border-radius:50%;width:7px;height:7px;display:inline-block}@media (width<=650px){.calendar{padding:14px}.calendar-weekdays,.calendar-days{gap:2px}.calendar-days button{min-height:42px}}.slot-heading h2{letter-spacing:normal;margin-bottom:16px;font-family:DM Sans,sans-serif;font-size:13px;font-weight:600;line-height:1}#slot-status{color:var(--muted);margin-bottom:16px;font-size:13px;line-height:1.7}.slot-grid{grid-template-columns:repeat(4,1fr);gap:10px;margin:0 0 28px;padding:0;list-style:none;display:grid}.slot-chip{border:1px solid var(--line);text-align:center;background:#fff;border-radius:3px;width:100%;padding:13px 18px;font-size:13px}.slot-chip[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}@media (width<=650px){.slot-grid{grid-template-columns:repeat(3,1fr)}}.hold-button{justify-content:center;gap:12px;width:100%}.hold-button[hidden]{display:none}.hold-button:disabled{opacity:.4;cursor:default}.hold-error{color:#c0392b;margin-top:14px;font-size:13px;line-height:1.6}.hold-result{background:#e8ebdb;border-left:3px solid #89965f;margin-top:8px;padding:24px 26px}.hold-result h2{letter-spacing:normal;margin-bottom:16px;font-size:20px}.hold-result dl{gap:10px;margin:0 0 16px;display:grid}.hold-result dl>div{justify-content:space-between;font-size:13px;display:flex}.hold-result dt{color:var(--muted)}.hold-result dd{margin:0;font-weight:600}.hold-countdown{margin-bottom:14px;font-size:13px;font-weight:600}.hold-countdown.expiring{color:#c0392b}.hold-result .muted{margin-bottom:0}.cancel-hold{margin:0 0 22px;display:block}.cancel-hold:disabled{opacity:.45;cursor:default}.extras-field{border:0;margin:0 0 20px;padding:0}.extras-field legend{margin-bottom:12px;font-size:13px;font-weight:600}.extras-field .optional{color:var(--muted);font-weight:400}.extras-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.extra-option{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:3px;align-items:flex-start;gap:12px;padding:12px 14px;font-size:13px;display:flex}.extra-option:has(input:disabled){opacity:.6;cursor:default}.extra-option input{flex:none;margin-top:2px}.extra-option-body{flex:auto}.extra-option-title{justify-content:space-between;gap:12px;font-weight:600;display:flex}.extra-option-description{color:var(--muted);margin-top:3px;line-height:1.5}.discount-field{border:0;margin:0 0 20px;padding:0}.discount-field legend{margin-bottom:12px;font-size:13px;font-weight:600}.discount-field .optional{color:var(--muted);font-weight:400}.discount-form{gap:10px;display:flex}.discount-form[hidden]{display:none}.discount-form input{border:1px solid var(--line);background:#fff;border-radius:3px;flex:auto;min-width:0;padding:13px 14px;font-size:13px}.discount-form button{background:var(--ink);color:var(--paper);white-space:nowrap;border-radius:3px;padding:13px 18px;font-size:13px}.discount-form button:disabled{opacity:.4;cursor:default}.discount-applied{align-items:center;gap:10px;margin:0;font-size:13px;display:flex}.discount-applied[hidden]{display:none}.link-button{color:var(--muted);background:0 0;padding:0;font-size:13px;text-decoration:underline}.visually-hidden{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.details-field{border:0;margin:0 0 20px;padding:0}.details-field legend{margin-bottom:12px;font-size:13px;font-weight:600}.detail-subheading{margin:20px 0 12px;font-size:13px;font-weight:600}.detail-row{gap:14px;display:flex}.detail-row .detail-group{flex:1 1 0}.detail-group{margin-bottom:14px}.detail-group label{color:var(--muted);margin-bottom:6px;font-size:12px;display:block}.detail-group .optional{font-weight:400}.detail-group input,.detail-group select,.detail-group textarea{border:1px solid var(--line);background:#fff;border-radius:3px;width:100%;padding:12px 14px;font-size:13px}.detail-group textarea{resize:vertical;min-height:70px}.field-error{color:#c0392b;margin:6px 0 0;font-size:12px;line-height:1.5}.checkout-questions{gap:14px;margin:0;padding:0;list-style:none;display:grid}#payment-element{margin-bottom:16px}.payment-recover{margin-top:14px;display:block}.payment-recover[hidden]{display:none}.payment-recover:disabled{opacity:.45;cursor:default}@media (width<=650px){.detail-row{flex-direction:column;gap:0}}
