/* Filter Styles */
 .filter-row{
     display: flex;
     flex-wrap: wrap;
}
 .selected-filter {
     position: relative;
     display: inline-flex;
     align-items: center;
     justify-content: center;
     color: white;
     border-radius: 20px;
     border: none;
     padding: 5px 15px;
     overflow: hidden;
     outline: none !important;
     box-shadow: none !important;
}
 .filter-row .mobile-filter{
     background-color: #F4F4F4;
}
 .filter-row .fa-chevron-up{
     color: black;
}
 .pill-content {
     position: relative;
     z-index: 2;
     display: inline-flex;
     align-items: center;
}
 .selected-filter::after {
     content: "";
     position: absolute;
     inset: 0;
     background: rgba(0, 0, 0, 0.22);
     opacity: 0;
     transition: opacity 0.2s ease;
     z-index: 1;
     pointer-events: none;
}
 .selected-filter:hover::after {
     opacity: 1;
}
 .clear-filters{
     display: none;
}
 .filter-content{
     margin-left: 3rem;
     margin-right: 3rem;
}
 .mt-06 {
     margin-top: 0.6rem !important;
}
 .custom-card {
     flex: 1 1 auto;
     min-height: 1px;
     padding-top: 1.25rem;
     padding-bottom: 1.25rem;
}
 .custom-input {
     display: none;
}
 .custom-label {
     cursor: pointer;
     padding: 6px 10px;
     transition: background-color 0.2s ease, color 0.2s ease;
     width: 100%;
}
 .custom-input:checked + .custom-label {
     background-color: #09BDCB !important;
}
 .custom-label:hover{
     background-color: #DEF1ED;
}
 .custom-dropdown .dropdown-toggle {
     background-color: #f5f5f5;
     border: none;
     color: #000;
     padding: 8px 32px 8px 12px;
     transition: background-color 0.2s ease, color 0.2s ease;
     width: 190px;
     justify-content: space-between;
     display: flex;
     align-items: center;
}
 .custom-dropdown .dropdown-toggle:hover, .custom-dropdown .dropdown-toggle:focus {
     background-color: #e9e9e9;
     color: #000;
}
 .custom-dropdown .dropdown-toggle::after {
     content: "";
     border: none;
     font-size: 12px;
     position: absolute;
     right: 12px;
     top: 50%;
     transform: translateY(-50%);
     color: #000;
}
 .custom-menu {
     border: none;
     box-shadow: 0 4px 8px rgba(0,0,0,0.1);
     margin-top: 6px;
}
 .custom-menu{
     max-width: 200px !important;
}
 .custom-menu .dropdown-item, .custom-menu div {
     cursor: pointer;
     border-radius: 4px;
     transition: background-color 0.2s ease, color 0.2s ease;
}
 .custom-menu .dropdown-item:hover {
     background-color: #DEF1ED;
     color: #000;
}
 .custom-menu .dropdown-item.active, .custom-menu div.active {
     background-color: #09BDCB !important;
     color: #fff !important;
}
 .filter-container{
     border-radius: 15px;
     background-color: white;
     box-shadow: 5px 3px 10px rgba(0, 0, 0, 0.2);
     margin-bottom: 20px;
     margin-top: -92px;
}
 .custom-search{
     background-color: #f5f5f5;
     border: none;
     width: 200px;
     height: 40px;
}
 input[type="search"] {
     color: black;
}
 input[type="search"]::placeholder {
     color: black;
}
 .custom-search-button{
     color: white;
     background-color: #A1182C;
     max-width: 10px;
     height: 40px;
     display: flex;
     justify-content: center;
     align-items: center;
     text-align: center;
}
 .selected-filter {
     color: white;
     border-radius: 20px;
     border: none;
     padding: 5px 15px 3px 15px;
     margin: 0 5px 15px 5px;
     text-transform: uppercase;
}
 .fa-light, .fal {
     font-weight: 700 !important;
}
 .fa-chevron-down {
     margin-right: -20px;
}
 .sec.py-5.px-2.program-container{
    /* background-color: #f5f5f5;
     */
    /* padding-bottom: 100px !important;
     */
}
 .modalities-container a:empty, .modalities-container a:not([href]), .modalities-container a[href=""] {
     display: none !important;
}
 .selected-filter{
     font-family: 'GothamSSmExtraNarrowMedium';
}
/* Accordion Styles */
 .program-accordion{
     border-radius: 15px;
     background-color: white;
     margin-bottom: 15px;
}
 .listView{
     background-color: #f5f5f5;
}
 .program-title{
     font-size: 30px;
     font-family: 'GothamSSmExtraNarrowMedium';
}
 .program-specialization, .program-track{
     color: #A1182C;
     font-size: 20px;
     font-family: 'GothamSSmExtraNarrowMedium';
}
 .program-modality{
     font-size: 12px;
     text-transform: uppercase;
     color: #626466;
     margin-bottom: -5px;
}
 .program-accordion-content{
     padding: 0px !important;
     box-shadow: 3px 0px 5px rgba(0, 0, 0, 0.05);
}
 .mod-label{
     font-size: 18px;
     color: black;
     font-weight: 200;
}
 .mod-value{
     font-size: 20px;
     color: black;
     text-transform: uppercase;
}
 .modality-row{
     background-color: #f5f5f5;
     margin-bottom: 20px;
}
 .mod-explore-btn {
     color: white;
     background-color: #A1182C;
     border-color: #A1182C;
     text-decoration: none;
     padding: 15px;
     max-width: 120px;
}
.mod-explore-btn:hover {
    color: white;
    text-decoration: none;
    background-color: rgb(122, 17, 39);
}
 .mod-divider{
     font-size: 45px;
     font-weight: 200 !important;
}
 .mod-divider.fa-regular.fa-pipe{
     color: #bbbbbb !important;
     margin-left: 5px;
}
 .modality-start-btn{
     max-width: 150px;
}
 .program-accordion-title{
     font-family: 'GothamSSmExtraNarrowMedium';
     font-weight: 100 !important;
}
 .mod-value{
     font-family: 'GothamSSmExtraNarrowMedium';
}
 @media (max-width: 576px){
     .mod-item {
         flex: 0 0 60%;
         max-width: 100%;
         display: block !important;
    }
     .mod-divider{
         display: none !important;
    }
     .mod-start, .mod-experience, .mod-courses{
         padding-bottom: 10px;
         border-bottom: solid 1px #bbbbbb;
         margin-left: 20px;
         margin-right: 20px;
    }
     .mod-start, .mod-months, .mod-courses{
         padding-top: 10px;
    }
     .mod-label {
         margin-right: 10px;
    }
     .program-title{
         font-size: 25px !important;
    }
     .program-specialization, .program-track {
         margin-top: -5px;
    }
     .callout-full-bleed {
     position: relative;
     left: 50%;
     right: 50%;
     margin-left: -50vw;
     margin-right: -50vw;
     width: 100vw;
}
}
 .modalities-container .d-flex > div:not(:last-child) .program-modality::after {
     content: "|";
     display: inline-block;
     margin: 0 .5rem;
}
 .modalities-container .program-modality {
     display: inline;
}
 .filter-container {
     position: relative;
     z-index: 1000;
}
 .filter-container > * {
     position: relative;
}
 .custom-dropdown .dropdown-menu {
     z-index: 2000;
     padding: 0rem !important;
     transform: none !important;
     inset: 0px auto auto 0px !important;
}
 .custom-dropdown .dropdown-toggle::after, .custom-dropdown .btn .fa, .custom-dropdown .btn .fa::before, .custom-dropdown .btn .fa::after {
     pointer-events: none;
}
 .custom-dropdown .dropdown-toggle {
     line-height: 1.5;
}
 .accordion-icon{
     color: #A1182C;
     font-size: 25px;
}
 .accordion-icon::before {
     font-family: 'FontAwesome';
     content: "\f067";
    /* Plus icon */
     display: inline-block;
     transition: transform 0.3s;
}
 button:not(.collapsed) .accordion-icon::before {
     font-family: 'FontAwesome';
     content: "\f068";
    /* Minus icon */
}
/* Mobile Filter Styles */
 @media (min-width: 992px) {
     .filter-row.collapse {
         display: flex !important;
    }
}
 @media (max-width: 992px) {
     .selected-filter {
         margin: 15px 5px 0px 5px !important;
    }
     .program-list-container .sidebar{
         display: none;
    }
     .filter-container{
         color: black;
    }
     .clear-filters{
         display: block;
         width: 100% !important;
         background: none;
         border: 0;
         padding: 0;
         margin: 0;
         cursor: pointer;
    }
     .filter-row {
         display: block;
         flex-wrap: nowrap;
    }
     .custom-card {
         padding: 0rem !important;
    }
     .custom-search{
         width: 100% !important;
    }
     .filter-content{
         margin-left: 0rem !important;
         margin-right: 0rem !important;
    }
     .filter-container .row, .filter-container .col, .filter-container .col-12, .filter-container .col.mt-1{
         display:block;
         width:100% !important;
         max-width:100%;
    }
     .custom-dropdown{
         width:100%;
    }
     .custom-dropdown .dropdown-toggle{
         width:100%;
         background-color: #FCFCFC;
    }
     .custom-menu{
         width:100%;
         max-width:none !important;
         border-radius:12px;
         padding:8px;
    }
     .selected-filter-container{
         display:flex;
         flex-wrap:wrap;
    }
     .selected-filter{
         border-radius:999px;
         padding: 5px 14px 3px 14px;
         letter-spacing:.02em;
         font-size: 14px;
    }
}
 .custom-input:checked + .custom-label{
     color:#fff;
}
 .custom-label{
     border-radius:999px;
}
/* CTA Styles */
 .sidebar-cta {
     border-radius: 15px !important;
     min-height: 200px;
     padding: 25px;
     color: white;
}
 .sidebar-cta:nth-child(odd)::before {
     content: "";
     position: absolute;
     inset: 0;
     background: rgba(122, 17, 38, 0.8);
     pointer-events: none;
     z-index: 0;
}
 .sidebar-cta:nth-child(even)::before {
     content: "";
     position: absolute;
     inset: 0;
     background: rgba(102, 102, 102, 0.8);
     pointer-events: none;
     z-index: 0;
}
 .sidebar-cta > * {
     position: relative;
     z-index: 1;
}
 .sidebar-cta h4, .sidebar-cta p {
     color: inherit;
     margin: 0 0 8px;
}
 .sidebar-cta h4{
     font-family: 'GothamSSmExtraNarrowMedium';
     font-size: 30px;
     text-transform: uppercase;
}
 .sidebar-cta p {
     font-size: 16px;
}
 .cta-button-text{
     color: white !important;
     text-decoration: none !important;
     font-weight: 600;
}
 .sidebar.col-md-3{
     padding-left: 0px !important;
}
 .program-callout {
     position: relative;
     background: #fff;
     box-shadow: 0 0 0 100vmax #fff;
     clip-path: inset(0 -100vmax);
     background-color: white;
     overflow: hidden;
}
 .callout-text{
     max-width: 400px;
}
 .summary-container .summary-title {
     font-size: 16px;
     font-weight: 400;
     color: #353535 !important;
}
 .summary-container .summary-description {
     font-size: 16px;
     color: black;
     font-weight: 290;
}
 .summary-description {
     white-space: pre-line;
}
 .filter-degree{
     background-color: #7A1127;
}
 .filter-modality{
     background-color: #A6192E;
}
 .filter-subject{
     background-color: #626466;
}
 .filter-container button[data-bs-toggle="collapse"] .fa-plus {
     display: none;
}
 .filter-container button[data-bs-toggle="collapse"].collapsed .fa-plus {
     display: inline-block;
     font-size: 20px;
     font-weight: 500;
}
 .filter-container button[data-bs-toggle="collapse"].collapsed .fa-x {
     display: none;
}
 .custom-menu .form-check{
     padding-left: 0rem !important;
}
 .custom-menu .form-control{
     height: 40px !important;
}
 .custom-menu .checkbox-items{
     max-height: 50vh;
     overflow-x: auto;
}
 .clear-filters, .filter-header{
     color: rgb(166, 25, 46);
     font-weight: 300;
     font-size: 16px;
}
 .callout-full-bleed {
     position: relative;
     width: 100vw;
}
 .program-callout {
     margin: 0 auto;
     padding-right: 15px;
}
 .callout-image-container {
     max-height: 350px;
     height: 40vh;
     overflow: hidden;
}
 .callout-image-container img {
     width: 100%;
     height: 100%;
     object-fit: cover;
     object-position: bottom;
     display: block;
}
 