/************
CSS OVERRIDES
************/

html {
	font: 75%/150% Arial, Helvetica, sans-serif;
	width:100%;
	height: 100%;
}
body {
	margin: 0;
	padding: 0;
	background: #fff;
	color: #444;
	width:100%;
	height: 100%;
	-webkit-font-smoothing: antialiased;
}

img {
	display: block;
	border: 0;
}

section, article, header, footer, nav, aside {
	display: block;
}

input {
	opacity:1;    /* Stops ipad fading out inputs */
}

ul {
	margin:0;
	padding:0;
}
li {
	padding: 0;
	margin: 0 0 5px 0;
}


/**********************
BASE STRUCTURAL CLASSES
**********************/

/* Blocks */
.wideblock {
	width:100%;
}
.block {
	/*width:90%;*/
	margin:0 auto;
}


/* Clear fix */
.expander {
	clear:both !important;
	margin:0 !important;
	padding:0 !important;
	height:0 !important;
	float:none !important;
	border:none !important;
}

/* Vertical centering */
.cenrel {
	position: relative;
}
.cenabs {
	display:block;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}
.centab {
	display: table;
	width: 100%;
	height: 100%;

}
.cencell {
	display: table-cell;
	vertical-align: middle;
	width:100%;
}
.cencontent {
	margin: 0 auto;
}

/* Hiding */
.hidden {
	display:none;
}


/*****************
RESPONSIVE CLASSES
*****************/

.wide-only, .desktop-only, .tablet-only, .mobile-only {
	display:none;
}


/*******************
STANDARD TEXT STYLES
*******************/

h1 {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 34px;
	color: #202020;
	font-weight: normal;
	line-height: 140%;
	padding: 0 0 80px 0;
	margin: 0;
	letter-spacing: 1px;
}
h1.small {
	font-size:54px;
	line-height:140% !important;
	padding:0;
}

h2 {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 24px;
	color: #272727;
	padding: 0 0 30px 0;
	margin:0;
	line-height:140%;
	font-weight:normal;
}

h2.strip {
	color:#fff;
	line-height:100%;
	text-transform: uppercase;
	text-indent:17px;
	font-family: "MuseoSans500Regular", Arial, Helvetica, sans-serif;
	font-size:17px;
	padding:16px 0;
}
h2.strip.light {
	background-color: #e32a27;
}
h2.strip.dark {
	background-color: #353631;
}

h3, h4, h5, p.big {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 24px;
	color: #757575;
	line-height: 160%;
	padding: 0 0 50px 0;
	margin: 0;
	font-weight:400;
}

p, h6, label, input, textarea, li {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 14px;
	color: #757575;
	line-height: 170%;
	padding: 0 0 30px 0;
	margin: 0;
}

label {
	font-family: "MuseoSans500Regular", Arial, Helvetica, sans-serif;
}

a, a:link, a:visited, a:active {
	text-decoration: none;
	outline:none;
}
.kids a, .kids a:link, .kids a:visited, .kids a:active {
	color:#e84c3d;
}
.adults a, .adults a:link, .adults a:visited, .adults a:active {
	color:#f5bf15;
}

/******
COLOURS
******/

.kids .genbg {
	background-color: #e84c3d;
}
.adults .genbg {
	background-color: #f5bf15;
}


/******
BUTTONS
******/

.btn, .body a.btn {
	display: inline-block;
	color: #fff;
	text-transform: uppercase;
	font-family: 'MuseoSans500Regular', Arial, Helvetica, sans-serif;
	font-size: 16px;
	letter-spacing:1px;
	height:47px;
	line-height:47px;
	padding: 0;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	position:relative;
	width:236px;
	max-width:100%;
	text-align: center;
}
.btn.std-btn {
	background-color: #8f9092;
}
.body a.btn.wide-btn {
	width:100%;
	float:none;
	display:block;
}
.btn.small {
	height:37px;
	line-height:37px;
	width:185px;
}
.btn-arrow {
	position: absolute;
	top:0;
	right:0;
	height:60px;
	width:60px;
	background: #e32a27 url(../images/arrow-right-kids.svg) center center no-repeat;
	background-size:7px;
	border-radius: 0 3px 3px 0;
	-moz-border-radius: 0 3px 3px 0;
	-webkit-border-radius: 0 3px 3px 0;
}
.adults .btn-arrow {
	background-image: url(../images/arrow-right-adults.svg);
}

/****
LISTS
****/

/* Standard lists */
ul {
	padding-left:16px;
}
li {
	padding: 0 0 30px 0;
	line-height:100%;
}


/*****
MODALS
*****/


.modal-content {
	padding:60px;
}



/******************
STRUCTURAL ELEMENTS
******************/

/* Columns */
.col-wrapper {

}

/* Half width col */
.col.half {
	width:43%;
}
.col.one, .col.two.rev {
	float:left;
}
.col.two, .col.one.rev {
	float:right;
}

/* Third width col */
.col.third {
	width:33.3333%;
	max-width:33.3334%;
	float:left;
}

/* Asymmetrical col */
.col.asym.small {
	width:37%;
}
.col.asym.big {
	width:63%;
}

/* Inner padding */
.col.two .inner {
	padding-left:100px;
}

/* Grids */
.grid-cell {
	float:left;
	width:20%;
}
.grid-cell img {
	margin:0 auto;
	max-width:70%;
}
.grid-cell p {
	width:70%;
	margin:0 auto;
	text-align:center;
	padding:30px 0 0 0;
	text-transform: uppercase;
	height:46px;
	max-height:46px;
	min-height:46px;
	overflow:hidden;
}
.grid-inner {
	padding:5% 0;
}

.grid-cell.border-bottom .grid-inner {
	border-bottom:1px solid #dfe4e8;
}
.grid-cell.border-right .grid-inner {
	border-right:1px solid #dfe4e8;
}

/* Standard vertical spacing */
.margin-top, .margin-both {
	margin-top:24px;
}
.margin-bottom, .margin-both {
	margin-bottom:24px;
}

.pad-top, .pad-both {
	padding-top:24px;
}
.pad-bottom, .pad-both {
	padding-bottom:24px;
}


/**************
COMMON ELEMENTS
**************/


/* cover hover */
.cover {
	position: absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	opacity:0;
	z-index:2;

	-webkit-transition: opacity 0.35s;
	-moz-transition: opacity 0.35s;
	-ms-transition: opacity 0.35s;
	-o-transition: opacity 0.35s;
	transition: opacity 0.35s;
}
.cover:hover, .touch .cover {
	opacity: 1;
}

.cover.revcover {
	opacity:1;
}
.cover.revcover:hover, .touch .cover.revcover {
	opacity:0;
}


/**********
BASE LAYOUT
**********/

.splash {
	position: fixed;
	top:0;
	left:0;
	width:100%;
	height:100%;
	z-index:99999;
}
.splash-header {
	background-color: #fff;
	position:fixed;
	top:0;
	left:0;
	width:100%;
	z-index:1;
}
.splash-header img {
	width:40px;
	padding:20px;
}

.splash-left, .splash-right {
	position:fixed;
	width:50%;
	height:100%;
	top:0;
	margin-top:69px;
	background:transparent no-repeat center center;
	background-size: cover;
	-webkit-background-size: cover;
	-o-background-size: cover;
}
.splash-right {
	right:0;
}
.splash-left {
	left:0;
}

.splash-right img, .splash-left img {
	width:260px;
	max-width:60%;
	margin:0 auto;
}

.splash-left .cover, .splash-right .cover {
	background: transparent url(../images/filter-50.png) left top repeat;
}