.calendar-reserve{width:340px;padding:18px;transform:translateY(-44%)}
.calendar-reserve h2{font-size:34px;line-height:.94;margin:8px 0 16px}
.calendar-reserve h2 br{display:none}.calendar-reserve h2 em:before{content:' '}
.calendar-reserve .calendar-outline{padding:12px}
.calendar-reserve .calendar-header h3{font-size:23px;letter-spacing:0}
.calendar-reserve .calendar-header>div{gap:4px}
.calendar-reserve .calendar-header button{width:32px;height:34px}
.calendar-reserve .availability-note{font-size:12px;color:#c4c4bc;margin:8px 0 4px;line-height:1.4}
.calendar-reserve .weekdays span{font-size:12px;padding:5px 0}
.calendar-reserve .calendar-days{gap:2px}
.calendar-reserve .calendar-days button{min-height:34px;aspect-ratio:1.05;padding:0;font-size:14px}
.calendar-days button{position:relative;border:1px solid #343431}
.calendar-days button:disabled{color:#72726c;text-decoration:line-through;border-color:transparent;opacity:.7}
.calendar-days button[aria-current=date]{border-color:#dedbd3}
.calendar-days button[aria-pressed=true]{border:2px solid #ffd2ac;font-weight:700}
.date-check{position:absolute;right:2px;top:-1px;font-size:10px;line-height:1.2}
.selected-date{min-height:42px;line-height:1.4}
.calendar-reserve .selected-date{font-size:12px;color:#f4f2ee;margin-top:10px;padding-top:8px;min-height:42px}
.calendar-reserve .primary{width:100%;min-height:48px;margin-top:12px}
.calendar-reserve .calendar-caption{font-size:11px;line-height:1.4;margin-top:9px}
#hero-date-error{color:#ffd2ac;font-size:13px;line-height:1.4;margin-top:8px}
#hero-date-error:empty{display:none}
.hero-date-toggle{display:none}
@media(min-width:651px) and (max-height:800px){.calendar-reserve{width:325px;padding:12px;top:50%;transform:translateY(-42%);max-height:calc(100svh - 135px);overflow-y:auto}.calendar-reserve h2{font-size:28px;margin:5px 0 10px}.calendar-reserve .calendar-days button{min-height:30px;aspect-ratio:1.2}.calendar-reserve .selected-date{min-height:0}.calendar-reserve .calendar-caption{font-size:10px}}
@media(max-width:650px){
 .calendar-reserve{display:block;left:4%;right:4%;bottom:74px;top:auto;width:auto;padding:14px;transform:none;max-height:calc(100svh - 190px);overflow-y:auto;background:rgba(8,8,8,.94)}
 .calendar-reserve .eyebrow{font-size:11px}.calendar-reserve h2{font-size:28px;margin:7px 0 12px}
 .hero-date-toggle{display:flex;width:100%;align-items:center;justify-content:space-between;gap:12px;border:1px solid #5b5b54;background:#181816;color:#f4f2ee;min-height:46px;text-align:left;padding:10px 12px;font-size:14px;line-height:1.35}
 .hero-date-toggle span{color:var(--accent)}
 .calendar-reserve .calendar-outline{padding:10px 0 0;border:0;background:none}
 .calendar-reserve .calendar-header h3{font-size:25px}.calendar-reserve .calendar-header button{width:44px;height:44px}
 .calendar-reserve .calendar-days button{min-height:44px;aspect-ratio:1.1;font-size:16px}
 .calendar-reserve .primary{font-size:14px;min-height:46px;margin-top:12px;padding:12px 16px}
 .calendar-reserve .selected-date{min-height:0;font-size:13px}.calendar-reserve .calendar-caption{font-size:11px}
}
@media(max-width:350px){.calendar-reserve{left:3%;right:3%;padding:10px}.calendar-reserve .calendar-days{gap:1px}.calendar-reserve .calendar-days button{min-height:40px}.calendar-reserve h2{font-size:25px}}
