/* ================= Property Hero Section ================= */
.PropertyServiceTemplateHeroSection{position: relative;}
.PropertyServiceTemplateHeroSection img{width: 100%;height: 100vh;object-fit: cover;}
.PropertyServiceTemplateHeroSection .caption span{}
.PropertyServiceTemplateHeroSection .caption {position: absolute;top: 50%;left: 50%;color: #FFF;font-size: 45px;font-weight: 600;transform: translate(-50%, -50%);text-align: center;z-index: 1;}
.PropertyServiceTemplateOverlay{position:absolute;top:0;left:0;width:100%;height:100vh;background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.64) 100%)}

.PropertyServiceTemplateLists{
    display: grid;
    grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
    gap: 10px;
    padding: 20px;
}

.ServiceImgLst img{
    width:100%;
    height:200px;    
}

.ServiceImgLstMore{
    background: #ccd8e3;
    display: grid;
    justify-content: center;
    align-items: center;
    font-size: 18px;
    letter-spacing: 1.2px;
    color: #003c72;
}

.NearbyListings{display:flex;align-items:center;justify-content:space-between;padding:0 30px 20px}
.NearbyListings h1{color:#003c72;font-size:22px;font-weight:700}
.NearbyListingsExpand{display:flex;align-items:center;gap:10px}
.NearbyListingsExpand span{color:#003C72;font-size:16px;letter-spacing:1.2px}
.NearbyListingsPropertyServiceTemplate{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;padding:30px;justify-items:center;padding-bottom: 40px;}
.NearbyListingsCard{display:grid;grid-template-rows:40rem auto;justify-content:center;align-items:center;width:100%}
.NearbyListingsCard img{max-width:100%;width:100%;height:-webkit-fill-available;max-height:40rem;object-fit:cover}
.NearbyListingsDetails{padding:10px 0;display:grid;gap:6px}
.NearbyListingsDetails h2{font-size:22px;font-weight:700;color:#003c72}
.NearbyListingsDetails span:first-child,.NearbyListingsDetails span:last-child{color:#222;font-size:14px}
.PropertyInternalDivider{height: 1px;margin: 0px 20px;background: #dddddd;}

.PropertyServiceTemplateMoreInfo{
    display: grid;
    gap: 5px;
    padding: 20px;
}

.PropertyServiceTemplateMoreInfoTitle{
    font-size: 32px;
    font-weight: 700;
    color: #003c72;
}

.PropertyServiceTemplateMoreInfoArea{
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.PropertyServiceTemplateMoreInfoAndIcon{
    display: flex;
    align-items: center;
    gap: 10px;
    padding-right: 30px;
    cursor: pointer;
}

.PropertyServiceTemplateMaps{
    padding: 20px;
    display: grid;
    gap: 10px;
}
.PropertyServiceTemplateMoreInfoAndIcon span{
    color: #003c72;
    letter-spacing: 2px;
}
.PropertyServiceTemplateMapsTitle{
    font-size: 24px;
    color: #003c72;
    padding-bottom: 10px;
    font-weight: 700;
}

.PropertyServiceTemplateMapsArea{
    height: 600px;
}

.PropertyServiceTemplateNearbyListing{
    padding-top: 20px;
}

.PropertyServiceTemplateDescAndFacilities{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    padding: 20px;
    padding-bottom: 200px;
    padding-top: 40px;  
}

.PropertyTemplateDescription{
    display: grid;
    gap: 10px;
}

.TitleDESC,.FaclilitieTitle{
    font-size: 22px;
    color: #003c72;
    font-weight: 700;
}
 
.TemplateDesc{
    font-size: 18px; 
}

.PropertyServiceTemplateDesc{
    display: grid;
    gap:40px;
    width: 80%;
    padding-bottom: 20px;
    padding-top: 10px;
    border-bottom: 1px solid #dddddd;
}

.TemplateReadMore{
    color: #CE9B64;
}

.FacilitiesInner{
    display:flex;
    gap:10px;
}

.FacilitiesMainDiv{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 15px;
}

.PropertyTemplateFacilities{
    display: grid;
    gap: 15px;
    padding-top: 20px;
}

.PropertyTemplateMoreInfoWebsite{
    position: relative;
}

.PropertyServiceTemplateWebsiteInfo{
    position: absolute;
    width: 400px;
    height: 400px;
    background: #003c72;
    color: #FFF;
    right: 0;
}

.ServiceTemplateLabel{
    font-size: 18px;
    font-weight: 600;
    letter-spacing: 1.2px;
    padding: 10px 20px 0px 20px;
}

.ServiceTemplatePhone{
    display: grid;
    gap: 5px;
    padding: 20px;
}

.ServiceTemplatePhoneLabel,.ServiceTemplateAddressLabel,.ServiceTemplateHoursLabel{
    font-size: 10px;
    letter-spacing: 1.2px;
}

.ServiceTemplateAddress{
    padding: 0px 20px 20px 20px;
}

.ServiceTemplateHours{
    padding: 0px 20px 0px 20px;
}

.PropertyServiceTemplateWebsiteInfo button{
    position: absolute;
    bottom: 0;
    width: -webkit-fill-available;
    padding: 0;
    border: none;
    outline: none;
    margin: 20px;
    height: 40px;
    background: #ce9b64;
    color: #003c72;
    letter-spacing: 2px;
}




















































































































