a:6:{i:0;s:9439:"				<div class="h1"><h1>Kashi Evening Bazaar & Ganga Aarti Walk Tour</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.grandindiatrip.com/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.grandindiatrip.com/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>Kashi Evening Bazaar & Ganga Aarti Walk Tour</p>
				<br />
				
								
						<script language="javascript"> 
							function topDestinationToggle(showHideDiv, switchTextDiv) {
							var ele = document.getElementById(showHideDiv);
							var text = document.getElementById(switchTextDiv);
							if(ele.style.display == "block") {
								ele.style.display = "none";
							  text.innerHTML = "View More &#9660;";
							}
							else {
							  ele.style.display = "block";
							  text.innerHTML = "View Less &#9650;";
							}
							}
		                </script>
											<script type="text/javascript">			
					(function($){	
					  $(function(){
						$('[id^=detailslider]').each(function(){
							$(this).DG_Slider({
								auto: true, mode:'fade', pager:true, pagerType:'short',controls:true
							});
						})
				
						$('a[rel=gall]').fancybox()
					  });	
					}(jQuery))
					</script>
					
					<br />
					<div class="data">
					<table class="w100 formTable bdr0 imgWidth">
					<tr>
					<td class="p10px">
					<table class="w100 packageForm">
											<tr>
						<td class="b p5px w125px vat">Duration </td>
						<td class="p5px pl0px vat">
						4 Hours
						</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Destination Covered </td>
						<td class="p5px pl0px vat">Varanasi</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Starting From </td>
						<td class="p5px pl0px vat">
						INR 1750 Per Person						</td>
						</tr>
												<tr>
						<td></td>
						<td>
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.grandindiatrip.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Kashi Evening Bazaar & Ganga Aarti Walk Tour - 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="197596"/>
						</form>
						</p>
						</td>
						</tr>
											</table>
					</td>
											<td class="p10px vat imgWidth150 w150px lh0">
						<div class="demo-wrap">
						<ul class="lsn m0px p0px" id="detailslider1">
															<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w150px h150px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_9/257644/315949.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_9/257644/315949.jpg"  height="150"  width="150"    alt="Kashi Evening Bazaar & Ganga Aarti Walk Tour" title="Kashi Evening Bazaar & Ganga Aarti Walk Tour" /></a></p></div></li>
																		<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w150px h150px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_9/257644/315950.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_9/257644/315950.jpg"  height="150"  width="150"    alt="Kashi Evening Bazaar & Ganga Aarti Walk Tour" title="Kashi Evening Bazaar & Ganga Aarti Walk Tour" /></a></p></div></li>
																		<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w150px h150px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_9/257644/315951.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_9/257644/315951.jpg"  height="150"  width="150"    alt="Kashi Evening Bazaar & Ganga Aarti Walk Tour" title="Kashi Evening Bazaar & Ganga Aarti Walk Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
					<br />
					
					Duration, Cost and other information:<br />
Total duration: 3 to 3.5 hours<br />
When: All days of the week, starting around 4pm. Start time varies depending on weather, so check with us<br />
Start Place: Town Hall<br />
End Place: Dasashwamedh Ghat<br />
Cost:<br />
Rs 1750 per person for 2 persons<br />
Rs 1250 per person for 3-4 persons<br />
Rs 950 per person for 5-6 persons<br />
Rs 750 per person for 7-8 persons<br />
Our maximum group size is usually not more than 6-8 people. Payment is by cash on the day of the tour<br />						<div class="headHr">
			            <p class="p7px b pl10px xlarge">Tour Itinerary</p>
			            </div>
			            
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 1:</b> Pickup from Hotel  by Guide
								</p>
								<p class="aj">The bylanes of Varanasi are just as famous as its temples. Celebrated in mainstream songs, Varanasi is a city of winding alleys with bustling markets, each specialising in something. Fabrics, metalware, milk products, snacks, sweetmeats, handicrafts, wedding decorations, temple paraphranelia, bangles – Varanasi has it all. The bazaars are at their colourful best in the evening and best explored on foot and by cycle-rickshaw. The best way to end an evening in Varanasi is at Dasashwamedh Ghat, where you can watch priests perform the evening prayer to the Ganges.<br />
How the tour works:<br />
This tour starts at the Town Hall (Maidagin). From here, we walk through a colourful fabric and saree market to visit a Goshala (a charitable sanctuary for stray cows). At the goshala, you can understand more about the “sacred cow” and see how Varanasi’s bovine inhabitants are cared for. From the Goshala, we will take a cycle-rickshaw ride through the main market thoroughfare of the city to reach Chowk.<br />
From Chowk, we walk again, covering the following:<br />
The wedding market (Kinari Bazaar)<br />
Kachori Galli (lane of kachoris, these are deep-fried snacks very popular in Varanasi)<br />
Khoa Galli (this lane sells milk products including paneer and condensed, sweetened milk)<br />
Vishwanath Galli (the most famous of all lanes in Varanasi)<br />
From Vishwanath Galli, we emerge at Dasashwamedh ghat, where you can view the evening Ganga arati. We will help you find rickshaws or your car at the end of the arati.<br />
It is possible to take a boat ride and view the arati from the river. Please let the guide know if you would like to do this. You can view the cityscape and the burning ghats at night from the river. You can pay the boatman directly for the cost of the boat ride.</p>
								</td>
									<td class="p10px vat imgWidth150 w150px lh0">
									<div class="demo-wrap">
									<ul class="lsn m0px p0px" >
												<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc <? echo $p_class; ?>"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_9/257644/315951.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_9/257644/315951.jpg"  height="150"  width="150"    alt="Kashi Evening Bazaar & Ganga Aarti Walk Tour" title="Kashi Evening Bazaar & Ganga Aarti Walk Tour" /></a></p></div></li>
									</ul>
									</div>
									</td>
								</tr>
								</table>					
								</div>						<br />
												 <p class="headHr p7px b pl10px xlarge">Tour Detail</p>
			             <div class="data p15px aj">
										
						<p class="large b mb5px dif">Inclusions :</p>
						<ul>
															<li>EP (No Meal)</li>
																		<li>Sightseeing</li>
																		<li>Private Guides</li>
																		<li>Pickup-Drop</li>
																<li>Knowledgeable English-speaking guide, personalised walk and all taxes</li>
													</ul>
						<br />
												<p class="large b mb5px dif">Exclusions :</p> <ul><li>Any entry fee </li><li>
Boat ride</li></ul><br />
											
						<p class="large b mb5px dif">Terms &amp; Conditions :</p>* 20% Advance Percentage of total booking amount
* Airfare/Transport fare to be paid full at one time in advance.~^#^~* Upon cancellation, refund will be made after deducting the Retention Amount.
* Retention Amount varies as per the number of days left before your package start date.
* Refund will be made within 15 working days from the date of receipt of the cancellation.~^#^~												</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.grandindiatrip.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Kashi Evening Bazaar & Ganga Aarti Walk Tour - 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="197596"/>
						</form>
						</div>
						
						";i:1;s:72:"Book Kashi Evening Bazaar & Ganga Aarti Walk Tour - 1 Days Tour Packages";i:2;s:120:"book kashi evening bazaar & ganga aarti walk tour - 1 days tour packages, heritage tour packages, varanasi tour packages";i:3;s:164:"Grand India Tours & Travels offers Kashi Evening Bazaar & Ganga Aarti Walk Tour - 1 Days tour package, budget Heritage tour packages for Varanasi at exciting price.";i:4;s:904:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Varanasi"        
		                 },
		      "description": "Duration, Cost and other information:
Total duration: 3 to 3.5 hours
When: All days of the week, starting around 4pm. Start time varies depending on weather, so check with us
Start Place: Town Hall
End Place: Dasashwamedh Ghat
Cost:
Rs 1750 per person for 2 persons
Rs 1250 per person for 3-4 persons
Rs 950 per person for 5-6 persons
Rs 750 per person for 7-8 persons
Our maximum group size is usually not more than 6-8 people. Payment is by cash on the day of the tour",
		      "name": "Kashi Evening Bazaar & Ganga Aarti Walk Tour",
		      "telephone": "+91-9415285186"
		    }
		    </script>
			";i:5;N;}