:root {
    --search-width: 400px;
    --legend-width: 450px;
    --menu-width: 300px;
    --menu-width-mobile: 300px;
    --menu-width-min: 275px;
    --offset-top: 20px;
    --offset-bottom: 20px;
    --offset-left: 3rem;
    --offset-right: 3rem;
    --offset-top-mobile: 25px;
    --offset-bottom-mobile: 20px;
    --offset-left-mobile: 20px;
    --offset-right-mobile: 20px;
    --icon-size: 50px;
    --reconstruction-mobility: #57bed2;
    --reconstruction-parks: #5c9b36;
    --reconstruction-facilities: #654626;
    --reconstruction-drainage: #54565a;
    --rehabilitation-mobility: #89d2e1;
    --rehabilitation-parks: #8cb872;
    --rehabilitation-facilities: #937c67;
    --rehabilitation-drainage: #838588;
}

html,
body {
    overflow-x: hidden;
}

input[type=checkbox] {
    display: none;
}

.vertical-middle {
    vertical-align: middle;
}

#mobile-rehab {
    overflow-y: auto;
    max-height: calc(100dvh - 180px);
}

#myLinks {
    transition: all 0.5s ease;
    display: none;
    background-color: #1B365D;
    color: #ffffff;
    position: relative;
    height: 100%;
    overflow-y: auto;
    overflow-x: hidden;
    width: var(--menu-width);
    z-index: 1;
}

#mobileLinks {
    transition: all 0.5s ease;
    background-color: #1B365D;
    color: #ffffff;
    position: absolute;
    height: 100%;
    overflow-y: auto;
    overflow-x: hidden;
    width: min(var(--menu-width-mobile), 100vw);
    z-index: 130;
    /*calc(100% - 120px) height of the mobileContent 60px is height of the projFooter*/
    max-height: calc(100% - 120px + 60px);
}

#projbanner {
    height: 30px;
    background-color: #1B365D;
    text-align: center;
    /*vertical-align: middle;*/
}

#projectList {
    transition: all 0.5s ease;
    display: none;
    width: var(--menu-width);
    position: relative;
    height: 100%;
    background-color: #ffffff;
    z-index: 99;
    overflow: auto;
}

#hideProjects {
    display: none;
}

#hideStatus {
    display: none;
}

#hideInfrastructure {
    display: none;
}

#showRegion {
    display: none;
}

#hideRegion {
    display: block;
}

#projList {
    display: none;
}

#statusList {
    display: none;
}

#infrastructureList {
    display: none;
}

#regionList {
    display: none;
}

#mobileProjList {
    display: none;
}

#mobileStatusList {
    display: none;
}

#mobileInfrastructureList {
    display: none;
}

#mobileRegionList {
    display: none;
}

#projDetails {
    position: relative;
    z-index: 1050;
    display: none;
    padding-left: 0px;
    padding-right: 0px;
    /*padding-left: 30px;
    padding-right: 30px;
    background-color: #000000;*/
}

.padding-30 {
    padding: 25px 30px 50px 70px;
}

.padding-25 {
    padding: 25px 20px 15px 25px;
}

.padding-r0 {
    padding-right: 0px;
}

.padding-r40 {
    padding-right: 40px;
}

#menu {
    transition: all 0.5s ease;
    z-index: 99;
    top: var(--offset-top);
    left: var(--offset-left);
    position: absolute;
    padding: 6px 10px 10px 6px;
}

#mobileMenu {
    z-index: 99;
    top: var(--offset-top-mobile);
    left: var(--offset-left-mobile);
    position: absolute;
    padding: 6px 10px 10px 6px;
}

.circleIcon {
    background-color: #D7A027;
    width: var(--icon-size);
    height: var(--icon-size);
    -moz-border-radius: 25px;
    -webkit-border-radius: 25px;
    border-radius: 25px;
}

.circleIcon2 {
    background-color: #D7A027;
    width: var(--icon-size);
    height: var(--icon-size);
    -moz-border-radius: 25px;
    -webkit-border-radius: 25px;
    border-radius: 25px;
}

#projExpandIcon {
    z-index: 99;
    top: var(--offset-top);
    right: -25px;
    position: absolute;
    padding: 10px 10px 10px 12px;
}

.arrowIcon {
    z-index: 99;
    top: var(--offset-top);
    right: 0px;
    position: absolute;
    background-color: #D7A027;
    padding: 8px 10px 10px 7px;
    width: calc(var(--icon-size) / 2);
    height: var(--icon-size);
    border-bottom-left-radius: 50px;
    border-top-left-radius: 50px;
    border-right: 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.page-wrapper {
    width: calc(100vw - (100vw - 100%));
    /*text-align: left;
    padding-left: 30px;
    padding-right: 30px;*/
    height: calc(100dvh - 72.99px);
    min-height: calc(100dvh - 72.99px);
    position: relative;
    margin-top: 72.99px;
    overflow-x: hidden;
    /*overflow-y: scroll;*/
    /*background-color: #000000;*/
}

.page-wrapper-preview,
.page-wrapper-ehmap {
    width: calc(100vw - (100vw - 100%));
    height: 100dvh;
    min-height: 100dvh;
    position: relative;
    overflow-x: hidden;
}

.mobile-wrapper {
    overflow: hidden;
    width: 100%;
    height: calc(100% - 120px);
    min-height: calc(100% - 120px);
    margin-top: 65px;
}

#spinner {
    z-index: 120;
    position: absolute;
    top: 50%;
    left: 50%;
    color: #1B365D;
}

#reconSpinner {
    z-index: 120;
    max-width: 100% !important;
    height: 100%;
    position: absolute;
    top: 0px;
}

#content {
    position: relative;
    width: 100%;
    height: 100%;
}

#mobileContent {
    position: relative;
    width: 100%;
    height: calc(100% - 60px);
}

#mobileProjectList {
    position: relative;
    width: 100%;
    height: calc(100% - 4px);
    overflow-y: auto;
}

#mobileProjDetails {
    position: relative;
    width: 100%;
    height: calc(100% - 4px);
    overflow-y: auto;
    padding-left: 0px;
    padding-right: 0px;
}

.googleMap {
    width: 100%;
    height: 100%;
}

.googleMap-preview,
.googleMap-ehmap {
    width: 100%;
    height: 100dvh;
}

.googleMapMob {
    width: 100%;
    height: calc(100dvh - 120px);
}

.googleMapMob-preview,
.googleMapMob-ehmap {
    width: 100%;
    height: calc(100dvh - 60px);
}

#projFooter {
    width: 100%;
    position: relative;
    bottom: 0;
    height: 61px;
    background-color: #1B365D;
}

.mobilePopup {
    padding-left: 0px;
    padding-right: 0px;
}

.mobilePopupContent {
    position: absolute;
    z-index: 120;
    max-height: calc(100dvh - 120px);
    width: 100%;
    bottom: 60px;
    overflow-y: auto;
}

.mobilePopup-preview,
.mobilePopup-ehmap {
    width: 100%;
    bottom: 64px;
    max-height: calc(100dvh - 60px);
    position: absolute;
    z-index: 120;
    padding-left: 0px;
    padding-right: 0px;
    overflow-y: auto;
}

.chart-padding-l40 {
    padding-left: 2rem;
}

hr {
    background-color: #ffffff;
}

a {
    color: #1B365D;
}

#menu a {
    color: #ffffff;
}

#projIcon a {
    color: #ffffff;
}

#menuIcon a {
    color: #fff;
}

#projExpandIcon a {
    color: #ffffff;
}

a .material-icons {
    color: #fff;
}

#myLinks a .material-icons {
    color: #ffffff;
}

#mobileLinks a .material-icons {
    color: #ffffff;
}

#menuIcon a .material-icons {
    color: #fff;
}

.circleIcon2 a .material-icons {
    color: #ffffff;
}

#popupArrow .material-icons {
    color: #ffffff;
}

#mobMapView .material-icons {
    color: #ffffff;
}

#mobMapViewHidden .material-icons {
    color: #1B365D;
}

#mobProjList .material-icons {
    color: #1B365D;
}

#mobProjListHidden .material-icons {
    color: #ffffff;
}

.material-icons.md-22 {
    font-size: 22px;
}

.material-icons.md-28 {
    font-size: 28px;
}

.material-icons.md-32 {
    font-size: 32px;
}

#mobMapView {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 50%;
    height: 100%;
    box-shadow: 0 -2px 4px 0 rgba(0, 0, 0, 0.5);
    color: #ffffff;
}

#mobMapView strong,
#mobMapViewHidden strong,
#mobProjList strong,
#mobProjListHidden strong {
    margin-top: 4px;
}

#mobMapViewHidden {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 50%;
    height: 100%;
    box-shadow: 0 -2px 4px 0 rgba(0, 0, 0, 0.5);
}

#mobProjList {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 50%;
    height: 100%;
    box-shadow: 0 -2px 4px 0 rgba(0, 0, 0, 0.5);
}

#mobProjListHidden {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 50%;
    height: 100%;
    box-shadow: 0 -2px 4px 0 rgba(0, 0, 0, 0.5);
    color: #ffffff;
}

#body {
    /*background-color: #000000;*/
    /*overflow-y: scroll;*/
}

.popover-body {
    color: #1B365D;
    font-family: 'Univers LT Std 55 Roman';
    font-size: 14px;
    font-style: normal;
    font-weight: normal;
}

#search {
    transition: all 0.5s ease;
    border-radius: 25px;
    border: 0px solid;
    padding: 27.5px 42px 22.5px 65px;
    width: var(--search-width);
    height: 15px;
    top: var(--offset-top);
    position: absolute;
    z-index: 2;
    left: var(--offset-left);
    box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.5);
}

#searchResults {
    transition: all 0.5s ease;
    position: absolute;
    top: calc(var(--offset-top) + 50px);
    left: var(--offset-left);
    color: black;
    padding-left: 50px;
    width: var(--search-width);
    z-index: 2;
    bottom: 10px;
    overflow-y: auto;
}

#mobileSearch {
    border-radius: 25px;
    border: 0px solid;
    padding: 27.5px 35px 22.5px 55px;
    width: calc(100vw - 100px);
    height: 15px;
    top: var(--offset-top-mobile);
    position: absolute;
    z-index: 2;
    left: var(--offset-left-mobile);
    right: 80px;
    box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.5);
}

#mobileSearchResults {
    position: absolute;
    top: 75px;
    left: var(--offset-left-mobile);
    color: black;
    padding-left: 50px;
    width: calc(100vw - 100px);
    z-index: 2;
    overflow-y: auto;
    bottom: 60px;
}

#clearBtn {
    width: 36px;
    height: 36px;
    transition: all 0.5s ease;
    top: calc(var(--offset-top) + 12px);
    left: calc(var(--search-width) + var(--offset-left) - 40px);
    position: absolute;
    display: none;
    z-index: 150;
}

#mobileClearBtn {
    width: 36px;
    height: 36px;
    top: 35px;
    right: 80px;
    position: absolute;
    display: none;
    z-index: 100;
    /*border: 1px solid transparent;
    background-color: transparent;
    display: inline-block;
    vertical-align: middle;
    outline: 0;
    cursor: pointer;
    color: #1B365D;
    z-index: 3;*/
}

.closeButton {
    border: 1px solid transparent;
    background-color: transparent;
    display: inline-block;
    vertical-align: middle;
    outline: 0;
    cursor: pointer;
    color: #1B365D;
    z-index: 3;
}

#search:not(:valid)~.closeButton {
    display: none;
}

#projTitle {
    padding: 60px 20px 40px 40px;
}

#projContent>div:nth-child(even) {
    background: #f9f9f9;
}

#projContent>div:nth-child(odd) {
    background: #ffffff;
}

#mobileProjTitle {
    padding: 16px 16px 14px 16px;
}

#mobileProjContent>div:nth-child(even) {
    background: #f9f9f9;
}

#mobileProjContent>div:nth-child(odd) {
    background: #ffffff;
}

/*
#searchResults div:nth-child(even) {
    background: #e9ecef;
}

#searchResults div:nth-child(odd) {
    background: #e7e6e6;
}*/

.bottom-border {
    border-top: 1px solid #c7c8ca;
    ;
}

#projContent div {
    border-left: 8px solid #D7A027 transparent;
}

#projContent div:hover {
    background: #cccccc;
    border-left: 8px solid #D7A027;
}

.button3 {
    background-color: #ffffff;
    padding: 7px 5px 5px 7px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    margin: 4px 2px;
    cursor: pointer;
    /*box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.5);*/
    border-radius: 28px;
    border: 3px solid #001f60;
}

.overlay {
    display: inline-block;
    width: 180px;
    position: relative;
    color: #001f60;
    top: 90px;
    left: 50px;
    text-align: center;
    z-index: 110;
}

.mobile-overlay {
    display: inline-block;
    width: 100%;
    position: relative;
    color: #001f60;
    top: -65px;
    text-align: center;
    z-index: 110;
}

.item-progress {
    display: -ms-flexbox;
    display: flex;
    height: 0.6rem;
    overflow: hidden;
    font-size: .75rem;
    background-color: #e9ecef;
}

.item-progress-bar {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: center;
    justify-content: center;
    color: #fff;
    text-align: center;
    white-space: nowrap;
    background-color: #001f60;
    transition: width .6s ease;
}

.button3:focus {
    outline: none;
}

.button3:active {
    outline: none;
}

#search:focus {
    outline: none;
}

#search:active {
    outline: none;
}

#mobileSearch:focus {
    outline: none;
}

#mobileSearch:active {
    outline: none;
}

.proj-overlay {
    display: inline-block;
    width: 170px;
    max-width: 200px;
    text-align: center;
    position: relative;
    color: #001f60;
    top: 145px;
    left: 45px;
    z-index: 110;
}

.mobile-proj-overlay {
    display: inline-block;
    width: 120px;
    max-width: 120px;
    text-align: center;
    position: relative;
    color: #001f60;
    top: 70px;
    left: 15px;
    z-index: 110;
}

.legend-icon {
    width: 16px;
}

.legend1 {
    background-color: #53565A;
}

.legend2 {
    background-color: #00BED6;
}

.legend3 {
    background-color: #F88D2B;
}

.legend4 {
    background-color: #688197;
}

.tooltip_title_center {
    text-align: center
}

.padding-l30 {
    padding-left: 25px;
}

.padding-l22 {
    padding-left: 22px;
}

.padding-l40 {
    padding-left: 40px;
}

.padding-pl40 {
    padding-left: 40px;
}

@media only screen and (min-width: 0px) and (max-width: 348.98px) {
    .tooltip_title_center {
        text-align: center;
        /*padding-left: 2rem;*/
    }

    #spinner {
        z-index: 120;
        position: absolute;
        top: 50%;
        left: 25%;
        color: #1B365D;
    }
}

@media only screen and (min-width: 350px) and (max-width: 767.98px) {
    #spinner {
        z-index: 120;
        position: absolute;
        top: 50%;
        left: 30%;
        color: #1B365D;
    }

    #mobileSearchResults {
        position: absolute;
        top: 75px;
        left: var(--offset-left-mobile);
        color: black;
        padding-left: 50px;
        width: calc(100vw - 100px);
        z-index: 2;
        overflow-y: auto;
        bottom: var(--offset-bottom-mobile);
    }
}

/* Medium devices (landscape tablets, 768px and up) */

@media only screen and (min-width: 768px) and (max-width: 991.98px) {
    #search {
        border-radius: 25px;
        border: 0px solid;
        padding: 27.5px 35px 22.5px 65px;
        width: var(--search-width);
        height: 15px;
        top: var(--offset-top);
        position: absolute;
        z-index: 2;
        left: var(--offset-left);
        box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.5);
    }

    #searchResults {
        position: absolute;
        top: calc(var(--offset-top) + 50px);
        left: var(--offset-left);
        color: black;
        padding-left: 50px;
        width: var(--search-width);
        z-index: 2;
    }

    .closeButton {
        border: 1px solid transparent;
        background-color: transparent;
        display: inline-block;
        vertical-align: middle;
        outline: 0;
        cursor: pointer;
        top: calc(var(--offset-top) + 12px);
        left: 415px;
        position: absolute;
        color: #1B365D;
        z-index: 3;
        display: none;
    }

    #clearBtn {
        top: calc(var(--offset-top) + 12px);
        left: calc(var(--search-width) + var(--offset-left) - 36px);
        position: absolute;
        display: none;
        z-index: 150;
    }

    /*.tooltip_title_center {
        text-align: left;
        padding-left: 30px;
    }*/
    #spinner {
        z-index: 120;
        position: absolute;
        top: 50%;
        left: 40%;
        color: #1B365D;
    }

    .padding-pl40 {
        padding-left: 70px;
    }
}

@media only screen and (min-width: 992px) and (max-width: 1198.98px) {
    #spinner {
        z-index: 120;
        position: absolute;
        top: 50%;
        left: 40%;
        color: #1B365D;
    }
}

/* Extra large devices (large laptops and desktops, 1200px and up) */

@media only screen and (min-width: 1200px) {}

.back-drop {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    width: 100%;
    height: calc(100% - 60px);
    overflow: auto;
    z-index: 119;
    padding: 20px;
    box-sizing: border-box;
    background-color: rgb(0, 0, 0);
    background-color: rgba(0, 0, 0, 0.75);
    text-align: center;
}

/* Feedback forms */

.click-here:hover {
    color: #D7A027 !important;
    opacity: 0.8 !important;
}

/*.click-here{
    cursor: pointer;
    color: #001f60 !important;
}*/

.click-here {
    color: #D7A027 !important;
    cursor: pointer;
    text-decoration: underline !important;
}

.app-modal {
    color: #ffffff;
    background-color: #1B365D;
    border-top-left-radius: 0rem;
    border-top-right-radius: 0rem;
}

.btn-message-close {
    cursor: pointer;
}

.btn-message-close:before {
    content: url('../images/icons/times-circle.svg')
}

.modal-close-btn {
    color: #ffffff;
    /*height: 6%;*/
    width: 6%;
}

.form-item-modal {
    border-color: #1B365D;
}

.rounded-textarea {
    border-radius: 1.25rem !important
}

.p-project-light {
    font-weight: lighter;
}

.p-modal-b-text-feedback {
    /*font-weight: bold;*/
    font-size: 0.9rem;
}

.btn-modal {
    color: #1B365D;
    border-color: #1B365D;
    background-color: #ffffff;
    font-weight: bold;
}

.btn-modal-icon {
    color: #1B365D;
    border-color: #1B365D;
    background-color: #ffffff;
    font-weight: bold;
    display: inline-flex;
    align-items: center;
}

.btn-modal-icon::before {
    content: "GO TO FAQs ";
    float: left;
}

.btn-modal-icon::after {
    content: url('../images/icons/arrow_right.svg');
    float: right;
    padding-left: 10px;
}

.btn-modal-submit,
.btn-modal-submit:hover,
.btn-modal-submit:active,
.btn-modal-submit:visited {
    color: #1B365D !important;
    border-color: #fff !important;
    background-color: #fff !important;
    box-shadow: none !important;
    ;
}

.fa-1-5x {
    font-size: 1.5em;
}

#legendContainer {
    transition: all 0.5s ease;
    right: var(--offset-right) !important;
    width: var(--legend-width);
    top: var(--offset-top);
    position: absolute;
    border-radius: 5px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}

.centered-legendContainer {
    bottom: var(--offset-bottom) !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    right: unset !important;
    top: unset !important;
}

.centered-search,
.centered-searchResults {
    left: 50% !important;
    transform: translateX(-50%) !important
}

.centered-clearBtn {
    left: calc(50% + var(--search-width)/2 - 45px) !important;
}

.centered-menu {
    left: calc(50% - var(--search-width)/2) !important;
    transform: translateX(-calc(50% - var(--search-width)/2)) !important;
}

#legendContainer img {
    width: 100% !important;
}

#mobileLegendContainer {
    width: 95%;
    max-width: 450px;
    position: absolute;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}

#mobileLegendContainer img {
    width: 100% !important;
}

#mobileTipsMenu {
    top: var(--offset-top-mobile);
    right: var(--offset-right-mobile);
    width: var(--icon-size);
    height: var(--icon-size);
}

.reconstruction-mobility {
    background-color: var(--reconstruction-mobility);
}

.reconstruction-parks {
    background-color: var(--reconstruction-parks);
}

.reconstruction-facilities {
    background-color: var(--reconstruction-facilities);
}

.reconstruction-drainage {
    background-color: var(--reconstruction-drainage);
}

.rehabilitation-mobility {
    background-color: var(--rehabilitation-mobility);
}

.rehabilitation-parks {
    background-color: var(--rehabilitation-parks);
}

.rehabilitation-facilities {
    background-color: var(--rehabilitation-facilities);
}

.rehabilitation-drainage {
    background-color: var(--rehabilitation-drainage);
}

.project-details-mobile-view-more-btn {
    width: 80%;
    margin-left: 10%;
}

.feedback-submit-btn {
    padding: .5rem .5rem .25rem .5rem !important;
}

.d-hide {
    visibility: hidden;
}

#projTitle {
    height: 200px;
}

@media only screen and (max-width: 768px) {
    .arrowIcon {
        top: calc(var(--offset-top-mobile) - 10px);
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        padding-left: 25px;
        width: calc((var(--icon-size) + 20px) / 2);
        height: calc(var(--icon-size) + 20px);
        border-right: 0.5px solid #D7A027;
    }

    .arrowIcon a {
        padding-top: 9px;
        padding-left: 9px;
    }
}

#filterNote ul {
    margin-block-start: 0 !important;
    margin-block-end: 0 !important;
    padding-inline-start: 1rem !important;
}

.image-filter-icon {
    width: 20px;
    height: 20px;
    object-fit: cover;
    border-radius: 50%;
    flex-shrink: 0;
    image-rendering: auto;
    -ms-interpolation-mode: bicubic;
}

#projDetails {
    min-height: calc(100vh - 72.98px);
}

.does-not-filter-map-label {
    font-size: 12px;
}