a:6:{i:0;s:9933:"				<div class="h1"><h1>Best Of Dalhousie & Dharamsala Tour</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.osrvacation.co.in/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.osrvacation.co.in/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>Best Of Dalhousie & Dharamsala 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">
						5 Nights / 6 Days 
						</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Destination Covered </td>
						<td class="p5px pl0px vat">Dalhousie, Dharamshala</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.osrvacation.co.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Best Of Dalhousie & Dharamsala 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="65188"/>
						</form>
						</p>
						</td>
						</tr>
											</table>
					</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 w150px h150px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_14/406010/120018.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_14/406010/120018.jpg"  width="150" height="150"    alt="Best Of Dalhousie & Dharamsala Tour" title="Best Of Dalhousie & Dharamsala Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
					<br />
					
					Himachal Pradesh is an area, comfortably cuddled in the midst of the Himalayas, parading an ethereal wonder that will abandon you besotted forever. With this six-day visit, start a relationship with nature herself, as you visit Dalhousie, Dharamshala and Khajjiar. All these slope stations are hung in thick coniferous and oak trees, with the undulating mountains shining in the setting. The groups of interesting houses dabbing the verdant inclines and the clearing perspectives of the encompassing will leave an unceasing impact on your heart.<br />
Trip Highlights<br />
<br />
Sightseeing in Dalhousie.<br />
Exploring popular attractions of Dalhousie<br />
Day’s excursion to Khajjiar - Dharamsala.<br />
visit the Jyotirlinga of Baijnath templeCamera fee.<br />
Alcoholic / Non- Alcoholic beverages.<br />
Travel insurance.<br />
4.35% GST (includes 0.15% Swachh Bharat Cess).<br />
Any Airfare / Train fare.<br />
Expenses caused by factors beyond our control like rail and flight delays, roadblocks,<br />
vehicle mal-functions, political disturbances etc.<br />
Tips, laundry & phone call<br />
Entrance fees to monuments and museum.<br />
All personal expenses<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 in Dalhousie
								</p>
								<p class="aj">You will be picked up from Chandigarh/Pathankot and will be transferred to Dalhousie by road. Upon arrival at Dalhousie, check in at the hotel and relax. In the evening, you are free to unwind and enjoy an overnight stay at the hotel in Dalhousie.</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> Dalhousie Sightseeing
								</p>
								<p class="aj">After a wholesome breakfast, visit Satdhara or seven springs, Martyr’s Memorial at Panchpula and Subhash Baoli. Later head back to the hotel and in the evening enjoy the bustling Mall Road. Overnight stay will be arranged at the 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 3:</b> Dalhousie - Khajjiar
								</p>
								<p class="aj">After a yummy breakfast, check out from the hotel and drive to Khajjiar by road. Enroute visit Dainkund, Khajjiar Sanctuary, Gandhi Chowk and Khajinag Temple. Arrive at Khajjiar, check in at the hotel and spend the rest of the day at ease. Overnight stay will be arranged at the 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 4:</b> Khajjiar - Dharamsala
								</p>
								<p class="aj">After a wholesome breakfast, check out from the hotel and drive to the beautiful hill station of Dharamshala. Here you can easily access the snowline and go on a day’s trek to a snow-point. Once you arrive at Dharamshala, check in at the hotel and spend the rest of the day for leisure and overnight stay at the 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> Dharamsala Sightseeing
								</p>
								<p class="aj">After a yummy breakfast, visit the Jyotirlinga of Baijnath temple and also visit the Tibetan monastery in McLeod Ganj. Later, visit Palampur Tea Estates and then come back to hotel to rest for the day. You can also take a stroll at Mall Road in the evening before heading back to your hotel for the night.</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> Departure from Dharamsala to Chandigarh
								</p>
								<p class="aj">After a delicious breakfast, check out from the hotel and drive to Chakkibank/Pathankot/Chandigarh for your onward journey.</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>Sightseeing</li>
																		<li>Transfers</li>
															</ul>
						<br />
												<p class="large b mb5px dif">Exclusions :</p> <ul><li>Camera fee.</li><li>
Alcoholic / Non- Alcoholic beverages.</li><li>
Travel insurance.</li><li>
4.35% GST (includes 0.15% Swachh Bharat Cess).</li><li>
Any Airfare / Train fare.</li><li>
Expenses caused by factors beyond our control like rail and flight delays, roadblocks,</li><li>
vehicle mal-functions, political disturbances etc.</li><li>
Tips, laundry & phone call</li><li>
Entrance fees to monuments and museum.</li><li>
All personal expenses</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.osrvacation.co.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Best Of Dalhousie & Dharamsala 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="65188"/>
						</form>
						</div>
						
						";i:1;s:74:"Book Best Of Dalhousie & Dharamsala Tour - 5 Nights / 6 Days Tour Packages";i:2;s:134:"book best of dalhousie & dharamsala tour - 5 nights / 6 days tour packages, valley tour packages, dalhousie, dharamshala tour packages";i:3;s:171:"Osr Vacation Pvt Ltd offers Best Of Dalhousie & Dharamsala Tour - 5 Nights / 6 Days tour package, budget Valley tour packages for Dalhousie, Dharamshala at exciting price.";i:4;s:1526:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Dalhousie, Dharamshala"        
		                 },
		      "description": "Himachal Pradesh is an area, comfortably cuddled in the midst of the Himalayas, parading an ethereal wonder that will abandon you besotted forever. With this six-day visit, start a relationship with nature herself, as you visit Dalhousie, Dharamshala and Khajjiar. All these slope stations are hung in thick coniferous and oak trees, with the undulating mountains shining in the setting. The groups of interesting houses dabbing the verdant inclines and the clearing perspectives of the encompassing will leave an unceasing impact on your heart.
Trip Highlights

Sightseeing in Dalhousie.
Exploring popular attractions of Dalhousie
Day’s excursion to Khajjiar - Dharamsala.
visit the Jyotirlinga of Baijnath templeCamera fee.
Alcoholic / Non- Alcoholic beverages.
Travel insurance.
4.35% GST (includes 0.15% Swachh Bharat Cess).
Any Airfare / Train fare.
Expenses caused by factors beyond our control like rail and flight delays, roadblocks,
vehicle mal-functions, political disturbances etc.
Tips, laundry & phone call
Entrance fees to monuments and museum.
All personal expenses",
		      "name": "Best Of Dalhousie & Dharamsala Tour",
		      "telephone": "+91-9555961410"
		    }
		    </script>
			";i:5;N;}