@charset "UTF-8";

*
{
	font-size					: 35px;
}

html,
body
{
	width						: 960px;
	padding 					: 0;
}


h1
{
	background-image				: url("../img/bg_hx_ld.png");
	font-size					: 60px;
	line-height					: 111px;
	height						: 100px;
}

h2
{
	font-size					: 34px;
}

h2.concertina
{
	background-image				: url("../img/bg_conc_lo.png");
	text-indent					: -1.75em;
	line-height					: 1em;
	padding 					: 0 0 0 1.75em;
}

h2.concertina.open		{ background-image	: url("../img/bg_conc_lc.png"); }

h2.concertina:before
{
	height						: 1.2em;
	width						: 1.2em;
	position					: relative;
	top						: -3px;
	left						: -3px;
}

h2.concertina::before
{
	height						: 1.2em;
	width						: 1.2em;
	position					: relative;
	top						: -3px;
	left						: -3px;
}


header
{
	position					: relative;
}

header h1
{
	color						: white;
	background					: none;
	text-align					: center		!important;
	height						: auto			!important;
	width						: 377px 		!important;
	margin						: 0 auto		!important;
	display 					: block;
}

header h1 a
{
	background-color				: transparent;
	background-image				: url("../img/logo_touch_l.png");
	background-position				: center		!important;
	background-repeat				: no-repeat;
	background-origin				: content-box		!important;
	text-indent					: 200%;
	white-space					: nowrap;
	height						: 135px 		!important;
	width						: 317px 		!important;
	padding 					: 30px 30px 45px	!important;
	overflow					: hidden;
	display 					: inline-block;
}

header .a a.enq,
header .a a.bus
{
	display 					: none;
}

header ul
{
	list-style					: none;
}

header ul,
header ul li
{
	margin						: 0;
	padding 					: 0;
	display 					: inline;
}

header ul li a
{
	background-color				: transparent;
	background-position				: center;
	background-repeat				: no-repeat;
	background-origin				: content-box;
	text-indent					: 200%;
	white-space					: nowrap;
	height						: 190px;
	width						: 21%;
	overflow					: hidden;
	display 					: block;
	position					: absolute;
	top						: 20px;
}

header ul li a.nav
{
	background-image				: url("../img/icon_menu_l.png");
	left						: 7.5%;
}

header ul li a.tel
{
	background-image				: url("../img/icon_phone_l.png");
	right						: 7.5%;
}

header nav
{
	background					: black;
	width						: 100%;
	padding 					: 0;
	overflow					: hidden;
	display 					: none;
}

header nav a
{
	font-size					: 65px;
	line-height					: 125px;
	height						: 125px;
	width						: 50%;
	padding 					: 0;
	float						: left;
}

header nav span:first-child
{
	display 					: none;
}


body.home header
{
	background					: none;
	height						: 200px;
	margin						: 0;
}

body.home header:after		{ display		: none; }
body.home header::after 	{ display		: none; }
body.home header    ul li a.nav { background-image	: url("../img/icon_menu_d.png"); }
body.home header    ul li a.tel { background-image	: url("../img/icon_phone_d.png"); }
body.home header .a ul		{ display		: none; }

body.home header .a h1
{
	color 						: black;
	position					: static;
}

body.home header .a h1 a
{
	background-image				: url("../img/logo_touch_d.png");
}


body.whatson #content .f
{
	width						: auto;
}


footer
{
	text-align					: center;
	margin						: 86px 0 0;
}

footer h1
{
	background-image				: url("../img/bg_hx_ll.png");
}


article
{
	text-align					: center;
	width						: 90%;
	padding 					: 0 5%;
}

article a.more
{
	font-size					: 30px;
	line-height					: 70px;
	height						: 64px;
}

article.events.featured,
article.gallery,
article.hero,
article.map
{
	width						: 100%;
	padding 					: 0;
}

article.gallery 	h1,
article.gallery.wide	h2,
article.newsletter	h1,
article.map		h1
{
	display 					: none;
}

article.gallery.wide	h1,
article.gallery.big	h1,
article.events.regular	h1,
article.events.featured h1
{
	background					: none;
	font-size					: 41px;
	display 					: block;
}

article.gallery.wide
{
	background					: transparent	url("../img/border_s.png")				center	top	no-repeat;
	width						: 100%;
	margin						: 64px 0 0;
}

article.gallery.wide ul
{
	list-style					: none;
}

article.twitter 	h1
{
	background-image				: url("../img/bg_hx_lt.png");
}

article.twitter 	p,
article.instagram	p
{
	text-align					: justify;
}

article.twitter,
article.instagram,
article.testimonials,
article.courtesy
{
	width						: 700px;
	padding 					: 0 130px 65px;
}

article.testimonials
{
	min-height					: 975px;
}

article.left
{
	text-align					: left;
}

article.right
{
	text-align					: right;
}

article.slideshow
{
	width						: 40%;
	margin-bottom					: 40px;
	float						: left;
}

article.slideshow a.slideshow
{
	height						: 487px;
	width						: 363px;
}

article.slideshow img
{
	height						: 487px;
	width						: 363px;
}


article.events.featured
{
	margin-bottom					: 75px;
}

article.events.featured img
{
	height						: 1280px;
	width						: 960px;
	display 					: block;
}


cite
{
	text-align					: left;
	display 					: block;
}

cite,
blockquote p
{
	margin						: 0 60px 1em;
}

blockquote p:before	{ font-size : 95px; }
blockquote p::before	{ font-size : 95px; }
blockquote p:after	{ font-size : 95px; }
blockquote p::after	{ font-size : 95px; }


div.gallery
{
	margin						: 0 0 40px;
}

div.gallery .single .slides,
div.gallery .single .slides ul li,
div.gallery .single .slides ul li img
{
	width						: 960px;
	height						: 640px;
}

div.gallery .single .slides ul li
{
	position					: relative;
}

div.gallery .single .slides ul li span
{
	text-align					: center;
	width						: 100%;
	padding 					: 0 0 65px;
	display 					: block;
	position					: absolute;
	bottom						: 0;
	left						: 0;
}

div.gallery .single .slides ul li a
{
	color						: black;
	background					: #FEDCDD;
	text-decoration 				: none;
	text-transform					: uppercase;
	font-size					: 33px;
	line-height					: 60px;
	height						: 56px;
	padding 					: 0 18px;
	display 					: inline-block;
}

div.gallery .controls,
div.gallery .thumbs,
div.tabs
{
	display 					: none;
}

article.gallery.big div.gallery .single .slides,
article.gallery.big div.gallery .single .slides ul li,
article.gallery.big div.gallery .single .slides ul li img
{
	height						: 469px;
	width						: 960px;
}

div.description
{
	padding 					: 0 5%;
}

div.instagram
{
	width						: 712px;
	margin						: 0 -12px 0 0;
}

div.instagram img
{
	height						: 166px;
	width						: 166px;
	margin						: 0 12px 12px 0;
}


ul.posters li
{
	margin						: 0 0 80px;
}

ul.posters li img
{
	height						: auto;
	width						: 100%;
}




#fcontact ul.social
{
	margin						: 1em;
}

#fcontact ul.social li
{
	margin						: 0 1em;
}

#fcontact ul.social li a
{
	background-size 				: 100%;
	height						: 100px;
	width						: 100px;
}

#fcopy span
{
	display 					: block;
}



form select,
form textarea,
form input[type=text],
form input[type=email],
form input[type=number],
form input[type=password]
{
	font-size					: 44px;
	line-height					: 61px;
	height						: 46px;
	padding 					: 30px 30px 24px;
}

form select
{
	line-height					: 51px;
}

form button
{
	font-size					: 44px;
	line-height					: 48px;
	height						: 46px;
	width						: 230px;
	padding 					: 30px 0 24px;
}

form#subscribe input
{
	width						: 555px;
}

footer form#subscribe fieldset
{
	width						: 848px;
	margin						: 0 auto;
}

form#enq fieldset,
form#bus fieldset,
form#enq fieldset.left,
form#bus fieldset.left
{
	width						: 864px;
	margin						: 0;
	padding 					: 0 48px;
	box-sizing					: content-box;
}

form select,
form textarea,
form input[type=text],
form input[type=date],
form input[type=email],
form input[type=number],
form input[type=password]
{
	width						: 802px;
	margin						: 0 0 35px;
	display 					: inline-block;
}

form select.time,
form input.time
{
	width						: 180px 	!important;
	margin-right					: 40px;
}

form select.date,
form input.date
{
	width						: 513px;	/* Doesn't quite add up, but Chrome/Android borks if we make it 517px */
}

form input.num
{
	line-height					: 51px;
	width						: 530px;
}

form#tal textarea
{
	width						: 802px;
}

form#tal textarea,
form#enq textarea,
form#bus textarea
{
	height						: 360px;
	margin						: 0 0 35px;
}

form#enq input[type=radio]    + label,
form#enq input[type=checkbox] + label
{
	width						: 592px;
	margin						: 25px -96px 26px 96px;
}

form#enq input[type=radio]    + label:before,
form#enq input[type=checkbox] + label:before
{
	line-height					: 60px;
	height						: 56px;
	width						: 56px;
	left						: -80px;
}

form#enq input[type=radio]    + label::before,
form#enq input[type=checkbox] + label::before
{
	line-height					: 60px;
	height						: 56px;
	width						: 56px;
	left						: -80px;
}

form#enq button,
form#bus button
{
	margin-left					: 40px;
}

/* Firefox fixes */
@-moz-document url-prefix()
{
	form select
	{
		height					: 60px;
		padding 				: 20px 28px;
	}

	form#enq select
	{
		width					: 806px;
	}
}




.map-canvas
{
	width						: 960px;
	height						: 640px;
	margin						: 100px 0 32px;
}


.form_feedback
{
	width						: 864px;
	margin						: 0;
	padding 					: 0 48px;
}


.nol1,
#fnav,
#floc *
{
	display 					: none;
}

#floc p.hours,
#floc p.hours br
{
	display 					: block;
}




.sidr
{
	/* Default Settings */
	display 					: none;
	position					: absolute;
	top						: 0;
	left						: -768px	!important;
	z-index 					: 999999;
	width						: 768px;
	overflow-x					: none;
	overflow-y					: visible;

	/* Theme Settings */
	color						: white;
	background					: black;
	min-height					: 100%;
}

.sidr span a
{
	color						: white;
	font-size					: 63px;
	text-decoration 				: none;
	text-transform					: uppercase;
	text-align					: center;
	line-height					: 230px;
	height						: 230px;
	border						: none;
	display 					: block;
}


.sidr span:first-child a
{
	background					: transparent	url("../img/logo_sidr.png")				center		no-repeat;
	text-indent					: 200%;
	white-space					: nowrap;
	height						: 384px;
	width						: 100%;
	overflow					: hidden;
}

.sidr ul
{
	text-align					: center;
	list-style					: none;
	margin						: 55px 0 45px;
	padding 					: 0;
	display 					: block;
}

.sidr ul li
{
	display 					: inline;
}

.sidr ul li a
{
	color						: white;
	background-color				: transparent;
	background-position				: center;
	background-repeat				: no-repeat;
	background-size 				: 236px;		/* Temporary until we get better social icons */
	text-indent					: 200%;
	white-space					: nowrap;
	height						: 236px;
	width						: 236px;
	margin						: 0;
	padding 					: 19px 60px;
	overflow					: hidden;
	display 					: inline-block;
}

.sidr ul li a.pin { background-image : url("../img/tap_pin.png"); }
.sidr ul li a.tel { background-image : url("../img/tap_phone.png"); }
.sidr ul li a.bus { background-image : url("../img/tap_coach.png"); }

.sidr ul li a.tw { background-image : url("../img/tap_twitter.png"); }
.sidr ul li a.fb { background-image : url("../img/tap_facebook.png"); }
.sidr ul li a.ig { background-image : url("../img/tap_instagram.png"); }


@media screen and (max-width:960px){
	.events.featured li {
    float: none;
    width: 80%;
    margin:0 auto 60px;
}
.events.featured li img{
	    width: 100%;
    height: auto;
}
ul.posters li{
	margin:0 10px 80px;
}
}


