a:4:{i:0;s:22498:"					<div class="h1"><h1>AVAILABLE RUSTOMJEE SEASONS BANDRA EAST</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.navimumbaipropertz.com/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.navimumbaipropertz.com/sell.htm" title="Sell">Sell</a>  			
											
					
					<b class="ffv p2px">&rsaquo;</b>AVAILABLE RUSTOMJEE SEASONS BANDRA EAST</p> 
					<br />
					
											<p class="aj">Rustomjee Seasons is a residential project developed by Rustomjee located in Mumbai. The project offers well-designed 3BHK, 3.5BHK and 4BHK apartments equipped with modern amenities for the comfort of residents.</p>
						<br />
											<div class="headVr p10px">
					<p class="xxlarge b mb10px">Property Details</p>
					<table class="w100 formTable bdr0 imgWidth">
					<tr>
					<td class="vat data p10px">
					<table class="w100">
											<tr>
						<td class="vat p2px5px w175px"><b>Property ID</b>:</td>
						<td class="vat p2px5px">REI768670</td>
						</tr>
						<tr><td colspan="3"><p class="hr"></p></td></tr>
												<tr>
						<td class="vat p2px5px"><b>Property For </b>:</td>
						<td class="vat p2px5px">Sale</td>
						</tr>
						<tr><td colspan="3"><p class="hr"></p></td></tr>
												<tr>
						<td class="vat p2px5px"><b>Price</b>: </td>
						<td class="vat p2px5px">7.21 Cr</td>
						</tr>
						<tr><td colspan="3"><p class="hr"></p></td></tr>
												<script type="text/javascript">
						area_conversion=function(b,f,e){var c=createAreaArr();if(e==1){if(b<20&&b!=18){var a=f/c[b];return a}else{return 0}}else{if(e==2){if(b<20&&b!=18){var d=f*c[b];return d}else{return 0}}}};
						
						function createAreaArr(){
							var a={
								1:1,
								2:0.1111111111111,
								3:0.093,
								4:0.00041666667,
								5:0.013890889,
								6:0.000091810503,
								7:0.002222222222222223,
								8:0.0036724201,
								9:0.0009182736455464,
								10:0.00092936802973,
								11:0.0000028696051,
								12:0.00002295663,
								13:0.000057392103,
								14:0.0013888889,
								15:0.0000092904166,
								16:0.003673095,
								17:0.0000092605969,
								19:0.002295684
							};
							return a;
						}
						
						function updateArea(a,c,d,h,b,w,z){
							var g=createAreaArr();
							 
							var bu = {
						    'Sq.ft.':'1',
						    'Sq. Yards':'2',
						    'Sq. Meter':'3',
						    'Guntha':'9',
						    'Ares':'10',
						    'Acre':'12',
						    'Bigha':'13',
						    'Hectares':'15',
						    'Marla':'16',
						    'Cent':'19',
						    };
							if(w=='Sq. Feet'){
								var e=d*(parseFloat(g[c]));
							}
							else{
								var e=parseFloat(g[c])*(d/ parseFloat(g[bu[w]]));
							} 
							
							if(b=="Y"){
								jQuery("#"+h+"_span").html(e.toFixed(2));
							}else{
								if(b=="N"){
									jQuery("#"+h).html(jQuery("#"+h).html+e.toFixed(2));
									console.log("#"+h);
								}
							}
							jQuery("#"+h+"Label").html(" "+a);
							jQuery("#"+z).html(a+" &#9660;")
						}
						
						</script>						
												<tr>
						<td class="vat p2px5px"><b>Land / Plot Area</b>: </td>
						
						<td class="vat p2px5px">
						<script type="text/javascript">
						function convert1(basetext,baseindex,baseunit){
						     if(847.09 > 0 )  updateArea(basetext,baseindex,847.09,'landArea','Y',baseunit,'DrpDownTab1'); }
						</script>  
						<span id="landArea_span">847.09</span>
						<span class="pr">
						<a onClick="jQuery('#landArea').show();event.stopPropagation();" class="headVr pl5px pr5px small dib vam ml5px" id="DrpDownTab1">Sq. Meter &#9660;</a>
						<div id="landArea" style="width:120px;display:none;top:-1px;left:0px;" class="pa">
						<span class="data p5px15px pb10px dib xlarge b pr" style="border-bottom:none;z-index:101;" id="landAreaLabel">Sq. Meter</span>
						<ul class="lsn m0px p0px data small bdrB0 pr uo" style="top:-1px;z-index:100;">
						<li><a class="bdrB db p2px10px" href="javascript:convert1('Sq.%20Feet',1,'Sq. Meter');">Sq.Feet</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert1('Cent',19,'Sq. Meter');">Cent</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert1('Sq.%20Yards',2,'Sq. Meter');">Sq. Yards</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert1('Ares',10,'Sq. Meter');">Ares</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert1('Acre',12,'Sq. Meter');">Acres</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert1('Sq.%20Meter',3,'Sq. Meter');">Sq. Meter</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert1('Bigha',13,'Sq. Meter');">Bigha</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert1('Hectares',15,'Sq. Meter');">Hectares</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert1('Guntha',9,'Sq. Meter');">Guntha</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert1('Marla',16,'Sq. Meter');">Marla</a></li>
						</ul>
						</div>
						</span>
						<script>
						jQuery(document).ready(function(e) {
							jQuery('body').click(function(){
								jQuery('#landArea').hide();
								
							})
						});
						</script>			
						</td>
						</tr>
						<tr><td colspan="3"><p class="hr"></p></td></tr>
												<tr>
						<td class="vat p2px5px"><b>Carpet Area</b>: </td>
						
						<td class="vat p2px5px">
						<script type="text/javascript">
						function convert2(basetext,baseindex,baseunit){
						     if(1211 > 0 )  updateArea(basetext,baseindex,1211,'catpetArea','Y',baseunit,'DrpDownTab2');   }
						</script>  
						<span id="catpetArea_span">1211</span>
						<span class="pr">
						<a onClick="jQuery('#catpetArea').show();event.stopPropagation();" class="headVr pl5px pr5px small dib vam ml5px" id="DrpDownTab2">Sq.ft. &#9660;</a>
						<div id="catpetArea" style="width:120px;display:none;top:-1px;left:0px;" class="pa">
						<span class="data p5px15px pb10px dib xlarge b pr" style="border-bottom:none;z-index:101;" id="catpetAreaLabel">Sq.ft.</span>
						<ul class="lsn m0px p0px data small bdrB0 pr uo" style="top:-1px;z-index:100;">
						<li><a class="bdrB db p2px10px" href="javascript:convert2('Sq.%20Feet',1,'Sq.ft.');">Sq.Feet</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert2('Cent',19,'Sq.ft.');">Cent</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert2('Sq.%20Yards',2,'Sq.ft.');">Sq. Yards</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert2('Ares',10,'Sq.ft.');">Ares</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert2('Acre',12,'Sq.ft.');">Acres</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert2('Sq.%20Meter',3,'Sq.ft.');">Sq. Meter</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert2('Bigha',13,'Sq.ft.');">Bigha</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert2('Hectares',15,'Sq.ft.');">Hectares</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert2('Guntha',9,'Sq.ft.');">Guntha</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert2('Marla',16,'Sq.ft.');">Marla</a></li>
						</ul>
						</div>
						</span>
						<script>
						jQuery(document).ready(function(e) {
							jQuery('body').click(function(){
								jQuery('#catpetArea').hide();
								
							})
						});
						</script>			
						</td>
						</tr>
						<tr><td colspan="3"><p class="hr"></p></td></tr>
											</table>
					</td>
											<td class="vat pl15px w175px">
													<div class="w150px imgWidth150 m0a" id="thumbContainer0" >
							<div class="ac lh0 mt10px">
							<a  data-fancybox="showZoomImage"  title="AVAILABLE RUSTOMJEE SEASONS BANDRA EAST" href="https://rei.wlimg.com/prop_images/819478/768670_1.jpg"><div class="imgWidth" style="background-image:url(https://rei.wlimg.com/prop_images/819478/768670_1-350x350.jpg);background-size:cover;background-position:center;width:150px;height:150px;overflow:hidden;"><img src="https://rei.wlimg.com/prop_images/819478/768670_1-350x350.jpg"  alt="AVAILABLE RUSTOMJEE SEASONS BANDRA EAST"  style="max-height:150px;max-width:150px;z-index: -1;margin-left: -1000px;"  /></div></a>							</div>
							</div>
													<p class="paging ac p10px small" id="propertyThumbLinks">
													<a href="javascript:void(0);" class="on w15px bdr dib b" onclick="imgDisplay('0')" title="">1</a> &nbsp; 
													</p>
						<script type="text/javascript">
						// <![CDATA[
						function imgDisplay(num) {
						as=document.getElementById('propertyThumbLinks').getElementsByTagName('a');
						for (i=0; i<as.length; i++) {
						as[i].className='p2px5px';
						document.getElementById('thumbContainer'+i).style.display='none';
						}
						as[num].className='on p2px5px'
						document.getElementById('thumbContainer'+num).style.display='';
						}
						//]]>
						</script>
						</td>
											</tr>
					</table>
					</div>
					<br />
											<div class="bdrB xxlarge b dif lh14em mb7px">Additional Details</div>
						<ul class="lsn m0px p0px wp33">
														<li class="p2px"><b>Property Age :</b> New Construction</li>
																<li class="p2px"><b>Furnishing :</b> Unfurnished</li>
																<li class="p2px"><b>Transaction :</b> New Property</li>
																<li class="p2px"><b>Bedrooms :</b> 3</li>
																<li class="p2px"><b>Bathrooms :</b> 3</li>
																<li class="p2px"><b>No. of Floors :</b> 27</li>
																<li class="p2px"><b>Property On Floor :</b> 1</li>
														</ul>
			            <p class="cb"></p>
			            <br />
												<div class="bdrB xxlarge b dif lh14em mb7px">Amenities</div>
						<ul class="lsn m0px p0px wp33">
													<li class="p2px vat"><i class="si w24px icon-pb" title="Power Back Up"></i> Power Back Up</li>
														<li class="p2px vat"><i class="si w24px icon-lf" title="Lift"></i> Lift</li>
														<li class="p2px vat"><i class="si w24px icon-rain-water" title="Rain Water Harvesting"></i> Rain Water Harvesting</li>
														<li class="p2px vat"><i class="si w24px icon-ms" title="Maintenance Staff"></i> Maintenance Staff</li>
														<li class="p2px vat"><i class="si w24px icon-security-fire-alarm" title="Security / Fire Alarm"></i> Security / Fire Alarm</li>
														<li class="p2px vat"><i class="si w24px icon-piped-gas" title="Piped Gas"></i> Piped Gas</li>
														<li class="p2px vat"><i class="si w24px icon-wifi" title="Wi-fi Connectivity"></i> Wi-fi Connectivity</li>
														<li class="p2px vat"><i class="si w24px icon-sw" title="Swimming Pool"></i> Swimming Pool</li>
													</ul>
			            <p class="cb"></p>
			        	<br>
			        								<div class="bdrB xxlarge b dif lh14em mb7px">Property Address</div>
							<p>BANDRA EAST, Kala Nagar, Bandra East, Mumbai, Mumbai, Maharashtra</p>
													<br />
						<div class="bdrB xxlarge b dif lh14em mb7px">Location Map</div>
						<div class="bdr p2px lh0 mt10px"> 
						<iframe width="100%" height="300" frameborder="0"  marginheight="0" marginwidth="0"
						src="https://www.google.com/maps/embed/v1/place?key=AIzaSyAN_m_CqOOtgmiF9crPBw9oSbiFBPNwn5o&q=~~Bandra East~~Mumbai, Kala Nagar, Bandra East, Mumbai, Maharashtra,India">
						</iframe>
						</div>
												<br />
						
						<table class="w100 formTable">
						<tr>
						<td class="headVr b p5px" colspan="2">Property Seller Detail</td>
						</tr>
														<tr>
								<td class="ar b p5px w30">Contact Person :</td>
								<td class="p5px">
								Mr. Tony Sequeira 								</td>
								</tr>
																	<tr>
									<td class="ar b p5px">Phone :</td>
									<td class="p5px">+91-22-65352555</td>
									</tr>
																	<tr>
								<td class="ar b p5px">Mobile :</td>
								<td  class="p5px">
								+91-9870096696, +91-9833230066								</td>
								</tr>
																<tr>
								<td class="ar b p5px">Contact Address :</td>
								<td  class="p5px">
								Mahavir Bhakti Bldg, Shop 38, Sec 15 Plot 93, Opp To D-Mart, Kopar Khairane, Navi Mumbai, Maharashtra, India								</td>
								</tr>
															</table>
													<form name="frmpropertydetail" method="post" action="http://www.navimumbaipropertz.com/property-inquiry.htm">
						<p class="p10px ac">
						<input type="hidden" name="enqtype" value="property" />
						<input type="hidden" name="subject" value="Inquiry For Property - AVAILABLE RUSTOMJEE SEASONS BANDRA EAST - REI768670" />
						<input class="button p5px10px b" type="submit" value="SEND ENQUIRY" />
						<input type="hidden" name="property_id" value="768670" />
						</p>
						</form>
												<br />
						<br />
						<div class="headHr xlarge p7px pl10px">Properties you might be Interested</div>
						
						<div class="p10px">
						<div class="cf_3img">
						<ul class="lsn m0px p0px fo idv_eqheight">
													<li class="imgWidth200 ac">
							<div class="imgFrame dib bdr">
							<div class="imgFrame picBg dtc ac vam lh0">
							<div class="imgWidth" style="background-image:url(https://rei.wlimg.com/prop_images/819478/771309_2-350x350.jpg);background-size:cover;background-position:center;width:200px;height:200px;overflow:hidden;"><img src="https://rei.wlimg.com/prop_images/819478/771309_2-350x350.jpg"  alt="AVAILABLE 3 BHK IN OBEROI ETERNIA MULUND WEST MUMBAI"  style="max-height:150px;max-width:150px;z-index: -1;margin-left: -1000px;"  /></div>							</div>
							</div>
							<p class="mb5px mt10px"><a href="http://www.navimumbaipropertz.com/sell/3-bhk-flats-apartments-mumbai_771309.htm" title="AVAILABLE 3 BHK IN OBEROI ETERNIA MULUND WEST MUMBAI" class="dif b">AVAILABLE 3 BHK IN OBEROI ETERNIA MULUND WEST MUMBAI</a></p>
							<p class="mb5px"> (Mulund West, Mumbai/Mumbai)   Area: 1450 Sq.ft. / 3367.08 Sq. Meter | 3 Bedrooms | 3 Floor | 3 Bathrooms |  2  Crore   43 Lac </p>
							<br />
							</li>
														<li class="imgWidth200 ac">
							<div class="imgFrame dib bdr">
							<div class="imgFrame picBg dtc ac vam lh0">
							<div class="imgWidth" style="background-image:url(https://rei.wlimg.com/prop_images/819478/767527_1-350x350.jpg);background-size:cover;background-position:center;width:200px;height:200px;overflow:hidden;"><img src="https://rei.wlimg.com/prop_images/819478/767527_1-350x350.jpg"  alt="AVAILABLE SHAPOORJI POLLONJI VICINIA POWAI MUMBAI"  style="max-height:150px;max-width:150px;z-index: -1;margin-left: -1000px;"  /></div>							</div>
							</div>
							<p class="mb5px mt10px"><a href="http://www.navimumbaipropertz.com/sell/2-bhk-flats-apartments-hiranandani-gardens-mumbai_767527.htm" title="AVAILABLE SHAPOORJI POLLONJI VICINIA POWAI MUMBAI" class="dif b">AVAILABLE SHAPOORJI POLLONJI VICINIA POWAI MUMBAI</a></p>
							<p class="mb5px"> (Chandivali, Powai, Mumbai/Mumbai)   Area: 1350 Sq.ft. / 27263.5 Sq. Meter | 2 Bedrooms | 7 Floor | 2 Bathrooms |  1  Crore   68 Lac </p>
							<br />
							</li>
														<li class="imgWidth200 ac">
							<div class="imgFrame dib bdr">
							<div class="imgFrame picBg dtc ac vam lh0">
							<div class="imgWidth" style="background-image:url(https://rei.wlimg.com/prop_images/819478/770811_1-350x350.jpg);background-size:cover;background-position:center;width:200px;height:200px;overflow:hidden;"><img src="https://rei.wlimg.com/prop_images/819478/770811_1-350x350.jpg"  alt="AVAILABLE 2 3 BHK IN F RESIDENCES MALAD EAST"  style="max-height:150px;max-width:150px;z-index: -1;margin-left: -1000px;"  /></div>							</div>
							</div>
							<p class="mb5px mt10px"><a href="http://www.navimumbaipropertz.com/sell/2-bhk-flats-apartments-malad-east-mumbai_770811.htm" title="AVAILABLE 2 3 BHK IN F RESIDENCES MALAD EAST" class="dif b">AVAILABLE 2 3 BHK IN F RESIDENCES MALAD EAST</a></p>
							<p class="mb5px"> (Malad East, Mumbai/Mumbai)  3450.21 Sq. Meter | 2 Bedrooms | 1 Floor | 2 Bathrooms |  1  Crore  2  Lac </p>
							<br />
							</li>
														<li class="imgWidth200 ac">
							<div class="imgFrame dib bdr">
							<div class="imgFrame picBg dtc ac vam lh0">
							<div class="imgWidth" style="background-image:url(https://rei.wlimg.com/prop_images/819478/769204_1-350x350.jpg);background-size:cover;background-position:center;width:200px;height:200px;overflow:hidden;"><img src="https://rei.wlimg.com/prop_images/819478/769204_1-350x350.jpg"  alt="AVAILABLE 1 2 3 BHK IN  KANAKIA ZEN WORLD BHANDUP EAST"  style="max-height:150px;max-width:150px;z-index: -1;margin-left: -1000px;"  /></div>							</div>
							</div>
							<p class="mb5px mt10px"><a href="http://www.navimumbaipropertz.com/sell/1-bhk-flats-apartments-bhandup-east-mumbai_769204.htm" title="AVAILABLE 1 2 3 BHK IN  KANAKIA ZEN WORLD BHANDUP EAST" class="dif b">AVAILABLE 1 2 3 BHK IN  KANAKIA ZEN WORLD BHANDUP EAST</a></p>
							<p class="mb5px"> (Bhandup East, Mumbai/Mumbai)   Area: 693 Sq.ft. / 7905 Sq. Meter | 1 Bedrooms | 2 Floor | 2 Bathrooms |   85 Lac </p>
							<br />
							</li>
														<li class="imgWidth200 ac">
							<div class="imgFrame dib bdr">
							<div class="imgFrame picBg dtc ac vam lh0">
							<div class="imgWidth" style="background-image:url(https://rei.wlimg.com/prop_images/819478/780822_2-350x350.jpg);background-size:cover;background-position:center;width:200px;height:200px;overflow:hidden;"><img src="https://rei.wlimg.com/prop_images/819478/780822_2-350x350.jpg"  alt="AVAILABLE 2 3 BHK IN KALPATARU YASHODHAN ANDHERI WEAT MUMBai"  style="max-height:150px;max-width:150px;z-index: -1;margin-left: -1000px;"  /></div>							</div>
							</div>
							<p class="mb5px mt10px"><a href="http://www.navimumbaipropertz.com/sell/2-bhk-flats-apartments-andheri-west-mumbai_780822.htm" title="AVAILABLE 2 3 BHK IN KALPATARU YASHODHAN ANDHERI WEAT MUMBai" class="dif b">AVAILABLE 2 3 BHK IN KALPATARU YASHODHAN ANDHERI WEAT MUMBai</a></p>
							<p class="mb5px"> (SV Road, Andheri West, Mumbai/Mumbai)   Area: 1030 Sq.ft. / 8100 Sq. Meter | 2 Bedrooms | 5 Floor | 2 Bathrooms |  2  Crore   65 Lac </p>
							<br />
							</li>
														<li class="imgWidth200 ac">
							<div class="imgFrame dib bdr">
							<div class="imgFrame picBg dtc ac vam lh0">
							<div class="imgWidth" style="background-image:url(https://rei.wlimg.com/prop_images/819478/779142_1-350x350.jpeg);background-size:cover;background-position:center;width:200px;height:200px;overflow:hidden;"><img src="https://rei.wlimg.com/prop_images/819478/779142_1-350x350.jpeg"  alt="AVAILABLE 2 3 4 BHK IN STADIUM VIEW ANDHERI WEST MUMBAI"  style="max-height:150px;max-width:150px;z-index: -1;margin-left: -1000px;"  /></div>							</div>
							</div>
							<p class="mb5px mt10px"><a href="http://www.navimumbaipropertz.com/sell/2-bhk-flats-apartments-azad-nagar-mumbai_779142.htm" title="AVAILABLE 2 3 4 BHK IN STADIUM VIEW ANDHERI WEST MUMBAI" class="dif b">AVAILABLE 2 3 4 BHK IN STADIUM VIEW ANDHERI WEST MUMBAI</a></p>
							<p class="mb5px"> (Azad Nagar, Andheri West, Mumbai/Mumbai)   Area: 1100 Sq.ft. / 299 Sq. Meter | 2 Bedrooms | 19 Floor | 2 Bathrooms |  1  Crore   95 Lac </p>
							<br />
							</li>
											
						</ul>
						</div>
						</div>
										<div id="myModal" class="modal fade dn pf" role="dialog" style="z-index:9999;left:0;top:0%;width:100%;height:100%;background-color:rgba(0,0,0,0.6);overflow-x: hidden; overflow-y: auto;">
				    <!-- Modal content-->
				    <div style="max-width:700px;margin-top: 50px;min-height:400px;" class="modal-content data m0a p10px pr">
				      <div class="modal-header">
				        <a style="right:25px;top:25px;" class="pa b xxxlarge" data-dismiss="modal"><span class="xlarge">&times;</span></a>	        
				      </div>
				      <div class="modal-body">
				        <div class="ac" style="padding-top: 10%;"><p style="font-size:18px">Loading...</p></div>
				      </div>
				      <div class="modal-footer">
				        
				      </div>
				    </div>
				</div>
				<script type="text/javascript">
					jQuery(document).ready(function(){
						jQuery(document).on("click", ".submit-inquiry" , function(){
							var form = jQuery(this).parent().find(".inquiry-form");
							if(form.length){
								jQuery.ajax({
									url: form.attr("action"),
									type: form.attr("method"),
									data:form.serialize(),
									crossDomain:true,
									success:function(res){
										jQuery("#myModal .modal-body").html(res);
									}
								});
							}
						});
						jQuery(document).on("click", "[data-dismiss=modal]", function(){
							jQuery("#myModal .modal-body").html('<div class="ac" style="padding-top: 10%;"><p style="font-size:18px">Loading...</p></div>');
							jQuery("#myModal").hide();
						});
						jQuery(document).on("submit", "form[name=static_form]", function(e){				
							e.preventDefault();
							var isValidForm =static_inq_form_validate(jQuery(this).attr("form-id"));
							if(isValidForm == undefined){
								var form = jQuery(this);
								if(form.length){
									jQuery.ajax({
										url: form.attr("action"),
										type: form.attr("method"),
										data:form.serialize(),
										crossDomain:true,
										beforeSend:function(){
											jQuery("#myModal .modal-footer").html("");
										},
										success:function(res){
											jQuery("#myModal .modal-body").html(res);
											setTimeout(function(){
												jQuery("#myModal", document).hide();
												jQuery("#myModal .modal-body").html('<div class="ac" style="padding-top: 10%;"><p style="font-size:18px">Loading...</p></div>');
												},2000)
										}
									});
								}
							}
						});
						var modal = jQuery("#myModal", document);
			
						jQuery(document).on("click", ".submit-inquiry" , function(){
						    modal.show();
						});
			
						window.onclick = function(event) {
						    if (jQuery(event.target) == modal) {
						        modal.css("display","none");
						    }
						}
					});
				</script>
				";i:1;s:43:"3 BHK Flats & Apartments for Sale in Mumbai";i:2;s:242:"HAPPY HOMZ REAL ESTATE provide Flats & Apartments for Sale with 3 Bedrooms, 3 Bath Rooms, 27 Total Floor in Kala Nagar, Mumbai, Maharashtra Kala Nagar, Mumbai, Maharashtra. Requirement of Flats & Apartments in Kala Nagar, Mumbai, Maharashtra.";i:3;s:242:"HAPPY HOMZ REAL ESTATE provide Flats & Apartments for Sale with 3 Bedrooms, 3 Bath Rooms, 27 Total Floor in Kala Nagar, Mumbai, Maharashtra Kala Nagar, Mumbai, Maharashtra. Requirement of Flats & Apartments in Kala Nagar, Mumbai, Maharashtra.";}