a:6:{i:0;s:37806:"				<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="h1"><h1>Land of Spring with Cold Desert Tour</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.shivalikadventurestour.in/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.shivalikadventurestour.in/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
											
					<b class="ffv p2px">&rsaquo;</b>Land of Spring with Cold Desert Tour</p> 
									
						<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> 
						12 Nights / 13 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> Srinagar, Leh Ladakh, Kargil</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.shivalikadventurestour.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Land of Spring with Cold Desert 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="152080"/>
						</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_18/528800/234417.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_18/528800/234417.jpg"  width="150" height="90"    alt="Land of Spring with Cold Desert Tour" title="Land of Spring with Cold Desert Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
													<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Tour Detail</p>
								</div>
													
								Optional Charges<br />
<br />
<br />
      Professional Tourist Guide Rs. 2000 per Day.<br />
<br />
      Camel Safari in Nubra Valley Rs. 800 per Person<br />
<br />
      River Rafting Rs. 1200 per Person (phase 1) Note: Season for Rafting is from 25th June Until 30 August)<br />
<br />
      Cultural Program Between Rs. 5000-10,000 per Program.<br />
<br />
<br />
<br />
<br />
terms & Conditions<br />
<br />
      Rates are Subject to Change Without Notice.<br />
<br />
      Prices Valid for Minimum 02, 04 & 06 Pax Traveling Together in One Vehicle & Above 06 Pax Based On Maxi Cab (12 Seater).<br />
<br />
      Cost Incidental to Any Change in the Itinerary/ Stay On Account of Flight Cancellation Due to Bad Weather, Ill Health, Roadblocks And/or Any Factors Beyond Control Shall Be Charged Extra.<br />
cancellation Policy<br />
<br />
      Upon Confirmation of the Booking 50% of the Total Amount Needs to Be Paid Immediately as a Non Refundable Advance.<br />
<br />
      the Remaining 50% Needs to Be Paid At-least 8 Days Prior to the Arrival Date.<br />
<br />
      if the Cancellation Comes More Than a Week Ahead of the Arrival, 50% of the Total Amount is Charged as Cancellation Fee<br />
<br />
      if the Cancellation Comes Within a Week of the Arrival Date, 100% of the Total Amount is Charged as Cancellation Fee.<br />
<br />
      Kindly Note : No Refund is Applicable for Unexpected and Unplanned Early Departures<br />
<br />
      No Refund Can Be Given for Any Unutilized Services for Any Reason(s) What-so-ever.								</div>
								<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> Arrival
										</p>
										<p class="aj">Pick up from Srinagar Airport and Transferred to Hotel/House boat. Afternoon visit to Nishat Garden,Shalimar Garden,Tulip Garden and Dal Lake. Dinner and night stay in House Boat/Hotel.</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 Gulmarg-srinagar (120 Kms 3/4 Hrs)
										</p>
										<p class="aj">After breakfast enjoy an excursion to Gulmarg (Meadow of Flowers) at a height of 8800ft above sea level, the drive top replica watches approx 56kms will take 2hrs with photo stops .One can also have the view of Nanga Parbhat (26,600 ft) if weather permits. Gulmarg has highest 18 hole golf course in the world and has developed into a famous Ski resort. After lunch take a gondola ride from Gulmarg to Kongdoori 10,050 ft high. Return back to Srinagar; take Shikara cruise to Famous Dal Lake visit Floating Gardens, Lotus Gardens, Vegetable Gardens and backwater Canals. Dinner & overnight stay at Houseboat.</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 to Kargil (210 Kms / 6 Hrs)
										</p>
										<p class="aj">After breakfast leave for Kargil, on the way visit Sonamarg (Known As Meadow of Gold), Drass Village (2nd Coldest Inhabitated place in the World), Enroute have a magnificent view of Kargil war Famous Peaks(Tiger, Tololing), reach Kargil by evening. Overnight stay at Kargil.</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> Kargil to Leh (250 Kms / 6 Hrs)
										</p>
										<p class="aj">After breakfast leave for Leh on the way visit to Mulbek Chamba,Lamayuru monastery,Moonland,Alchi monastery,River sangam,Magnetic Hill,Pathar Sahib Gurudwara and Hall of fame.Dinner and overnight in hotel.</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> Leh to Nubra Valley (130 Kms / 5 Hrs)
										</p>
										<p class="aj">After Breakfast drive to Nubra Valley via Khardungla (Highest Motorable road in the World,18,380 ft). Reach Deskit by lunch time. Rest of the day is free to explore Deskit, Hunder Villages and camel Safari in Sand Dunes between Deskit  and Hunder Village.  Overnight stay at Nubra valley</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> Nubra to Turtuk to Nubra (180 Kms )
										</p>
										<p class="aj">After breakfast drive to Turtuk (which is first time opened for the tourist in 2010) which is a place captured by Indians in the war of 1972 with Pakistan, enroute visit Tyakshi (it is the border which divides India and Pakistan), reach Nubra by evening. Overnight stay at Nubra.</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> Hunder to Leh (120 Kms / 4-5 Hrs)
										</p>
										<p class="aj">After Breakfast visit Deskit Monastery,explore the place where one of the unique features of the landscapes in Nubra is the sand dunes between Deskit and Hunder villages and drive back to Leh by same Route, crossing Khardungla Pass. Overnight stay at Leh.</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> Leh Sightseeing/Leisure
										</p>
										<p class="aj">After breakfast drive to visit the Shey Palace, Thiksey, Hemis monasteries, Stok Palace Museum & Sindhu Ghat. Return to Leh in the evening. Overnight stay at Leh.</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 9:</b> Leh to Spangmik (160 Kms / 4-5 Hrs)
										</p>
										<p class="aj">After Breakfast leave for Pangong Lake 14,500 ft, through Changla Pass 17,350 ft. (third Highest Motorable road in the world.) Overnight stay at Camp.</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 10:</b> Spangmik to Man Merak to Leh (200 Kms / 6-7 Hrs).
										</p>
										<p class="aj">After Breakfast drive from Spangmik to Man Merak also opened for the tourist for the first time in 2010 after that drive back to Leh with the sweet memory of Man Merak which is also a border which divides China and India. Overnight stay at Leh.</p>
										</td>
										</tr>
										</table>					
										</div><div id="show_more_content" style="display:none;">
											<div class="data">
											<table class="w100 formTable bdr0 imgWidth">
											<tr>
											<td class="p10px vat">
											<p class="b large mb5px"><b class="dif">Day 11:</b> Leh to Tsomoriri Lake (250 Kms / 7-8 Hrs).
											</p>
											<p class="aj">After breakfast  drive to Tsomoriri. Lake is 19 Kms long and 7Km wide at an altitude of 4595m lark etc. There is also a  nomads headquater where people/tourist are allowed to stay/take rest.  Afterwards take a walk around the Lake to enjoy the scenic beauty. Overnight stay at Camp.</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 12:</b> Tsomoriri to Leh (250 kms 6 to 7 hrs)
											</p>
											<p class="aj">After breakfast drive to leh via Taglangla pass on the way visit to Tsokar Lake. Arrive late afternoon at hotel.Dinner and overnight stay.</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 13:</b> Departure
											</p>
											<p class="aj">Departure to Leh airport with sweet memory of Land of passes.</p>
											</td>	
											</tr>
											</table>				
											</div>					
									</div>									<p class="mt10px ac"><a class="buttonBig p5px10px dib b" id="more_button" href="javascript:topDestinationToggle('show_more_content','more_button');" >View More &#9660;</a></p>
																	<br />
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Inclusions</p>
								</div>
												
								<ul>
																			<li>Hotel</li>
																						<li>Meals</li>
																						<li>Sightseeing</li>
																				<li>Assistance Upon Arrival At Srinagar Airport with Traditional Welcome in the Hotel</li><li>
12 Nights / 13 Days Accommodation On Twin Sharing Basis as per the Itinerary</li><li>
12 Breakfast & 12 Dinners</li><li>
return Airport and Round Trip Transfers Along with all Sightseeing Tours By Non-ac Scorpio / Qualis / Tavera / Innova / Xylo / Tata Safari as per the Program.</li><li>
 Inner Line Permit to Restricted / Protected Areas (pangong Lake & Khardungla Top,Turtuk and Tsomoriri Lake)</li><li>
entrance Fees for the Sights Mentioned in the Itinerary</li><li>
01 Bottle of Mineral Water Every Day to Each Tourist</li><li>
bell & Ross Replica Watches</li>
																	</ul>
								</div>
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Exclusions</p>
								</div>
								
								<ul><li>Optional Charges</li><li>
      Professional Tourist Guide Rs. 2000 per Day.</li><li>
      Camel Safari in Nubra Valley Rs. 800 per Person</li><li>
      River Rafting Rs. 1200 per Person (phase 1) Note: Season for Rafting is from 25th June Until 30 August)</li><li>
      Cultural Program Between Rs. 5000-10,000 per Program.</li><li>
terms & Conditions</li><li>
      Rates are Subject to Change Without Notice.</li><li>
      Prices Valid for Minimum 02, 04 & 06 Pax Traveling Together in One Vehicle & Above 06 Pax Based On Maxi Cab (12 Seater).</li><li>
      Cost Incidental to Any Change in the Itinerary/ Stay On Account of Flight Cancellation Due to Bad Weather, Ill Health, Roadblocks And/or Any Factors Beyond Control Shall Be Charged Extra.</li><li>
cancellation Policy</li><li>
      Upon Confirmation of the Booking 50% of the Total Amount Needs to Be Paid Immediately as a Non Refundable Advance.</li><li>
      the Remaining 50% Needs to Be Paid At-least 8 Days Prior to the Arrival Date.</li><li>
      if the Cancellation Comes More Than a Week Ahead of the Arrival, 50% of the Total Amount is Charged as Cancellation Fee</li><li>
      if the Cancellation Comes Within a Week of the Arrival Date, 100% of the Total Amount is Charged as Cancellation Fee.</li><li>
      Kindly Note : No Refund is Applicable for Unexpected and Unplanned Early Departures</li><li>
      No Refund Can Be Given for Any Unutilized Services for Any Reason(s) What-so-ever.</li></ul>
								</div>
									
								<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Terms &amp; Conditions</p>
								</div>				
								<p>Optional Charges


&middot;        Professional Tourist Guide Rs. 2000 per Day.

<p>&middot;        Camel Safari in Nubra Valley Rs. 800 per person

<p>&middot;        River Rafting Rs. 1200 per person (Phase 1) Note: Season for Rafting is from 25th June until 30 August)

<p>&middot;        Cultural Program Between Rs. 5000-10,000 per program.

<p> 


Terms &amp; Conditions

<p>&middot;        Rates are subject to change without notice.

<p>&middot;        Prices valid for Minimum 02, 04 &amp; 06 pax traveling together in one vehicle &amp; above 06 pax based on Maxi Cab (12 Seater).

<p>&middot;        Cost incidental to any change in the itinerary/ stay on account of flight cancellation due to bad weather, ill health, roadblocks and/or any factors beyond control shall be charged extra.<br />
Cancellation Policy

<p>&middot;        Upon Confirmation of the booking 50% of the Total Amount needs to be paid immediately as a Non Refundable Advance.

<p>&middot;        The remaining 50% needs to be paid at-least 8 days prior to the Arrival date.

<p>&middot;        If the Cancellation comes more than a week ahead of the arrival, 50% of the Total Amount is charged as cancellation fee

<p>&middot;        If the cancellation comes within a week of the Arrival date, 100% of the total amount is charged as cancellation fee.

<p>&middot;        Kindly Note : No refund is applicable for unexpected and unplanned early departures

<p>&middot;        No refund can be given for any unutilized services for any reason(s) what-so-ever.

<p>								</div>
														
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.shivalikadventurestour.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Land of Spring with Cold Desert 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="152080"/>
						</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.shivalikadventurestour.in/packages-in-srinagar.htm" title="Packages in Srinagar">Srinagar</a> <b class="alpha50 bn small">(14)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.shivalikadventurestour.in/packages-in-leh-ladakh.htm" title="Packages in Leh Ladakh">Leh Ladakh</a> <b class="alpha50 bn small">(14)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.shivalikadventurestour.in/packages-in-pahalgam.htm" title="Packages in Pahalgam">Pahalgam</a> <b class="alpha50 bn small">(8)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.shivalikadventurestour.in/packages-in-gulmarg.htm" title="Packages in Gulmarg">Gulmarg</a> <b class="alpha50 bn small">(7)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.shivalikadventurestour.in/packages-in-jammu.htm" title="Packages in Jammu">Jammu</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.shivalikadventurestour.in/packages-in-kargil.htm" title="Packages in Kargil">Kargil</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.shivalikadventurestour.in/packages-in-sonamarg.htm" title="Packages in Sonamarg">Sonamarg</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.shivalikadventurestour.in/packages-in-new-delhi.htm" title="Packages in New Delhi">New Delhi</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.shivalikadventurestour.in/packages-in-katra.htm" title="Packages in Katra">Katra</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.shivalikadventurestour.in/packages-in-agra.htm" title="Packages in Agra">Agra</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.shivalikadventurestour.in/packages-in-jaipur.htm" title="Packages in Jaipur">Jaipur</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.shivalikadventurestour.in/packages-in-pathankot.htm" title="Packages in Pathankot">Pathankot</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.shivalikadventurestour.in/packages-in-dalhousie.htm" title="Packages in Dalhousie">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.shivalikadventurestour.in/packages-in-chandigarh-city.htm" title="Packages in Chandigarh City">Chandigarh City</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.shivalikadventurestour.in/packages-in-manali.htm" title="Packages in Manali">Manali</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.shivalikadventurestour.in/packages-in-haridwar.htm" title="Packages in Haridwar">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.shivalikadventurestour.in/packages-in-patnitop.htm" title="Packages in Patnitop">Patnitop</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.shivalikadventurestour.in/hill-station-holidays-catid.htm" title="Hill Station Packages">Hill Station</a> <b class="alpha50 bn small">(15)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.shivalikadventurestour.in/valley-holidays-catid.htm" title="Valley Packages">Valley</a> <b class="alpha50 bn small">(11)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.shivalikadventurestour.in/adventure-holidays-catid.htm" title="Adventure Packages">Adventure</a> <b class="alpha50 bn small">(12)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.shivalikadventurestour.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.shivalikadventurestour.in/golden-triangle-holidays-catid.htm" title="Golden Triangle Packages">Golden Triangle</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.shivalikadventurestour.in/forts-palaces-holidays-catid.htm" title="Forts and Palaces Packages">Forts and Palaces</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.shivalikadventurestour.in/heritage-holidays-catid.htm" title="Heritage Packages">Heritage</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.shivalikadventurestour.in/romantic-holidays-catid.htm" title="Romantic Packages">Romantic</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.shivalikadventurestour.in/religious-pilgrimage-holidays-catid.htm" title="Religious & Pilgrimage Packages">Religious & Pilgrimage</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.shivalikadventurestour.in/river-rafting-holidays-catid.htm" title="River Rafting Packages">River Rafting</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>
				</div>
				
										<br />
						<div class="row1"> 
						<div class="col-1"> 
						<div class="mt30px">
						<p class="xxlarge b pb10px bdrB db"> Similar Tour Packages for Srinagar, Leh Ladakh, Kargil</p>
						</div>
						<br/>
						<div class="cf_3img">
						<ul class="lsn m0px p0px fo idv_eqheight cols_similar">
											
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.shivalikadventurestour.in/tour-packages/kashmir-with-sonmarg-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/528800/234334.jpg"  alt="Kashmir with Sonmarg Tour" title="Kashmir with Sonmarg Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.shivalikadventurestour.in/tour-packages/kashmir-with-sonmarg-tour.htm" title="Kashmir with Sonmarg Tour"><h3>Kashmir With Sonmarg Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								5 Nights / 6 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Srinagar, Gulmarg</p>
															<div class="mt10px small">
							<form name="pkg_152030" id="pkg_152030" method="post" action="http://www.shivalikadventurestour.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.shivalikadventurestour.in/tour-packages/kashmir-with-sonmarg-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Kashmir with Sonmarg Tour - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="152030"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.shivalikadventurestour.in/tour-packages/vashnoo-devi-with-kashmir-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/528800/234400.jpg"  alt="Vashnoo Devi with Kashmir Tour" title="Vashnoo Devi with Kashmir Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.shivalikadventurestour.in/tour-packages/vashnoo-devi-with-kashmir-tour.htm" title="Vashnoo Devi with Kashmir Tour"><h3>Vashnoo Devi With Kashmir Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								7 Nights / 8 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Jammu, Katra, Srinagar, Pahalgam, Gulmar..</p>
															<div class="mt10px small">
							<form name="pkg_152074" id="pkg_152074" method="post" action="http://www.shivalikadventurestour.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.shivalikadventurestour.in/tour-packages/vashnoo-devi-with-kashmir-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Vashnoo Devi with Kashmir Tour - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="152074"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.shivalikadventurestour.in/tour-packages/9-days-vashnoo-devi-with-kashmir-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/528800/234405.jpg"  alt="9 Days Vashnoo Devi with Kashmir Tour" title="9 Days Vashnoo Devi with Kashmir Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.shivalikadventurestour.in/tour-packages/9-days-vashnoo-devi-with-kashmir-tour.htm" title="9 Days Vashnoo Devi with Kashmir Tour"><h3>9 Days Vashnoo Devi With Kashmir Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								8 Nights / 9 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Jammu, Katra, Srinagar, Gulmarg</p>
															<div class="mt10px small">
							<form name="pkg_152076" id="pkg_152076" method="post" action="http://www.shivalikadventurestour.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.shivalikadventurestour.in/tour-packages/9-days-vashnoo-devi-with-kashmir-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="9 Days Vashnoo Devi with Kashmir Tour - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="152076"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.shivalikadventurestour.in/tour-packages/bestof-kashmir-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/528800/234365.jpg"  alt="Best of Kashmir Tour" title="Best of Kashmir Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.shivalikadventurestour.in/tour-packages/bestof-kashmir-tour.htm" title="Best of Kashmir Tour"><h3>Best Of Kashmir Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								7 Nights / 8 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Srinagar, Pahalgam, Sonamarg, Gulmarg</p>
															<div class="mt10px small">
							<form name="pkg_152058" id="pkg_152058" method="post" action="http://www.shivalikadventurestour.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.shivalikadventurestour.in/tour-packages/bestof-kashmir-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Best of Kashmir Tour - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="152058"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.shivalikadventurestour.in/tour-packages/pick-from-chandigarh-and-srinagar-drop-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/528800/234318.jpg"  alt="Pick from Chandigarh and Srinagar Drop Tour" title="Pick from Chandigarh and Srinagar Drop Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.shivalikadventurestour.in/tour-packages/pick-from-chandigarh-and-srinagar-drop-tour.htm" title="Pick from Chandigarh and Srinagar Drop Tour"><h3>Pick From Chandigarh And Srinagar Drop Tou..</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								11 Nights / 12 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Chandigarh City, Manali, Srinagar, Sonam..</p>
															<div class="mt10px small">
							<form name="pkg_152014" id="pkg_152014" method="post" action="http://www.shivalikadventurestour.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.shivalikadventurestour.in/tour-packages/pick-from-chandigarh-and-srinagar-drop-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Pick from Chandigarh and Srinagar Drop Tour - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="152014"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.shivalikadventurestour.in/tour-packages/golden-triangle-tour-with-ladakh.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/528800/234310.jpg"  alt="Golden Triangle Tour with Ladakh" title="Golden Triangle Tour with Ladakh"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.shivalikadventurestour.in/tour-packages/golden-triangle-tour-with-ladakh.htm" title="Golden Triangle Tour with Ladakh"><h3>Golden Triangle Tour With Ladakh</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								11 Nights / 12 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  New Delhi, Jaipur, Agra, Leh Ladakh</p>
															<div class="mt10px small">
							<form name="pkg_152007" id="pkg_152007" method="post" action="http://www.shivalikadventurestour.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.shivalikadventurestour.in/tour-packages/golden-triangle-tour-with-ladakh.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Golden Triangle Tour with Ladakh - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="152007"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
															
						</ul>
						</div>
						</div> 		  
						<br>
						</div>  
						<br />
										
				</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:77:"Book Land of Spring with Cold Desert Tour - 12 Nights / 13 Days Tour Packages";i:2;s:146:"book land of spring with cold desert tour - 12 nights / 13 days tour packages, adventure tour packages, srinagar, leh ladakh, kargil tour packages";i:3;s:204:"Book Land of Spring with Cold Desert Tour - 12 Nights / 13 Days tour packages from Shivalik Adventures Tour - Get attractive 12 Nights / 13 Days Adventure  tour packages for  Srinagar, Leh Ladakh, Kargil.";i:4;s:1822:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Srinagar, Leh Ladakh, Kargil"        
		                 },
		      "description": "Optional Charges


      Professional Tourist Guide Rs. 2000 per Day.

      Camel Safari in Nubra Valley Rs. 800 per Person

      River Rafting Rs. 1200 per Person (phase 1) Note: Season for Rafting is from 25th June Until 30 August)

      Cultural Program Between Rs. 5000-10,000 per Program.




terms & Conditions

      Rates are Subject to Change Without Notice.

      Prices Valid for Minimum 02, 04 & 06 Pax Traveling Together in One Vehicle & Above 06 Pax Based On Maxi Cab (12 Seater).

      Cost Incidental to Any Change in the Itinerary/ Stay On Account of Flight Cancellation Due to Bad Weather, Ill Health, Roadblocks And/or Any Factors Beyond Control Shall Be Charged Extra.
cancellation Policy

      Upon Confirmation of the Booking 50% of the Total Amount Needs to Be Paid Immediately as a Non Refundable Advance.

      the Remaining 50% Needs to Be Paid At-least 8 Days Prior to the Arrival Date.

      if the Cancellation Comes More Than a Week Ahead of the Arrival, 50% of the Total Amount is Charged as Cancellation Fee

      if the Cancellation Comes Within a Week of the Arrival Date, 100% of the Total Amount is Charged as Cancellation Fee.

      Kindly Note : No Refund is Applicable for Unexpected and Unplanned Early Departures

      No Refund Can Be Given for Any Unutilized Services for Any Reason(s) What-so-ever.",
		      "name": "Land of Spring with Cold Desert Tour",
		      "telephone": "+91-9797497724"
		    }
		    </script>
			";i:5;N;}