/* FONTS  * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/* Generated by Font Squirrel (http://www.fontsquirrel.com) */

@font-face {
    font-family: 'Colaborate'; /* ColaborateThinRegular */
    src: url('fonts/ColabThi-webfont.eot');
    src: url('fonts/ColabThi-webfont.eot?#iefix') format('embedded-opentype'),
         url('fonts/ColabThi-webfont.woff') format('woff'),
         url('fonts/ColabThi-webfont.ttf') format('truetype'),
         url('fonts/ColabThi-webfont.svg#ColaborateThinRegular') format('svg');
    font-weight: 100; /* lighter */
    font-style: normal;
}

@font-face {
    font-family: 'Colaborate'; /* ColaborateLightRegular */
    src: url('fonts/ColabLig-webfont.eot');
    src: url('fonts/ColabLig-webfont.eot?#iefix') format('embedded-opentype'),
         url('fonts/ColabLig-webfont.woff') format('woff'),
         url('fonts/ColabLig-webfont.ttf') format('truetype'),
         url('fonts/ColabLig-webfont.svg#ColaborateLightRegular') format('svg');
    font-weight: 400; /* normal */
    font-style: normal;
}

@font-face {
    font-family: 'Colaborate'; /* ColaborateRegular */
    src: url('fonts/ColabReg-webfont.eot');
    src: url('fonts/ColabReg-webfont.eot?#iefix') format('embedded-opentype'),
         url('fonts/ColabReg-webfont.woff') format('woff'),
         url('fonts/ColabReg-webfont.ttf') format('truetype'),
         url('fonts/ColabReg-webfont.svg#ColaborateRegular') format('svg');
    font-weight: 700; /* bold */
    font-style: normal;
}

@font-face {
    font-family: 'Colaborate'; /* ColaborateMediumRegular */
    src: url('fonts/ColabMed-webfont.eot');
    src: url('fonts/ColabMed-webfont.eot?#iefix') format('embedded-opentype'),
         url('fonts/ColabMed-webfont.woff') format('woff'),
         url('fonts/ColabMed-webfont.ttf') format('truetype'),
         url('fonts/ColabMed-webfont.svg#ColaborateMediumRegular') format('svg');
    font-weight: 900; /* bolder */
    font-style: normal;
}

/*@font-face {
    font-family: 'ColaborateBoldRegular';
    src: url('fonts/ColabBol-webfont.eot');
    src: url('fonts/ColabBol-webfont.eot?#iefix') format('embedded-opentype'),
         url('fonts/ColabBol-webfont.woff') format('woff'),
         url('fonts/ColabBol-webfont.ttf') format('truetype'),
         url('fonts/ColabBol-webfont.svg#ColaborateBoldRegular') format('svg');
    font-weight: normal;
    font-style: normal;
}*/

/* ADDITIONAL RESETS  * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */

body {
	font: normal normal normal 100%/100% Colaborate, 'Segoe WP', Calibri, Helvetica, Arial, sans-serif; /* 16; 16 */
}

a, a:hover {
	text-decoration: none;
	color: inherit;
}

strong {
    font-weight: bold;
}

h3 {
	font-weight: bold !important;
	font-size: 87.5% !important; /* 14 / 16 */
	line-height: 114.28571428571428571428571428571% !important; /* 16 / 14 */
	text-transform: uppercase !important;
}

h4 {
	font-weight: bold !important;
	font-size: 100% !important;  /* 16 / 16 */
	line-height: 150% !important; /* 24 / 16 */
	margin-top: 1em !important;
	margin-bottom: -0.5em !important;
}
h4:first-child {
	margin-top: 0 !important;
}

label, .label {
	font-weight: bold !important;
}

th, tfoot td {
	font-weight: bold;
	line-height: 150%; /* 24 / 16 */
	padding: 0 0.2em;
	text-align: center;
}
td {
	line-height: 150%; /* 24 / 16 */
	padding: 0 0.5em;
	text-align: left;
}
th.left, td.left {
	text-align: left;
}
th.center, td.center {
	text-align: center;
}
th.right, td.right {
	text-align: right;
}

/* lists */
ul.disc {
	list-style: circle outside;
}
ul.disc li {
	margin-left: 1.5em;
}
ol.enum {
	list-style: decimal outside;
}
ol.enum li {
	margin-left: 2em;
}
li.spaced {
	margin-top: 1em;
}

/* forms */
form .errors {
	display: none;
	visibility: hidden;
}

input:not([type=radio], [type=checkbox]), select {
	width: 30%;
	font: normal normal normal 100%/100% Colaborate, 'Segoe WP', Calibri, Helvetica, Arial, sans-serif; /* 16; 16 */
}
input.big, select.big {
	width: 40%;
}
input.small, select.small {
	width: 20%;
}

.debug {
	display: none;
	visibility: hidden;
}

/* COMMON CLASSES * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */

.reset, .reset * {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}

/* micro clearfix, courtesy of Nicolas Gallagher (http://nicolasgallagher.com/micro-clearfix-hack/) */
.cf {
	zoom: 1;
}
.cf:before, .cf:after {
	content: " ";
	display: table;
}
.cf:after {
	clear: both;
}

/* columns and general layout */
.col {
	display: inline-block;
	width: 98%;
	margin-right: 1%;
	margin-left: 1%;
	float: left;
}
.col.full {
	clear: both;
}
.col.right {
	float: right;
}

.wrap {
	max-width: 960px;
	margin: 0 auto;
}

/* text */
p.right {
	text-align: right;
}
.center {
	text-align: center;
}
.em {
	text-decoration: underline;
}

/* links */
.button {
	display: inline-block;
	line-height: 150% !important; /* 24 / 16 */
}
.button.big {
	font-size: 150% !important; /* 24 / 16 */
	line-height: 150% !important; /* 36 / 24 */
}
.button.left {
	float: left;
}
.button.right {
	float: right;
}

/* images */
.figure {
	width: 100%;
	overflow: hidden;
	line-height: 0;
	background: transparent;
}
.figure > b {
	display: block;
	overflow: hidden;
	width: auto;
	max-width: 100%;
}
.figure > b > img {
	max-width: inherit;
}

.figure .figcaption {
	position: relative;
	z-index: 1000;
	padding: 0.4em 0.4em;
	line-height: 100%;
}
.figure .figcaption * {
	z-index: 1000;
}
.figure .figcaption h4 {
	margin-bottom: 0 !important;
	line-height: 100%;
}
.figure .figcaption p {
	margin-top: 0.4em;
	white-space: normal;
}

/* slideshow */
.slideshow {
	position: relative !important;
	width: 96% !important;
	margin: 0 auto !important;
}
.slideshow .slideshow-nav li {
	position: absolute;
	z-index: 1000;
	top: 50%;
	margin-top: -1.1em;
}
.slideshow .slideshow-nav li:first-child {
	left: 0;
	margin-left: -0.4em;
}
.slideshow .slideshow-nav li:last-child {
	right: 0;
	margin-right: -0.4em;
}
.slideshow .slideshow-nav a {
	display: block;
	padding: 0.5em 0.3em 0.4em 0.3em;
	text-align: center;
	color: transparent;
}
.slideshow .slides {
	overflow: hidden;
	white-space: nowrap;
}
.slideshow .slides .figure {
	display: inline-block;
	vertical-align: top;
}

/* dropdowns */
.dropdown-target {
	position: absolute;
	display: none;
	z-index: 1001;
}
.dropdown-target.left {
	left: 0;
}
.dropdown-target.right {
	right: 0;
}

/* font styling */
.majestic-tours {
	font: normal small-caps bold 100%/100% Georgia, serif !important; /* 16 / 16 */
}

.majestic-holidays {
	font: normal normal bold 87.5%/114.28571428571428571428571428571% 'Trebuchet MS', sans-serif !important; /* 14 / 16 ; 16 / 14 */
	text-transform: uppercase;
	letter-spacing: -0.05em;
}

.bahama-fantasies {
	font: normal normal normal 75%/133.33333333333333333333333333333% 'Times New Roman', sans-serif !important; /* 12 / 16 ; 16 / 12 */
	text-transform: uppercase;
	letter-spacing: 0.1em;
}

/* BASE (MOBILE) * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *  */

/* masthead */
body > header {
	margin-top: 1em;
	margin-bottom: 0.5em;
}

#header-bg #crest {
	width: 100%;
	float: left;
	text-align: center;
}

#header-fg h1 {
	width: 100%;
	margin: 0.2em 0;
	float: left;
	text-align: center;
	font-size: 28px; /* */
	line-height: 100%;
}
#header-fg h1 a {
	opacity: 1.0 !important;
}

#header-fg nav {
	text-align: center;
}

#header-fg nav ul {
	display: inline-block;
	margin: 0 auto;
}

#header-fg nav li {
	position: relative;
	margin: 0.1em 0.2em;
	float: left;
	font-size: 75%; /* 12 / 16 */
}

#header-fg nav li > a {
	display: block;
	padding: 0.2em 0.05em;
	border: 2px solid transparent;
	text-transform: uppercase;
}

#header-fg nav li input {
	font-size: 133.33333333333333333333333333333%; /* 12 / 16 */
}


/* main */
section > div {
	margin-top: 1em;
	margin-bottom: 1em;
}

section .hr {
	width: 100%;
	display: block;
	clear: both;
	margin-top: -1em;
	margin-bottom: 1em;
	text-align: center;
}
section .hr hr {
	width: 50%;
}

section article, section aside {
	margin-bottom: 2em;
}
section > .wrap > *:last-child {
	margin-bottom: 1em;
}
section article.label, section aside.label {
	margin-bottom: 0;
}

section article header, section aside header {
	margin-bottom: 1em;
}

section article > div:not([class]), section aside > div:not([class]) {
	width: auto;
	margin-left: 1em;
}

section article > div:not([class]) p, section aside > div:not([class]) p {
	margin-top: 1em; /* 16 / 16 */
	line-height: 150%; /* 24 / 16 */
}
section article > div:not([class]) p:first-child, section aside > div:not([class]) p:first-child {
	margin-top: 0;
}

section article > div:not([class]) > ul:not(:first-child), section aside > div:not([class]) > ul:not(:first-child),
section article > div:not([class]) > ol:not(:first-child), section aside > div:not([class]) > ol:not(:first-child),
section article > div:not([class]) div > ul:not(:first-child), section aside > div:not([class]) div > ul:not(:first-child),
section article > div:not([class]) div > ol:not(:first-child), section aside > div:not([class]) div > ol:not(:first-child)  {
	margin-top: 1em;
}

section article > div:not([class]) ul ul, section aside > div:not([class]) ul ul,
section article > div:not([class]) ul ol, section aside > div:not([class]) ul ol,
section article > div:not([class]) ol ol, section aside > div:not([class]) ol ol,
section article > div:not([class]) ol ul, section aside > div:not([class]) ol ul {
	margin-left: 1em;
}
section article > div:not([class]) li, section aside > div:not([class]) li {
	line-height: 150%;
}

section article > div:not([class]) table, section aside > div:not([class]) table {
	width: 100%;
}
section article > div:not([class]) > table:not(:first-child), section aside > div:not([class]) > table:not(:first-child) {
	margin-top: 1em;	
}
section article > div:not([class]) th, section aside > div:not([class]) th,
section article > div:not([class]) td, section aside > div:not([class]) td {
	line-height: 150%;
}

section article > div:not([class]) form, section aside > div:not([class]) form,
section article > div:not([class]) form *, section aside > div:not([class]) form * {
	line-height: 150%;
}

section article > div:not([class]) blockquote, section aside > div:not([class]) blockquote {
	margin-left: 1em;
	line-height: 150%;
	font-weight: bold;
}

/* itinerary */
.booking-tile {
	width: 31% !important;
	margin-right: 2% !important;
	float: left;
}
.booking-details {
	width: 65% !important;
	margin-left: 2% !important;
	float: left;
}


/* footer */
body > footer {
	margin-bottom: 1em;
}

footer #world {
	margin-bottom: 1em;
}

footer #world > div {
	position: relative;
	margin-top: 0.5em;
	margin-bottom: 0.5em;
}

footer #world-slogan, footer #world-family {
	display: inline-block;
	width: 100%;
	text-align: center;
}

footer #world-slogan {
	margin-bottom: 0.4em;
	font: bold oblique 20px/100% Georgia, serif; /* */
}

footer #world-slogan b {
	font-style: normal;
	text-transform: uppercase;
}

footer #world-family li {
	margin-bottom: 0.2em;
}

footer #legal, footer #standards {
	margin-top: 0.5em;
	font-size: 12px; /* */
	line-height: 100%;
	text-align: center;
	text-transform: uppercase;
}

footer #legal ul, footer #standards ul {
	display: inline-block;
	margin: 0 auto;
}

footer #legal li , footer #standards li {
	float: left;
}
footer #legal li:before, footer #standards li:before {
	content: "-";
}
footer #legal li:first-child:before, footer #standards li:first-child:before {
	content: "";
}

footer #legal li > b, footer #standards li > b {
	display: inline-block;
	margin: 0.1em 0.2em;
}

/*footer #legal a, footer #standards a {
	padding-bottom: 0.2em;
	border: 2px solid transparent;
}*/

/* RESPONSIVE * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */

/* hides */
.hide { display: none !important; visibility: hidden !important; clear: none !important; margin: 0 !important; }
@media all and (max-width: 479px) { /* 0 - 479 */
	.hideLT480 { display: none !important; visibility: hidden !important; clear: none !important; margin: 0 !important; }
}
@media all and (max-width: 599px) { /* 0 - 599 */
	.hideLT600 { display: none !important; visibility: hidden !important; clear: none !important; margin: 0 !important; }
}
@media all and (max-width: 767px) { /* 0 - 767 */
	.hideLT768 { display: none !important; visibility: hidden !important; clear: none !important; margin: 0 !important; }
}
@media all and (min-width: 768px) { /* 768+ */
	.hideGTE768 { display: none !important; visibility: hidden !important; clear: none !important; margin: 0 !important; }
}

/* columns and general layout */
@media all and (min-width: 600px) { /* 600+ */
	/* |   full  |
	 * |   big   |
	 * | sm | sm | */
	.col.small { width: 48%; }
	
	section .hr.small {
		width: 48%;
		clear: none;
	}
}
@media all and (max-width: 767px) { /* 767- */
	.tour:nth-of-type(2n + 1) { clear: left; }
}
@media all and (min-width: 768px) { /* 768+ */
	.wrap { width: 98%; }
	
	/* |   full   |
	 * | big  | s | */
	.col.big { width: 65%; }
	.col.small { width: 31%; }
	
	section .hr.small {
		width: 33%;
	}
	section .hr.big {
		width: 67%;
		clear: none;
	}
	
	.tour:nth-of-type(3n + 1) { clear: left; }
}

/* masthead */
@media all and (min-width: 480px) { /* 480+ */
	/* logo on left, with header text inline; navigation is below to the right */
	#header-bg #crest {
		width: auto;
	}
	#header-fg h1 {
		width: auto;
		margin: -87px 0 0 135px;
		font-size: 32px; /* */
	}
	#header-fg nav {
		margin: -34px 0 0 0;
		float: right;
		text-align: right;
	}
	#header-fg nav ul {
		display: block;
		margin: 0;
		float: right;
	}
}
@media all and (min-width: 768px) { /* 768+ */
	/* same layout as before, but with bigger header text */
	#header-fg h1 {
		margin-top: -95px;
		font-size: 42px; /* */
	}
}
@media all and (min-width: 1024px) { /* 1024+ */
	/* navigation in line with header text and logo */
	#header-fg nav {
		margin-top: -84px;
	}
}

/* footer */
@media all and (min-width: 480px) { /* 480+ */
	/* slogan above; links inline below */
	footer #world-slogan {
		font-size: 24px; /* */
	}
	footer #world-family li {
		width: 34%;
		margin-bottom: 0;
		float: left;
	}
	footer #world-family li:first-child {
		width: 33%;
		text-align: right;
	}
	footer #world-family li:last-child {
		width: 33%;
		text-align: left;
	}
}
@media all and (min-width: 768px) { /* 768+ */
	/* slogan inline; links stacked to left */
	footer #world-slogan {
		position: absolute;
		right: 0;
		bottom: 0;
		width: auto;
		margin-bottom: 0;
		font-size: 40px; /* */
		line-height: 100%;
	}
	footer #world-family {
		width: auto;
		float: left;
	}
	footer #world-family li {
		display: block;
		width: auto !important;
		min-width: 16em;
		margin-bottom: 0.3em;
		margin-left: 1em;
		float: none;
		text-align: left !important;
	}
	footer #world-family li:first-child {
		margin-left: 0;
	}
	footer #world-family li:last-child {
		margin-left: 2em;
	}
}
