.section-bg .service-map-overlay { width: 100%; height: 655px; position: absolute; left: 0; bottom: 0; background: #FDFDFD; overflow: hidden; }
.blob-shape.service-map-blob-shape-1 { inset:auto; top: 70px; left: -390px; }
.blob-shape.service-map-blob-shape-1 span { transform: rotate(0deg); }
.blob-shape.service-map-blob-shape-2 { inset:auto; top: 82px; right: -565px; }
.blob-shape.service-map-blob-shape-2 span { transform: rotate(0deg); }
.pb-0 .section-bg .service-map-overlay { height: 500px; }
.service-map-container:has( .swiper:not(.swiper-initialized )) .custom-slider-navigation { display: none; }
.sm-map-left { width: calc(100% - 435px); border-radius: 30px; overflow: hidden; position: relative; min-height: 600px;  }
.sm-map-box { width: 100%; height: 100%; border-radius: 30px; }
.sm-map-right { width: 405px; margin-left: auto; }
.sm-map-right:has(.service-map-region-slider) { height: 730px; }
.sm-map-right:has(.service-map-location-slider) { height: 780px; }
.sm-map-left:has( + .sm-map-right .service-map-region) { height: 730px; }
.sm-map-left:has( + .sm-map-right .service-map-location) { height: 780px; }
.sm-map-right .service-map-region .swiper-wrapper, .sm-map-right .service-map-location .swiper-wrapper { height: auto; flex-flow: column; gap: 24px; }
.sm-map-right .service-map-region .swiper-wrapper .swiper-slide { height: 146px; }
.sm-map-right .service-map-location .swiper-wrapper .swiper-slide { height: 220px; }
.sm-map-list-holder { height: calc(100% - 72px) }
.sm-map-list-holder .swiper { height: 100%; }
.sm-map-list-holder .swiper-slide:nth-child(4n + 1) .sm-map-list-box { color: var(--nhc-white); background-color: var(--nhc-pink); }
.sm-map-list-holder .swiper-slide:nth-child(4n + 2) .sm-map-list-box { color: var(--nhc-black); background-color: var(--nhc-yellow); }
.sm-map-list-holder .swiper-slide:nth-child(4n + 3) .sm-map-list-box { color: var(--nhc-white); background-color: var(--nhc-indigo); }
.sm-map-list-holder .swiper-slide:nth-child(4n + 4) .sm-map-list-box { color: var(--nhc-white); background-color: var(--nhc-green); }
.sm-map-list-box { width: 100%; height: 100%; padding: 32px; font-size: 18px; color: var(--nhc-white); border-radius: 20px; }
.sm-map-list-box h3 { font-size: 32px; line-height: 1.3; margin-bottom: 0; display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis; }
.sm-map-list-link { margin-top: 16px; }
.sm-map-address, .sm-map-phone { position: relative; display: flex; gap: 16px; margin-top: 16px; }
.sm-map-address::before, .sm-map-phone::before { content: ''; width: 24px; height: 24px; flex-shrink: 0; background: no-repeat center/contain; }
.sm-map-address::before { background-image: url(../../assets/images/map-icon.svg); }
.sm-map-phone::before { background-image: url(../../assets/images/phone-icon.svg); }
.sm-map-address span { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis; }
.sm-map-list-holder .swiper-slide:nth-child(4n + 2) .sm-map-list-box .sm-map-address::before, .sm-map-list-holder .swiper-slide:nth-child(4n + 2) .sm-map-list-box .sm-map-phone::before { filter: brightness(0); }
/* ----- */
.property-box { background: var(--nhc-green); color:var(--nhc-white); display: flex; flex-flow: column; margin: 0 auto; text-align: left; width: 307px; padding: 0 20px 25px; position: absolute; top: 30px; right: 30px; box-shadow: 0 0 15px rgba(0,0,0,0.15); display: none; border-radius: 20px; overflow: hidden; }
.property-content { font-family:var(--nhc-secondary-font); font-size: 16px; line-height: 1.4; padding: 20px 0; }
.property-box .property-img { height: 160px; background: #333; margin: 0 -20px 0; position: relative; }
.property-img img { width: 100%; height: 100%; object-fit: cover; }
.property-content h3 { font-size: 30px; line-height: 36px; margin-bottom: 17px; }
.property-more-btn { margin-top: auto; }
.property-badge { width: 60px; height: 60px; background: var(--nhc-light-grey); border-radius: 50%; color: var(--nhc-green); font-size: 13px; line-height: 1; font-weight: 600; display: flex; align-items: center; justify-content: center; white-space: normal; text-align: center; position: absolute; top: 15px; left: 15px; box-shadow: 0 0 5px rgba(0,0,0,0.1) }
.property-close { position: absolute; top: 5px; right: 5px; font-size: 25px; z-index: 99; display: flex; }
#map-overlay { display:none; position: absolute; top: 0px; left: 0px; right: 0px; bottom: 0px; background: rgba(0, 0, 0, 0.75); }
/* ========================================== 
! Large devices (desktops, less than 1200px)
=========================================== */
@media (max-width:1199.98px) {
 }
/*==========================================
! Medium devices (tablets, less than 992px)
========================================== */
@media (max-width:991.98px) {
 .section-bg .service-map-overlay ,
 .pb-0 .section-bg .service-map-overlay { height: calc(100% - 500px); }
 
.sm-map-left { width: 100%; height: 420px!important; padding-right: 0; min-height: auto;}
.sm-map-box { border-radius: 10px; }
.sm-map-right { width: 100%; margin-top: 48px; }
 }
/* =================================================  
! Small devices (landscape phones, less than 768px)
================================================= */
@media (max-width:767.98px) {
 }
/* ======================================================
! Extra small devices (portrait phones, less than 576px)
====================================================== */
@media (max-width:575.98px) {
 }
