/* Booking Hour Plugin Form */
.elementor-widget-Appointment.Hour.Booking #fbuilder {
    width: 100% !important;
}

.elementor-widget-Appointment.Hour.Booking #fbuilder .pb0.pbreak {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    width: 100% !important;
}

/* 2-column layout */
.elementor-widget-Appointment.Hour.Booking #field_1-0,
.elementor-widget-Appointment.Hour.Booking #field_1-1 {
    width: 49% !important;
}

.elementor-widget-Appointment.Hour.Booking #field_1-2,
.elementor-widget-Appointment.Hour.Booking #field_1-5 {
    width: 100% !important;
}

/* Full-width fields */
.elementor-widget-Appointment.Hour.Booking #field_1-3 {
    width: 100% !important;
}



/* Force input width */
.elementor-widget-Appointment.Hour.Booking .small {
    width: 100% !important;
}

/* labels */
.elementor-widget-Appointment.Hour.Booking .fields>label,
.elementor-widget-Appointment.Hour.Booking .cff-checkbox-field label span {
    color: #ffffff;
    font-size: 14px;
    font-weight: 500;
    margin-bottom: 6px;
    display: block;
}

/* inputs */
.elementor-widget-Appointment.Hour.Booking input.field:not([type="checkbox"]),
.elementor-widget-Appointment.Hour.Booking input[type="text"],
.elementor-widget-Appointment.Hour.Booking input[type="email"] {
    width: 100% !important;
    height: 55px;
    padding: 0 15px !important;
    border-radius: 8px;
    border: none;
    background: #ffffff;
    font-size: 14px;
    color: #333;
}

#fbuilder .small {
    width: 100% !important
}

/* Placeholder */
.elementor-widget-Appointment.Hour.Booking input::placeholder {
    color: #aaa;
}

/* Focus */
.elementor-widget-Appointment.Hour.Booking input:focus {
    outline: none;
    background: #e1e1e1;
}

/* Select Field */
.elementor-widget-Appointment.Hour.Booking select.ahbfield_service {
    width: 100%;
    height: 55px;
    padding: 0 15px;
    border-radius: 8px;
    border: none;
    background: #ffffff;
    font-size: 14px;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L6 6L11 1' stroke='%23666' stroke-width='2'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 15px center;
    background-size: 12px;
}

/* Calendar */
.elementor-widget-Appointment.Hour.Booking .ui-datepicker {
    background: #ffffff;
    border-radius: 10px;
    padding: 10px;
    border: none;
}

.elementor-widget-Appointment.Hour.Booking .ui-datepicker td a {
    background: #f3f3f3;
    border-radius: 6px;
}

.elementor-widget-Appointment.Hour.Booking .ui-state-active {
    background: #954221 !important;
    color: #fff !important;
}

/* Time Slots */
.elementor-widget-Appointment.Hour.Booking .slotsCalendar .availableslot a {
    background: #ffffff;
    border-radius: 6px;
    padding: 6px 10px;
    border: 1px solid #ddd;
    font-size: 13px;
    transition: .3s;
}

.elementor-widget-Appointment.Hour.Booking .slotsCalendar .availableslot a:hover,
.elementor-widget-Appointment.Hour.Booking .slotsCalendar .choosen a {
    background: #954221;
    color: #ffffff;
    border-color: #954221;
}

/* Checkbox */
.elementor-widget-Appointment.Hour.Booking input[type="checkbox"] {
    accent-color: #954221;
}

/* Submit Button */
.elementor-widget-Appointment.Hour.Booking .pbSubmit,
.elementor-widget-Appointment.Hour.Booking #cp_subbtn_1 {
    width: 20%;
    height: 55px;
    border-radius: 8px;
    border: none;
    background: #262361 !important;
    color: #ffffff !important;
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    transition: .3s;
}

.elementor-widget-Appointment.Hour.Booking .pbSubmit:hover,
.elementor-widget-Appointment.Hour.Booking #cp_subbtn_1:hover {
    background: #954221 !important;
}

.ahb_m2 #fbuilder .ui-datepicker-inline {
    max-width: calc(100%) !important;
}

.ahb_m2 #fbuilder td:not(.ui-datepicker-unselectable) a.ui-state-default:hover {
    background: #954221 !important;
}

.ahb_m2 #fbuilder .slots div a {
    border: 1px solid #954221 !important;
}

.ahb_m2 #fbuilder .slots div a:hover {
    background: #954221 !important;
}

.ahb_m2 #fbuilder .slots div.currentSelection.htmlUsed a {
    background: #954221 !important;
}

.ui-datepicker {
    padding-bottom: 20px !important;
    background: #f8f8f8 !important;
}
@media (max-width: 991px) {

    /* booking hour form fileds */
    .elementor-widget-Appointment.Hour.Booking #field_1-0,
    .elementor-widget-Appointment.Hour.Booking #field_1-1 {
        width: 100% !important;
    }

    .elementor-widget-Appointment.Hour.Booking .pbSubmit,
    .elementor-widget-Appointment.Hour.Booking #cp_subbtn_1 {
        width: 50%;
    }
}