.vgl-booking-form{max-width:620px;margin:0 auto;font-family:inherit;color:#000;background:#fff;padding:1.5rem 1.75rem;border-radius:12px;border:1px solid #e5e5e5;}
.calendar-wrapper{margin-bottom:1rem;}
.flatpickr-calendar.inline,.flatpickr-innerContainer,.flatpickr-rContainer{width:100%!important;padding:0!important;box-sizing:border-box;}
.dayContainer{width:50%!important;display:grid!important;grid-template-columns:repeat(7,1fr);gap:6px;box-sizing:border-box;}
.flatpickr-day{width:100%!important;height:3rem!important;line-height:3rem!important;margin:0!important;max-width:none!important;}
.flatpickr-day.selected,.flatpickr-day.startRange,.flatpickr-day.endRange,.flatpickr-day:hover{background:#cda85f;border-color:#cda85f;color:#fff;}
.flatpickr-weekday{color:#000;font-weight:600;}
.selected-dates{margin:0.75rem 0 1.25rem;font-size:1rem;font-weight:500;}
.selected-dates .separator{margin:0 0.25rem;color:#cda85f;}
.guest-select{display:flex;gap:1rem;margin-bottom:1rem;}
.guest-select label{flex:1;font-size:1rem;color:#000;}
.guest-select select{width:100%;padding:0.6rem;border-radius:8px;background:#fff;color:#000;border:1px solid #ccc;}
.vgl-booking-form label{display:block;font-size:1rem;margin-bottom:0.25rem;font-weight:500;}
.vgl-booking-form input[type="text"],.vgl-booking-form input[type="email"],.vgl-booking-form input[type="tel"]{width:100%;padding:0.75rem;margin-bottom:1rem;border:1px solid #ccc;border-radius:8px;background:#fff;color:#000;}
.request-booking-btn{display:block;width:100%;padding:1rem;font-size:1.05rem;border:none;border-radius:8px;background:#000;color:#fff;cursor:pointer;transition:opacity 0.2s ease;}
.request-booking-btn:hover{opacity:0.9;}
/* === v1.9 fixes === */
@media (min-width: 768px){
  .flatpickr-calendar.inline .flatpickr-weekdays,
  .flatpickr-calendar.inline .dayContainer{
      width:50%!important;
  }
  .flatpickr-calendar.inline .flatpickr-weekdays{
      display:grid!important;
      grid-template-columns:repeat(7,1fr);
  }
}
@media (max-width: 767.98px){
  .flatpickr-calendar.inline .flatpickr-weekdays,
  .flatpickr-calendar.inline .dayContainer{
      width:100%!important;
  }
}
/* ensure full‑width CTA */
.request-booking-btn{
    width:100%!important;
}


/* === v1.10 Calendar two-month width fix === */
.flatpickr-calendar.inline .flatpickr-months,
.flatpickr-calendar.inline .flatpickr-innerContainer{
    display:flex;
}
/* Each month gets exactly 50% of the available width on tablet/desktop */
@media (min-width:768px){
    .flatpickr-calendar.inline .flatpickr-month{
        flex:1 1 50%;
        max-width:50%;
        width:50%;
        box-sizing:border-box;
    }
}
/* On mobile keep single month full width */
@media (max-width:767px){
    .flatpickr-calendar.inline .flatpickr-month{
        flex-basis:100%;
        max-width:100%;
    }
}

/* +++ v1.12: widen booking component by 10% +++ */
.vgl-booking-form{max-width:682px!important;}

/* +++ v1.16 – widen calendar 10% on mobile (<=768px) +++ */
@media (max-width: 768px){
    .vgl-booking-form{
        width:110vw !important;    /* 10% extra width */
        margin-left:-5vw !important; /* shift left by half of extra */
    }
}
