a:6:{i:0;s:8611:"				<div class="h1"><h1>Glimpse of Kashmir Tour</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.getsholidayindiatour.in/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.getsholidayindiatour.in/packages.htm" title="Packages">Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>Glimpse of Kashmir 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">
						3 Nights / 4 Days 
						</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Destination Covered </td>
						<td class="p5px pl0px vat">Srinagar, Anantnag, Baramulla</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Price (Starting From) </td>
						<td class="p5px pl0px vat"><span class="dif">On Request</span></td>
						</tr>
												<tr>
						<td></td>
						<td>
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.getsholidayindiatour.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Glimpse of Kashmir 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="116678"/>
						</form>
						</p>
						</td>
						</tr>
											</table>
					</td>
										</tr>
					</table>
					</div>
					<br />
					
					Accommodation in deluxe room on twin sharing.<br />
01 Night stay at Srinagar.<br />
01 Night stay at Pahalgam.<br />
01 Night stay at Gulmarg.<br />
Transfer and sightseeing as per the above tour Itinerary by non-a/c car.<br />
Welcome drink on arrival.<br />
Accommodation on Breakfast.<br />
Transport by Indica, Indigo, Tavera, Xylo & Innova<br />
All toll taxes, driver’s allowances, Fuel charges, interstate permit if necessary, all taxes.<br />
All currently applicable Hotel taxes.All kind of personal expenses such as tips, laundry, telephone bills and beverages, Camera Fees.<br />
Cable Car Tickets, Any meals unless and otherwise specifically mentioned.<br />
Any claim due to road blocks, curfew, accident etc.<br />
Any other services' not specified in the Colum "Inclusions".<br />
Category Standard Deluxe Luxury Srinagar Hotel Akbar Inn Hotel Nishat View Hotel Asian Park Gulmarg Hotel Yemberzal Hotel Gulmarg Resort Hotel Hilltop Gulmarg Pahalgam Hotel Bright Palace Hotel River View Resort Hotel Hilltop Pahalgam Dal Lake New Swift Houseboats Texas Houseboats Mughal Sheraton Houseboats.<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> Arrive in Srinagar
								</p>
								<p class="aj">on your arrival at the Srinagar International Airport; you will be taken for a 35 minutes drive through the heart of New Srinagar city, passing the Abdullah Bridge which connects the banks of the Jhelum River. Arrive and check-in at the hotel. Afternoon visit Mughal gardens of Nishat and Shalimar. We will explore the gardens. In Evening Proceed for an hour of Shikara ride in the lake. Dinner and Overnight in hotel / houseboats.</p>
								</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 2:</b> Srinagar to Pahalgam (Full day trip)
								</p>
								<p class="aj">Today we travel 97 kilometers South of Kashmir to Pahalgam. In Pahalgam, visit Betaab Valley and Chandanwari as well as take a horse riding trip to Baisaran meadows. After sightseeing, transfer to the hotel for overnight stay at Pahalgam.</p>
								</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 3:</b> Pahalgam to Gulmarg
								</p>
								<p class="aj">Morning leave for Gulmarg (Meadow of Flowers) 2730 mts. above the sea level. The distance of 140 kms will be covered in about 2 hours. Gulmarg has one of the best ski slopes in the world and highest golf course with 18 holes. If weather permits one can also have the view of Nanga Parbat, the naked mountain that is over 26,000 feets and dominates the entire region, also enjoy cable car (Gondola) for mountain ride up to khilangmarg. In evening back to hotel and Dinner and overnight stay at Gulmarg.</p>
								</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 4:</b> Gulmarg - Departure/transfers to Airport
								</p>
								<p class="aj">After your breakfast, we will assist you with transfers to airport. However, On your way, you can make a brief stopover for shopping at the city center.</p>
								</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>Hotel</li>
																		<li>Sightseeing</li>
																		<li>Transfers</li>
															</ul>
						<br />
												<p class="large b mb5px dif">Exclusions :</p> <ul><li>All kind of personal expenses such as tips, laundry, telephone bills and beverages, Camera Fees.</li><li>
Cable Car Tickets, Any meals unless and otherwise specifically mentioned.</li><li>
Any claim due to road blocks, curfew, accident etc.</li><li>
Any other services' not specified in the Colum "Inclusions".</li><li>
Category Standard Deluxe Luxury Srinagar Hotel Akbar Inn Hotel Nishat View Hotel Asian Park Gulmarg Hotel Yemberzal Hotel Gulmarg Resort Hotel Hilltop Gulmarg Pahalgam Hotel Bright Palace Hotel River View Resort Hotel Hilltop Pahalgam Dal Lake New Swift Houseboats Texas Houseboats Mughal Sheraton Houseboats.</li></ul><br />
											
						<p class="large b mb5px dif">Terms &amp; Conditions :</p>* Some 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. ~^#^~												</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.getsholidayindiatour.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Glimpse of Kashmir 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="116678"/>
						</form>
						</div>
						
						";i:1;s:62:"Book Glimpse of Kashmir Tour - 3 Nights / 4 Days Tour Packages";i:2;s:137:"book glimpse of kashmir tour - 3 nights / 4 days tour packages, lakes & rivers tour packages, srinagar, anantnag, baramulla tour packages";i:3;s:177:"Gets Holiday India Tour offers Glimpse of Kashmir Tour - 3 Nights / 4 Days tour package, budget Lakes & Rivers tour packages for Srinagar, Anantnag, Baramulla at exciting price.";i:4;s:1467:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Srinagar, Anantnag, Baramulla"        
		                 },
		      "description": "Accommodation in deluxe room on twin sharing.
01 Night stay at Srinagar.
01 Night stay at Pahalgam.
01 Night stay at Gulmarg.
Transfer and sightseeing as per the above tour Itinerary by non-a/c car.
Welcome drink on arrival.
Accommodation on Breakfast.
Transport by Indica, Indigo, Tavera, Xylo & Innova
All toll taxes, driver’s allowances, Fuel charges, interstate permit if necessary, all taxes.
All currently applicable Hotel taxes.All kind of personal expenses such as tips, laundry, telephone bills and beverages, Camera Fees.
Cable Car Tickets, Any meals unless and otherwise specifically mentioned.
Any claim due to road blocks, curfew, accident etc.
Any other services' not specified in the Colum "Inclusions".
Category Standard Deluxe Luxury Srinagar Hotel Akbar Inn Hotel Nishat View Hotel Asian Park Gulmarg Hotel Yemberzal Hotel Gulmarg Resort Hotel Hilltop Gulmarg Pahalgam Hotel Bright Palace Hotel River View Resort Hotel Hilltop Pahalgam Dal Lake New Swift Houseboats Texas Houseboats Mughal Sheraton Houseboats.",
		      "name": "Glimpse of Kashmir Tour",
		      "telephone": "+91-8532003202"
		    }
		    </script>
			";i:5;N;}