body {
    font-family: "Poppins", sans-serif !important;
    font-optical-sizing: auto;
    font-style: normal;
    background: rgb(91,206,250);
    background: -moz-linear-gradient(90deg, rgba(91,206,250,1) 0%, rgba(241,241,241,1) 50%, rgba(245,169,184,1) 100%);
    background: -webkit-linear-gradient(90deg, rgba(91,206,250,1) 0%, rgba(241,241,241,1) 50%, rgba(245,169,184,1) 100%);
    background: linear-gradient(90deg, rgba(91,206,250,1) 0%, rgba(241,241,241,1) 50%, rgba(245,169,184,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#5bcefa",endColorstr="#f5a9b8",GradientType=1);
    font-size: 16px;
}

a {
    text-decoration: none;
}

header nav {
    --bs-breadcrumb-divider: '>';
    display: flex;
}

header nav ol {
    margin: auto;
}

header nav a {
    color: #000;
}

.btn-primary {
    --bs-btn-color: #fff !important;
    --bs-btn-bg: #c60055 !important;
    --bs-btn-border-color: #c60055 !important;
    --bs-btn-hover-color: #fff !important;
    --bs-btn-hover-bg: #b0004a !important;
    --bs-btn-hover-border-color: #9f0043 !important;
    --bs-btn-focus-shadow-rgb: 198, 0, 85 !important;
    --bs-btn-active-color: #fff !important;
    --bs-btn-active-bg: #9f0043 !important;
    --bs-btn-active-border-color: #8b003c !important;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125) !important;
    --bs-btn-disabled-color: #fff !important;
    --bs-btn-disabled-bg: #c60055 !important;
    --bs-btn-disabled-border-color: #c60055 !important;
}

.text-primary {
    color: #c60055 !important;
}

.navbar {
    background-color: #fff;
}

.navbar-nav .nav-link.active {
    color: rgb(198 0 85) !important;
    font-weight: 500;
}

#map {
    height: 700px;
    border-radius: 8px;
}
.popup-content {
    font-family: "Oswald", sans-serif;
    font-optical-sizing: auto;
    font-style: normal;
    font-size: 16px;
    color: #494949;
}
.popup-header {
    padding: 8px 10px;
}
.popup-header .tag, #unitag {
    display: flex;
    width: 90px;
    height: 30px;
    align-items: center;
    justify-content: center;
    background-size: contain;
    background-repeat: no-repeat;
    font-size: 16px;
    font-weight: 600;
    color: #fff;
}
.popup-header .tag.public, #unitag.public {
    background-image: url('../img/public-uni-tag.png');
}
.popup-header .tag.private, #unitag.private {
    background-image: url('../img/private-uni-tag.png');
}
.popup-header .name {
    font-size: 18px;
    font-weight: bold;
}
.popup-body {
    padding: 8px 10px;
}
.popup-content .university {
    display: flex;
    align-items: center;
    margin-top: 10px;
}
.popup-content .author{
    display: flex;
    align-items: center;
    margin-top: 14px;
}
.popup-content .university img {
    margin-right: 10px;
}
.popup-content .university span {
    font-size: 18px;
    text-transform: uppercase;
    font-weight: bold;
}
.popup-content .author img {
    border-radius: 50%;
    margin-right: 10px;
}
.popup-content .author span {
    font-size: 16px;
    text-transform: uppercase;
    font-weight: bold;
}
.popup-body .details {
    margin-top: 14px;
    font-size: 14px;
}
.popup-body .details p, .popup-body .details ul {
    margin: 8px 0px !important;
}
.popup-footer {
    padding: 0 10px 10px 10px;
}
.popup-footer a {
    display: inline-block;
    color: #fff !important;
    padding: 10px 12px;
    margin-top: 8px;
    font-weight: bold;
    text-transform: uppercase;
    text-decoration: none;
    border-radius: 8px;
}
.popup-footer a.public {
    background-color: #006a8b;
}
.popup-footer a.private {
    background-color: #e74c3c;
}
.leaflet-popup-content-wrapper, .leaflet-popup-tip {
    background: #f0f0f0 !important;
}
.leaflet-container a.leaflet-popup-close-button {
    width: 34px !important;
    height: 34px !important;
    font: 40px / 38px "Poppins", sans-serif !important;
    color: #808080 !important;
}
.leaflet-control-attribution {
    font-size: 10px !important;
}
#map-filter {
    position: absolute;
    z-index: 9999;
    left: 8px;
    top: 10px;
    font-size: 14px;
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
    font-size: 14px;
}
.select2-container--default .select2-results__option {
    font-size: 14px;
}
#reset-map-btn {
    position: absolute;
    bottom: 10px;
    left: 8px;
    z-index: 9999;
    font-size: 14px;
}
.hidden {
    display: none;
}

.bento-box {
    background-color: #fff;
    border-radius: 8px;
}
.bento-box-content {
    padding: 16px;
}

.university-list, .university-list li, .university-list li a {
    color: #494949;
}

.university-list li {
    margin-top: 8px;
}

.video-container {
    position: relative;
    width: 100%;
    padding-bottom: 56.25%; /* 16:9 aspect ratio */
    height: 0;
    overflow: hidden;
}

.video-container iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.font-12 { font-size: 12px !important; }
.font-14 { font-size: 14px !important; }
.font-16 { font-size: 16px !important; }
.font-18 { font-size: 18px !important; }
.font-20 { font-size: 20px !important; }
.font-22 { font-size: 22px !important; }
.font-24 { font-size: 24px !important; }
.font-26 { font-size: 26px !important; }
.font-28 { font-size: 28px !important; }
.font-30 { font-size: 30px !important; }
.font-40 { font-size: 40px !important; }

.mini-py{ padding-top:5px !important; padding-bottom:5px !important; }
.mini-px{ padding-left:5px !important; padding-right:5px !important; }
.mini-pt{ padding-top:5px !important; } .mini-pr{ padding-right:5px !important; } .mini-pb{ padding-bottom:5px !important; } .mini-pl{ padding-left:5px !important; }
.xxs-py{ padding-top:15px !important; padding-bottom:15px !important; }
.xxs-px{ padding-left:15px !important; padding-right:15px !important; }
.xxs-pt{ padding-top:15px !important; } .xxs-pr{ padding-right:15px !important; } .xxs-pb{ padding-bottom:15px !important; } .xxs-pl{ padding-left:15px !important; }
.xs-py{ padding-top:30px !important; padding-bottom:30px !important; }
.xs-px{ padding-left:30px !important; padding-right:30px !important; }
.xs-pt{ padding-top:30px !important; } .xs-pr{ padding-right:30px !important; } .xs-pb{ padding-bottom:30px !important; } .xs-pl{ padding-left:30px !important; }
.sm-py{ padding-top:50px !important; padding-bottom:50px !important; }
.sm-px{ padding-left:50px !important; padding-right:50px !important; }
.sm-pt{ padding-top:50px !important; } .sm-pr{ padding-right:50px !important; } .sm-pb{ padding-bottom:50px !important; } .sm-pl{ padding-left:50px !important; }
.py{ padding-top:100px !important; padding-bottom:100px !important; }
.px{ padding-left:100px !important; padding-right:100px !important; }
.pt{ padding-top:100px !important; } .pr{ padding-right:100px !important; } .pb{ padding-bottom:100px !important; } .pl{ padding-left:100px !important; }
.md-py{ padding-top:150px !important; padding-bottom:150px !important; }
.md-px{ padding-left:150px !important; padding-right:150px !important; }
.md-pt{ padding-top:150px !important; } .md-pr{ padding-right:150px !important; } .md-pb{ padding-bottom:150px !important; } .md-pl{ padding-left:150px !important; }
.lg-py{ padding-top:200px !important; padding-bottom:200px !important; }
.lg-px{ padding-left:200px !important; padding-right:200px !important; }
.lg-pt{ padding-top:200px !important; } .lg-pr{ padding-right:200px !important; } .lg-pb{ padding-bottom:200px !important; } .lg-pl{ padding-left:200px !important; }
.xl-py{ padding-top:250px !important; padding-bottom:250px !important; }
.xl-px{ padding-left:250px !important; padding-right:250px !important; }
.xl-pt{ padding-top:250px !important; } .xl-pr{ padding-right:250px !important; } .xl-pb{ padding-bottom:250px !important; } .xl-pl{ padding-left:250px !important; }
.xxl-py{ padding-top:350px !important; padding-bottom:350px !important; }
.xxl-px{ padding-left:350px !important; padding-right:350px !important; }
.xxl-pt{ padding-top:350px !important; } .xxl-pr{ padding-right:350px !important; } .xxl-pb{ padding-bottom:350px !important; } .xxl-pl{ padding-left:350px !important; }
.mini-my{ margin-top:5px !important; margin-bottom:5px !important; }
.mini-mx{ margin-left:5px !important; margin-right:5px !important; }
.mini-mt{ margin-top:5px !important; } .mini-mr{ margin-right:5px !important; } .mini-mb{ margin-bottom:5px !important; } .mini-ml{ margin-left:5px !important; }
.xxs-my{ margin-top:15px !important; margin-bottom:15px !important; }
.xxs-mx{ margin-left:15px !important; margin-right:15px !important; }
.xxs-mt{ margin-top:15px !important; } .xxs-mr{ margin-right:15px !important; } .xxs-mb{ margin-bottom:15px !important; } .xxs-ml{ margin-left:15px !important; }
.xs-my{ margin-top:30px !important; margin-bottom:30px !important; }
.xs-mx{ margin-left:30px !important; margin-right:30px !important; }
.xs-mt{ margin-top:30px !important; } .xs-mr{ margin-right:30px !important; } .xs-mb{ margin-bottom:30px !important; } .xs-ml{ margin-left:30px !important; }
.sm-my{ margin-top:50px !important; margin-bottom:50px !important; }
.sm-mx{ margin-left:50px !important; margin-right:50px !important; }
.sm-mt{ margin-top:50px !important; } .sm-mr{ margin-right:50px !important; } .sm-mb{ margin-bottom:50px !important; } .sm-ml{ margin-left:50px !important; }
.my{ margin-top:100px !important; margin-bottom:100px !important; }
.mx{ margin-left:100px !important; margin-right:100px !important; }
.mt{ margin-top:100px !important; } .mr{ margin-right:100px !important; } .mb{ margin-bottom:100px !important; } .ml{ margin-left:100px !important; }
.md-my{ margin-top:150px !important; margin-bottom:150px !important; }
.md-mx{ margin-left:150px !important; margin-right:150px !important; }
.md-mt{ margin-top:150px !important; } .md-mr{ margin-right:150px !important; } .md-mb{ margin-bottom:150px !important; } .md-ml{ margin-left:150px !important; }
.lg-my{ margin-top:200px !important; margin-bottom:200px !important; }
.lg-mx{ margin-left:200px !important; margin-right:200px !important; }
.lg-mt{ margin-top:200px !important; } .lg-mr{ margin-right:200px !important; } .lg-mb{ margin-bottom:200px !important; } .lg-ml{ margin-left:200px !important; }
.xl-my{ margin-top:250px !important; margin-bottom:250px !important; }
.xl-mx{ margin-left:250px !important; margin-right:250px !important; }
.xl-mt{ margin-top:250px !important; } .xl-mr{ margin-right:250px !important; } .xl-mb{ margin-bottom:250px !important; } .xl-ml{ margin-left:250px !important; }
.xxl-my{ margin-top:350px !important; margin-bottom:350px !important; }
.xxl-mx{ margin-left:350px !important; margin-right:350px !important; }
.xxl-mt{ margin-top:350px !important; } .xxl-mr{ margin-right:350px !important; } .xxl-mb{ margin-bottom:350px !important; } .xxl-ml{ margin-left:350px !important; }
