.isotope-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: -10px;
    font-family: futura-pt, sans-serif;
}

.isotope-item {
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
    margin: 10px;
    overflow: hidden;
    border-radius: 5px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    aspect-ratio: 1/1; /* Maintain aspect ratio */
}

.card-link {
    display: flex;
    flex: 1;
    flex-direction: column;
    justify-content: flex-end;
    text-decoration: none;
    color: inherit;
}

/*disable hover underlines on text*/
.isotope-item a, .isotope-item p, .isotope-item h3 {
    text-decoration: none;
}

.card-content {
    color: #fff;
    background: -moz-linear-gradient(0deg, rgba(215, 94, 150, 0.86) 0%, rgba(0, 212, 255, 0) 100%);
    background: -webkit-linear-gradient(0deg, rgba(215, 94, 150, 0.86) 0%, rgba(0, 212, 255, 0) 100%);
    background: linear-gradient(0deg, rgba(215, 94, 150, 0.86) 0%, rgba(0, 212, 255, 0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#e200ff", endColorstr="#00d4ff", GradientType=1); /* IE6-9 fallback on horizontal gradient */
}

.title-bar {
    background-color: #6FA3AFD9;
    padding: 10px;
    margin-right: 20px;
    color: white;
    margin-bottom: 5px;
}

.title-bar h3 {
    margin: 0;
    font-size: 22px; /* Increased font size */
    color: white;
}

.details {
    padding: 0 10px 10px;
}

.details p {
    margin: 2px 0;
    font-size: 22px; /* Increased font size */
    line-height: 26px;
    color: white;
}

.details p:first-child {
    text-transform: uppercase;
}

/* Responsive adjustments */
@media (min-width: 3840px) {
    /* 4K and above */
    .isotope-item {
        width: calc(14.285% - 20px); /* 7 items per row */
        height: calc(14.285vw - 20px);
    }
}

@media (max-width: 3840px) and (min-width: 1441px) {
    /* Between 1441px and 3840px */
    .isotope-item {
        width: calc(20% - 20px); /* 5 items per row */
        height: calc(20vw - 20px);
    }
}

@media (max-width: 1440px) and (min-width: 1025px) {
    /* Between 1025px and 1440px */
    .isotope-item {
        width: calc(25% - 20px); /* 4 items per row */
        height: calc(25vw - 20px);
    }
}

@media (max-width: 1024px) and (min-width: 769px) {
    /* Between 769px and 1024px */
    .isotope-item {
        width: calc(33.333% - 20px); /* 3 items per row */
        height: calc(33.333vw - 20px);
    }
}

@media (max-width: 768px) and (min-width: 451px) {
    /* Between 426px and 768px */
    .isotope-item {
        width: calc(50% - 20px); /* 2 items per row */
        height: calc(50vw - 20px);
    }
}

@media (max-width: 450px) {
    /* 450px and below */
    .isotope-item {
        width: calc(100% - 20px); /* 1 item per row */
        height: calc(100vw - 20px);
    }
}

.isotope-controls {
    margin-bottom: 20px;
    padding: 20px;
    background-color: #394456; /* light grey background */
    border: 1px solid #2d3544; /* light grey border */
    border-radius: 5px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
}

.isotope-category-buttons {
    display: flex;
    width: 100%;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
}

.isotope-category-buttons button {
    padding: 8px 12px;
    border: 1px solid #ced4da;
    border-radius: 4px;
    background-color: #f8f9fa;
    cursor: pointer;
}

.isotope-date-filter, .isotope-search-input {
    margin-left: 0 !important;
}

.isotope-category-buttons button.active {
    background-color: #394456; /* Bootstrap primary color */
    color: white;
}

input[type="date"], input[type="text"] {
    padding: 8px 12px;
    border: 1px solid #ced4da;
    border-radius: 4px;
    width: auto; /* Adjust based on your layout */
    display: inline-block;
}

.isotope-search-button {
    padding: 10px 15px;
    background-color: #394456; /* Bootstrap primary color */
    color: white;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    margin-left: 10px;
}

.isotope-search-button:hover {
    background-color: #0056b3;
}

/* Adjusts the spacing around elements */
select, input, .isotope-search-button {
    margin: 5px;
}

.isotope-clear-search {
    cursor: pointer;
    color: white;
    text-decoration: none;
}

.isotope-clear-search:hover {
    text-decoration: underline;
    color: rgb(215, 94, 150);
}

.isotope-category-buttons .menu-item {
    padding: 8px 12px;
    border: none;
    background: none;
    cursor: pointer;
    text-decoration: none;
    color: white;
    transition: color 0.3s, background-color 0.3s;
}

.isotope-category-buttons .menu-item:hover {
    color: rgb(215, 94, 150); /* Pink color on hover */
}

.isotope-category-buttons .menu-item.active {
    color: white;
    background-color: rgb(215, 94, 150); /* Stay pink when active */
}

.ui-datepicker {
    font-size: 22px;
    background-color: #394456;
    border: 0;
}

.ui-datepicker-header {
    background-color: #394456;
    border: 0;
    color: white;
}

/* invert icon color */
.ui-datepicker-prev, .ui-datepicker-next {
    filter: invert(1);
}

.ui-datepicker th {
    background-color: #394456;
    color: white;
}

.ui-datepicker td span, .ui-datepicker td a {
    text-align: center;
}

.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default, .ui-button, html .ui-button.ui-state-disabled:hover, html .ui-button.ui-state-disabled:active {
    background-color: #394456;
    color: white;
}

.overlay-bubble {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    pointer-events: none; /* Ensure it's not interactive */
}


.isotope-category-filter-dropdown {
    display: none;
    padding: 8px 12px;
    font-family: inherit;
    font-weight: inherit;
    text-align: inherit;
    max-width: 100%;
    font-size: var(--wpex-input-font-size);
    line-height: var(--wpex-input-line-height);
    transition: var(--wpex-input-transition);
    border-radius: var(--wpex-input-border-radius);
    color: var(--wpex-input-color);
    background: var(--wpex-input-bg);
    box-shadow: var(--wpex-input-box-shadow, none);
    border: var(--wpex-input-border-width) var(--wpex-input-border-style) var(--wpex-input-border-color);
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.isotope-search-heading {
    display: none;
    color: white;
}

/* mobile breakpoint */
@media (max-width: 768px) {
    .isotope-category-filter-dropdown {
        display: inline-block;
    }

    .isotope-search-heading {
        display: block;
    }

    .isotope-search,
    .isotope-category-filter-dropdown,
    .isotope-search,
    .isotope-date-filter {
        margin: 5px !important;
        width: 100% !important;
    }

    .isotope-search input,
    .isotope-date-filter input {
        width: 100% !important;
        margin: 0 !important;
    }

    .isotope-clear-search {
        margin-top: 10px;
    }

    .isotope-category-buttons {
        display: none;
    }
}