/* Ensure the search-filters container is a flexbox */
.search-filters {
    display: flex; /* Lay out elements in a row */
    gap: 15px; /* Space between elements */
    align-items: center; /* Vertically align items */
    justify-content: flex-start; /* Align items to the left */
    flex-wrap: wrap; /* Wrap to the next row if needed */
    margin-bottom: 20px; /* Add some spacing below the form */
}

/* Set appropriate widths for the input and dropdowns */
.search-filters input[type="text"] {
    flex: 2; /* Make the search input take up more space */
    padding: 10px 15px;
    font-size: 14px;
    border: 1px solid #D5D5D5;
    border-radius: 4px;
    box-sizing: border-box;
    min-width: 200px; /* Prevent it from shrinking too much */
    font-family: Helvetica;
    color: #0D1E3A;
}

input#search-keyword {
    background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 24 24'%3E%3Ccircle cx='11' cy='11' r='7' stroke='%23000' stroke-width='2'/%3E%3Cline x1='17' y1='17' x2='22' y2='22' stroke='%23000' stroke-width='2'/%3E%3C/svg%3E");
    background-size: 16px 16px; /* Adjust size */
    background-repeat: no-repeat;
    background-position: 22px center; /* Adjust alignment */
    background-color: #FAFAFA;
    padding-left: 45px; /* Space for the icon */
    border: 1px solid var(--Light-UI, #D5D5D5);
    height: 48px;
    min-width: 306px;
    border-radius: 2px;
    font-size: 14px;
    font-family: Helvetica;
    color:#0D1E3A;
}

input#search-keyword::placeholder {
    font-size: 14px;
    font-family: Helvetica;
    color:#0D1E3A;
}


@media (max-width: 1024px) {
    .search-filters {
        display: flex;
        flex-wrap: wrap; /* Ensure that items can wrap on smaller screens */
        gap: 10px; /* Adjust spacing for vertical layout */
    }

    .search-filters input[type="text"],
    .search-filters select {
        flex: 1 1 100%; /* Take up full width */
    }

    input#search-keyword,
    .search-filters select {
        max-width: 200px !important; /* Force the max-width */
    }
}

@media (max-width: 767px) {


    input#search-keyword,
    .search-filters select,
    .custom-dropdown-header,
    .custom-dropdown-item,
    .custom-dropdown-list,
    .custom-dropdown.active,
    .custom-dropdown {
        min-width: 100% !important; /* Force the max-width */
    }
}

#course-search-results {
  display: flex;
}

/* Style the dropdowns */
.search-filters select, select#search-area {
    flex: 1; /* All dropdowns share equal width */
    padding: 10px 15px;
    -webkit-appearance: none !important;
    -moz-appearance: none;    /* For Firefox */
    font-size: 14px;
    border: 1px solid #D5D5D5;
    border-radius: 2px;
    background-color: #FAFAFA;
    min-width: 150px; /* Set a minimum width */
    font-family: Helvetica;
    color: #0D1E3A;
    height: 48px;
}

.search-filters select:hover, select#search-area:hover {
    transition: box-shadow 0.3s ease;
    cursor: pointer;
    border: 1px solid var(--Light-UI, #D5D5D5);
    background: #FFFFFF;
    box-shadow: 0px 4px 20px 0px #0D1E3A1A;
}

input#search-keyword:focus,
input#search-keyword:focus,
input#search-keyword:focus-visible,
select#search-area:focus,
select#search-area:focus-visible,
select#search-area:active,
select#search-type:focus,
select#search-type:focus-visible,
select#search-type:active,
select#search-format:focus,
select#search-format:focus-visible,
select#search-format:active  {
    outline: none;  /* Remove native outline (if you don't want it) */
    border: 1px solid var(--Main-Blue, #1C6EE8);
    appearance: none;
    -webkit-appearance: none !important;
    -moz-appearance: none;    /* For Firefox */
}


.search-filters select option {
    appearance: none;
    -webkit-appearance: none !important;
    -moz-appearance: none;    /* For Firefox */
    background: #FFF;
    border: 1px solid var(--Main-Blue, #1C6EE8);
    outline: none;
    cursor: pointer;
}

input#search-keyword:hover {
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1); /* Add shadow effect */
    transition: box-shadow 0.3s ease;
    cursor: pointer;
    background-color: #FFF;
}

::placeholder {
    color: #0D1E3A
}


/* .couses-list-section {
    padding: 
} */

/* Ensure border and padding are included in the element's total width */
.custom-dropdown, .custom-dropdown-header, .custom-dropdown-list {
    box-sizing: border-box; /* Include padding and borders in the width calculation */
}

/* Flex container for the search filters */
.search-filters {
    display: flex; /* Enable flexbox */
    flex-wrap: wrap; /* Allows items to wrap to the next line if space is not enough */
    justify-content: space-between; /* Distribute items evenly */
    align-items: center; /* Align items vertically centered */
}

/* Ensure search input and dropdowns are not too large */
.search-filters > * {
    flex: 1 1 200px; /* Flex-grow, flex-shrink, flex-basis */
    min-width: 180px; /* Ensure the items don’t shrink too much */
}

/* Style the search input */
#search-keyword {
    font-size: 14px;
    padding: 10px;
    border: 1px solid #ccc;
    border-radius: 2px;
    font-family: helvetica;
    width: 100%; /* Ensure it takes full available width */
}

/* Styling for the custom dropdown */
.custom-dropdown {
    position: relative;
    min-width: 306px;
    max-width: 306px;
    font-family: helvetica;
    font-size: 14px;
}

.custom-dropdown:hover {
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1); /* Add shadow effect */
    transition: box-shadow 0.3s ease;
    cursor: pointer;
    background-color: #FFF;
}


.custom-dropdown-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    border: 1px solid #D5D5D5;
    cursor: pointer;
    border-radius: 2px;

    width: 306px;
    height: 48px;
    padding-top: 12px;
    padding-right: 16px;
    padding-bottom: 12px;
    padding-left: 16px;
    gap: 10px;
    border-radius: 2px;
    border-width: 1px;

}

.custom-dropdown.active .custom-dropdown-header {
    color: #D5D5D5;
    background: #FFF;
}

/* Styling for the dropdown header */
.custom-dropdown.active {
    border: 1px solid var(--Main-Blue, #1C6EE8);
    
}

/* Arrow for the dropdown */
.arrow {
    border: solid #333;
    border-width: 0 2px 2px 0;
    display: inline-block;
    padding: 3px;
    transform: rotate(45deg);
}

/* List for the options */
.custom-dropdown-list {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background-color: #fff;
    border: 1px solid var(--Main-Blue, #1C6EE8);
    margin: 0;
    padding: 0;
    list-style: none;
    z-index: 999;
    border-radius: 2px;
}

/* Styling individual options */
.custom-dropdown-item {
    padding: 10px;
    cursor: pointer;
    font-size: 14px;
    background-color: white;
}

/* Hover effect for options */
.custom-dropdown-item:hover {
    background-color: #f1f1f1;
}

/* Show the dropdown when active */
.custom-dropdown.active .custom-dropdown-list {
    
    display: block;
}

.product-item.slick-slide {
  min-width: 406px; /* or whatever suits your design */
}

.slick-list {
    min-width: 100%; /* Ensure the track takes full width */
}
