/* ── Blocked day highlights in GF datepicker ── */
.gfbd-in-range a,
.gfbd-in-range span {
    background: rgba(209, 137, 65, 0.20) !important;
    color: inherit !important;
}
.gfbd-range-start a,
.gfbd-range-start span,
.gfbd-range-end a,
.gfbd-range-end span {
    background: rgba(209, 137, 65, 0.40) !important;
    font-weight: 700 !important;
}

/* ── Overlay ── */
.gfbd-overlay {
    display:         none;
    position:        fixed;
    inset:           0;
    background:      rgba(0, 0, 0, 0.75);
    z-index:         999998;
    align-items:     center;
    justify-content: center;
    padding:         20px;
    backdrop-filter: blur(2px);
}
.gfbd-overlay.is-open {
    display: flex;
}

/* ── Popup box ── */
.gfbd-popup {
    background:    #000;
    border:        1px solid #D18941;
    max-width:     420px;
    width:         100%;
    padding:       32px 28px 28px;
    text-align:    center;
    animation:     gfbd-in .22s cubic-bezier(.22, 1, .36, 1);
}
@keyframes gfbd-in {
    from { opacity: 0; transform: translateY(12px) scale(.97); }
    to   { opacity: 1; transform: none; }
}

.gfbd-popup__icon {
    font-size:     32px;
    display:       block;
    margin-bottom: 14px;
}
.gfbd-popup__title {
    margin:      0 0 10px;
    font-size:   15px;
    font-weight: 600;
    color:       #D18941;
}
.gfbd-popup__period {
    display:        inline-block;
    margin-bottom:  16px;
    font-size:      11px;
    font-weight:    600;
    color:          #D18941;
    border:         1px solid rgba(209, 137, 65, 0.45);
    padding:        3px 10px;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.gfbd-popup__msg {
    margin:      0 auto 26px;
    max-width:   340px;
    font-size:   14px;
    color:       rgba(255, 255, 255, 0.85);
    line-height: 1.7;
}
.gfbd-popup__close {
    display:         inline-flex;
    align-items:     center;
    justify-content: center;
    background:      #D18941;
    color:           #fff;
    border:          none;
    padding:         10px 28px;
    font-size:       14px;
    font-weight:     600;
    cursor:          pointer;
    min-width:       140px;
    transition:      background .2s;
}
.gfbd-popup__close:hover { background: #93612F; }

/* ── Weekend highlight ── */
.gfbd-weekend a,
.gfbd-weekend span {
    background: rgba(150, 150, 150, 0.20) !important;
    color: rgba(0, 0, 0, 0.35) !important;
}

/* Truly unavailable dates */
#ui-datepicker-div td.gfbd-blocked {
    cursor: not-allowed !important;
}
#ui-datepicker-div td.gfbd-blocked span,
#ui-datepicker-div td.gfbd-blocked a {
    opacity: .45;
    text-decoration: line-through;
    cursor: not-allowed !important;
}
#ui-datepicker-div td.gfbd-period-blocked span,
#ui-datepicker-div td.gfbd-period-blocked a {
    background: rgba(209, 137, 65, 0.28) !important;
    color: inherit !important;
}

/* GF 3 / jQuery UI disabled blocked dates: clear orange visual state. */
#ui-datepicker-div td.gfbd-period-blocked,
.ui-datepicker td.gfbd-period-blocked {
    background: rgba(209, 137, 65, 0.18) !important;
}
#ui-datepicker-div td.gfbd-period-blocked > span,
#ui-datepicker-div td.gfbd-period-blocked > a,
.ui-datepicker td.gfbd-period-blocked > span,
.ui-datepicker td.gfbd-period-blocked > a {
    background: #D18941 !important;
    border-color: #D18941 !important;
    color: #fff !important;
    opacity: 1 !important;
    text-decoration: none !important;
    font-weight: 700 !important;
    cursor: not-allowed !important;
}
#ui-datepicker-div td.gfbd-blocked,
#ui-datepicker-div td.gfbd-blocked *,
.ui-datepicker td.gfbd-blocked,
.ui-datepicker td.gfbd-blocked * {
    cursor: not-allowed !important;
}


/* ── Gravity Forms 3 accessible calendar: blocked dates ── */
.gform-datepicker-calendar td.day.gfbd-period-blocked,
.gform-datepicker-calendar td.day.gfbd-period-blocked.dayToday,
.gform-datepicker-calendar td.day.gfbd-period-blocked.dayMarked,
.gform-datepicker-calendar td.day.gfbd-period-blocked.selected {
    background: #F5C84C !important;
    color: #17120A !important;
    opacity: 1 !important;
    cursor: pointer !important;
    font-weight: 700 !important;
    text-decoration: none !important;
}

.gform-datepicker-calendar td.day.gfbd-period-blocked > span,
.gform-datepicker-calendar td.day.gfbd-period-blocked.dayToday > span,
.gform-datepicker-calendar td.day.gfbd-period-blocked.dayMarked > span,
.gform-datepicker-calendar td.day.gfbd-period-blocked.selected > span {
    background: transparent !important;
    color: #17120A !important;
    opacity: 1 !important;
    font-weight: 700 !important;
    text-decoration: none !important;
}

.gform-datepicker-calendar td.day.gfbd-period-blocked:hover {
    background: #E2B331 !important;
    color: #17120A !important;
}

.gform-datepicker-calendar td.day.gfbd-weekend:not(.gfbd-period-blocked) {
    opacity: .45 !important;
    cursor: pointer !important;
}
