@charset "UTF-8";
/*
 * Styles.css - Sitewide css for hattrick
 * Essentee - 27/02/18 - Added stuff for mobile nav
 * Essentee - 22/02/18 - Corrected file encoding, cleaned up and fixed some small errors and generally tidyed up and culled some of the cruft.
 */
 
 /* The "Mother of all resets" reset :-) */
* {
	border:0;
	margin:0;
	padding:0;
	background-color:transparent;
}

/* --- Typography ------------------- */
body {
	font-family: Verdana, Arial, Helvetica, sans-serif;
	font-size: 100%; /* Change to 16px base */
	background-color: #fafafa; /* Changed from 90's blue to light grey */
	color: #333; /* Changed to dark grey */
	line-height: 1.2; /* Set base line-height */
}

/* --- Lists --- */
ul,ol {
	margin-bottom:1em;
	padding-left:1.5em;
}

ol {
	list-style-position: outside;
}

ul li,
ol li{
	padding:0;
	margin-bottom:.5em;
	
}

/* Default links */
a:link,
a:visited,
a:active {
	color: #1E2173;
	text-decoration: underline;
}

a:hover {
	color: #d45c2a;
}

/* -- Utilities -- */
.centered {
	text-align: center;
}

.clearfix:before,
.clearfix:after {
	content: "\0020";
	display: block;
	height: 0;
	visibility: hidden;
}

.clearfix:after {
	clear: both;
}

.clearfix {
	zoom: 1;
}

/* General Layout */


/* Main Container */
.dCont {
	max-width: 1120px;
	margin-left: auto;
	margin-right: auto;
	padding: 0 8px;
}

/* Header */
header {
	width: 100%;
	float: left;
	background-image: url(../images/punga1.jpg);
	background-position: top left;
	background-repeat: no-repeat;
	background-size:cover;
}

.header-right{
	background-color: #A5CAF6;
	color: #333333;
	width: 320px;
	float: right;
	padding:16px 8px;
	text-align: right;
	font-variant: small-caps;
}

.header-right h1 {
	font-size: 1.3em;
	line-height: 1.3em;
	margin-bottom:8px;
	font-weight: bold;
}

.header-right h2 {
	font-size: .85em;
	font-weight: bold;
	text-transform: capitalize;
}

/* Home Slider container */
#slider {
	width: 100%;
	position: relative;
	clear: both;
	margin-bottom:24px;
}


/* Main Navigation */
nav .nav-toggle {
	display: none;
}

ul.menu {
	margin: 0;
	padding:0;
}

ul.menu li {
	display: inline-block;
	margin: 0;
}

ul.menu a {
	text-decoration: none;
}

#mainnav {
	font-size: .75em;
	/* background-color: #00263D; */
	text-align: center;
}

#mainnav ul.menu {
	background-color: #00263D;
}


#mainnav ul li a{
	color: #fff;
	padding:12px;
	display: block;
	font-weight:700;
	transition: background .7s;
}

#mainnav ul li a:hover {
	background: rgba(200,200,250,.5);
	transition: background .25s;
}

/* Footer Navigation */
footer nav {
	font-size:.8em;
}
footer ul.menu a {
	display: block;
	text-align: center;
}

footer ul.menu li {
	border-right: 1px solid #777;
	padding:0 4px 0 0;
	margin:0 0 0 4px;
}

footer ul.menu li:last-child{
	border: none;
}

/* ------------------------------------ */

img.imgTopBody {
	max-width: 900px;
	width: 100% height:auto;
}

h2.h2Heading {
	color: #242670;
	font-size: 1.25em;
	font-weight: bold;
	font-stretch: 0.1em;
	margin-bottom: 1em;
	margin-top:24px;
}

h2.h2HeadingY {
	margin: 2px 15px 5px 15px;
	padding: 2px 0 4px 7px;
	border: 0;
	font-size: 1em;
	font-weight: bold;
	color: #0C4165;
	background-image: url(../images/bg_h.gif);
	background-repeat: no-repeat;
	background-position: center;
	text-align: left;
	clear: both;
}

h3.h3Heading {
	color: #242670;
	font-size: 1.3em;
	line-height: 1.6;
	font-weight: bold;
	font-stretch: 0.1em;
	text-align: left;
	padding: 10px 0 8px 12px;
	background-image: url(../images/heading_bg.html);
	background-position: bottom left;
	background-repeat: no-repeat;
}

/* resposive youtube */
div.dVideo-wrapper {
	width: 100%;
	margin-bottom:24px;
}

div.dYouTube {
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
}

div.dYouTube iframe, div.dYouTube object, div.dYouTube embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

img.imgNoFloat {
	margin: 1% 0 0 4%;
	max-width: 784px;
	width: 100%;
	height: auto;
}

div.dFooter {
	text-align: center;
	color: #242670;
	padding: 6px 0 0 0;
	line-height: 1.5;
	clear: both;
	height: 530px;
	vertical-align: middle;
}



a.linksBN:link,
a.linksBN:visited,
a.linksBN:active {
	color: #1E2173;
	text-decoration: none;
	text-align: left;
	font-weight: bold;
	font-size: 1.2em;
	padding: 3px 5px;
}

a.linksBN:hover {
	color: #d45c2a;
	background-color: #1E2173;
	text-decoration: none;
	text-align: left;
	font-weight: bold;
	font-size: 1.2em;
	padding: 3px 5px;
}

div.pMain {
	margin-bottom:2em;
}

.pMain p{
	margin-bottom:.5em;
}

p.pBottom {
	text-align: left;
	margin: 5px 6px 12px 6px;
	font-size: 1.15em;
	line-height: 1.5;
	clear: both;
}

img.imgRight {
	float: right;
	margin: 14px 3px 5px 8px;
	border: 1px dotted #2856a1;
	clear: right;
}

img.imgRightB {
	float: right;
	margin: 25px 20px 0 0;
}

br.brClear {
	clear: both;
	margin: 5px 0 10px 0;
}

span.spBold {
	font-weight: bold;
}

div.dMap {
	float: right;
	margin: 14px 3px 5px 8px;
	border: 1px dotted #2856a1;
	clear: both;
}

div.dGoogleMap {
	max-width: 600px;
	min-height: 450px;
	margin: 5px 5px 5px 40px;
}

/* ------- Tables --- */
table {
	margin-bottom:24px;
	border-collapse: collapse;
}

thead {
	background: #024578;
	color: #fff;
	text-align: center;
	font-weight: 700;
	font-size:.9em;
}

table thead td,
table tbody td {
	padding: 8px 12px;
}

table.striped tbody tr:nth-child(even) {
	background: rgba(0,0,0,.03);
}

table.bordered{
	border: 1px solid rgba(0,0,0,.1);
}

table.bordered td{
	border-left: 1px solid rgba(0,0,0,.1);
}

table.tabTariffs {
	max-width: 898px;
	text-align: center;
	margin: 5px 1% 2% 10px;
	font-size: 1.1em;
}

td.tdTariffs {
	text-align: left;
	padding: 0 12px 0 0;
}

/* Ibex Booking system loading Message */
.ibex-loading-message {
	text-align: center;
	font-style: italic;
	font-weight: 700;
	border: 1px solid rgba(0,200,0,.8);
	background: rgba(0,200,0,.05);
	color: #008800;
	border-radius:3px;
	padding:8px;
}


div.dQuote {
	max-width: 97%;
	text-align: center;
	padding: 10px 18px 10px 18px;
	line-height: 1.8;
	clear: both;
}

p.pQuote {
	font-weight: bold;
	font-style: italic;
	font-size: 1.2em;
}

p.pQuoteR {
	font-weight: bold;
	font-style: italic;
	font-size: 1.2em;
	text-align: right;
	margin: 1% 2%;
}

div.dWDW {
	text-align: center;
	clear: both;
	margin: 5px auto;
}

div.dTA {
	margin: 2px 0 0 10px;
}

/* Footer */
footer {
	border-top: 1px solid #efefef;	
	margin-top:16px;
	padding-top:16px;
	text-align: center;
	margin-bottom:64px;
}

footer .about {
	font-size: .9em;
	border-bottom:1px solid #efefef;
	margin-bottom: 16px;
	padding-bottom:16px;
}

footer .dMLogo{
	margin-bottom:16px
	
}



.MLogoT{
	margin:0 16px;
}

img.imgLeftB {
	float: left;
	margin: 25px 0 0 20px;
}

img.imgL {
	float: left;
}

div.divTACont {
	float: left;
	clear: both;
	margin: 0 0 0 1.5%;
}

div.divLeftB {
	float: left;
	margin: 0 0 0 1.8%;
}

div.divRightB {
	float: right;
	margin: 0 4% 0 0;
}

img.imgWave {
	max-width: 960px;
	width: 98%;
}

div.dVert {
	float: left;
}

span.spITB {
	font-weight: bold;
	font-style: italic;
}

.flleft {
	float: left;
	vertical-align: middle;
	margin: 0 4% 2% 0;
	border: 4px solid white;
	max-width: 350px;
	height: auto;
	clear: left;
}

.flright {
	float: right;
	vertical-align: middle;
	margin: 1% 0 2% 4%;
	border: 4px solid white;
	max-width: 350px;
	height: auto;
	clear: right
}

.imgLinks {
	vertical-align: middle;
	max-width: 150px;
	padding: 0 0.5em 0 0;
}

/* ---- Media Queries ------------- */
/* Print styles for those backpackers who like to have a hard copy of everything in the
 * rucksack in case of booking issues.... Usually germans, but also the occasional Sweede.
 */
 
@media print {
	* {
    	color: #000 !important;
    	text-shadow: none !important;
    	background: transparent !important;
    	box-shadow: none !important;
  	}
  	
	.no-print {
  		display:none;
  	}
}

/* Only one BP at <airquotes>phone size</airquotes> and we do a Q&D burger nav. */
@media (max-width: 767px) {	
	body{
		margin-top:32px; /* push down to allow for nav toggle */
	}

	nav .nav-toggle{
		display: block;
		position:fixed;
		top:0;
		left:0;
		width: 100%;
		z-index:2000;
		height:32px;
		background: #f00;
		color: #fff;
		text-align: right;
	}
	
	nav .nav-toggle a{
		color: #fff;
		margin-right:24px;
		font-size: 2em;
		text-decoration: none;
	}
	#mainmenu {
		position:fixed;
		width:100%;
		z-index: 1000;
	}
	
	#mainnav ul.menu.closed {
		display: none;
	}
	
	#mainnav ul.menu.open {
		display: block;
		transition: all 1s;
	}
	
	#mainnav ul.menu li{
		display: block;
		text-align: left;
		border-bottom: 1px solid rgba(100,100,100,.5);
	}
}