.page-container {
    font-family: Aptos, sans-serif;
    background-color: #f7f7f7;
    font-size: 14px;
    color: #000;
    margin-top: 25px;
}
/* Normalize search popup style on non-Elementor pages */
.elementor-search-form {
  max-width: 500px;
  margin: 0 auto;
  padding: 20px;
}

.elementor-search-form input {
  font-size: 16px;
  height: auto;
}


.leaflet-control-geocoder-icon:hover {
    background-color: #fff !important;
}

.leaflet-control-geocoder-expanded {
    display: flex;
    align-items: center;
}

.leaflet-control-geocoder-expanded .leaflet-control-geocoder-form input {
    padding-left: 0;
}

#map {
    height: 100%;
    min-height: 600px !important;    
}

.rtmega-menu-area .desktop-menu-area ul.rtmega-megamenu .menu-item-has-children ul.rtmegamenu-contents.sub-menu.submenu {

    z-index: 9999;
    /* Increase if needed */f
}

#search-container {
    margin: 10px;
    width: 300px;
}

#search-box {
    border: 1px solid #858585;
    border-radius: 4px;
    box-shadow: none;
    background-color: #fff !important;
    height: 44px;
    padding: 8px;
    width: 100%;
    box-sizing: border-box;
    padding-right: 50px;
    text-overflow: ellipsis;
    /* Space for X button */
}

#location-list {
    margin-top: 10px;
    font-size: 16px;
    font-weight: bold;
}

#location-list ul {
    list-style-type: none;
    padding: 0;
}

#location-list li {
    padding: 8px;
    border-bottom: 1px solid #ddd;
}

.suggestions {
    position: absolute;
    background: white;
    width: calc(100% - 8px);   
    z-index: 1000;
    max-height: 200px;
    overflow-y: auto;
}

.suggestions div {
    padding: 8px;
    cursor: pointer;
}

.suggestions div:hover {
    background: #f0f0f0;
}

.search-wrapper {
    position: relative;
    /* width: 100%; */
}

#reactOutPopup,
#seeSampleReport,
#questionPopup {
    background-color: #fff;
}

.clear-search-btn {
    position: absolute;
    right: 26px;
    top: 50%;
    transform: translateY(-50%);
    cursor: pointer;
    font-size: 20px;
    display: none;
    /* Initially hidden */
    background-color: #000;
    color: #fff;
    width: 24px;
    height: 24px;
    border-radius: 30px;
    /* display: flex; */
    align-items: center;
    justify-content: center;
}

.clear-search-btn:hover {
    opacity: 0.7;
}

.initial-search {
    position: absolute;
    bottom: 30%;
    left: 20%;
    right: 20%;
    z-index: 1000;
    width: 60%;
    background-color: #f7f7f7;
    border: 1px solid #a2a2a2;
    border-radius: 8px;
    padding: 16px 24px;
    max-width: 1020px;
    margin: auto;
}

.locations-title {
    color: #303030;
    font-size: 24px;
    font-weight: 600;
}

.initial-search .locations-title {
    margin-top: 6px !important;
}

.locate-me-btn {
    background-color: transparent !important;
    color: #E45234;
    font-size: 16px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    text-decoration: none;
    box-shadow: none;
    border: none;
    height: 34px;
}

.initial-search .locate-me-btn {
    font-size: 16px;
    height: 44px;
    border: 2px solid #303030 !important;
    color: #303030 !important;
}

.locate-me-btn:focus {
    box-shadow: none;
}

.initial-search .search-result-wrapper,
.initial-search .btns-wrapper {
    display: none !important;
}

.btns-wrapper {
    position: absolute;
    bottom: 0;
}

.location-list h3 {
    color: #303030;
    font-size: 20px;
    font-weight: 600;
}

.location-list h4 {
    color: #008000;
    font-size: 14px;
    font-weight: 700;
}

.selected-offices-table {
    background-color: #fff;
}

.selected-offices-table thead th {
    font-size: 13px;
    font-weight: 700;
    color: #1D2433;
    text-transform: uppercase;
    border-color: #E1E6EF;
    background-color: #F1F3F9;
}

.selected-offices-table tbody td {
    font-size: 14px;
    line-height: 1.3;
    color: #1D2433;
    border-color: #E1E6EF;
    vertical-align: middle;
}

.delete-office-btn {
    color: #fff !important;
    background-color: #F24726 !important;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    text-decoration: none;
    box-shadow: none !important;
    border: none;
    padding: 0;
    width: 14px;
    height: 14px;
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-left: 1px;
}

.modal-office-name {
    font-size: 16px;
    line-height: 24px;
    font-weight: 600;
    margin-bottom: 12px;
}

.modal-location {
    font-size: 14px;
    line-height: 21px;
    font-weight: 400;
    color: #303030;
}

.modal-btn {
    font-size: 12px;
    line-height: normal;
    font-weight: 700;
    color: #303030;
    min-width: 100%;
    max-width: 100%;
    border-radius: 4px;
    border-color: #303030;
    margin: 0;
    margin-top: 12px;
    box-shadow: none !important;
    padding: 6px 0;
}

.modal-btn:focus {
    background-color: #303030 !important;
    color: #fff !important;
}

.leaflet-popup-content {
    min-width: 146px;
    max-width: 270px;
}

.leaflet-popup-content-wrapper {
    background-color: #fff;
    border-radius: 4px;
    /* padding: 16px; */
}

.leaflet-popup-content {
    margin: 16px;
    padding-top: 10px;
}

.table-responsive {
    max-height: calc(100vh - 500px);
    overflow-y: auto;
}
@media screen and (min-height: 735px) {
.table-responsive {
max-height:235px !important;
}
}

.custom-scrollbar::-webkit-scrollbar-track {
    background-color: transparent;
}

.custom-scrollbar::-webkit-scrollbar {
    height: 4px;
    width: 4px;
    background-color: transparent;
}

.custom-scrollbar::-webkit-scrollbar-thumb {
    background: #979696;
    border-radius: 38px;
}

.download-btn {
    background-color: #fff !important;
    border-radius: 4px !important;
    color: #008000 !important;
    border: 2px solid #008000 !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    text-transform: uppercase;
    box-shadow: none !important;
    width: 100%;
}

.download-btn:hover {
    background-color: #008000 !important;
    color: #fff !important;
    border: 1px solid transparent !important;
}

.btn-link {
    padding: 0;
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    text-decoration: none;
    background-color:transparent !important;
    box-shadow:none !important;
}


.btn-link.btn-link-blue {
    color: #0000FF !important;
}

.btn-link.btn-link-dark {
    color: #303030 !important;
}

@media (max-width: 991.9px) {
    .initial-search .locate-me-btn {
        font-size: 12px;
        height: 32px;
    }

    #search-wrapper {
        min-height: 680px;
    }

    .initial-search#search-wrapper {
        min-height: 0;
    }
}

@media (max-width: 821px) {
    .initial-search {
        left: 5%;
        right: 5%;
        width: 90%;
        padding: 16px 10px;
    }

    h1 {
        font-size: 32px;
    }
}

h1 {
    font-size: 40px;
    font-weight: 700;
}


@media (max-width: 600px) {
    h1 {
        font-size: 24px;
    }
}

#mapContainer {
    position: relative;
	max-height: fit-content;
}

.custom-alert {
    position: absolute;
    bottom: 30px;
    left: 0;
    background-color: #fff3cd;
    color: #303030;
    border: 1px solid #ffeeba;
    padding: 14px 20px;
    z-index: 999;
    display: flex;
    align-items: center;
    justify-content: left;
    font-size: 14px;
    margin: 0 20px;
}

.alert-icon {
    width: 15px;
    height: 15px;
    margin-right: 8px;
}

.custom-alert i {
    margin-right: 8px;
}

/* header-pdf styling */
.header-pdf {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
    padding-bottom: 10px;
    border-bottom: 2px solid #333;
}

.header-pdf h1 {
    font-size: 50px;
    text-align: left;
    margin: 23px;
   
}

.header-pdf img {
    max-height: 100px;
    margin-right: 80px
}

.content {
    display: flex;
    flex-direction: row; /* Keeps side-by-side in webpage */
    justify-content: flex-start;
    align-items: flex-start;
    gap: 20px;
    width: 100%;
}
.table-container {
    flex: 1;
    min-width: 65%;
    background: white;
    padding: 15px;
    border-radius: 8px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}
.chart-container {
    flex: 0 0 30%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: white;
    padding: 15px;
    margin-bottom: 50px; /* Increase spacing */
    border-radius: 8px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}



.table-container,
.chart-container {
    background: white;
    padding: 15px;
    border-radius: 8px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
   
}


#locationTable {
    width: 100%;
    border-collapse: collapse;
    text-align: center;
   
}

#locationTable th,
#locationTable td {
    border: 2px solid #333;
    padding: 12px;
    
}

 #locationTable th {
    background-color: white;
    color: black;
    font-weight: bold;
    font-size:50px !important;
}


.altor-pdf-row .highlight-green {
    background-color: #52b788;
    color: white;
    font-weight: bold;
   
   
}

.altor-pdf-row .highlight-lightgreen {
    background-color: #d9f2d9;
  
    
}

.altor-pdf-row .highlight-yellow {
    background-color: #f9f6a3;
 
    
}

.altor-pdf-row .highlight-lightyellow {
    background-color: #fff8b3;
   
 
}

.message {
    margin-top: 20px;
    padding-bottom: 60px;
    text-align: center;
    font-size: 30px;
    line-height: 1.5;
}

@media screen {
 #pdf-content {
   position: absolute;
   left: -9999px; /* Moves content off-screen but keeps it in the DOM */
   visibility: visible; /* Ensures html2canvas can capture it */
 }
}