a:6:{i:0;s:53562:"				<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>Highlights of Northern India Tour</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.trekntourtravel.com/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.trekntourtravel.com/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
											
					<b class="ffv p2px">&rsaquo;</b>Highlights of Northern India Tour</p> 
										<div class="fo">
					<div class="db vat pr slideArrow">				
												<ul class="bxslider11 fx-height lh0" style="margin:0px;padding:0px;">
																	<li class="pr">
										<div>										
										<div class="lh0 pa blur-bg" style="background:url(https://ttw.wlimg.com/package-images/photo-big/dir_18/532995/248253.jpg);"></div>
										<a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_18/532995/248253.jpg">
										<div class="slide-fixImag" style="margin:0 9%;"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/532995/248253.jpg"  height=""  width=""    alt="Highlights of Northern India Tour" title="Highlights of Northern India Tour"  /></div>
										</a>
										</div>
										</li>
																	</ul>
												<div class="sliderCont-Layer">
					<div class="dt w100">
					<div class="dtc vam"><p class="xxxlarge fw7 lh13em">Highlights of Northern India Tour 
					
											<span class="fw3 xsmall yellow">(
						11 Nights / 12 Days 
						)</span>
											</p>
											<p class="mt5px"><span class="fw6">Destination Covered</span> : New Delhi, Jaipur, Udaipur, Agra, Varanasi, Khajuraho, Orchha, Fatehpur Sikri</p>
											</div>
					<div class="dtc w200px vam"></div>
					</div>
					</div>
					<div class="slidePrice ac">
					<p class="xxlarge red mb12px">
											<span class="db ttu xsmall mt5px">Price On Request</span>
											</p>
											<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.trekntourtravel.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Highlights of Northern India Tour - Tour Package"/>
						<input type="hidden" name="allocate_type" value="tour"/>
						<a href="#" onclick="document.getElementById('frmpackagedetail').submit();" class="buttonBig c3px dib p10px15px xlarge fw6">Book Your Tour</a>
						<input type="hidden" name="pkg_slno" value="162868"/>
						</form>
											</div> 
					
					<script>			
					jQuery('.bxslider11').bxSlider({
					  mode:'horizontal',
					  slideWidth:840,
					  auto:true,
					  autoControls:false,
					  stopAutoOnClick:true,
					  pager:false
					});
					</script>
					</div>
					</div>
											<div class="mt30px mb30px">
						<div class="b xxlarge mb10px">
								   					Overview
		   											</div>					
						<p class="aj">Sketch Itinerary :<br />
-------------------------<br />
<br />
new Delhi | Udaipur | Jaipur | Fatehpur Sikri | Agra | Orchha | Khajuraho | Varanasi | New 2</p>
						</div>
														<div class="mt30px b xlarge">
												   					Detailed Tour Itinerary
				   													</div>		   
								<br/>
																			<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 1											
											:</b> Arrive Delhi										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Highlights: <br />
<br />
description: Arrive in Delhi. After You have Cleared Immigration and Customs Formalities, You are Met Outside the Arrival Hall By Our Representative, Who Will Be Holding a Sign with Your Name. You are Escorted to Your Vehicle and Assisted with Transfer and Check-in Formalities At Your Hotel. (check-in Time 14:00 Hrs) Delhi, India's Capital and Political Hub is An Ancient City that Has Something for Everyone. Settled Seven Times Over the Centuries, this City Has Grown in a Way that Reflects Its Past, While Retaining Its Cosmopolitan Flavour. Delhi is India's Showcase, Be It Architecture, Religion, Shopping, Culture - Everything is Available Here - Waiting to Be Discovered. Imposing, Inspiring and Right At Home among the Grand Landmarks of the New Delhi's Diplomatic Enclave, this Iconic Palace Style Hotel Makes a Significant Statement in Terms of Architecture and Intent.<br />
<br />
locations: Delhi															
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 2											
											:</b> In Delhi										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Highlights: Explore Old and New Delhi<br />
<br />
description: After Breakfast Proceed for a Tour of India's Capital. Start Your Day with a Tour of Old Delhi, Driving Along the Rajpath and Visiting the Asia's Largest Mosque Known as Jama Masjid. a Ride On a Pedicab/rickshaw Will Take You to the Heart of Old Delhi, Allowing You to Savour the Sights, Smells and Sounds of this Ancient City, Its Past Reflected in Its Present. Your Guide Will Take You Through Winding Lanes Recounting Tales, Anecdotes and Legends of a Delhi that Goes Back Thousands of Years. the Tour Takes You to the Age Old Silver Market, Through Quaint Streets Selling Incredible Ware. Drive Past Red Fort to Visit City's Largest Sikh Temple Known as Bangla Sahib Gurudwara. After Lunch, the Sightseeing of the New Delhi Begins with Drive Past India Gate, Built in Memory of Indian Soldiers Killed During the First World War, Rashtrapati Bhawan, Built in the Early 20th Century as the Imperial Residence of the Viceroy, Today the Official Residence of the President of India and Parliament House, An Unique Circular Building with Huge Colonnades, Houses the Upper and Lower Houses of Parliament. Visit Humayun's Tomb, the First Mughal Garden Tomb, with Its Four Grand Gateways, Octagonal Base-plan, Soaring Niche-shaped Arches, Lofty Double Domes and the Symmetrical Garden with Its Central Canal. the Sightseeing Tour of New Delhi Comes to An End with the Visit of 70-meter High Qutub Minar, Which Looms Majestically Across the Wide Plains of Delhi. It Was Built During the 12th Century Delhi Sultanate Period and Commemorates the Conquest of Delhi By Qutb-ud-din Aibak, the Slave and Chief General of Mohammad Ghauri.<br />
<br />
locations: Delhi			
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 3											
											:</b> Delhi - Udaipur										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Highlights: Boat Ride On Lake Pichola<br />
<br />
description: Breakfast At the Hotel. Mid Morning Transfer to the Airport for the Flight to Udaipur. Udaipur, the Capital of Mewar for Centuries, is Set Amidst the Aravalli Ranges of Rajasthan. It is Regarded as One of the Most Romantic Cities of the World and is also Known as the 'venice of East'. Though Termed as the City of Lakes, Udaipur Has Many More Attractions: the City Boasts of Various Museums, Palaces, Gardens, Monuments and Colourful Festivals the Mighty Palaces with Their Exquisite Locations Transport You Directly Into the Royal Rajputana Era; Lake Palace, for One, Has Been Accredited for Being One of the Most Romantic Places in the World. the Massive Forts Grab the Interest of People with Their Sheer Structure and Architecture. the Beautiful Temples Create a Sense of Aestheticism with Their Spiritual Ecstasy. You are Met On Arrival and Transferred to the Hotel. in the Evening Take a Boat Ride On Lake Pichola. the Steel Blue Waters of the Lake, Artificially Created in the 14th Century, Reflect the White Phantom Jag Nivas Palace, Now the Lake Palace Hotel Which Was Built in 1746 as the Summer Residence of the Rulers, and Jag Mandir Said to Be Built By Maharana Karan Singh for His Friend Prince Khurram, Who Was Later to Become Emperor Shah Jehan. Huge Seamless Stone Slabs of Translucent Thinness Where Used. the Rooms Were Embellished with Inlaid Stones - Onyx, Jade, Carnelian, Jasper and Agate.<br />
<br />
locations: Udaipur			
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 4											
											:</b> In Udaipur										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Highlights: Explore Udaipur<br />
<br />
Description: After breakfast, visit the City Palace which stands on the crest of a ridge overlooking Lake Pichola. The largest palace in Rajasthan, it was built at various periods but still preserves the harmony of design, enhanced by massive octagonal towers surmounted by cupolas. Now a museum, it is a labyrinth of courtyards richly decorated with inlaid mirror-work, galleries covered with frescos, temples and roof gardens which afford a wide panorama below. The Jagdish Temple in the old town was built in the mid-17th century and has a remarkable bronze statue of Garuda, the mythical bird, facing his revered master Lord Vishnu. Sahelion-ki-Bari (Garden of the Maidens) is a good example of the Hindu art of landscape gardening on a princely scale. Ornamental pools with finely sculptured cenotaphs of soft black stone are surrounded by a profusion of fountains. The afternoon is at leisure. The shops and craftsmen's ateliers in the narrow streets of the bazaar justify endless walks.<br />
<br />
Locations: Udaipur			
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 5											
											:</b> Udaipur - Jaipur										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Highlights: <br />
<br />
description: After Breakfast, Depart On the 400 Km (5-hour) Drive to Jaipur Jaipur is An Essential Stop in Any Tour of Rajasthan. the Old Walled Section of the City is Known as the Pink City; It Was Painted Red (a Lucky Color in Hindu Culture) to Welcome England's Prince Alfred in 1853 and the Fading Old Buildings Retain Their Hue. Jaipur is One of India's Newer Cities, Founded in 1727, and Was the Creation of Jai Singh Ii, the Maharaja of the Kuchwaha Rajputs, Who Decided, When Mogul Power Was On the Decline, to Move from His Outmoded Hillside Fortress At Amber to Establish a New Capital On the Plains Further South. On Arrival in Jaipur, Check in At the Hotel.<br />
<br />
locations: Jaipur			
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 6											
											:</b> In Jaipur										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Highlights: Explore Jaipur, Elephant Ride<br />
<br />
Description: After an early breakfast, depart for Amber, the capital for 6 centuries before Jaipur was built, which lies 11 km north of Jaipur. Rising majestically on the slopes of a hill, this 11th century fort and palace complex is a blend of Hindu and Muslim styles - the earlier constructions in the inner apartments designed by the Hindu founder are austere, while later constructions abound in the rich flourishes characteristic of Muslim influence. Experience the thrill of riding up to the fort on gaily decorated elephants, in the manner the Rajputs of old made their royal ascent centuries ago. In the afternoon explore Jaipur, one of the best-planned cities in India, built of rose-pink sandstone by the great astronomer-king Jai Singh II in 1727. The City Palace stands in the centre of the city. Part of it is still the Maharaja's residence, while most of the complex has been developed into a museum containing rare manuscripts, fine specimens of Rajput and Mughal paintings, royal apparel and an armoury. Jantar Mantar observatory was built by the founder of Jaipur, Maharaja Sawai Jai Singh. The huge stone instruments were devised to study the movements of the sun, moon and planets and are incredibly accurate. Hawa Mahal (Palace of Winds) is the landmark of Jaipur. Built of pink sandstone with a delicate honeycomb design and rising five storeys high, it is composed of semi-octagonal overhanging windows, each with its perforated screen, which allowed the ladies of the court to look onto the main street without being seen. There is time to wander through the colourful bazaars, a veritable collector's paradise where you can watch ancient craft forms: Meenakari or enamelling work, exquisite jewellery in silver or gold sparkling with emeralds, rubies, white sapphires and dangling pearls. In tiny ateliers you can see the age-old tie-dye methods of cloth printing, miniature paintings on cotton or silk, statues hand-carved in wood or bone, fine metalwork and the renowned blue pottery of Jaipur<br />
<br />
Locations: Jaipur			
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 7											
											:</b> Jaipur - Fatehpur Sikri - Agra										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Highlights: Fatehpur Sikri<br />
<br />
description: After Breakfast, Depart for Agra, Renowned the World Over for the Fabulous Taj Mahal, and is Situated On the Right Bank of the River Yamuna. Agra is a City with a Glorious Past and Has the Distinction of Being the Capital of Various Ruling Dynasties. En Route, An Hour Out of Agra, Stop At Fatehpur Sikri, the Deserted Sandstone City, Which Was the Glorious But Short-lived Imperial Capital of Akbar, the Greatest of Mughal Emperors. Lying On a Rocky Ridge, It is Today a Haunting Complex of Empty Palaces, Forts and Mosques. a Variety of Architectural Styles are Found, Since Craftsmen Representing Many Schools Were Employed. this Magnificent Fort Palace Had to Be Abandoned After Just 15 Years of Occupation Due to Lack of Potable Water. On Arrival in Agra, Check in At the Hotel.<br />
<br />
locations: Agra			
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 8											
											:</b> In Agra										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Highlights: Taj Mahal and Agra Fort<br />
<br />
Description: The highlight of your trip will be a visit to the Taj Mahal, (CLOSED ON FRIDAYS) the greatest monument to love and one of the wonders of the modern world, constructed by Emperor Shah Jehan as a mausoleum for his beloved queen Mumtaz Mahal. Completed in 1652, skilled craftsmen from Persia, Turkey, France and Italy and some 20,000 labourers worked for 17 years to build this edifice, Marble was brought from Makrana, near Jodhpur and precious stones of onyx, amethyst, malachite, lapis lazuli, turquoise, jade, crystal and mother of pearl were carried from Persia, Russia, Afghanistan, Tibet and China. Watch the rays of the rising sun bathe the pristine white marble edifice in warm hues of gold, ochre, orange, rust and flame - a truly breathtaking experience. Return to the hotel for breakfast Later in the morning, visit the red sandstone Agra Fort, which stands like a crescent on the banks of the Yamuna River, enclosed by forbidding 20-meter high walls, with a 12-meter moat between them. Three successive Mughal emperors - Akbar, Jehangir and Shah Jehan - helped create this massive structure which contains Hindu and Muslim architecture. The structure of Agra Fort at Agra and Red Fort at Delhi is moreover the same from inside. The afternoon is at leisure. You have time to explore the bazaars and craftsmen's ateliers, where you can watch the ancient art of marble in-lay work.<br />
<br />
Locations: Agra			
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 9											
											:</b> Agra - Orchha - Khajuraho										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Highlights: Visit Orcha and the Khajuraho temples<br />
<br />
Description: Early morning transfer to the railway station for the train to Jhansi. Breakfast is served on the train. You are met on arrival at Jhansi railway station and transferred to Orchha Orchha, founded in the 16th century by the Bundela king, Rudhra Pratap, on the banks of the Betwa River, is a medieval city frozen in time and space, existing even today as it must have done in the 16th and 17th centuries, when it was built. The countryside undulates gently between riverine plains and rolling forest-clad hills and the landscape is dotted with palaces and temples, a fortress and cenotaphs. The architecture is a synthesis of traditional Hindu, hybrid Indo-Saracenic and ornate Mughal. One of the finest sights is the view of the cenotaphs from across the Betwa River. Continue on to the little village of Khajuraho is renowned the world over for its fine temples, built between 950 and 1050 AD, which are among the most creative examples of Indian architecture. Only 22 of the original 85 temples survive today. The most popular theme is woman: reflective, playful, amorous. The carvings also depict gods in cosmic evolution, griffins, nymphs, beasts, demons in revolt and the several emotions of man - fear, doubt, jealousy, ardent love and consummate passion.<br />
<br />
Locations: Khajuraho			
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 10											
											:</b> In Khajuraho										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Highlights: Explore Khajuraho<br />
<br />
Description: Breakfast at the hotel. In the morning, visit the western group, contained within a fenced enclosure, is well maintained as a park. The large Lakshmana Temple is dedicated to Vishnu and is one of the earliest of the western enclosure temples, dating from 930-950 AD. It is also one of the best preserved, with a full five-part floor plan and four subsidiary shrines. The Vahara Temple, dedicated to Vishnu's boar incarnation (Vahara avatar) faces the Matangesvara Temple and has a huge solid and intricately carved figure of the boar incarnation, dating from around 900 AD. The Kandariya Mahadev Temple is not only the largest but also artistically and architecturally the most perfect. Build between 1025 and 1050 AD, it represents Chandela at its finest. The Mahadeva Temple is small and mainly ruined. However, it houses one of Khajuraho's best sculptures - a fine sardula figure caressing a lion. The Devi Jagadamba Temple was probably originally dedicated to Vishnu, but later changed to Parvati and then Kali. The Chitragupta Temple is unique in being dedicated to the Sun God, Surya. The Matangesvara Temple, standing next to the Lakshmana Temple, is not within the fenced enclose, because it is still in everyday use, unlike all the old temples. In the afternoon, visit the eastern group of temples, which can be subdivided into two groups - an interesting complex of Jain temples in the walled enclosure and a group of four temples scattered through the small village of Khajuraho. Parsvanath is the largest of the Jain temples and also the finest in Khajuraho, noted for the exceptional skill and precision of its construction and for the beauty of its sculptures. The Adinath Temple has fine carvings on its three bands of sculptures. The Shanti Nath Temple is a relatively modern one, built about a century ago, but it contains many components from older temples around Khajuraho.<br />
<br />
Locations: Khajuraho			
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 11											
											:</b> Khajuraho - Varanasi										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Highlights: Visit Sarnath<br />
<br />
description: After Breakfast, Transfer to the Airport for the Flight to Varanasi. Varanasi is the Religious Capital of the Hindu Faith Since the Dawn of History. Known as Kashi in the 7th Century Bc It Constitutes a Microcosm of Indian Life. No One Knows How Old It Really is - When Buddha Came Here in 550 Bc, It Was Already a Flourishing Ancient Settlement You are Met Outside the Arrival Hall and Transferred to Your Hotel. in the Afternoon, Visit Sarnath. Located 9 Km from Varanasi, It is the Centre of the Buddhist World, Just as Varanasi is that for the Hindu. It Was Here that Buddha Preached His First Sermon, Partially Recorded On One of Its Stones. Dhamek Stupa Dating Back to 500 Ad is the Largest, with Geometrical Ornaments On Its Wall. Dharmarajika Stupa Was Set Up By Emperor Ashoka to Contain the Bodily Relics of the Buddha. There is An Outstanding Museum, Worth Visiting (closed On Fridays). Later in the Evening, Take a Boat Ride to Watch the Spectacular Aarti Ceremony, When Thousands of Butter Lamps are Lit and Set Afloat On the Sacred Ganges. the Varanasi Ganga Aarti Takes Place Every Sunset At Holy Dasaswamedh Ghat Near the Kashi Vishwanath Temple. the Aarti is Performed On a Stage By a Group of Young Pundits (hindu Priests), all Draped in Saffron Colored Robes with Their Puja Plates Spread Out Before Them. It Commences with the Blowing of a Conch Shell, and Continues with the Waving of Incense Sticks in Elaborate Patterns and Circling of Large Flaming Lamps that Create a Bright Hue Against the Darkened Sky. the Movement of the Lamps, Held in the Pandits' Hands, is Tightly Synchronizing to the Rhythmic Chants of Hymns and Clang of Cymbals. the Heady Scent of Sandalwood Thickly Permeates the Air.<br />
<br />
locations: Varanasi			
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 12											
											:</b> Varanasi - Delhi										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Highlights: Explore Varanasi<br />
<br />
description: Early in the Morning, Before Sunrise, Take a Boat Ride On the Sacred Ganges River, Where Devout Hindus Can Be Seen Performing Their Daily Ablutions. the Bathing Ghats, Over 5 Km in Length, Lead Down from a Steep Bank to the River, are the Soul of the City. Here, Where the Wavelets of the Ganges Lap the Last of the Stone Steps, Can Be Seen Young Hindu Men Practicing Hatha Yoga, Older Men Seated, Eyes Closed in Medication, Brahmin Priests Under Sunshades, Waiting to Bless the Passing Pilgrims and Beggars Sitting in Serried Ranks. Manikarnika Burning Ghat is the Chief Cremation Centre of Varanasi. Corpses Lined in White Silk or Linen are Borne On Bamboo Stretchers to the Smoking Pyres, Where They are Deposited to Await Their Turn. Photography is Not Usually Permitted Here. Later, Walk Through An Inextricable Maze of Small Streets and Alleyways, Hiding in Disorderly Array No Less Than 2,000 Temples and Shrines. Domes, Pinnacles, Towers and Derelict 18th-century Palaces Dominate the Left Bank of the Ganges River. the Streets are Noisy, Colour is Rife. After Breakfast, Visit Some of the More Important Temples such as the Bharat Mata Mandir and the Durga Temple. Go Past the Beautiful Tulsi Manas Temple. Take a Walk Down Vishwanathji Ki Gali - the Ancient Alley Which is Home to Some Beautiful Temples. Here You Will Find Shops that Sell Every Conceivable Item Required in a Temple. Late Afternoon Transfer to the Airport for the Flight to Delhi. Connect with Your Onward Flight Home<br />
<br />
locations:			
														   
											</div> 
											</div>
																			<script>
								jQuery(document).ready(function() {
									//jQuery('.product-detail').css('display','none');
								    jQuery(".sub-title").click(function() {
								        var $this = jQuery(this);
										  jQuery('.w-title').addClass('h15px',400);
								          $this.find('.w-title').removeClass('h15px',400);
										  jQuery('.product-detail').slideUp();
								          $this.next().slideDown();
								          if($this.find('i').hasClass('fa-angle-up')){
								          	$this.find('i').removeClass('fa-angle-up').addClass('fa-angle-down');
								          } else {
								          	$this.find('i').removeClass('fa-angle-down').addClass('fa-angle-up');
								          }
								        });
									});
								</script>
																<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>
																			</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 
* 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. 
* Retention Amount varies as per the number of days left before your package start date.</li></ul>						
						</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.trekntourtravel.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Highlights of Northern India 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="162868"/>
						</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.trekntourtravel.com/packages-in-new-delhi.htm" title="Packages in New Delhi">New Delhi</a> <b class="alpha50 bn small">(18)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.trekntourtravel.com/packages-in-srinagar.htm" title="Packages in Srinagar">Srinagar</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.trekntourtravel.com/packages-in-jaipur.htm" title="Packages in Jaipur">Jaipur</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.trekntourtravel.com/packages-in-agra.htm" title="Packages in Agra">Agra</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.trekntourtravel.com/packages-in-alleppey.htm" title="Packages in Alleppey">Alleppey</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.trekntourtravel.com/packages-in-leh-ladakh.htm" title="Packages in Leh Ladakh">Leh Ladakh</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.trekntourtravel.com/packages-in-munnar.htm" title="Packages in Munnar">Munnar</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.trekntourtravel.com/packages-in-orchha.htm" title="Packages in Orchha">Orchha</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.trekntourtravel.com/packages-in-khajuraho.htm" title="Packages in Khajuraho">Khajuraho</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.trekntourtravel.com/packages-in-fatehpur-sikri.htm" title="Packages in Fatehpur Sikri">Fatehpur Sikri</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.trekntourtravel.com/packages-in-udaipur.htm" title="Packages in Udaipur">Udaipur</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.trekntourtravel.com/packages-in-sonamarg.htm" title="Packages in Sonamarg">Sonamarg</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.trekntourtravel.com/packages-in-periyar.htm" title="Packages in Periyar">Periyar</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.trekntourtravel.com/packages-in-varanasi.htm" title="Packages in Varanasi">Varanasi</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.trekntourtravel.com/packages-in-kolkata.htm" title="Packages in Kolkata">Kolkata</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.trekntourtravel.com/packages-in-dharamshala.htm" title="Packages in Dharamshala">Dharamshala</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.trekntourtravel.com/packages-in-pahalgam.htm" title="Packages in Pahalgam">Pahalgam</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.trekntourtravel.com/packages-in-bikaner.htm" title="Packages in Bikaner">Bikaner</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.trekntourtravel.com/packages-in-bandhavgarh.htm" title="Packages in Bandhavgarh">Bandhavgarh</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.trekntourtravel.com/packages-in-gulmarg.htm" title="Packages in Gulmarg">Gulmarg</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.trekntourtravel.com/packages-in-karauli.htm" title="Packages in Karauli">Karauli</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.trekntourtravel.com/packages-in-jodhpur.htm" title="Packages in Jodhpur">Jodhpur</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.trekntourtravel.com/packages-in-kovalam.htm" title="Packages in Kovalam">Kovalam</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.trekntourtravel.com/packages-in-shimla.htm" title="Packages in Shimla">Shimla</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.trekntourtravel.com/packages-in-bharatpur.htm" title="Packages in Bharatpur">Bharatpur</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.trekntourtravel.com/packages-in-mandawa.htm" title="Packages in Mandawa">Mandawa</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.trekntourtravel.com/packages-in-kargil.htm" title="Packages in Kargil">Kargil</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.trekntourtravel.com/packages-in-jabalpur.htm" title="Packages in Jabalpur">Jabalpur</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.trekntourtravel.com/packages-in-pathankot.htm" title="Packages in Pathankot">Pathankot</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.trekntourtravel.com/packages-in-jaisalmer.htm" title="Packages in Jaisalmer">Jaisalmer</a> <b class="alpha50 bn small">(2)</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.trekntourtravel.com/forts-palaces-holidays-catid.htm" title="Forts and Palaces Packages">Forts and Palaces</a> <b class="alpha50 bn small">(8)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.trekntourtravel.com/heritage-holidays-catid.htm" title="Heritage Packages">Heritage</a> <b class="alpha50 bn small">(9)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.trekntourtravel.com/national-parks-holidays-catid.htm" title="National Parks Packages">National Parks</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.trekntourtravel.com/lakes-rivers-holidays-catid.htm" title="Lakes & Rivers Packages">Lakes & Rivers</a> <b class="alpha50 bn small">(9)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.trekntourtravel.com/wildlife-nature-holidays-catid.htm" title="Wildlife and Nature Packages">Wildlife and Nature</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.trekntourtravel.com/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.trekntourtravel.com/religious-pilgrimage-holidays-catid.htm" title="Religious & Pilgrimage Packages">Religious & Pilgrimage</a> <b class="alpha50 bn small">(7)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.trekntourtravel.com/trekking-holidays-catid.htm" title="Trekking Packages">Trekking</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.trekntourtravel.com/valley-holidays-catid.htm" title="Valley Packages">Valley</a> <b class="alpha50 bn small">(9)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.trekntourtravel.com/water-sports-activity-holidays-catid.htm" title="Water Sports and Activity Packages">Water Sports and Activity</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.trekntourtravel.com/beach-islands-holidays-catid.htm" title="Beach and Islands Packages">Beach and Islands</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.trekntourtravel.com/romantic-holidays-catid.htm" title="Romantic Packages">Romantic</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.trekntourtravel.com/adventure-holidays-catid.htm" title="Adventure Packages">Adventure</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.trekntourtravel.com/group-holidays-catid.htm" title="Group Packages">Group</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.trekntourtravel.com/yoga-meditation-catid.htm" title="Yoga & Meditation Packages">Yoga & Meditation</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.trekntourtravel.com/luxury-holidays-catid.htm" title="Luxury Packages">Luxury</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.trekntourtravel.com/house-boat-holidays-catid.htm" title="House Boat Packages">House Boat</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.trekntourtravel.com/wildlife-safari-holidays-catid.htm" title="Wildlife Safari Packages">Wildlife Safari</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 New Delhi, Jaipur, Udaipur, Agra, Varanasi, Khajuraho, Orchha, Fatehpur Sikri</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.trekntourtravel.com/tour-packages/taj-mahal-with-kashmir-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/532995/305592.jpg"  height="100"  width="100"    alt="Taj Mahal With Kashmir Tour" title="Taj Mahal With Kashmir Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.trekntourtravel.com/tour-packages/taj-mahal-with-kashmir-tour.htm" title="Taj Mahal With Kashmir Tour"><h3>Taj Mahal 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> : 
								4 Nights / 5 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  New Delhi, Srinagar, Sonamarg, Gulmarg</p>
															<div class="mt10px small">
							<form name="pkg_193431" id="pkg_193431" method="post" action="http://www.trekntourtravel.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.trekntourtravel.com/tour-packages/taj-mahal-with-kashmir-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Taj Mahal 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="193431"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.trekntourtravel.com/tour-packages/romantic-rajasthan-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/532995/305751.jpg"  height="100"  width="100"    alt="Romantic Rajasthan Tour" title="Romantic Rajasthan Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.trekntourtravel.com/tour-packages/romantic-rajasthan-tour.htm" title="Romantic Rajasthan Tour"><h3>Romantic Rajasthan 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> : 
								11 Nights / 12 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  New Delhi, Bikaner, Jaipur, Jaisalmer, J..</p>
															<div class="mt10px small">
							<form name="pkg_193469" id="pkg_193469" method="post" action="http://www.trekntourtravel.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.trekntourtravel.com/tour-packages/romantic-rajasthan-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Romantic Rajasthan 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="193469"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.trekntourtravel.com/tour-packages/5-days-golden-triangle-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/532995/305589.jpg"  height="100"  width="100"    alt="5 Days Golden Triangle Tour" title="5 Days Golden Triangle Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.trekntourtravel.com/tour-packages/5-days-golden-triangle-tour.htm" title="5 Days Golden Triangle Tour"><h3>5 Days Golden Triangle 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> : 
								4 Nights / 5 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  New Delhi, Jaipur, Agra</p>
															<div class="mt10px small">
							<form name="pkg_193428" id="pkg_193428" method="post" action="http://www.trekntourtravel.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.trekntourtravel.com/tour-packages/5-days-golden-triangle-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="5 Days Golden Triangle 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="193428"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.trekntourtravel.com/tour-packages/yogain-the-valleyof-kangra-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/532995/248265.jpg"  height="100"  width="100"    alt="Yoga in the Valley of Kangra Tour" title="Yoga in the Valley of Kangra Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.trekntourtravel.com/tour-packages/yogain-the-valleyof-kangra-tour.htm" title="Yoga in the Valley of Kangra Tour"><h3>Yoga In The Valley Of Kangra 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> :  New Delhi, Dharamshala, Pathankot</p>
															<div class="mt10px small">
							<form name="pkg_162883" id="pkg_162883" method="post" action="http://www.trekntourtravel.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.trekntourtravel.com/tour-packages/yogain-the-valleyof-kangra-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Yoga in the Valley of Kangra 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="162883"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.trekntourtravel.com/tour-packages/north-india-motorbike-adventure-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/532995/311745.png"  height="100"  width="100"    alt="North India Motorbike Adventure Tour" title="North India Motorbike Adventure Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.trekntourtravel.com/tour-packages/north-india-motorbike-adventure-tour.htm" title="North India Motorbike Adventure Tour"><h3>North India Motorbike Adventure 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> :  New Delhi, Jaipur, Kota, Karauli, Sarisk..</p>
															<div class="mt10px small">
							<form name="pkg_162014" id="pkg_162014" method="post" action="http://www.trekntourtravel.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.trekntourtravel.com/tour-packages/north-india-motorbike-adventure-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="North India Motorbike Adventure 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="162014"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.trekntourtravel.com/tour-packages/tigers-taj-mahals-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/532995/247253.jpg"  height="100"  width="100"    alt="Tigers & Taj Mahals Tour" title="Tigers & Taj Mahals Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.trekntourtravel.com/tour-packages/tigers-taj-mahals-tour.htm" title="Tigers & Taj Mahals Tour"><h3>Tigers & Taj Mahals 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> : 
								6 Nights / 7 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  New Delhi, Bharatpur, Ranthambore, Agra,..</p>
															<div class="mt10px small">
							<form name="pkg_161974" id="pkg_161974" method="post" action="http://www.trekntourtravel.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.trekntourtravel.com/tour-packages/tigers-taj-mahals-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Tigers & Taj Mahals 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="161974"/>
							</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:74:"Book Highlights of Northern India Tour - 11 Nights / 12 Days Tour Packages";i:2;s:200:"book highlights of northern india tour - 11 nights / 12 days tour packages, forts and palaces tour packages, new delhi, jaipur, udaipur, agra, varanasi, khajuraho, orchha, fatehpur sikri tour packages";i:3;s:228:"Trek N Tour offers Highlights of Northern India Tour - 11 Nights / 12 Days tour package, budget Forts and Palaces tour packages for New Delhi, Jaipur, Udaipur, Agra, Varanasi, Khajuraho, Orchha, Fatehpur Sikri at exciting price.";i:4;s:622:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "New Delhi, Jaipur, Udaipur, Agra, Varanasi, Khajuraho, Orchha, Fatehpur Sikri"        
		                 },
		      "description": "Sketch Itinerary :
-------------------------

new Delhi | Udaipur | Jaipur | Fatehpur Sikri | Agra | Orchha | Khajuraho | Varanasi | New 2",
		      "name": "Highlights of Northern India Tour",
		      "telephone": "+1-5145754642"
		    }
		    </script>
			";i:5;N;}