a:6:{i:0;s:21837:"						<section class="headBg theme2 ">
						<div class="wrap">
						<div class="page-title-inner fo"> 
						<div class="h1"><h1>Srinagar Special Tour</h1></div>
						<p class="breadcrumb ar uu small"><a href="http://www.northindiatour.co.in/" title="Home">Home</a>
						
													<b class="ffv p2px">&rsaquo;</b><a href="http://www.northindiatour.co.in/tour-packages.htm" title="Tour Packages">Tour Packages</a>
								
						<b class="ffv p2px">&rsaquo;</b> Srinagar Special Tour</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-->				
								
						<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">
					
											<p class="mb5px"><b>Duration :</b> 
						7 Nights / 8 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> Srinagar, Pahalgam, Gulmarg</p>
												<p class="mb5px"><b>Price (Starting From) :</b> <span class="dif">On Request</span></p>
												<br />
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.northindiatour.co.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Srinagar Special Tour - Tour Package"/>
						<input type="hidden" name="allocate_type" value="tour"/>
						<a href="#" onclick="document.getElementById('frmpackagedetail').submit();" class="buttonBig p10px20px c5px b large dib">Book Your Tour</a>
						<input type="hidden" name="pkg_slno" value="191047"/>
						</form>
						
												</p>
											</td>
											<td class="p10px vat imgWidth200 w200px lh0">
						<div class="demo-wrap">
						<ul class="lsn m0px p0px" >
															<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w200px h200px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_21/619021/300752.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_21/619021/300752.jpg"  width="150" height="99"    alt="Srinagar Special Tour" title="Srinagar Special Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
													<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 Srinagar
										</p>
										<p class="aj">On arrival at the Srinagar Airport, you will be welcomed by our representative who will assist and escort you to your waiting vehicle. From the airport it is a 35 minutes drive through the heart of New Srinagar city. The drive takes you past the Abdullah bridge which connects the banks of the Jehlum river, snaking its way towards the North-Western frontier of Kashmir. Arrive and check in at hotel / Houseboat.<br />
Rest of the day will be at your leisure for individual activities . overnight stay at Srinagar.</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 – Local Sightseeing: (50 Kms)
										</p>
										<p class="aj">Srinagar Morning after breakfast local sightseeing of Srinagar which include the Mughal Gardens, visiting Nishat Bagh built by Asaf Khan, the brother -in- law of Jehangir in 1632 AD, and Shalimar Bagh built by Jehangir for his wife empress Nur Jahan. Built in between a period of 14 years the two gardens are a heritage left behind by the erstwhile Mughals, whose taste for laying exquisite gardens was fascinating. All the gardens are situated on the banks of the Dal Lake with the Zabarwan hills in the background.<br />
Afternoon will be at your leisure for individual activities. Overnight stay at Srinagar.</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> Srinagar-Pahalgam(96Km/3Hrs)
										</p>
										<p class="aj">After breakfast check out from hotel & drive towards Pahalgam on the National Highway 1A. This road connects the Valley to the rest of the country. We drive past the saffron fields of Pampore, the marvellous ruins of Avantipura and the village of Bijbehara which remains famous as the bread basket of Kashmir. You can even sample a few exotic breads sold by vendors near the road. We switch the the national highway at Khanabal and drive through the second largest city of Anantnag. From here the road turns scenic as we drive parallel on the Lidder river flowing from the opposite direction.Arrive Pahalgam and check in at the hotel and later do some nature walks to unwind ourselves. 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 4:</b> Pahalgam-Srinagar(96 Km / 3 Hrs)
										</p>
										<p class="aj">Pahalgam-Srinagar(96 Km / 3 Hrs)<br />
After breakfast , check out from hotel & half a day sightseeing by driving to the picturesque Chandanwari and Betaab valley or ride by horseback across the wildlife sanctuary towards Baisaran meadows. After complete sightseeing drive to Srinagar.Arrive Srinagar , check in at the hotel / houseboats , In the evening you can go for shopping around the local flea markets and also do window shopping or enjoy yet another short ride of the famous shikara. Overnight stay at Srinagar.</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 5:</b> Srinagar to Gulmarg (56 Km / 2Hrs)
										</p>
										<p class="aj">After breakfast check out from hotel & drive to Gulmarg (Meadow of Flowers) 2730 mts. above the sea level. The drive past colorful villages and rice fields, gives you an insight of the rich cultural past of Kashmir. We arrive at a small picturesue market town of Tangmarg and drive ahead on a scenic drive of 14 kilometers to Gulmarg.<br />
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,<br />
Arrive in Gulmarg early in the afternoon and check in at the hotel. Later we will begin a short tour around the meadow familarising ourselves with the beauty. In Gulmarg we will board the Gondola cable carsystem, and ascend towards the Afarwatt Mountain range. The 08 minutes of ropeway will take you past colorful shepherd hutments to the lower ridge of the Afarwatt peak. From here you can click lots of photos of the nearby mountain ranges that stand tall like sentinels guarding the rich natural beauty of Kashmir valley. We descend back to Gulmarg base after an hour or so and later do some horse-riding to the strawberry valley.Rest of the day free at leisure for individual activities. 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 6:</b> Gulmarg to Srinagar (56 Km / 2Hrs)
										</p>
										<p class="aj">Morning after breakfast check out from hotel & proceed for local sightseeing of Gulmarg. Going for some small tours around the meadow and later drive back to Srinagar in the evening. On arrival in Srinagar we will transfer to the hotel / houseboats. Overnight stay at Srinagar.</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 7:</b> Srinagar - Sonmarg - Srinagar (85 Km / 3 Hrs)
										</p>
										<p class="aj">Morning after breakfast process for full day trip of the majestic mountain resort of Sonamarg. The route towards Sonamarg takes us on a picturesque country side drive where we will come across rolling hills, green forests, clear water streams and blooming rice fields. We will zoom past the town of Kangan which handles all the local needs of this region. From Kangan, we will drive towards Mammar, famous for its trout farm and stopover for a warm cup of tea before we head towards Sonamarg. We will once again alight from our vehicles at the tourist spot of Gagangir. The spot is built in the middle of the river Sindh and looks like an island with snow glaciers covering one or the other spot. In Sonamarg we will take a 3 hour walk or horseback trip to the Thajwass glacier. After our return we will visit the small town market for some snacks or just pay a visit observing the local people going with thier daily routine<br />
In the evening drive back from Sonmarg and transfer to hotel / houseboat. Overnight stay at Srinagar.</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 8:</b> Srinagar -Departure
										</p>
										<p class="aj">After morning breakfast, Check out from hotel & drive to the airport. On the way to the airport you can make a brief stopover for some last minute shopping in the city center. Drop at airport for your onwards journey.</p>
										</td>
										</tr>
										</table>					
										</div>								<br />
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Inclusions</p>
								</div>
												
								<ul>
																			<li>EP (No Meal)</li>
																			</ul>
								</div>
																<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Payments Terms</p>
								</div>
								
								<ul><li>Some Advance Percentage of total booking amount</li><li>
Airfare/Transport fare to be paid full at one time in advance.</li></ul>					
								</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.northindiatour.co.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Srinagar Special 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="191047"/>
						</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.northindiatour.co.in/new-delhi-tour-packages.htm" title="New Delhi Tour Packages">New Delhi</a> <b class="alpha50 bn small">(7)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.northindiatour.co.in/nainital-tour-packages.htm" title="Nainital Tour Packages">Nainital</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.northindiatour.co.in/corbett-tour-packages.htm" title="Corbett Tour Packages">Corbett</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.northindiatour.co.in/shimla-tour-packages.htm" title="Shimla Tour Packages">Shimla</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.northindiatour.co.in/kausani-tour-packages.htm" title="Kausani Tour Packages">Kausani</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.northindiatour.co.in/jaipur-tour-packages.htm" title="Jaipur Tour Packages">Jaipur</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.northindiatour.co.in/chandigarh-city-tour-packages.htm" title="Chandigarh City Tour Packages">Chandigarh City</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.northindiatour.co.in/agra-tour-packages.htm" title="Agra Tour Packages">Agra</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.northindiatour.co.in/manali-tour-packages.htm" title="Manali Tour Packages">Manali</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.northindiatour.co.in/mussoorie-tour-packages.htm" title="Mussoorie Tour Packages">Mussoorie</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.northindiatour.co.in/pushkar-tour-packages.htm" title="Pushkar Tour Packages">Pushkar</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.northindiatour.co.in/jodhpur-tour-packages.htm" title="Jodhpur Tour Packages">Jodhpur</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.northindiatour.co.in/dalhousie-tour-packages.htm" title="Dalhousie Tour Packages">Dalhousie</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.northindiatour.co.in/haridwar-tour-packages.htm" title="Haridwar Tour Packages">Haridwar</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.northindiatour.co.in/amritsar-tour-packages.htm" title="Amritsar Tour Packages">Amritsar</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.northindiatour.co.in/ranikhet-tour-packages.htm" title="Ranikhet Tour Packages">Ranikhet</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.northindiatour.co.in/ranthambore-tour-packages.htm" title="Ranthambore Tour Packages">Ranthambore</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.northindiatour.co.in/dharamshala-tour-packages.htm" title="Dharamshala Tour Packages">Dharamshala</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.northindiatour.co.in/pahalgam-tour-packages.htm" title="Pahalgam Tour Packages">Pahalgam</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.northindiatour.co.in/mount-abu-tour-packages.htm" title="Mount Abu Tour Packages">Mount Abu</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.northindiatour.co.in/jaisalmer-tour-packages.htm" title="Jaisalmer Tour Packages">Jaisalmer</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.northindiatour.co.in/bikaner-tour-packages.htm" title="Bikaner Tour Packages">Bikaner</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.northindiatour.co.in/udaipur-tour-packages.htm" title="Udaipur Tour Packages">Udaipur</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.northindiatour.co.in/srinagar-tour-packages.htm" title="Srinagar Tour Packages">Srinagar</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.northindiatour.co.in/gulmarg-tour-packages.htm" title="Gulmarg Tour Packages">Gulmarg</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="uu db ar"><a class="showallspan" data-target="show" href="javascript:void(0)" >View More</a></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.northindiatour.co.in/hill-station-holidays-catid.htm" title="Hill Station Packages">Hill Station</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.northindiatour.co.in/honeymoon-holidays-catid.htm" title="Honeymoon Packages">Honeymoon</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.northindiatour.co.in/lakes-rivers-holidays-catid.htm" title="Lakes & Rivers Packages">Lakes & Rivers</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.northindiatour.co.in/national-parks-holidays-catid.htm" title="National Parks Packages">National Parks</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.northindiatour.co.in/forts-palaces-holidays-catid.htm" title="Forts and Palaces Packages">Forts and Palaces</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.northindiatour.co.in/heritage-holidays-catid.htm" title="Heritage Packages">Heritage</a> <b class="alpha50 bn small">(2)</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:60:"Book Srinagar Special Tour - 7 Nights / 8 Days Tour Packages";i:2;s:131:"book srinagar special tour - 7 nights / 8 days tour packages, hill station tour packages, srinagar, pahalgam, gulmarg tour packages";i:3;s:192:"Book Srinagar Special Tour - 7 Nights / 8 Days tour packages from North India Tourism Promoters - Get attractive 7 Nights / 8 Days Hill Station  tour packages for  Srinagar, Pahalgam, Gulmarg.";i:4;s:420:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Srinagar, Pahalgam, Gulmarg"        
		                 },
		      "description": "",
		      "name": "Srinagar Special Tour",
		      "telephone": "+91-9868077256"
		    }
		    </script>
			";i:5;N;}