a:6:{i:0;s:15081:"				<div class="h1"><h1>Kenya Migration Special Tour</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.sanskrutivacations.in/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.sanskrutivacations.in/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>Kenya Migration Special 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">
						7 Nights / 8 Days 
						</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Destination Covered </td>
						<td class="p5px pl0px vat">Nairobi, Masai Mara, Samburu, Ark</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Price (Starting From) </td>
						<td class="p5px pl0px vat">
						USD 1920 Per Person						</td>
						</tr>
												<tr>
						<td></td>
						<td>
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.sanskrutivacations.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Kenya Migration Special Tour - Tour Package"/>
						<input type="hidden" name="allocate_type" value="tour"/>
						<a href="#" onclick="document.getElementById('frmpackagedetail').submit();" class="button p7px pl12px pr12px c5px b large dib mt10px">Book Your Tour</a>
						<input type="hidden" name="pkg_slno" value="51952"/>
						</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/393874/102196.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_14/393874/102196.jpg"  width="150" height="150"    alt="Kenya Migration Special Tour" title="Kenya Migration Special Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
					<br />
					
					INTO THE HEART OF KENYA<br />
<br />
Kenya, a land like no other, that touches the souls of those who take in her breathtaking savannahs,<br />
<br />
those who breathe in her crisp morning air, those who listen to her tribal heartbeat and those who experience the spirit of her people. Come travel through time and space, through bush and beach and open your mind and soul to experience the best of KENYA!The cost of obtaining visas the Kenya visa<br />
Expenses like laundry, beverages, bar bill, telephone, mineral water, tips, porterage etc.<br />
International flights.<br />
Travel and medical insurance.<br />
All other expenses that are purely of a personal nature.<br />
All other items that are not mentioned in 'our price includes'.<br />
Yellow fever & polio inoculation as required by Indian Government<br />						<div class="headHr">
			            <p class="p7px b pl10px xlarge">Tour Itinerary</p>
			            </div>
			            
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 1:</b> Arrive Nairobi Hotel
								</p>
								<p class="aj">Arrive into the JKI Airport. Met by our HTT representative with paging board and cold towels and Transferred to the Laico Regency Hotel, a 5 star hotel in the center of Nairobi city for check in.Lunch on your own account.Afternoon spent at leisure. You may opt to do some excursions available in Nairobi for instance visit to the Giraffe Centre or Karen Museum, available on request and payable at extra charge. You can liaise with our representative on this. Overnight: Laico Regency Hotel Nairobi.</p>					
									<p><b>Meals : </b> Lunch and Dinner on own account</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> Nairobi - Samburu
								</p>
								<p class="aj">Breakfast at the hotel and then check out.<br />
Your driver will pick you up from the hotel for your drive to Samburu. Drive through the lush Kikuyu farmlands and coffee plantation to the cool Kenyan highlands.  Drive on to Northern Frontier region.Arrive at the lodge for check in then followed by lunch. Depart for an afternoon game drive in the reserve. Samburu Game Reserve The Samburu National Reserve is located on the banks of the EwasoNg'iro river in Kenya; on the other side of the river is the Buffalo Springs National Reserve in Northern Kenya. The Samburu National Reserve was one of the two areas in which conservationists George Adamson and Joy Adamson raised Elsa the Lioness made famous in the bestselling book and award winning movie Born Free. The Samburu National Reserve is also the home of Kamunyak, a lioness famous for adopting oryx calves.<br />
<br />
Overnight: Samburu Lodge or Similar</p>					
									<p><b>Meals : </b> Full board - Breakfast, Lunch and dinner</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> Full Day In Samburu
								</p>
								<p class="aj">Breakfast at the lodge<br />
Depart with picnic lunch boxes for a full day game drive in Samburu and Buffalo Springs game reserves<br />
Later return to the lodge for dinner and overnight Overnight: Samburu Lodge or Similar</p>					
									<p><b>Meals : </b> Full board - Breakfast, Lunch and dinner</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> Samburu - Aberdares - Ark
								</p>
								<p class="aj">Breakfast at your lodge.Depart and drive to the Aberdare’s Ranges.Approximate arrival at Aberdares Country Club a base hotel for the Ark for your lunch.After lunch transfer to the Ark, check in and relax.Set in the heart of the Aberdare National Park, iconic and yes, quirky, The Ark overlooks a floodlit waterhole and salt lick, which attracts a host of awesome wildlife. Modeled after Noah's Ark, The Ark has four viewing decks with balconies and lounges to provide superb game viewing from the comfort of the lodge. A ground level viewing area provides excellent photographic opportunities and a floodlit waterhole allows all-night game viewing. The animals come to you! Afternoon tea and coffee at a tree hotel, dinner and overnight.<br />
<br />
NB - Children less than 7 years are not allowed at the Ark without prior arrangements.<br />
Small luggage allowed at the Ark, rest is left at the base hotel and retrieved the following day!  Overnight: The Ark Lodge .</p>					
									<p><b>Meals : </b> Full board - Breakfast, Lunch and dinner</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> Ark - Lake Nakuru
								</p>
								<p class="aj">Breakfast at the Ark.Join a transfer to the Aberdares Country Club to retrieve your left luggage at the base hotel.<br />
<br />
Rejoin your safari driver guide and head to the Rift Valley, Lake Nakuru.The drive will take via Thomson Falls where you will have a brief stop over for a photo session. Arrive at Flamingo Hill Camp for buffet lunch.After lunch relax before your game drive. Afternoon game drive. Lake Nakuru is one of the alkaline Rift Valley lakes and a fantastic bird sanctuary, its shores populated at times by more than one million flamingos. The famous ornithologist Roger Tory Peterson defined it as "the greatest bird spectacle on earth". The fortunate sentence has now become a cliché and is used up to fed-up-ism for promotional purposes. This is the second most accessible park, since Nakuru is the fourth city in the country and the head town of the Rift Valley.Later return to the camp for dinner and overnight.<br />
<br />
Overnight: Flamingo Hill Camp or similar</p>					
									<p><b>Meals : </b> Full board - Breakfast, Lunch and dinner</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> Lake Nakuru - Masai Mara
								</p>
								<p class="aj">Breakfast at the camp.Depart after check out and drive to the famous Masai Mara game reserve. The drive will take you via farmlands inhabited by the Masai community.Masai Mara.The greatest attraction in the Mara is watching the animals in their natural element; a lion's roar, a cheetah making a kill, and the big elephant herds are all very fascinating events.<br />
<br />
You will also meet the Maasai who are the inhabitants of this reserve and are proud and largely aloof tribes who have held on to their customs and traditions for hundreds of years.Arrive into Mara Leisure Camp or similar for check in then lunch After lunch some afternoon moments to relax. Afternoon game drive in the plains of Masai Mara in search of wildlife and sunset views. Return to the camp after game drive for dinner and overnight<br />
<br />
Overnight: 4* Mara Leisure Camp or similar</p>					
									<p><b>Meals : </b> Full board - Breakfast, Lunch and dinner</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> Full Day In Masai Mara
								</p>
								<p class="aj">Wake up to another delightful morning in the bush.<br />
<br />
Depart for an early morning game drive. Early morning are lovely moments to see the nocturnal animals trying to get the last catches before they go to sleep. These also best moments to see the glorious sun as it rises Return to the camp for buffet breakfast. Rest of the morning spend at leisure Have lunch at the camp dining room. After lunch relax before getting ready for afternoon game drive.Depart for an afternoon game drive Return to the camp for dinner an over night Overnight: 4* Mara Leisure Camp or similar</p>					
									<p><b>Meals : </b> Full board - Breakfast, Lunch and dinner</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> Masai Mara - Nairobi - Departure
								</p>
								<p class="aj">Breakfast at the camp. Depart and head back towards Nairobi<br />
Arrive into Nairobi, you will be dropped at the JKI Airport for your onward homebound flight.<br />
END OF SERVICES</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>Meals</li>
																		<li>Transport</li>
																		<li>Transfers</li>
															</ul>
						<br />
												<p class="large b mb5px dif">Exclusions :</p> <ul><li>The cost of obtaining visas the Kenya visa</li><li>
Expenses like laundry, beverages, bar bill, telephone, mineral water, tips, porterage etc.</li><li>
International flights.</li><li>
Travel and medical insurance.</li><li>
All other expenses that are purely of a personal nature.</li><li>
All other items that are not mentioned in 'our price includes'.</li><li>
Yellow fever & polio inoculation as required by Indian Government</li></ul><br />
											
						<p class="large b mb5px dif">Terms &amp; Conditions :</p>~^#^~~^#^~<p><strong>COMPLIMENTARY FROM HTT</strong>

<ul>
	<li>Complimentary: - Mineral Water in the safari minivans during the safari, (1 bottles per person&nbsp;per day during the safari in the&nbsp;Kenyan section only).</li>
</ul>

<p><strong>PLEASE NOTE</strong>

<ul>
	<li>&nbsp;&nbsp;Non A/C Vehicles are used for transfers in Nairobi and on Safari in Kenya</li>
	<li>Luggage limit of one soft bag per person during travel in Kenya.&nbsp; Hard cases &nbsp;should be avoided as they cannot fit in safari vehicles</li>
	<li>&nbsp;passport should be valid at least 6 months beyond period of stay.</li>
	<li>&nbsp;duty of the client to check visa requirements for the travel.</li>
	<li>&nbsp;check-in at the hotels are 1400hours &amp; check-out 1000hours.</li>
	<li>&nbsp;missed or delayed flights can lead to changes in itinerary and at clients expense should the cas</li>
	<li>arise.</li>
</ul>												</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.sanskrutivacations.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Kenya Migration Special Tour - Tour Package"/>
						<input type="hidden" name="allocate_type" value="tour"/>
						<a href="#" onclick="document.getElementById('frmpackagedetail').submit();" class="button p7px pl12px pr12px c5px b large dib mt10px">Book Your Tour</a>
						<input type="hidden" name="pkg_slno" value="51952"/>
						</form>
						</div>
						
						";i:1;s:67:"Book Kenya Migration Special Tour - 7 Nights / 8 Days Tour Packages";i:2;s:149:"book kenya migration special tour - 7 nights / 8 days tour packages, forts and palaces tour packages, nairobi, masai mara, samburu, ark tour packages";i:3;s:185:"Sanskruti Vacations offers Kenya Migration Special Tour - 7 Nights / 8 Days tour package, budget Forts and Palaces tour packages for Nairobi, Masai Mara, Samburu, Ark at exciting price.";i:4;s:1198:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Nairobi, Masai Mara, Samburu, Ark"        
		                 },
		      "description": "INTO THE HEART OF KENYA

Kenya, a land like no other, that touches the souls of those who take in her breathtaking savannahs,

those who breathe in her crisp morning air, those who listen to her tribal heartbeat and those who experience the spirit of her people. Come travel through time and space, through bush and beach and open your mind and soul to experience the best of KENYA!The cost of obtaining visas the Kenya visa
Expenses like laundry, beverages, bar bill, telephone, mineral water, tips, porterage etc.
International flights.
Travel and medical insurance.
All other expenses that are purely of a personal nature.
All other items that are not mentioned in 'our price includes'.
Yellow fever & polio inoculation as required by Indian Government",
		      "name": "Kenya Migration Special Tour",
		      "telephone": "+91-9769880881"
		    }
		    </script>
			";i:5;N;}