.prc-photographer-results-filters {
    margin-bottom: 1em;
    padding-top: 1em;
    padding-bottom: 1em;
    border-bottom: 2px solid #888;
}

.prc-photographer-results-filters label {
    font-weight: 600;
}

/* Add fixed gradient at the bottom of photographers */
#gform_page_11_2:has(#field_11_349[data-conditional-logic="visible"]) .gform_page_footer:not(.at-bottom):before {
    display: block;
    width: 100%;
    content: " ";
    height: 100px;
    position: absolute;
    background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0), rgba(255, 255, 255, 1));
    top: -100px;
    pointer-events: none;
}

/* Remove the line from GF headings */
.gsection_title {
    border-top: none !important;
}

.gotrgf_summary_wrapper {
    margin-top: 64px;
}

.schedule-slots {
    display: flex;
    flex-wrap: wrap;
    column-gap: 1em;
    row-gap: 1em;
}

.schedule-a-time h4 {
    margin-top: 1em;
    margin-bottom: 0.25em;
}

.prc-timeslot label {
    width: 96px;
    text-align: center;
}

.schedule-slots-cancel-flex {
    display: flex;
    justify-content: flex-end;
    padding-top: 1em;
}

@media all and (max-width: 768px) {
    body.page-id-181 #left-sidebar {
        display: none !important;
    }

    .bluebox {
        margin-top: 0 !important;
    }

    /* Make Floor Plans and Tours a column */
    #input_11_321 {
        flex-direction: column;
    }

    #gform_page_11_1 .gf_inline #input_11_321 > .gchoice {
        width: 100% !important;
    }

    #gform_page_11_1 .gchoice label {
        font-size: 12px !important;
    }
}


/* Schedule a Day calendar */
.prc-day-calendar {
    border: none;
}

.prc-day-calendar th {
    width: 32px;
    text-align: center;
    border: none;
}

.prc-day-calendar td {
    text-align: center;
    font-size: 1.6rem;
    overflow: hidden;
    border: none;
    cursor: default;
}

.prc-day-calendar td span {
    display: inline-block;
    padding-top: 4px;
    width: 32px;
    height: 32px;
    border-radius: 50%;
}

.prc-day-calendar label {
    width: 48px;
    height: 48px;
    display: flex;
    justify-content: center;  /* Horizontally centers the content */
    align-items: center;      /* Vertically centers the content */
    margin: 0 auto;
    cursor: default !important;
    transition: background-color 0.1s ease-in-out;
}

.prc-day-calendar label.is-past {
    color: #888;
    background-color: transparent;
}

.prc-day-calendar label.is-available {
    color: var(--accent);
    background-color: var(--base);
    border-radius: 50%;
    cursor: pointer !important;
}

.prc-day-calendar label.is-available:hover {
    border: 2px solid var(--accent);
}

.prc-day-calendar label.is-available:has(input[type="radio"]:checked) {
    color: #fff;
    background-color: var(--accent);
}

.prc-day-calendar label.is-available input[type="radio"] {
    pointer-events: none;
    position: absolute;
    left: -9999px;
    top: -9999px;
    visibility: hidden;
}

.prc-day-calendar-wrap .calendar-label {
    font-size: 1.6rem !important;
    font-weight: 500;
}

.prc-day-calendar-wrap .calendar-label.today {
    color: var(--accent);
}

.schedule-a-time {
    cursor: default;
}

@media all and (max-width: 820px) {
    #schedule-a-day-calendar td {
        padding: 0 !important;
    }

    .prc-day-calendar td label {
        margin-bottom: 0.5em !important;
        font-size: 1rem !important;
    }

    .prc-day-calendar label {
        width: 32px !important;
        height: 32px !important;
    }
}