 body.dark-theme h1,
 body.dark-theme h2,
 body.dark-theme h3,
 body.dark-theme h4,
 body.dark-theme h5,
 body.dark-theme h6 {
     color: #fff !important;

 }

 html,
 input,
 select,
 button {
     font-family: "Merriweather", serif;
     font-weight: 400;
     font-style: normal;
     font-size: 16px;
     color: #212121;
 }

 a.button {
     display: flex;
     justify-content: center;
     align-items: center;
     width: auto;
     margin: 0 auto;
     font-family: "Merriweather", serif;

 }

 .thumb-btn a {
     display: flex;
     justify-content: center;
     align-items: center;
     width: auto;
     margin: 0 auto;
     height: 2rem;
     padding: 0 30px;
     font-size: 14px
 }

 .thumb-btn {
     position: absolute;
     bottom: 15px;
     width: 100%;
     display: flex;
     justify-content: space-between;
 }

 .thumb-content .w-full {
     height: 210px;
 }

 .thumb-content .w-full h4 {
     line-height: 1.7rem;
     height: 55px;
     overflow: hidden;
     font-size: 1.4rem;
 }



 body {
     background-color: #f7fafc;
 }

 .thumb-content {
     position: relative
 }

 .alert {
     border: 2px solid #941619 !important;

 }

 input.alert::placeholder {
     color: #941619 !important
 }

 .logo {
     width: 400px;
     position: relative
 }

 .logo h4 {
     position: absolute;
     bottom: -16px;
     font-size: 1.3rem;
 }


 .error-msg {
     background: rgba(0, 0, 0, 0.9);
     width: 100%;
     height: 100%;
     z-index: 1000;
     font-size: 25px;
     color: #fff;
     justify-content: center;
     align-items: center;
     position: absolute
 }

 .error-msg-text {
     width: 100%;
     padding: 20px;
     text-align: center;
     color: #941619;
     font-size: 20px;
     position: absolute;
 }

 .list-view {
     position: relative;
 }

 .leaflet-popup-content {
     margin: 0;
     width: 230px !important
 }

 .leaflet-popup-content .thumb-content .w-full {
     height: auto
 }

 .leaflet-popup-content .thumb-content .w-full.pri-image {
     max-height: 150px;
     flex-direction: column;
     display: flex;
     padding: 10px;

 }

 .leaflet-popup-content .thumb-content .w-full h4 {
     height: auto;
     font-size: 1.2rem;
     line-height: 1.5rem;
 }

 .leaflet-popup-content .w-full p {
     margin: 0
 }

 .leaflet-popup-content .thumb-content .w-full h3 {
     font-size: 1rem;
     padding: 10px 0;
     line-height: 1.1rem;
 }

 .leaflet-container a {
     color: #fff
 }

 .leaflet-popup-content .thumb-btn {
     margin-bottom: 10px;
     position: relative;
     bottom: 0;
     height: 2rem;
 }

 .leaflet-popup-content a.button {
     height: 2rem;

 }

 .map-box {
     box-shadow: 0 0 4px rgba(0, 0, 0, 0.5);
     margin-top: 10px;
     width: 100%;
     position: relative;
     height: 500px;
 }

 .search-header {
     position: relative;
 }

 .search-btn {
     box-shadow: 0 6px 10px rgba(0, 0, 0, 0.25)
 }


 /* added */

 .custom-div-icon {
     position: relative;
     display: flex;
     flex-direction: column;
     align-items: center;
 }

 .marker-icon {
     width: 26px;
     /* Adjust the size of the marker */
     height: 40px;
 }

 .price-label {
     background-color: #ffffff;
     color: #333;
     padding: 5px 8px;
     border-radius: 8px;
     box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
     margin-bottom: 5px;
     font-size: 14px;
     text-align: center;
 }

 .map-price {
     font-size: 16px;
     line-height: 18px;
 }

 .price-tooltip {
     display: flex;
     justify-content: center;
     align-items: center;
     padding: 5px;
     background: #fff;
     position: absolute;
     width: 120px;
     box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
     left: calc(50% - 60px);
     top: calc(50% - 60px);
     color: #b81129;
     font-weight: bold;
 }

 .leaflet-popup {
     margin-bottom: -20px
 }

 .custom-marker {
     position: relative
 }

 .price-tooltip:after {
     content: "";
     width: 0;
     height: 0;
     border-left: 10px solid transparent;
     border-right: 10px solid transparent;
     display: block;
     border-top: 10px solid #fff;
     position: absolute;
     right: 50%;
     margin-right: -10px;
     bottom: -10px;
 }

 .price-tooltip:before {
     content: "";
     width: 0;
     height: 0;
     border-left: 10px solid transparent;
     border-right: 10px solid transparent;
     display: block;
     border-top: 10px solid rgba(0, 0, 0, 0.3);
     position: absolute;
     right: 50%;
     margin-right: -10px;
     bottom: -12px;
     z-index: -1;
 }

 .custom-marker img {
     position: relative;
     z-index: -1;
 }

 .marker-cluster-medium div,
 .marker-cluster-small div {
     background: #941619;
     color: #fff;
 }

 h4.hotel-name {
     padding: 0 5px
 }

 .header {
     position: relative;
     padding-bottom: 30px
 }

 .header h3 {
     font-size: 30px;
     position: absolute;
     right: 0;
     color: #287f7b
 }

 .leaflet-container a.leaflet-control-zoom-in,
 .leaflet-container a.leaflet-control-zoom-out {
     background: #287f7b
 }

 .w-100 {
     width: 100%;


 }

 .w-30 {
     width: 30%;

 }




 .popular-hotels {
     margin: 15px 15px 25px 15px;

     padding: 10px;
     border: 2px solid #f0f0f0;
 }

 .hide {
     display: none !important
 }

 .item a.hotel-list {
     display: flex;
     position: relative;
     justify-items: start;
     list-style: none;
     padding: 10px;
     box-shadow: 0 0 3px rgba(0, 0, 0, 0.5);
     margin: 5px 0 5px 5px;
 }

 .item a.hotel-list h4 {
     font-size: 14px;
     font-weight: 700;
     font-family: Merriweather, serif;
     margin-bottom: 8px;
     line-height: 22px;
 }

 .owl-dots {
     display: none
 }

 .popular-hotels .hotel-img {
     width: 120px;
     height: 120px;
     overflow: hidden;
     float: left;
     margin-right: 10px;
     flex-shrink: 0;
 }

 .hotel-info {
     flex-grow: 1;
     width: auto;

 }

 p.show-on-map {
     text-decoration: underline;
     cursor: pointer;
 }



 .hotel-info p {
     font-size: 14px;
     font-family: Merriweather, serif;
     word-break: break-word;
     -webkit-hyphens: auto;
     -ms-hyphens: auto;
     hyphens: auto;
     overflow-wrap: break-word;

 }

 .popular-hotels .hotel-img img {
     width: 100%;
     height: 100%
 }

 .center-map {
     cursor: pointer;
     z-index: 9999;
     padding: 5px;
     opacity: 0.9;
     position: relative;
     width: 50px;
     height: 50px;
     display: flex;
     justify-content: center;
     align-items: start;
 }

 .center-map button {
     z-index: 999999;
     opacity: 1;
     position: relative;
     transform: rotate(-10deg);

 }


 .search-on-map i {
     font-size: 26px;
 }

 .thumb-content h3 {
     font-size: 1.2rem;
     padding-top: 5px;
 }

 .load-more-btn {
     padding: 10px 30px;
 }

 .load-more {
     text-align: center;
     display: flex;
     justify-content: center;
 }

 .my-location .leaflet-popup-content {
     width: auto !important;
     padding: 15px;
     text-align: center;
     color: #941619
 }

 .map-box {
     display: flex;
     justify-content: center;
     align-items: center;

 }

 .center-map:after {
     content: 'around';
     position: absolute;
     font-size: 12px;
     color: #fff;
     left: 6px;
     bottom: 6px;

 }

 .price-filter {
     padding: 20px;
     background: #f2f2f2;
     box-shadow: 0 0 3px rgba(0, 0, 0, 0.25);
     border-radius: 5px;
     display: flex;
     justify-content: center;
     align-items: center;
     margin-top: 20px;
 }

 .fliter-field {
     height: 34px;
     border-radius: 5px;
     border: 1px solid #e0e0e0;
     padding: 5px;
     margin: 0 5px;
 }

 .price-filter label {
     font-size: 14px;
     color: #565656
 }

 .price-filter button {
     height: 34px;
     border-radius: 5px;
     font-size: 14px;
 }

 .hotel-count {
     color: #565656;
     font-family: Merriweather, serif;
     font-size: 14px;
 }



 @media (max-width: 1366px) {

     .map-box,
     .price-filter {
         width: 98%;
         margin: 0 auto
     }

     .hotel-count {
         margin-bottom: 10px;
         padding: 10px 0;
         margin: 0 1%;
     }



 }

 @media (max-width: 991px) {
     .price-filter {
         padding: 12px;
         flex-direction: column;
     }

     .price-filter>div {
         width: 100%;
         display: flex;
         justify-content: start;
         align-items: center;
         margin-bottom: 5px;

     }

     .price-filter label {
         width: 15%;
     }

     .fliter-field {
         width: 85%;
         margin: 0
     }

     .price-filter>div button {
         margin-left: 15%
     }

 }

 @media (max-width: 640px) {

     select,
     input,
     button {
         height: 50px !important
     }

     .thumb-btn button {
         height: 38px !important
     }

     .p-z {
         padding-top: 0 !important
     }

     button.search-result {
         height: auto !important
     }

     .mobile-view {
         text-align: center;
     }

     .search-form.mt-6 {
         margin-top: 0
     }

     button.search-result {
         margin-top: 10px;
     }

     button.search-result {
         color: #fff;
         font-size: 25px;
     }

     .logo {
         width: 75%;
     }

     .popular-hotels {
         margin-bottom: 10px;
     }

     .center-map button {
         height: auto !important;
     }

 }

 @media (max-width: 480px) {
     .text-4xl {
         font-size: 1.5rem;
     }

     .list-view {
         margin-top: 0
     }

     .pt-8 {
         padding-top: 1rem
     }

     .map-box {
         height: 370px;
     }

     .mobile-view .mt-5 {
         margin-top: 10px
     }

     .mobile-view .pb-3 {
         padding-bottom: 0
     }

     .p-mobile {
         padding: 1rem
     }

     .search-form {
         opacity: 0;
         max-height: 0;
         overflow: hidden;
         transition: max-height 0.5s ease, opacity 1.5s ease;

     }

     .item a.hotel-list {
         margin-right: 5px;
     }

     .header {
         padding-bottom: 10px;
     }

     .map-box,
     .price-filter {
         margin: 0 15px 15px 15px;
         width: auto;
     }

     .thumb-content .w-full {
         height: auto
     }

     .thumb-btn {
         position: relative;
     }

     .thumb-content .w-full.h-56 {
         height: 300px;

     }

     .thumb-content .w-full,
     .thumb-content .w-full h4 {
         height: auto
     }

     input.fliter-field,
     .price-filter>div button {
         height: 34px !important
     }

     .hotel-count {
         margin: 0 15px 0 15px;
         padding-top: 0;
     }


 }