a:4:{i:0;s:30434:"					<script>	
						(function($){	
						  $(function(){
							$('[id^=slider1]').each(function(){
								$(this).DG_Slider({
									auto: true, mode:'fade', pager:false, pagerType:'short',controls:false
								});
							})
							$('a[rel=gall]').fancybox()
						  });	
						}(jQuery))		
					</script>
					<section id="middle"><br />
					<div class="wrap" id="bodyFormatNT">
					<div class="row1 dt columns12"><!--MIDDLE ROW1 STARTS-->
					<div class="col-2 wideColumn ip ls"><!--MIDDLE ROW1 COL-2 STARTS-->
											<div class="h1"><h1>Office Space for Rent in Panaji</h1></div>
						<p class="breadcrumb ar uu small"><a href="http://www.buysellrentingoa.com/" title="Home">Home</a>
						
						<b class="ffv p2px">&rsaquo;</b><a href="http://www.buysellrentingoa.com/property-in-goa.htm" title="Property in Goa">Goa</a><b class="ffv p2px">&rsaquo;</b><a href="http://www.buysellrentingoa.com/property-for-rent-in-mangor-mormugao-goa.htm" title="Property for Rent in Mangor, Mormugao, Goa">Mangor</a>						
						<b class="ffv p2px">&rsaquo;</b>Office Space for Rent in Panaji</p> 
											<section class="fo pro_detail_n">
					<div class="w100 dt ac-dtr acac-dtc fl">
					<ul>
										<li class="vat pr30px vat w300px lh0">
                    <div class="demo-wrap slider300">
					<ul class="lsn m0px p0px" >
												<li class="bdr bw1px c5px p1px">
							<div class="">
							<p class="ac vam">
															<div class="lh0 blur-bg" style="background-image:url(https://rei.wlimg.com/prop_images//671791_1.jpg); background-repeat:no-repeat;"></div>
								<a  data-fancybox="showZoomImage"  title="Office Space for Rent in Panaji" href="https://rei.wlimg.com/prop_images/546217/671791_1.jpg"><img src="https://rei.wlimg.com/prop_images/546217/671791_1-350x350.jpg"  alt="Office Space for Rent in Panaji"  /></a>							</p>
							</div>
							</li>
												</ul>
					</div>
					</li>
					<li class="vat ffos">
					<div class="fo mb10px bdrb bdreee pb10px res_clr">
					<div class="">
												<div><i class="fa fa-map-marker pr7px fl"></i><p class="ofh">Patto-Panaji, Mangor, Mormugao, Goa							<br>
							<span class="gray">By Monteiro Spaces</span></p>
							</div>
												</div>
					</div>
					<p class="pr"><span class="headHr dib c5px"><a data-fancybox data-type="iframe" data-src="https://www.realestateindia.com/view_map.php?gaddress=~~Panaji~~Goa, Mangor, Mormugao, Goa&goglepointer1=0&goglepointer2=0" href="javascript:void(0);" style="padding-left:50px;" class="b xlarge p7px pr20px dib ts0">Location Map</a></span>
					<span style="top:-10px;left:0;" class="pa dib lh0px"><img src="https://static.realestateindia.com/images/icon_loc_map.png" alt=""></span>
					</p>
					<script>
					$("[data-fancybox]").fancybox({
					    iframe : {
					        css : {
					            width : '860px'
					        }
					    }
					});
					</script>
					<br />
											<div class="xxlarge mb10px">
						<div class="xxlarge ffrr mb7px dib red"><i class="fa fa-inr"></i> <span itemprop="price">80 K</span></div>
												</div>
											<ul class="fo ac-mb10px pb10px lsn bdrb large">
											<li>
						<p class="fl w130px">Property ID: </p>
						<p class="fl mr30px">:</p>
						<p class="ofh b">REI671791</p>
						</li>
												<li>
						<p class="fl w130px">Property For</p>
						<p class="fl mr30px">:</p>
						<p class="ofh b">Rent</p>
						</li>
												<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>						
												<li class="fo">
						<p class="fl w130px">Built Up Area</p>
						<p class="fl mr30px">:</p>
						<div class="fl b">
						<script type="text/javascript">
						function convert(basetext,baseindex,baseunit){
						     if(160 > 0 )  updateArea(basetext,baseindex,160,'builtupArea','Y',baseunit,'DrpDownTab');   }
						</script>  
						<span id="builtupArea_span">160</span>
						<span class="pr">
						<a onClick="jQuery('#builtUp').show();event.stopPropagation();" class="headVr pl5px pr5px small dib vam ml5px" id="DrpDownTab">Sq. Meter &#9660;</a>
						<div id="builtUp" 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="builtupAreaLabel">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:convert('Sq.%20Feet',1,'Sq. Meter');">Sq. Feet</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert('Cent',19,'Sq. Meter');">Cent</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert('Sq.%20Yards',2,'Sq. Meter');">Sq. Yards</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert('Ares',10,'Sq. Meter');">Ares</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert('Acre',12,'Sq. Meter');">Acres</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert('Sq.%20Meter',3,'Sq. Meter');">Sq. Meter</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert('Bigha',13,'Sq. Meter');">Bigha</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert('Hectares',15,'Sq. Meter');">Hectares</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert('Guntha',9,'Sq. Meter');">Guntha</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert('Marla',16,'Sq. Meter');">Marla</a></li>
						</ul>
						</div>
						</span>
						<script>
						jQuery(document).ready(function(e) {
							jQuery('body').click(function(){
								jQuery('#builtUp').hide();
								
							})
						});
						</script>
						</div>
						</li>
												<li class="fo">
						<p class="fl w130px">Land / Plot Area</p>
						<p class="fl mr30px">:</p>
						<div class="fl b">
						<script type="text/javascript">
						function convert1(basetext,baseindex,baseunit){
						     if(160 > 0 )  updateArea(basetext,baseindex,160,'landArea','Y',baseunit,'DrpDownTab1'); }
						</script>  
						<span id="landArea_span">160</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>
						</div>			
						</li>
											</ul>
											<form class="inquiry-form" name="frmpropertydetail" method="post" action="http://www.buysellrentingoa.com/enquiry-form-10017.htm">
						<input type="hidden" name="enqtype" value="property" />
						<input type="hidden" name="subject" value="Inquiry For Property - Office Space for Rent in Panaji - REI671791" />
						<input type="hidden" name="property_id" value="671791" />
						</form>
						<a href="javascript:void(0);" class="submit-inquiry buttonBig xxlarge ts0 p10px20px mt10px c5px">Send Enquiry</a>
							
					</li>
					</ul>
					</div>											
					</section>
					<br /> 
											<div class="bdrB xxlarge b dif pb5px mt10px mb7px">Additional Details</div>
	                    <ul class="lsn m0px p0px wp33 lh2em">
														<li><b>Property Age :</b> 5 to 10 years</li>
																<li><b>Furnishing :</b> Furnished</li>
																<li><b>Bathrooms :</b> 2</li>
														</ul>
			            <p class="cb"></p>
			            <br />
												<div class="bdrB xxlarge b dif pb5px mt10px mb7px">Amenities</div>
	                    <ul class="lsn m0px p0px wp33 lh2em">
													<li><i class="si w24px icon-lf" title="Lift"></i> Lift</li>
														<li><i class="si w24px icon-fa" title="Security"></i> Security</li>
														<li><i class="si w24px icon-ms" title="Maintenance Staff"></i> Maintenance Staff</li>
													</ul>
			            <p class="cb"></p>
			        	<br>
			        							<br />
						<div class="bdrB xxlarge b dif pb5px mt10px mb7px">Property Description </div>
						<p class="aj">Available office premises (3 offices combined to one unit)   having an area of 160sqmtr fully furnished with AC, round table, workstations, tables, chairs, storage cabinets, cubicles, cabins, attached washrooms and a pantry room for rent in Patto near the Kadamba bus stand at Panaji-Goa. Rent- 80,000/- per month (negotiable). 01 month rent brokerage fees applicable.</p>						
											</div>
					<div class="col-3 thinColumn"><!--MIDDLE ROW1 COL-1 STARTS-->
				    <div class="db p20px bdr large ac">
				    <div class="dib mb10px">
					<div class="propUser bdr bdrddd vam"><i class="fa fa-user"></i></div>
					</div>
					<p class="mb5px"> Mr. Emsley Monteiro  </p>
					<p class="alpha75 mb5px"> monteirospaces.goa@gmail.com </p>
					<p> <i class="fa xxxlarge vam mr5px fa-mobile" aria-hidden="true"></i> +91-9326111933 </p>
					</div>
		
					<div class="column_Box mc">
					<div class="tcl bullet divider">
					<div class="h h2"><b class="plusMinus"></b>
					<p class="b dif rHead">Property by City</p>
					</div>
					<div class="ic showHide_rp">
					<div class="mt10px">
											<span class="dib p5px10px c2px headVr mr7px mb7px "><a href="http://www.buysellrentingoa.com/property-in-goa.htm" class="dif" title="Property in Goa">Goa</a> <b class="alpha50 bn small">(447)</b></span>
											
					</div>
					</div>
					</div>
					</div>
					
										
					</div>
					</div>
					
												<br />
							<br />
							<section><br/>
							<div class="wrap fullFormat">	
							<div class="xxxlarge b mb30px ac">Related Properties in Goa</div>
							<div class="cf_3img mt30px">
							<ul class="lsn m0px p0px fo idv_eqheight cols_similar">						
															<li>
								<div class="bdr mb15px">
								<div class="cp" onclick="location.href='http://www.buysellrentingoa.com/rent/commercial-shops-mapusa_534540.htm'">
								<p class="theme2 bdr0 p2px5px small">PROPERTY ID - REI534540</p>
								<div class="picBg lh0"><img src="https://rei.wlimg.com/prop_images/546217/534540_1-350x350.jpg"  alt="100sq Mtr Godown/shop Space for 55000 At Mapusa"  /></div>
								<p class="ffrr b large db headHr p5px10px"><a href="http://www.buysellrentingoa.com/rent/commercial-shops-mapusa_534540.htm">100sq Mtr Godown/shop Space for 55000 At Mapusa</a></p>
								<div class="p10px headVr bdr0" style="min-height:188px;">
								<p class="b"><i class="fa fa-map-marker mr5px"></i> Mangor, Mormugao, Goa </p>
																	<p class="mt5px b dull-text">100sq Mtr Godown/shop Space for 55000 At Mapusa

1month Rent Brokerage Ap <a href="http://www.buysellrentingoa.com/rent/commercial-shops-mapusa_534540.htm" title="100sq Mtr Godown/shop Space for 55000 At Mapusa" class="dif u">Read More</a></p>
																	<div class="dt ac-dtr acac-dtc dul b mt10px">
																	<ul class="mb5px">
									<li class="dull-text">Cost </li>
									<li>: <b class="webrupee"></b> 55 K </li>
									</ul>
																		<ul class="mb5px">
									<li class="dull-text">Built Up Area </li>
									<li>: <b class="webrupee"></b> 1000 Sq.ft. </li>
									</ul>
																	<ul class="mb5px">
								<li class="dull-text">Property Type </li>
								<li>: <b class="webrupee"></b> Commercial Shops </li>
								</ul>
																</div> 
								</div>
								</div>
								<div class="bdrT p5px ac">	
								<form class="inquiry-form" name="prop_534540" id="prop_534540" method="post" action="http://www.buysellrentingoa.com/enquiry-form-10017.htm">
								<input type="hidden" name="enqtype" value="property" />
								<input type="hidden" name="subject" value="Inquiry For Property - 100sq Mtr Godown/shop Space for 55000 At Mapusa - REI534540" />
								<input type="hidden" name="property_id" value="534540" />
								</form>			 
								<a href="http://www.buysellrentingoa.com/rent/commercial-shops-mapusa_534540.htm" class="button p5px10px c3px mt5px mb5px">View Detail</a> <a href="javascript:void(0);" class="submit-inquiry buttonBig p5px10px ml5px c3px mt5px mb5px">Send Enquiry</a></div>
								</div>
																<li>
								<div class="bdr mb15px">
								<div class="cp" onclick="location.href='http://www.buysellrentingoa.com/rent/3-bhk-office-space-panjim-goa_366746.htm'">
								<p class="theme2 bdr0 p2px5px small">PROPERTY ID - REI366746</p>
								<div class="picBg lh0"><img  alt="Coming Soon Property" src="https://static.realestateindia.com/images/no_image_180.jpg" width="200" height="200" /></div>
								<p class="ffrr b large db headHr p5px10px"><a href="http://www.buysellrentingoa.com/rent/3-bhk-office-space-panjim-goa_366746.htm">Independent Bunglow Villa for Rent in Panaji, Goa</a></p>
								<div class="p10px headVr bdr0" style="min-height:188px;">
								<p class="b"><i class="fa fa-map-marker mr5px"></i> Mangor, Mormugao, Goa </p>
																	<p class="mt5px b dull-text">Independent Bunglow Villa about 350 sqmtrs for Rent in Panaji, Goa, near Ca <a href="http://www.buysellrentingoa.com/rent/3-bhk-office-space-panjim-goa_366746.htm" title="Independent Bunglow Villa for Rent in Panaji, Goa" class="dif u">Read More</a></p>
																	<div class="dt ac-dtr acac-dtc dul b mt10px">
																	<ul class="mb5px">
									<li class="dull-text">Cost </li>
									<li>: <b class="webrupee"></b> 80 K </li>
									</ul>
																		<ul class="mb5px">
									<li class="dull-text">Built Up Area </li>
									<li>: <b class="webrupee"></b> 350 Sq. Meter </li>
									</ul>
																	<ul class="mb5px">
								<li class="dull-text">Property Type </li>
								<li>: <b class="webrupee"></b> Office Space </li>
								</ul>
																</div> 
								</div>
								</div>
								<div class="bdrT p5px ac">	
								<form class="inquiry-form" name="prop_366746" id="prop_366746" method="post" action="http://www.buysellrentingoa.com/enquiry-form-10017.htm">
								<input type="hidden" name="enqtype" value="property" />
								<input type="hidden" name="subject" value="Inquiry For Property - Independent Bunglow Villa for Rent in Panaji, Goa - REI366746" />
								<input type="hidden" name="property_id" value="366746" />
								</form>			 
								<a href="http://www.buysellrentingoa.com/rent/3-bhk-office-space-panjim-goa_366746.htm" class="button p5px10px c3px mt5px mb5px">View Detail</a> <a href="javascript:void(0);" class="submit-inquiry buttonBig p5px10px ml5px c3px mt5px mb5px">Send Enquiry</a></div>
								</div>
																<li>
								<div class="bdr mb15px">
								<div class="cp" onclick="location.href='http://www.buysellrentingoa.com/rent/office-space-bambolim-goa_676905.htm'">
								<p class="theme2 bdr0 p2px5px small">PROPERTY ID - REI676905</p>
								<div class="picBg lh0"><img src="https://rei.wlimg.com/prop_images/546217/676905_1-350x350.jpg"  alt="Office Space for Rent In Patto, Bambolim"  /></div>
								<p class="ffrr b large db headHr p5px10px"><a href="http://www.buysellrentingoa.com/rent/office-space-bambolim-goa_676905.htm">Office Space for Rent In Patto, Bambolim</a></p>
								<div class="p10px headVr bdr0" style="min-height:188px;">
								<p class="b"><i class="fa fa-map-marker mr5px"></i> Mangor, Mormugao, Goa </p>
																	<p class="mt5px b dull-text">155 sq mtr office for rent at Patto Bambolim Goa for Rs. 80k per month. Off <a href="http://www.buysellrentingoa.com/rent/office-space-bambolim-goa_676905.htm" title="Office Space for Rent In Patto, Bambolim" class="dif u">Read More</a></p>
																	<div class="dt ac-dtr acac-dtc dul b mt10px">
																	<ul class="mb5px">
									<li class="dull-text">Cost </li>
									<li>: <b class="webrupee"></b> 80 K </li>
									</ul>
																		<ul class="mb5px">
									<li class="dull-text">Built Up Area </li>
									<li>: <b class="webrupee"></b> 155 Sq. Meter </li>
									</ul>
																	<ul class="mb5px">
								<li class="dull-text">Property Type </li>
								<li>: <b class="webrupee"></b> Office Space </li>
								</ul>
																</div> 
								</div>
								</div>
								<div class="bdrT p5px ac">	
								<form class="inquiry-form" name="prop_676905" id="prop_676905" method="post" action="http://www.buysellrentingoa.com/enquiry-form-10017.htm">
								<input type="hidden" name="enqtype" value="property" />
								<input type="hidden" name="subject" value="Inquiry For Property - Office Space for Rent In Patto, Bambolim - REI676905" />
								<input type="hidden" name="property_id" value="676905" />
								</form>			 
								<a href="http://www.buysellrentingoa.com/rent/office-space-bambolim-goa_676905.htm" class="button p5px10px c3px mt5px mb5px">View Detail</a> <a href="javascript:void(0);" class="submit-inquiry buttonBig p5px10px ml5px c3px mt5px mb5px">Send Enquiry</a></div>
								</div>
																<li>
								<div class="bdr mb15px">
								<div class="cp" onclick="location.href='http://www.buysellrentingoa.com/rent/office-space-porvorim_574356.htm'">
								<p class="theme2 bdr0 p2px5px small">PROPERTY ID - REI574356</p>
								<div class="picBg lh0"><img src="https://rei.wlimg.com/prop_images/546217/574356_99194-350x350.jpg"  alt="52 sq mtr Office for rent 28000 at Porvorim"  /></div>
								<p class="ffrr b large db headHr p5px10px"><a href="http://www.buysellrentingoa.com/rent/office-space-porvorim_574356.htm">52 sq mtr Office for rent 28000 at Porvorim</a></p>
								<div class="p10px headVr bdr0" style="min-height:188px;">
								<p class="b"><i class="fa fa-map-marker mr5px"></i> Mangor, Mormugao, Goa </p>
																	<p class="mt5px b dull-text">3 Offices are Available 52sq Mtr for Rent 28000, 26sq Mtr for Rent 16000 an <a href="http://www.buysellrentingoa.com/rent/office-space-porvorim_574356.htm" title="52 sq mtr Office for rent 28000 at Porvorim" class="dif u">Read More</a></p>
																	<div class="dt ac-dtr acac-dtc dul b mt10px">
																	<ul class="mb5px">
									<li class="dull-text">Cost </li>
									<li>: <b class="webrupee"></b> 28 K </li>
									</ul>
																		<ul class="mb5px">
									<li class="dull-text">Built Up Area </li>
									<li>: <b class="webrupee"></b> 520 Sq.ft. </li>
									</ul>
																	<ul class="mb5px">
								<li class="dull-text">Property Type </li>
								<li>: <b class="webrupee"></b> Office Space </li>
								</ul>
																</div> 
								</div>
								</div>
								<div class="bdrT p5px ac">	
								<form class="inquiry-form" name="prop_574356" id="prop_574356" method="post" action="http://www.buysellrentingoa.com/enquiry-form-10017.htm">
								<input type="hidden" name="enqtype" value="property" />
								<input type="hidden" name="subject" value="Inquiry For Property - 52 sq mtr Office for rent 28000 at Porvorim - REI574356" />
								<input type="hidden" name="property_id" value="574356" />
								</form>			 
								<a href="http://www.buysellrentingoa.com/rent/office-space-porvorim_574356.htm" class="button p5px10px c3px mt5px mb5px">View Detail</a> <a href="javascript:void(0);" class="submit-inquiry buttonBig p5px10px ml5px c3px mt5px mb5px">Send Enquiry</a></div>
								</div>
																<li>
								<div class="bdr mb15px">
								<div class="cp" onclick="location.href='http://www.buysellrentingoa.com/rent/office-space-panjim_484360.htm'">
								<p class="theme2 bdr0 p2px5px small">PROPERTY ID - REI484360</p>
								<div class="picBg lh0"><img  alt="Coming Soon Property" src="https://static.realestateindia.com/images/no_image_180.jpg" width="200" height="200" /></div>
								<p class="ffrr b large db headHr p5px10px"><a href="http://www.buysellrentingoa.com/rent/office-space-panjim_484360.htm">OFFICE AVAILABLE FOR RENT IN PANAJI GOA</a></p>
								<div class="p10px headVr bdr0" style="min-height:188px;">
								<p class="b"><i class="fa fa-map-marker mr5px"></i> Mangor, Mormugao, Goa </p>
																	<p class="mt5px b dull-text">Office available for rent in Panjim <a href="http://www.buysellrentingoa.com/rent/office-space-panjim_484360.htm" title="OFFICE AVAILABLE FOR RENT IN PANAJI GOA" class="dif u">Read More</a></p>
																	<div class="dt ac-dtr acac-dtc dul b mt10px">
																	<ul class="mb5px">
									<li class="dull-text">Cost </li>
									<li>: <b class="webrupee"></b> 35 K </li>
									</ul>
																		<ul class="mb5px">
									<li class="dull-text">Built Up Area </li>
									<li>: <b class="webrupee"></b> 85 Sq. Meter </li>
									</ul>
																	<ul class="mb5px">
								<li class="dull-text">Property Type </li>
								<li>: <b class="webrupee"></b> Office Space </li>
								</ul>
																</div> 
								</div>
								</div>
								<div class="bdrT p5px ac">	
								<form class="inquiry-form" name="prop_484360" id="prop_484360" method="post" action="http://www.buysellrentingoa.com/enquiry-form-10017.htm">
								<input type="hidden" name="enqtype" value="property" />
								<input type="hidden" name="subject" value="Inquiry For Property - OFFICE AVAILABLE FOR RENT IN PANAJI GOA - REI484360" />
								<input type="hidden" name="property_id" value="484360" />
								</form>			 
								<a href="http://www.buysellrentingoa.com/rent/office-space-panjim_484360.htm" class="button p5px10px c3px mt5px mb5px">View Detail</a> <a href="javascript:void(0);" class="submit-inquiry buttonBig p5px10px ml5px c3px mt5px mb5px">Send Enquiry</a></div>
								</div>
																<li>
								<div class="bdr mb15px">
								<div class="cp" onclick="location.href='http://www.buysellrentingoa.com/rent/warehouse-godown-verna_641889.htm'">
								<p class="theme2 bdr0 p2px5px small">PROPERTY ID - REI641889</p>
								<div class="picBg lh0"><img src="https://rei.wlimg.com/prop_images/546217/641889_1-350x350.jpg"  alt="800 Sq. Meter Warehouse/Godown for Rent in Verna"  /></div>
								<p class="ffrr b large db headHr p5px10px"><a href="http://www.buysellrentingoa.com/rent/warehouse-godown-verna_641889.htm">800 Sq. Meter Warehouse/Godown for Rent in Verna</a></p>
								<div class="p10px headVr bdr0" style="min-height:188px;">
								<p class="b"><i class="fa fa-map-marker mr5px"></i> Mangor, Mormugao, Goa </p>
																	<p class="mt5px b dull-text">Available 250sqm to 800sqm area warehouses with water connection, 3 phase e <a href="http://www.buysellrentingoa.com/rent/warehouse-godown-verna_641889.htm" title="800 Sq. Meter Warehouse/Godown for Rent in Verna" class="dif u">Read More</a></p>
																	<div class="dt ac-dtr acac-dtc dul b mt10px">
																	<ul class="mb5px">
									<li class="dull-text">Cost </li>
									<li>: <b class="webrupee"></b> 1.60 L </li>
									</ul>
																		<ul class="mb5px">
									<li class="dull-text">Built Up Area </li>
									<li>: <b class="webrupee"></b> 800 Sq. Meter </li>
									</ul>
																	<ul class="mb5px">
								<li class="dull-text">Property Type </li>
								<li>: <b class="webrupee"></b> Warehouse/Godown </li>
								</ul>
																</div> 
								</div>
								</div>
								<div class="bdrT p5px ac">	
								<form class="inquiry-form" name="prop_641889" id="prop_641889" method="post" action="http://www.buysellrentingoa.com/enquiry-form-10017.htm">
								<input type="hidden" name="enqtype" value="property" />
								<input type="hidden" name="subject" value="Inquiry For Property - 800 Sq. Meter Warehouse/Godown for Rent in Verna - REI641889" />
								<input type="hidden" name="property_id" value="641889" />
								</form>			 
								<a href="http://www.buysellrentingoa.com/rent/warehouse-godown-verna_641889.htm" class="button p5px10px c3px mt5px mb5px">View Detail</a> <a href="javascript:void(0);" class="submit-inquiry buttonBig p5px10px ml5px c3px mt5px mb5px">Send Enquiry</a></div>
								</div>
												
							</ul>
							</div>
							</div> 
							</section> 
												</div>
					</section>
									<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:31:"Office Space for Rent in Panaji";i:2;s:173:"Office Space having 2 Bath Rooms, 160 Sq. Meter in Mangor, Goa, Goa Mangor, Goa, Goa. Office Space Property for Rent in Mangor, Goa, Goa Mangor, Goa, Goa at Monteiro Spaces.";i:3;s:173:"Office Space having 2 Bath Rooms, 160 Sq. Meter in Mangor, Goa, Goa Mangor, Goa, Goa. Office Space Property for Rent in Mangor, Goa, Goa Mangor, Goa, Goa at Monteiro Spaces.";}