.reservation-steps{color:var(--muted);grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:14px;margin:0 0 30px;padding:0;font-size:12px;list-style:none;display:grid}.reservation-steps li{min-width:0;line-height:1.5}.reservation-step-button,.reservation-step-item{border:1px solid #0000;border-radius:5px;align-items:center;gap:9px;min-width:0;min-height:44px;padding:6px;display:flex}.reservation-step-button{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0}.reservation-step-button:not(:disabled):hover{background:#edf1e5;border-color:#cbd2c2}.reservation-step-button:focus-visible{outline:2px solid var(--forest);outline-offset:3px}.reservation-step-button:disabled{cursor:not-allowed;opacity:.6}.reservation-step-number{border:1px solid #cbd2c2;border-radius:50%;flex-shrink:0;place-items:center;width:26px;height:26px;font-size:11px;display:grid}.reservation-steps li[aria-current=step]{color:var(--forest);font-weight:600}.reservation-steps li[aria-current=step] .reservation-step-number{background:var(--forest);color:#fff;border-color:var(--forest)}.reservation-day-options{scroll-margin-top:110px}.reservation-intro{margin-bottom:26px}.reservation-intro h2{font:400 32px/1.2 var(--serif);letter-spacing:-.035em;margin:0 0 10px}.reservation-intro>p{color:var(--muted);font-size:13px;line-height:1.7}.reservation-details-step{border-top:1px solid var(--line,#dce0d4);margin-top:30px;padding-top:28px;scroll-margin-top:110px}.reservation-details-step[hidden]{display:none}.reservation-details-step>h2{font:400 32px/1.2 var(--serif);letter-spacing:-.035em;margin:0 0 12px;scroll-margin-top:110px}.reservation-details-step>h2:focus-visible{outline:2px solid var(--forest);outline-offset:5px;border-radius:2px}.reservation-details-step>p{color:var(--muted);margin:0 0 25px;font-size:13px;line-height:1.8}.reservation-details-fields{border:0;min-width:0;margin:0;padding:0}.reservation-deposit{background:var(--sand);border-radius:6px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;margin:26px 0 12px;padding:22px;display:grid}.reservation-deposit span{font-size:12px;font-weight:600;display:block}.reservation-deposit small{color:var(--muted);margin-top:5px;font-size:11px;line-height:1.7;display:block}.reservation-deposit strong{letter-spacing:-.035em;white-space:nowrap;font-size:28px}.reservation-deposit strong small{letter-spacing:.06em;text-align:right;font-size:10px}.reservation-deposit-balance{border-top:1px solid var(--line,#dce0d4);grid-column:1/-1;min-width:0;padding-top:14px}.reservation-deposit-balance span{font-size:11px;font-weight:400;line-height:1.7}.reservation-deposit-balance b{white-space:nowrap;font-weight:600}.reservation-submit{justify-content:center;gap:12px;width:100%}.reservation-submit svg{width:16px;height:16px}.reservation-payment-note{color:var(--muted);background:#f3f5ed;border-radius:5px;align-items:flex-start;gap:10px;margin:24px 0;padding:16px 18px;font-size:12px;line-height:1.8;display:flex}.reservation-payment-note svg{flex-shrink:0;width:19px;height:19px;margin-top:2px}.reservation-payment-note a{text-underline-offset:3px;text-decoration:underline}.reservation-card-step{border-top:1px solid var(--line,#dce0d4);margin-top:28px;padding-top:26px}.reservation-card-heading{align-items:center;gap:12px;display:flex}.reservation-card-heading>svg{width:25px;height:25px;color:var(--forest);flex-shrink:0}.reservation-card-heading .eyebrow{margin:0 0 6px;font-size:9px}.reservation-card-heading h3{font:400 26px/1.2 var(--serif);letter-spacing:-.025em;margin:0}.reservation-card-security{color:var(--muted);justify-content:center;align-items:center;gap:7px;margin:14px 0 0;font-size:11px;line-height:1.6;display:flex}.reservation-card-security svg{flex-shrink:0;width:13px;height:13px}.reservation-submit:disabled{cursor:not-allowed;opacity:.55}.reservation-review{background:var(--sand);border-radius:6px;margin-bottom:28px;padding:23px}.reservation-review h2{font:400 27px/1.2 var(--serif);letter-spacing:-.035em;margin:0 0 18px}.reservation-review dl{grid-template-columns:1fr 1fr;gap:16px;margin:0;display:grid}.reservation-review dt{color:var(--muted);margin-bottom:5px;font-size:10px}.reservation-review dd{overflow-wrap:anywhere;margin:0;font-size:13px}.reservation-review .form-note{margin-bottom:0}.reservation-payment-summary{margin:24px 0}.reservation-payment-summary .reservation-review{margin-bottom:20px}.reservation-payment-summary .reservation-deposit{margin-top:0}.reservation-payment{scroll-margin-top:100px}.reservation-payment-heading{align-items:flex-start;gap:14px;display:flex}.reservation-payment-heading>svg{width:23px;height:23px;color:var(--forest);flex-shrink:0;margin-top:3px}.reservation-payment-heading .eyebrow{margin:0 0 10px;font-size:9px}.reservation-payment-heading h2{font:400 29px/1.2 var(--serif);letter-spacing:-.035em;margin:0;scroll-margin-top:110px}.reservation-payment-heading h2:focus{outline:none}.reservation-payment-loading{text-align:center;color:var(--muted);background:#f6f7f2;border-radius:5px;padding:36px 20px;font-size:13px}.reservation-stripe{min-width:0;margin-top:22px}.reservation-form[aria-busy=true]{opacity:.8}@media (max-width:600px){.reservation-steps{gap:12px;font-size:11px}.reservation-step-button,.reservation-step-item{flex-direction:column;align-items:flex-start;gap:7px}.reservation-intro h2,.reservation-details-step>h2{font-size:29px}.reservation-deposit{gap:12px;padding:18px}.reservation-deposit strong{font-size:24px}.reservation-review{padding:19px}.reservation-review dl{grid-template-columns:1fr}.reservation-payment-heading h2{font-size:26px}}
