/*-------------------------------------------------------------
- Global Accesibility
-------------------------------------------------------------*/
body a:focus-visible, 
body .vc_icon_element.vc_icon_element-outer .vc_icon_element-inner a.vc_icon_element-link:focus-visible,
body button:focus-visible {
    border: 2px solid;
}
.skip-link {
    position: absolute;
    left: -9999px;
    z-index: 999;
    padding: 1em;
    background-color: #fff;
    color: #000;
    text-decoration: none;
}
.skip-link:focus {
    left: 0;
}
body #content {
	& :is(.vc_do_btn a.vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern:focus-visible, .age-slider-wrapper button#reset_age_sliders:focus-visible, .gpa-slider-wrapper button#reset_gpa_slider, .reset-filter button.datatables_reset_button):focus-visible, .dt-paging nav[aria-label="pagination"] > button:focus-visible, .dt-length > select:focus-visible {
		outline: 2px solid #003887!important;
		border: 2px solid white;
		box-shadow: 
		    -2px 0 0 2px white, 
		    2px 0 0 2px white,  
		    0 -2px 0 2px white, 
		    0 2px 0 2px white;
	}
}
/*-------------------------------------------------------------
- Global
-------------------------------------------------------------*/
.scholarships_filter_group .noUi-connect {
    background: #007cba;
}

#scholarship-form,
#user-profile-form,
#new-user-form,
#sponsor-form{
    margin: 60px 0 40px 0;
}

/*-------------------------------------------------------------
- Autocomplete Search & Selection Display (Generic)
-------------------------------------------------------------*/
.search-wrapper {
    position: relative;
}

.search-wrapper input[type="text"] {
    width: 100%;
    padding: 8px;
    border: 1px solid #ddd;
    border-radius: 4px;
    font-size: 14px;
}

.suggestions-dropdown {
    position: absolute;
    background: white;
    border: 1px solid #ddd;
    border-top: none;
    max-height: 200px;
    overflow-y: auto;
    display: none;
    z-index: 1000;
}

.autocomplete-suggestion {
    padding: 8px;
    cursor: pointer;
    border-bottom: 1px solid #eee;
    transition: background-color 0.2s ease;
}

.autocomplete-suggestion:hover {
    background-color: #f5f5f5 !important;
}

.autocomplete-suggestion:last-child {
    border-bottom: none;
}

.selected-items-display {
    margin-bottom: 15px;
    display: none;
}

.selected-items-display > div:first-child {
    font-weight: bold;
    margin-bottom: 8px;
    color: #333;
}

.selected-items-list {
    background: #f8f9fa;
    padding: 10px;
    border-radius: 4px;
    border: 1px solid #e9ecef;
    font-size: 13px;
    line-height: 1.4;
}

.reset-selection {
    text-align: center;
    margin-top: 10px;
}

.reset-selection button {
    font-size: 12px;
    padding: 5px 10px;
}

/*-------------------------------------------------------------
- Active Filter Chips (Grouped)
-------------------------------------------------------------*/
.selected-items-display h2 {
    margin-bottom: 15px;
    color: #333;
    font-size: 18px;
    font-weight: bold;
}

#active-filter-chips {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.filter-group-header {
    font-weight: bold;
    color: #444;
    font-size: 14px;
    margin-bottom: 8px;
    padding-bottom: 4px;
    border-bottom: 1px solid #e0e0e0;
}

.filter-group-chips {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-bottom: 10px;
}

.filter-chip {
    display: inline-flex;
    align-items: center;
    background: transparent;
    border: none;
    border-radius: 0;
    padding: 0;
    font-size: 13px;
    color: #333;
    cursor: pointer;
    transition: all 0.2s ease;
    margin: 0;
    line-height: 1.4;
}

.filter-chip:hover {
    background: transparent;
    border-color: transparent;
    transform: none;
}

.filter-chip__val {
    margin-left: 6px;
    white-space: nowrap;
    color: #333;
    font-weight: normal;
}

.filter-chip__val:hover {
    color: #1B3C7F;
}

.filter-chip__x {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    background: #ff6b6b;
    color: white;
    border-radius: 50%;
    font-size: 12px;
    font-weight: bold;
    line-height: 1;
    margin-right: 4px;
    transition: background-color 0.2s ease;
}

.filter-chip__x:hover {
    background: #ff5252;
}

/* Mobile responsive */
@media (max-width: 768px) {
    .filter-group-chips {
        gap: 3px;
    }

    .filter-chip {
        font-size: 12px;
    }

    .filter-chip__x {
        width: 14px;
        height: 14px;
        font-size: 11px;
    }
}

/*-------------------------------------------------------------
- Search Clear Button Styles
-------------------------------------------------------------*/
.search-input-wrapper {
    position: relative;
    display: inline-block;
    width: 100%;
}

.search-clear-btn {
    position: absolute;
    right: 32px;
    top: 33%;
    transform: translateY(-50%);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    background: #ff6b6b;
    color: white;
    border-radius: 50%;
    font-size: 14px;
    font-weight: bold;
    line-height: 1;
    cursor: pointer;
    transition: background-color 0.2s ease;
    user-select: none;
}

.search-clear-btn:hover {
    background: #ff5252;
}

/* Mobile responsive for search clear button */
@media (max-width: 768px) {
    .search-clear-btn {
        width: 18px;
        height: 18px;
        font-size: 13px;
        right: 8px;
    }
}

/*-------------------------------------------------------------
- Slider Styles (Age & GPA)
-------------------------------------------------------------*/
.age-range-display,
.gpa-display {
    text-align: center;
    margin-bottom: 15px;
    font-size: 16px;
    font-weight: bold;
}

#age-range-slider,
#gpa-slider {
    margin: 20px 0;
}

.slider-labels {
    display: flex;
    justify-content: space-between;
    font-size: 12px;
    color: #666;
    margin-top: 10px;
}

.slider-reset {
    text-align: center;
    margin-top: 15px;
}

.slider-reset button {
    font-size: 12px;
    padding: 5px 10px;
}

/*-------------------------------------------------------------
- CPT List
-------------------------------------------------------------*/
.scholarships_list_wrapper,
.sponsors_list_wrapper {
   border: solid 1px #555;
   padding: 20px;
   margin-bottom: 20px;
   overflow: visible;
   box-sizing: border-box;
}

/* Ensure tables wrap content without scrolling */
.scholarships_container table.dataTable,
.sponsors_container table.dataTable {
    width: 100% !important;
    max-width: 100%;
    table-layout: fixed;
    word-wrap: break-word;
}

.scholarships_container,
.sponsors_container {
    overflow: visible;
    width: 100%;
}

/* Sponsor Card Styling */
.sponsor-card-wrapper {
    background: #f9f9f9;
    border: 1px solid #ddd;
    border-radius: 8px;
    padding: 20px;
    margin-bottom: 30px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    transition: box-shadow 0.3s ease;
}

.sponsor-card-wrapper:hover {
    box-shadow: 0 4px 8px rgba(0,0,0,0.15);
}

.sponsor-header {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-bottom: 20px;
    padding-bottom: 15px;
    border-bottom: 1px solid #eee;
    flex-direction: row-reverse;
}

.sponsor-title {
    margin: 0;
    flex: 1;
}

.sponsor-title h3 a {
    color: #1B3C7F;
    text-decoration: none;
    font-size: 1.4em;
    font-weight: bold;
}

.sponsor-title a:hover {
    color: #F9C349;
}

/*
.sponsor-logo-container {
    flex-shrink: 0;
    max-width: 120px;
}
*/

.sponsor-logo-container img {
    max-width: 100%;
    height: auto;
    border-radius: 4px;
    max-height: 160px;
    margin: 0 auto!important;
    text-align: center;
}

.sponsor-content {
    display: grid;
    gap: 15px;
}

.sponsor-description-section {
    background: #fff;
    padding: 15px;
    border-radius: 6px;
    border-left: 4px solid #1B3C7F;
}

.sponsor-contact-section {
    background: #fff;
    padding: 15px;
    border-radius: 6px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 15px;
}

.sponsor-contact-name {
    display: flex;
    gap: 10px;
    align-items: center;
}

.sponsor-contact-details {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.sponsor-meta-section {
    background: #fff;
    padding: 15px;
    border-radius: 6px;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(200px, 100%), 1fr));
    gap: 15px;
}

.sponsor-categories-section {
    background: #fff;
    padding: 15px;
    border-radius: 6px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}

/* ACF Field Styling within Cards */
.sponsor-card-wrapper h3 a {
    color: #1B3C7F;
    font-size: 1.1em;
    margin: 0 0 8px 0;
    font-weight: 600;
}

.sponsor-card-wrapper p {
    margin: 0 0 8px 0;
    line-height: 1.4;
    color: #515151;
}

.sponsor-card-wrapper a {
    color: #d54327;
    text-decoration: none;
    font-weight: 500;
}

.sponsor-card-wrapper a:hover {
    color: #000000;
    text-decoration: none;
}

.sponsor-card-wrapper ul {
    margin: 0;
    padding-left: 20px;
}

.sponsor-card-wrapper li {
    margin-bottom: 4px;
    color: #515151;
}

/* DataTable Styling for Sponsor Cards */
#sponsors_table .sponsor-card {
    padding: 0;
    vertical-align: top;
}

#sponsors_table td.sponsor-card {
    max-width: 100%;
    width: 100%;
    word-wrap: break-word;
    overflow-wrap: break-word;
    box-sizing: border-box;
}

/* Responsive Design */
@media (max-width: 1200px) {
    .sponsor-meta-section {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 900px) {
    .sponsor-contact-section,
    .sponsor-categories-section,
    .sponsor-meta-section {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 768px) {
    .sponsor-header {
        flex-direction: column;
        text-align: center;
    }
    
    .sponsor-contact-section,
    .sponsor-categories-section {
        grid-template-columns: 1fr;
    }
    
    .sponsor-meta-section {
        grid-template-columns: 1fr;
    }
}

/* Featured Sponsor Cards */
.featured-sponsors-container {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(275px, 1fr));
    gap: 20px;
}

.featured-sponsor-card {
    background: #f7f9fc;
    border: 1px solid #d4d8e8;
    border-radius: 8px;
    padding: 20px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    text-align: center;
    font-size: 1rem;
    padding-bottom: 85px;
    position: relative;
}

.featured-sponsor-card .acf-image {
/*
    max-width: 70%;
    aspect-ratio: 1 / 1;
    margin: 0 auto 10px;
    position: relative;
    text-align: left;
*/
    margin: 0 auto 10px;
    text-align: center;
    width: 100px;
    height: 100px;
    border: 1px solid #cecece;
    display: inline-block;
    align-content: center;
    padding: 20px;
    background: #fff;
    border-radius: 8px;
}

/*
.featured-sponsor-card .acf-image img {
    position: absolute;
    width: 100%;
    top: 50%;
    transform: translateY(-50%);
}
*/

.featured-sponsor-card .featured-sponsor-title {
    font-size: 1.2rem;
    font-weight: 600;
    margin-bottom: 10px;
}

.featured-sponsor-card .featured-sponsor-fields {
    font-weight: 600;
    margin-bottom: 10px;
    display: none;
}

.featured-sponsor-card .featured-sponsor-field {
    font-weight: 400;
}

.featured-sponsor-card .featured-sponsor-scholarships-btn {
    position: absolute;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
}

/* Scholarship Card Styling */
.scholarship-card-wrapper {
    background: #f7f9fc;
    border: 1px solid #d4d8e8;
    border-radius: 8px;
    padding: 20px;
    margin-bottom: 15px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    transition: box-shadow 0.3s ease;
    position: relative;
    word-wrap: break-word;
    overflow-wrap: break-word;
    box-sizing: border-box;
    max-width: 100%;
    width: 100%;
    overflow-x: hidden;
}

/* Ensure all child elements respect container boundaries */
.scholarship-card-wrapper * {
    word-wrap: break-word;
    overflow-wrap: break-word;
    box-sizing: border-box;
    max-width: 100%;
}

/* Normal word breaking for all text and links */
.scholarship-card-wrapper a,
.scholarship-card-wrapper p {
    overflow-wrap: break-word;
    hyphens: auto;
}

/* Aggressive breaking ONLY for scholarship link section where URLs are displayed as text */
.scholarship-link a {
    word-break: break-all;
    overflow-wrap: anywhere;
}

/* Scholarship Link Section - center aligned below text */
.scholarship-link-section {
    text-align: center;
    margin: 15px 0;
    padding: 10px 0;
}

.scholarship-card-wrapper:hover {
    box-shadow: 0 4px 8px rgba(0,0,0,0.15);
}

.scholarship-header {
    display: grid;
    grid-template-columns: auto 1fr;
    grid-template-rows: auto auto;
    gap: 5px 30px;
    margin-bottom: 20px;
    padding-bottom: 15px;
    border-bottom: 1px solid #e8ecf4;
    align-items: center;
}

.scholarship-header .sponsor-logo-container {
    grid-row: 1 / 3;
    grid-column: 1;
    align-self: start;
}

.scholarship-title {
    margin: 0;
    grid-row: 1;
    grid-column: 2;
}

.scholarship-header .scholarship-link-section {
    grid-row: 2;
    grid-column: 2;
    text-align: left;
    margin: 0;
    padding: 0;
}

.scholarship-title a {
    color: #1B3C7F;
    text-decoration: none;
    font-size: 1.4em;
    font-weight: bold;
}

.scholarship-title a:hover {
    color: #F9C349;
}

.scholarship-status-badge {
    flex-shrink: 0;
    padding: 6px 12px;
    border-radius: 20px;
    font-size: 0.85em;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.scholarship-status-badge.active {
    background: #d4edda;
    color: #155724;
    border: 1px solid #c3e6cb;
}

.scholarship-status-badge.inactive {
    background: #f8d7da;
    color: #721c24;
    border: 1px solid #f5c6cb;
}

.scholarship-featured-badge {
    position: absolute;
    top: -1px;
    right: -1px;
    background: linear-gradient(135deg, #F9C349, #f39c12);
    color: #fff;
    padding: 8px 15px;
    border-radius: 0 8px 0 15px;
    font-size: 0.8em;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.2);
}

.scholarship-content {
    display: grid;
    gap: 15px;
    word-wrap: break-word;
    overflow-wrap: break-word;
    box-sizing: border-box;
}

.scholarship-description-section {
    background: #fff;
    padding: 15px;
    border-radius: 6px;
    border-left: 4px solid #1B3C7F;
    word-wrap: break-word;
    overflow-wrap: break-word;
    box-sizing: border-box;
}

.scholarship-award-section {
    background: #fff;
    padding: 15px;
    border-radius: 6px;
    border-left: 4px solid #F9C349;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(200px, 100%), 1fr));
    gap: 15px;
    word-wrap: break-word;
    overflow-wrap: break-word;
    box-sizing: border-box;
}

.scholarship-contact-section {
    background: #fff;
    padding: 15px;
    border-radius: 6px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 15px;
    word-wrap: break-word;
    overflow-wrap: break-word;
    box-sizing: border-box;
}

.scholarship-contact-name {
    display: flex;
    gap: 10px;
    align-items: center;
}

.scholarship-contact-details {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.scholarship-eligibility-section {
    background: #fff;
    padding: 15px;
    border-radius: 6px;
    border-left: 4px solid #28a745;
    word-wrap: break-word;
    overflow-wrap: break-word;
    box-sizing: border-box;
}

.scholarship-requirements-section {
    background: #fff;
    padding: 15px;
    border-radius: 6px;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(200px, 100%), 1fr));
    gap: 15px;
    word-wrap: break-word;
    overflow-wrap: break-word;
    box-sizing: border-box;
}

.scholarship-dates-section {
    background: #fff;
    padding: 15px;
    border-radius: 6px;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(200px, 100%), 1fr));
    gap: 15px;
    border-left: 4px solid #dc3545;
    word-wrap: break-word;
    overflow-wrap: break-word;
    box-sizing: border-box;
}

.scholarship-categories-section {
    background: #fff;
    padding: 15px;
    border-radius: 6px;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(200px, 100%), 1fr));
    gap: 15px;
    border-left: 4px solid #ffc107;
    word-wrap: break-word;
    overflow-wrap: break-word;
    box-sizing: border-box;
}

/* ACF Field Styling within Scholarship Cards */
.scholarship-card-wrapper h3 {
    color: #1B3C7F;
    font-size: 1.1em;
    margin: 0 0 8px 0;
    font-weight: 600;
}

.scholarship-card-wrapper p {
    margin: 0 0 8px 0;
    line-height: 1.4;
    color: #515151;
    word-wrap: break-word;
    overflow-wrap: break-word;
    hyphens: auto;
}

.scholarship-card-wrapper a {
    color: #1B3C7F;
    text-decoration: none;
    word-wrap: break-word;
    overflow-wrap: break-word;
}

.scholarship-card-wrapper a:hover {
    color: #F9C349;
    text-decoration: underline;
}

.scholarship-card-wrapper ul {
    margin: 0;
    padding-left: 20px;
}

.scholarship-card-wrapper li {
    margin-bottom: 4px;
    color: #515151;
}

/* Scholarship Award Styling */
.scholarship-award-section .scholarship-award h3 {
    color: #F9C349;
    font-size: 1.3em;
}

.scholarship-award-section .scholarship-award p {
    font-size: 1.2em;
    font-weight: bold;
    color: #1B3C7F;
}

/* Scholarship Dates Styling */
.scholarship-dates-section h3 {
    color: #dc3545;
}

/* Scholarship Save Button */
.scholarship-save {
    text-align: center;
}

.scholarship-save.detail {
    text-align: left;
    margin: 31px 0 48px;
    font-size: 15px!important;
}

.scholarship-save-btn[disabled] {
    opacity: .5;
}

.scholarship-save-btn[disabled].success {
    opacity: 1;
}

/* DataTable Styling for Scholarship Cards */
#scholarships_table .scholarship-card {
    padding: 0;
    vertical-align: top;
    width: 100%;
}

#scholarships_table td.scholarship-card {
    max-width: 100%;
    width: 100% !important;
    word-wrap: break-word;
    overflow-wrap: break-word;
    box-sizing: border-box;
}

#scholarships_table {
    width: 100% !important;
    table-layout: fixed;
}

#scholarships_table tbody tr {
    width: 100%;
}

#scholarships_table tbody tr td {
    width: 100% !important;
}

/* Removed complex media queries - using fluid auto-fit grid approach instead */

/*-------------------------------------------------------------
- CPT Detail
-------------------------------------------------------------*/

/*-------------------------------------------------------------
- User Profile Alert Styling
-------------------------------------------------------------*/
.user-profile-alert {
    padding: 15px 20px;
    margin-bottom: 30px;
    font-weight: 500;
    border: 1px solid;
    border-radius: 4px;
}

.user-profile-alert-success {
    background-color: #d4edda;
    border-color: #c3e6cb;
    color: #155724;
}

.user-profile-alert-error {
    background-color: #f8d7da;
    border-color: #f5c6cb;
    color: #721c24;
}

/*-------------------------------------------------------------
- Modal
-------------------------------------------------------------*/
/* .custom_modal {
    display: none;
    position: fixed;
    z-index: 1;
    padding-top: 100px;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgb(0,0,0);
    background-color: rgba(0,0,0,0.4); 
    justify-content: center;
    align-items: center;
}
.custom_modal_content {
    background-color: #fefefe;
    margin: auto;
    padding: 20px;
    border: 1px solid #888;
    width: 80%;
}
.custom_modal_close {
    color: #aaaaaa;
    float: right;
    font-size: 28px;
    font-weight: bold;
}
.custom_modal_close:hover,
.custom_modal_close:focus {
    color: #000;
    text-decoration: none;
    cursor: pointer;
} */

/*-------------------------------------------------------------
- Facet Sticky Styles
-------------------------------------------------------------*/
.facet-sponsors-wrapper.facet-sticky,
.facet-scholarships-wrapper.facet-sticky {
    transition: all 0.3s ease-in-out;
    overflow-x: hidden;
    box-sizing: border-box;
}

.facet-sponsors-wrapper.facet-sticky .filter_scroll_wrapper,
.facet-scholarships-wrapper.facet-sticky .filter_scroll_wrapper {
    /* max-height: 85vh; */
    /* overflow-y: auto;
    overflow-x: hidden; */
    width: 100%;
    box-sizing: border-box;
}

/* Ensure mobile facet buttons work with sticky */
.facet-sponsors-wrapper.facet-sticky .mobile_facet_trigger,
.facet-scholarships-wrapper.facet-sticky .mobile_facet_trigger {
    position: relative;
    z-index: 1000;
}

/* Prevent horizontal overflow in sticky facet content */
.facet-sponsors-wrapper.facet-sticky .scholarships_filter_group,
.facet-sponsors-wrapper.facet-sticky .sponsors_filter_group,
.facet-scholarships-wrapper.facet-sticky .scholarships_filter_group,
.facet-scholarships-wrapper.facet-sticky .sponsors_filter_group {
    width: 100%;
    box-sizing: border-box;
    overflow-x: hidden;
}

.facet-sponsors-wrapper.facet-sticky .checkbox-group,
.facet-scholarships-wrapper.facet-sticky .checkbox-group {
    width: 100%;
    box-sizing: border-box;
}

.facet-sponsors-wrapper.facet-sticky .checkbox-group label,
.facet-scholarships-wrapper.facet-sticky .checkbox-group label {
    word-wrap: break-word;
    overflow-wrap: break-word;
    white-space: normal;
    max-width: 100%;
}

/* Smooth scrolling for the filter wrapper when sticky */
.facet-sponsors-wrapper.facet-sticky .filter_scroll_wrapper::-webkit-scrollbar,
.facet-scholarships-wrapper.facet-sticky .filter_scroll_wrapper::-webkit-scrollbar {
    width: 8px;
}

.facet-sponsors-wrapper.facet-sticky .filter_scroll_wrapper::-webkit-scrollbar-track,
.facet-scholarships-wrapper.facet-sticky .filter_scroll_wrapper::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 4px;
}

.facet-sponsors-wrapper.facet-sticky .filter_scroll_wrapper::-webkit-scrollbar-thumb,
.facet-scholarships-wrapper.facet-sticky .filter_scroll_wrapper::-webkit-scrollbar-thumb {
    background: #c1c1c1;
    border-radius: 4px;
}

.facet-sponsors-wrapper.facet-sticky .filter_scroll_wrapper::-webkit-scrollbar-thumb:hover,
.facet-scholarships-wrapper.facet-sticky .filter_scroll_wrapper::-webkit-scrollbar-thumb:hover {
    background: #a8a8a8;
}

/*-------------------------------------------------------------
- Mobile Facet
-------------------------------------------------------------*/
.responsive_facet_wrapper.mobile_facet_menu{
    display: block!important;
    position: fixed;
    z-index: 9999999;
    box-shadow: 0 0 4px rgba(0,0,0,.3);
    background: #fff;
    left: 110%;
    padding-top: 155px;
    top: 0px;
    width: 75%;
    height: 100% !important;
    transition: left .2s ease-out,top .2s ease-out,width .2s ease-out,height .2s ease-out;
}
.responsive_facet_wrapper.mobile_facet_menu.open{
    left:25%;
}
.responsive_facet_wrapper.mobile_facet_menu.closed{
    left:110%;
    transition: left .2s ease-out,top .2s ease-out,width .2s ease-out,height .2s ease-out;
}
.responsive_facet_wrapper.closed a.mobile_facet_side_button,
a.mobile_facet_trigger.mobile_facet_bottom_button.closed{
    display: none;
}
a.mobile_facet_bottom_button{
    z-index: 9999999;
    background: #B2482c;
    display: inline-block;
    padding: 5px 20px;
    color: #fff;
}
a.mobile_facet_side_button {
    position: absolute;
    top: 260px;
    display: inline-block;
    padding: 10px;
    left: -45px;
    background: #f95130;
    color: #fff;
    transform: rotate(270deg);
    transform-origin: left top 0;
    font-size: 20px;
}
a.mobile_facet_bottom_button:hover,
a.mobile_facet_side_button:hover{
    color:#fff;
}

/*-------------------------------------------------------------
- Media Query
-------------------------------------------------------------*/
@media only screen and (max-width: 767px) {
    a.mobile_facet_trigger.mobile_facet_bottom_button.closed{
        display: inline-block;
    }
    .filter_trigger{
        display: none;
    }
}



/*###############################################
FILTER PAGES STYLES
###############################################*/

body {
	
	& #fullimagecenter .container {
	    background-color: #0000007d;
	    width: 100%;
	    display: flex;
	    justify-content: center;
	    background-image: url('/wp-content/uploads/2025/07/elements_divider-3-white-bot.svg');
	    background-position: center bottom;
	    background-repeat: no-repeat;
	    background-size: 101%;
	}

	& #fullimagecenter h1, #transparentimage h1, #fullimagecenter .title-h1, #transparentimage .title-h1 {
	    padding: 80px 0 0;
	    font-weight: 600;
	    border-bottom: 4px solid #f9c349 !important;
	    display: inline-block;
	    margin-bottom: 130px;
  	}
	
	& .filter_scroll_wrapper h2 {
	    font-size: 18px;
	    font-weight: 600;
	    margin-bottom: 13px;
	}
	
	& .sponsors_filter_group.sponsors_filter_group_bottom {
	    display: flex;
	    gap: 12px;
	    justify-content: space-between;
	    padding-bottom: 20px;
	    flex-direction: column;
	}

    & .facet-sponsors-wrapper .datatables_reset_button {
        width: 100%;
    }
	
	& .scholarships_filter_group.scholarships_filter_group_bottom {
	    display: flex;
	    gap: 12px;
	    justify-content: space-between;
	    margin-bottom: 20px;
	    flex-direction: column;
	}
	
	& .sponsors_filter_group.sponsors_filter_group_bottom .sponsors_filter_group {
	    border-bottom: 1px solid #e1e1e1;
	    padding-bottom: 16px;
	}
	
	& .scholarships_filter_group.scholarships_filter_group_bottom .scholarships_filter_group {
	    border-bottom: 1px solid #e1e1e1;
	    padding-bottom: 16px;
	    margin-bottom: 16px;
	}
	
	& .sponsors_filter_group .checkbox-group label {
	    display: flex;
	    flex-direction: row-reverse;
	    justify-content: flex-end;
	    font-size: 14px;
	    margin-bottom: 11px;
	    line-height: 1.2em;
	    font-weight: 600;
	    align-items: flex-start;
	    position: relative;
   	}
   	
	& .scholarships_filter_group .checkbox-group label {
	    display: flex;
	    flex-direction: row-reverse;
	    justify-content: flex-end;
	    font-size: 14px;
	    margin-bottom: 11px;
	    line-height: 1.2em;
	    font-weight: 600;
	    align-items: flex-start;
	    position: relative;
   	}

	& .sponsors_filter_group .checkbox-group label input {
	    margin: 1px 7px 0 0;
	}
	
	& .scholarships_filter_group .checkbox-group label input {
	    margin: 1px 7px 0 0;
	}
	
	& #sponsors_table_wrapper.dt-container .dt-length {
	    display: flex;
	    align-items: flex-end;
	    margin-bottom: 20px;
	}
	
	& #scholarships_table_wrapper.dt-container .dt-length {
	    display: flex;
	    align-items: flex-end;
	    margin-bottom: 20px;
	}
	
	& #sponsors_table_wrapper.dt-container select.dt-input {
	    padding: 8px 14px;
	    margin-right: 8px;
	}
	
	& #scholarships_table_wrapper.dt-container select.dt-input {
	    padding: 8px 14px;
	    margin-right: 8px;
	}
	
	& .sidebar-filter-content .vc_col-sm-12 > .wpb_wrapper {
	    display: flex;
	    justify-content: space-between;
	    gap: 30px;
	}
	
	& a.toggle-checkboxes {
	    font-size: 15px;
	}
	
	& .sidebar-filter-content .vc_col-sm-12 > .wpb_wrapper .wpb_raw_code.wpb_raw_html.wpb_content_element:first-child {
	    width: 33%;
	}
	
	& .sidebar-filter-content .vc_col-sm-12 > .wpb_wrapper .wpb_raw_code.wpb_raw_html.wpb_content_element:last-child {
	    width: 64%;
	}
	
	& .sponsor-card-wrapper .sponsor-content h3 {
	    color: #2491ca;
	    font-size: 1.05em;
	    margin: 0 0 8px 0;
	    font-weight: 700;
	    font-family: 'Montserrat'!important;
	}
	
	& .scholarship-card-wrapper .scholarship-content h3 {
	    color: #2491ca;
	    font-size: 1.05em;
	    margin: 0 0 8px 0;
	    font-weight: 700;
	    font-family: 'Montserrat'!important;
	}

    & .responsive_facet_wrapper .filter_scroll_wrapper input[type='text'] {
		color: #767676;
	}

	& .sponsor-logo-container {
	    width: 200px;
	    height: 200px;
	    border: 1px solid #cecece;
	    display: inline-block;
	    align-content: center;
	    padding: 20px;
	    background: #fff;
	    border-radius: 8px;
	}
}

@media only screen and (max-width:767px) {
    .sonsor-logo-container {
        width:unset;
        height:unset;
    }
}

/*###############################################
SPONSOR PAGES STYLES
###############################################*/

body.page-template-page-sponsor-profile h3 {
    color: #083882;
    font-weight: 400;
    margin-bottom: 7px;
}

body.page-template-page-sponsor-profile h3:after {
    content: '';
    width: 200px;
    height: 5px;
    background: red;
    display: block;
    margin-top: 5px;
    margin-bottom: 30px;
}

body #loginform input {
    border-color: #686e77;
}

body legend.gfield_label.gform-field-label.gfield_label_before_complex {
    color: #112337;
    font-weight: 500;
}

body.page-template-page-create-user h2 {
    letter-spacing: -.03em;
}

body.page-template-page-create-user div#gform_wrapper_1 {
    margin-top: 30px;
}

body.page-template-page-scholarship-build :is(form#loginform,  #scholarship-form .gform-theme){
    margin-top: 30px;
}

body #user-profile-form .create-scholarship {
    margin-bottom: 40px;
}

body #user-profile-form .user-profile-container {
    padding: 30px;
    background: #f7f9fc;
}


/*###############################################
INDIVIDUAL SCHOLARSHIP STYLES
###############################################*/

body .scholarships_detail_wrapper{
	
	& h2{
	    margin-bottom: 50px;
	    padding-bottom: 20px;
	    position: relative;
	    
	    &:after{
		    content: '';
		    height: 6px;
		    background-color: #FC5130;
		    position: absolute;
		    bottom: 0px;
		    left: 0;
		    display: block;
		    width: 250px;
	    }
	}
	
	& h3 {
		font-size: 26px;
		margin-bottom: 0px;
		font-weight: bold;
		color: rgb(27, 60, 127);
	}
	
	& .scholarship_heading {
	    display: flex;
	    gap: 40px;
	    margin-bottom: 30px;
	}
    
	
	& .scholarship_details h3 {
	    color: rgb(36, 145, 202);
	    font-size: 1.1em;
	    margin: 0px 0px 8px;
	    font-weight: 700;
	    font-family: Montserrat !important;
	}
	
	& .scholarship_sponsor_logo {
	    width: 200px;
	    height: 200px;
	    border: 1px solid #cecece;
	    display: inline-block;
	    align-content: center;
	    padding: 20px;
	    background: #fff;
	    border-radius: 8px;
	}

	& .scholarship-description {
	    margin-bottom: 30px;
	    padding-bottom: 10px;
	    border-bottom: 3px solid #eeeeee;
	}
	
	& .scholarship_info {
	    border-bottom: 3px solid #eeeeee;
	    width: calc(100% - 240px);
	    display: flex;
	    flex-direction: column-reverse;
    	    
	    & button.scholarship-link-btn {
		    margin-bottom: 26px!important;
		    font-size: 1.5em!important;
		    padding-bottom: 12px!important;
   		}
   		
   		& .scholarship-award p {
		    font-weight: 600;
		}
	}

	& .scholarship_details {
	    display: grid;
	    flex-wrap: wrap;
	    grid-template-columns: repeat(auto-fit, minmax(33%, 1fr));
	}
	
	& .scholarship_details > div {
	    max-width: 100%;
	    border: 1px solid #eee;
	    margin: 10px;
	    padding: 20px;
	    background: #f7f9fc;
	    border-radius: 8px;
	    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
	    transition: box-shadow 0.3s ease;
	}

}

@media only screen and (max-width: 825px) {
    body .scholarships_detail_wrapper {
        & .scholarship_details {
            grid-template-columns: 1fr;
        }
    }
}

@media only screen and (max-width: 660px) {
    body .sponsors_detail_wrapper {
        & .sponsor-website {
            width: 100% !important;
        }
    }
}

@media only screen and (max-width: 585px) {
    body .scholarships_detail_wrapper {
        & .scholarship_heading {
            flex-direction: column;
        }
        & .scholarship_info {
            width: 100%;
        }
        & .scholarship_sponsor_logo {
            margin: auto;
        }
    }
}


/*###############################################
INDIVIDUAL SCHOLARSHIP STYLES
###############################################*/

/*###############################################
INDIVIDUAL SCHOLARSHIP STYLES
###############################################*/
body .sponsors_detail_wrapper{
	
	& .sponsor_detail_header{
		display: flex;
	    gap: 40px;
	    align-items: flex-end;
	    margin-bottom: 40px;
	}
	
	& .sponsor-logo{
	    width: 200px;
	    height: 200px;
	    border: 1px solid #cecece;
	    display: inline-block;
	    align-content: center;
	    padding: 20px;
	    background: #fff;
	    border-radius: 8px;
	}

	& h2{
	    margin-bottom: 50px;
	    padding-bottom: 20px;
	    position: relative;
	    
	    &:after{
		    content: '';
		    height: 6px;
		    background-color: #FC5130;
		    position: absolute;
		    bottom: 0px;
		    left: 0;
		    display: block;
		    width: 250px;
	    }
	}

	& .sponsor_detail-header .sponsor-logo-container {
	    width: 160px;
	    height: 160px;
	    border: 1px solid #cecece;
	    display: inline-block;
	    align-content: center;
	    padding: 20px;
	    background: #fff;
	    border-radius: 8px;
	}
	
	& .sponsor-website{
	    padding-bottom: 10px;
	    border-bottom: 3px solid #eeeeee;
	    width: calc(100% - 290px);
	}
	
	& .sponsor-description {
	    margin-bottom: 40px;
	}

    & .sponsor-website a {
        font-size: 15px;
    }
}

.sponsor-website a {
    font-size: 15px!important;
}


/*###############################################
ABOUT PAGE STYLES
###############################################*/

body {
    & section#about-our-misson {
    justify-content: center;
    background-image: url(/wp-content/uploads/2025/04/elements_divider-1-white-bot.svg);
    background-position: center bottom;
    background-repeat: no-repeat;
    background-size: 101%;
    }
}


/*-------------------------------------------------------------
- Media Query
-------------------------------------------------------------*/
@media only screen and (max-width: 767px) {
	
	body {
		& .sidebar-filter-content .vc_col-sm-12 > .wpb_wrapper {
		    gap: 40px;
		    flex-direction: column;
		}
		
		&.vc_responsive .page-section .standard-section .span_12 {
		    max-width: 96vw;
		}
		
		& .sidebar-filter-content .vc_col-sm-12 > .wpb_wrapper .wpb_raw_code.wpb_raw_html.wpb_content_element:first-child {
		    width: 100%;
		}
        & .owl-carousel .owl-stage-outer .owl-item {
            margin-right: 95px!important;
        }

		
		& .sidebar-filter-content .vc_col-sm-12 > .wpb_wrapper .wpb_raw_code.wpb_raw_html.wpb_content_element:last-child {
		    width: 100%;
		}

		& #sponsors_table td.sponsor-card {
		    max-width: 90vw;
		    display: block;
		}
		
		& .sponsor-content {
		    display: flex;
		    gap: 15px;
		    flex-direction: column;
		}
		
		& .sponsor-header {
		    flex-direction: column-reverse;
		    text-align: center;
		    justify-content: center;
		    align-items: center;
		    gap: 22px;
		}
		
		& table.dataTable {
		    width: 90vw;
		    margin: 0px 1vw;
		    border-spacing: 0;
		}
		
		& .mobile_facet_menu.open .filter_scroll_wrapper {
		    width: 85%;
		    margin: 0 auto;
            overflow: scroll;
            height: 100%;
		}
		
		&.vc_responsive .wpb_row .vc_col-sm-12 {
		    padding-left: 10px;
		    padding-right: 10px;
		}
		
		& .sponsor-website p a {
		    overflow-wrap: anywhere;
		}
	}
	

}



.filter_scroll_wrapper {
    overflow-y: visible !important;
    height: auto;
}

.facet-scholarships-wrapper.responsive_facet_wrapper.closed.facet-sticky {
    box-shadow: none !important;
}


.sponsors-cpt-template-default .scholarship-save-button-container {
    margin-bottom:20px;
}