a:6:{i:0;s:16896:"						<section class="headBg theme2 ">
						<div class="wrap">
						<div class="page-title-inner fo"> 
						<div class="h1"><h1>Village Tours And Home Stay</h1></div>
						<p class="breadcrumb ar uu small"><a href="http://www.corbettpackagetour.com/" title="Home">Home</a>
						
													<b class="ffv p2px">&rsaquo;</b><a href="http://www.corbettpackagetour.com/tour-packages.htm" title="Tour Packages">Tour Packages</a>
								
						<b class="ffv p2px">&rsaquo;</b> Village Tours And Home Stay</p>
						</div>
						</div>
						</section>
										<section id="middle"><br />
				<div class="wrap packages" id="bodyFormatNT">
				<div class="row1 dt columns12"><!--MIDDLE ROW1 STARTS-->
				<div class="col-2 wideColumn ip ls"><!--MIDDLE ROW1 COL-2 STARTS-->				
									<div class="fo">
					<div class="db vat pr slideArrow">				
												<ul class="bxslider11 fx-height lh0" style="margin:0px;padding:0px;">
																	<li class="pr">
										<div>										
										<div class="lh0 pa blur-bg" style="background:url(https://ttw.wlimg.com/package-images/photo-big/dir_18/539279/265704.jpg);"></div>
										<a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_18/539279/265704.jpg">
										<div class="slide-fixImag" style="margin:0 9%;"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/539279/265704.jpg"  alt="Village Tours and Home Stay" title="Village Tours and Home Stay"  /></div>
										</a>
										</div>
										</li>
																				<li class="pr">
										<div>										
										<div class="lh0 pa blur-bg" style="background:url(https://ttw.wlimg.com/package-images/photo-big/dir_18/539279/265705.jpg);"></div>
										<a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_18/539279/265705.jpg">
										<div class="slide-fixImag" style="margin:0 9%;"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/539279/265705.jpg"  alt="Village Tours and Home Stay" title="Village Tours and Home Stay"  /></div>
										</a>
										</div>
										</li>
																	</ul>
												<div class="sliderCont-Layer">
					<div class="dt w100">
					<div class="dtc vam"><p class="xxxlarge fw7 lh13em">Village Tours and Home Stay 
					
											<span class="fw3 xsmall yellow">(
						3 Nights / 4 Days 
						)</span>
											</p>
											<p class="mt5px"><span class="fw6">Destination Covered</span> : Garhwal</p>
											</div>
					<div class="dtc w200px vam"></div>
					</div>
					</div>
					<div class="slidePrice ac">
					<p class="xxlarge red mb12px">
											<span class="xxxlarge fw7"><i class="fa fa-inr"></i> 18000</span>
						<span class="db ttu xsmall mt5px">Per Person</span>
											</p>
											<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.corbettpackagetour.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Village Tours and Home Stay - Tour Package"/>
						<input type="hidden" name="allocate_type" value="tour"/>
						<a href="#" onclick="document.getElementById('frmpackagedetail').submit();" class="buttonBig c3px dib p10px15px xlarge fw6">Book Your Tour</a>
						<input type="hidden" name="pkg_slno" value="176939"/>
						</form>
											</div> 
					
					<script>			
					jQuery('.bxslider11').bxSlider({
					  mode:'horizontal',
					  slideWidth:840,
					  auto:true,
					  autoControls:false,
					  stopAutoOnClick:true,
					  pager:false
					});
					</script>
					</div>
					</div>
											<div class="mt7px dif">* Mentioned prices may vary depending upon date of travel, hotel availability, surge pricing and seasonal rush.</div>
												<div class="mt30px mb30px">
						<div class="b xxlarge mb10px">
								   					Overview
		   											</div>					
						<p class="aj">Come stay with us in our various homestays,Away from hustle and bustle of hectic daily lives of city dwellers, away form the polluted streets and crowded corners of plains, in the lap of foothills of Uttarakhand."Top wildlife safari in uttarakhand"<br />
The culture of Uttarakhand shows a distinctive pattern, with the elements from each of the ethnic groups and sub-groups that resides in this place,the cultural Programms of Uttarakhand is truly one of the most important tourist attractions of Uttarakhand.<br />
Folk  Dance of Uttarakhand<br />
Choliya Dance<br />
Dating back to over a thousand years, the Chholiya Dance has its origins in the warring Khasiya Kingdom of Khasdesh, when marriages were performed at the point of the swords.<br />
Chancheri<br />
In This dance Both men and women dance in a semi-circular formation with gradually increasing pace putting across unbridled joy.<br />
Thali, Jadda and Jhainta<br />
While the Thali is a graceful dance of the women, the Jadda and Jhainta are dances in which men and women whirl together with gay abandon.<br />
Jagars<br />
Jaggar falls in the category of ghost and spiritual worship, in the form of a folk song or at times combined with dances<br />
Folk  Songs of Uttarakhand<br />
Bajuband<br />
This is a folk song of love and sacrifice between the shepherds<br />
Basanti<br />
'Basanti' folk songs are composed for the coming spring season when flowers, bloom and new life spring in the valleys of the hills of Garhwal. <br />
Chhura<br />
'Chhura' folk songs are sung among shepherds in the form of advice given by the old to youngsters, having learnt it out of their experience, particularly in grazing sheep and goats.<br />
Khuded<br />
These folk songs depict the suffering of a woman due to the separation from her husband</p>
						</div>
														<div class="mt30px b xlarge">
												   					Detailed Tour Itinerary
				   													</div>		   
								<br/>
																			<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 1											
											:</b> Garhwal										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Garhwal																											   
												<div class="mt10px">
												
																	
													<p>Meals : local and traditional food</p> 
																									</div>	
															
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 2											
											:</b> Garhwal										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Garhwal			
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 3											
											:</b> Garhwal										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Garhwal			
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 4											
											:</b> Garhwal										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Garhwal			
														   
											</div> 
											</div>
																			<script>
								jQuery(document).ready(function() {
									//jQuery('.product-detail').css('display','none');
								    jQuery(".sub-title").click(function() {
								        var $this = jQuery(this);
										  jQuery('.w-title').addClass('h15px',400);
								          $this.find('.w-title').removeClass('h15px',400);
										  jQuery('.product-detail').slideUp();
								          $this.next().slideDown();
								          if($this.find('i').hasClass('fa-angle-up')){
								          	$this.find('i').removeClass('fa-angle-up').addClass('fa-angle-down');
								          } else {
								          	$this.find('i').removeClass('fa-angle-down').addClass('fa-angle-up');
								          }
								        });
									});
								</script>
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Inclusions</p>
								</div>
												
								<ul>
																			<li>AP (Room + Breakfast + Lunch + Dinner)</li>
																						<li>Hotel</li>
																						<li>Meals</li>
																						<li>Sightseeing</li>
																						<li>Transport</li>
																						<li>Stay Included</li>
																				<li>One Night Stay in Corbett,</li><li>
One Jungle Safari, </li><li>
Home Stay tracking , </li><li>
Local Food Spesial Uttarakhand ,</li><li>
Local Sightseeing.</li>
																	</ul>
								</div>
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Departure Cities with rates</p>
								</div>
								TOURS START FROM JIM CORBETT NATIONAL PARK								</div>
																<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Payments Terms</p>
								</div>
								
								<ul><li>Payment 50% In Advance Before 25 Days </li><li>
By, Paytm,And Upi Bhim, And Acaccount Transfer</li><li>
If Booking Cancel By Tourist The Advance Payment Non Refundable ,</li><li>
Id Mendatory For All Visitor </li></ul>						
								</div>
														<div class="data mt20px p15px">            
						<div class="mb7px"> 
						<p class="b xlarge mb10px dib">Price &amp; Rates</p>
						</div>				
				        <table class="mb15px bdrall bdreee w100 p5px15px formTable">
			            	<tr class="headVr b">
			                	<td class="p5px10px">No of pax</td>
			                    <td class="p5px10px">Age Limit</td>
			                    <td class="p5px10px">Price per pax (Rs)</td>
			                </tr>

															<tr>
				            	<td class="p5px10px">Adult</td>
				                <td class="p5px10px">Above 12 years</td>
				                <td class="p5px10px">
			                				                		<b class="webrupee">INR</b>
			                					                	<b>18000</b> <small>/
			
			                		Adult			
			                				
			                		
			                	</small></td>
				            	</tr>
				            					         </table>
						</div>
					 							<div class="data mt20px p15px">            
						<div class="mb7px"> 
						<p class="b xlarge mb10px dib">Cancellation &amp; Refund Policy</p>
						</div>
						
						<ul><li>Upon cancellation, refund will be made after deducting the Retention Amount.</li></ul>						
						</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.corbettpackagetour.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Village Tours and Home Stay - Tour Package"/>
						<input type="hidden" name="allocate_type" value="tour"/>
						<a href="#" onclick="document.getElementById('frmpackagedetail').submit();" class="button p7px pl12px pr12px c5px b large dib mt10px">Book Your Tour</a>
						<input type="hidden" name="pkg_slno" value="176939"/>
						</form>
						</div>
						
										</div>
				<div class="col-3 thinColumn"><!--MIDDLE ROW1 COL-1 STARTS-->
				<div class="column_Box mc">
				<div class="tcl bullet divider">
				<div class="h h2"><b class="plusMinus"></b>
				<p class="b dif rHead">Packages by City</p>
				</div>
				<div class="ic showHide_rp">
				<div class="mt10px">
									<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.corbettpackagetour.com/corbett-tour-packages.htm" title="Corbett Tour Packages">Corbett</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.corbettpackagetour.com/nainital-tour-packages.htm" title="Nainital Tour Packages">Nainital</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.corbettpackagetour.com/kumaon-tour-packages.htm" title="Kumaon Tour Packages">Kumaon</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.corbettpackagetour.com/up-east-tour-packages.htm" title="UP East Tour Packages">UP East</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.corbettpackagetour.com/ramnagar-tour-packages.htm" title="Ramnagar Tour Packages">Ramnagar</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.corbettpackagetour.com/garhwal-tour-packages.htm" title="Garhwal Tour Packages">Garhwal</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.corbettpackagetour.com/sahibabad-tour-packages.htm" title="Sahibabad Tour Packages">Sahibabad</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.corbettpackagetour.com/sundargarh-tour-packages.htm" title="Sundargarh Tour Packages">Sundargarh</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.corbettpackagetour.com/pangot-tour-packages.htm" title="Pangot Tour Packages">Pangot</a> <b class="alpha50 bn small">(1)</b></span>
										
				</div>
				</div>
				</div>
				</div>
				
				<div class="column_Box mc">
				<div class="tcl bullet divider">
				<div class="h h2"><b class="plusMinus"></b>
				<p class="b dif rHead">Packages by Category</p>
				</div>
				<div class="ic showHide_rp">
				<div class="mt10px">
									<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.corbettpackagetour.com/national-parks-holidays-catid.htm" title="National Parks Packages">National Parks</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.corbettpackagetour.com/jeep-safari-holidays-catid.htm" title="Jeep Safari Packages">Jeep Safari</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.corbettpackagetour.com/camping-holidays-catid.htm" title="Camping Packages">Camping</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.corbettpackagetour.com/wildlife-safari-holidays-catid.htm" title="Wildlife Safari Packages">Wildlife Safari</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.corbettpackagetour.com/hill-station-holidays-catid.htm" title="Hill Station Packages">Hill Station</a> <b class="alpha50 bn small">(3)</b></span>
						
				</div>
				</div>
				</div>
				</div>
				
				
				</div>
				</div>
				
								
				</div>
				</section>
				
				<script>
					window.addEventListener("DOMContentLoaded", function(){
						jQuery(document).on("click", ".showallspan", function(){
							if(jQuery(this).attr("data-target") === 'show'){
								jQuery(this).text("View Less");
								jQuery(this).attr("data-target", "hide");
								jQuery(this).closest("div").find(".spanlist").removeClass("dn");
							}else{
								jQuery(this).text("View More");
								jQuery(this).attr("data-target", "show");
								jQuery(this).closest("div").find(".spanlist").addClass("dn");
							}
						});
					});
				</script>
				";i:1;s:66:"Book Village Tours and Home Stay - 3 Nights / 4 Days Tour Packages";i:2;s:117:"book village tours and home stay - 3 nights / 4 days tour packages, hill station tour packages, garhwal tour packages";i:3;s:169:"Book Village Tours and Home Stay - 3 Nights / 4 Days tour packages from Corbett Package Tour - Get attractive 3 Nights / 4 Days Hill Station  tour packages for  Garhwal.";i:4;s:2112:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Garhwal"        
		                 },
		      "description": "Come stay with us in our various homestays,Away from hustle and bustle of hectic daily lives of city dwellers, away form the polluted streets and crowded corners of plains, in the lap of foothills of Uttarakhand."Top wildlife safari in uttarakhand"
The culture of Uttarakhand shows a distinctive pattern, with the elements from each of the ethnic groups and sub-groups that resides in this place,the cultural Programms of Uttarakhand is truly one of the most important tourist attractions of Uttarakhand.
Folk  Dance of Uttarakhand
Choliya Dance
Dating back to over a thousand years, the Chholiya Dance has its origins in the warring Khasiya Kingdom of Khasdesh, when marriages were performed at the point of the swords.
Chancheri
In This dance Both men and women dance in a semi-circular formation with gradually increasing pace putting across unbridled joy.
Thali, Jadda and Jhainta
While the Thali is a graceful dance of the women, the Jadda and Jhainta are dances in which men and women whirl together with gay abandon.
Jagars
Jaggar falls in the category of ghost and spiritual worship, in the form of a folk song or at times combined with dances
Folk  Songs of Uttarakhand
Bajuband
This is a folk song of love and sacrifice between the shepherds
Basanti
'Basanti' folk songs are composed for the coming spring season when flowers, bloom and new life spring in the valleys of the hills of Garhwal. 
Chhura
'Chhura' folk songs are sung among shepherds in the form of advice given by the old to youngsters, having learnt it out of their experience, particularly in grazing sheep and goats.
Khuded
These folk songs depict the suffering of a woman due to the separation from her husband",
		      "name": "Village Tours and Home Stay",
		      "telephone": "+91-8265957626"
		    }
		    </script>
			";i:5;N;}