/*.program-map-wrapper{
    display:flex;
    gap:20px;
}

.program-sidebar{
    width:320px;
    background:#fff;
    padding:20px;
    border:1px solid #ddd;
    border-radius:10px;
}

.program-sidebar h3{
    margin-top:0;
}

.program-sidebar input,
.program-sidebar select{
    width:100%;
    margin-bottom:15px;
    padding:10px;
}

.program-map{
    flex:1;
}

#program-map{
    width:100%;
    height:700px;
    border-radius:10px;
}


.program-container{
    display:flex;
    gap:25px;
    align-items:flex-start;
}

.program-sidebar{

    width:330px;

    background:#fff;

    border-radius:12px;

    box-shadow:0 3px 15px rgba(0,0,0,.08);

    padding:25px;

    position:sticky;

    top:30px;
}

.program-sidebar h2{

    margin-top:0;

    margin-bottom:25px;

    color:#1d3557;

    font-size:26px;

}


.filter-box {
    margin-bottom: 27px;
}

.filter-box label {
    display: block;
    margin-bottom: 8px;
    font-weight: 600;
    color: #000000;
    font-size: 16px;
    font-family: 'Montserrat';
}

.map-top-section aside.program-sidebar h2 {
    font-family: Montserrat;
    font-weight: 600;
    color: #11334C;
    font-size: 18px;
    line-height: 100%;
    letter-spacing: 0%;
    text-transform: uppercase;
    margin-bottom: 20px;
}
.filter-box input, .filter-box select {
    width: 100%;
    height: 37px !important;
    border: 1px solid #1BA6B3 !important;
    border-radius: 10px !important;
    font-size: 14px;
    color: #4A4848;
    padding: 0 10px !important;
    background: transparent;
    margin-bottom: 0;
}

.filter-box input:focus,
.filter-box select:focus{

    outline:none;

    border-color:#0067b8;

}

#reset-program-filter{

    width:100%;

    padding:12px;

    border:0;

    background:#163a5c;

    color:#fff;

    border-radius:8px;

    cursor:pointer;

    font-size:15px;

}

#reset-program-filter:hover{

    background:#245b8f;

}

.program-map-area{

    flex:1;

}

.program-top{

    display:flex;

    justify-content:space-between;

    margin-bottom:20px;

}

.program-top h3{

    margin:0;

    font-size:26px;

    color:#163a5c;

}

#program-count{

    color:#007a5e;

    margin-left:10px;

}

#program-map{

    height:720px;

    border-radius:12px;

    overflow:hidden;

    box-shadow:0 3px 12px rgba(0,0,0,.12);

}

.leaflet-popup-content{

    font-size:14px;

}

.popup-title{

    font-size:16px;

    font-weight:700;

    margin-bottom:10px;

}

.popup-btn{

    display:inline-block;

    margin-top:10px;

    padding:8px 15px;

    background:#0067b8;

    color:#fff !important;

    border-radius:6px;

    text-decoration:none;

}
.map-top-section {
    width: 100%;
}


.map-top-section .site-container {
    display: flex;
    gap: 31px;
    align-items: flex-start;
}
.map-banner.program-details {
    width: 100%;
    padding: 50px 0;
}

.map-top-section aside.program-sidebar {
    border: 1px solid #1BA6B3;
    background: #FAFCFA;
    width: 323px;
}

.map-top-section aside.program-sidebar h2 {
    font-family: Montserrat;
    font-weight: 600;
    color: #11334C;
    font-size: 18px;
    line-height: 100%;
    letter-spacing: 0%;
    text-transform: uppercase;
    margin-bottom: 20px;
}

@media(max-width:991px){

.program-container{

flex-direction:column;

}

.program-sidebar{

width:100%;

position:relative;

top:0;

}

#program-map{

height:500px;

}

}


.program-layout{

    display:flex;

    gap:20px;

}

.program-results{

    width:340px;

    height:720px;

    overflow:auto;

    border:1px solid #ddd;

    border-radius:10px;

    background:#fff;

}

.program-map-wrap{

    flex:1;

}

.program-card{

    padding:15px;

    border-bottom:1px solid #eee;

    cursor:pointer;

    transition:.3s;

}

.program-card:hover{

    background:#f5f8fc;

}

.program-card.active{

    background:#eaf5ff;

    border-left:4px solid #0b73c8;

}

.program-card h4{

    margin:0 0 8px;

    color:#163a5c;

    font-size:17px;

}

.program-address{

    font-size:13px;

    color:#666;

}

.program-link{

    display:inline-block;

    margin-top:10px;

    color:#0073aa;

    text-decoration:none;

}


.program-toolbar{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin-bottom:15px;

}

.pm-btn{

    background:#0b73c8;

    color:#fff;

    border:none;

    border-radius:6px;

    padding:10px 18px;

    cursor:pointer;

}

.pm-btn:hover{

    background:#095fa3;

}

#program-loading{

    display:none;

    color:#555;

    font-weight:bold;

}

.no-program{

    padding:20px;

    text-align:center;

    color:#777;

}*/