/*	Includes code from http://osvaldas.info/drop-down-navigation-responsive-and-touch-friendly
	for the tablet/phone sized stuff only */

/*	Font face for headings */

@font-face {
    font-family: 'Bauhaus93';
    src: url('fonts/Bauhaus93.eot');
    src: url('fonts/Bauhaus93.eot?#iefix') format('embedded-opentype'),
         url('fonts/Bauhaus93.woff') format('woff'),
         url('fonts/Bauhaus93.ttf') format('truetype'),
         url('fonts/Bauhaus93.svg#Bauhaus93') format('svg');
    font-weight: normal;
    font-style: normal;
}

/*	Overall style */

html {
	overflow-y: scroll;
}

body {
	color: white;
	background: black;
	font-family: Verdana, arial, sans-serif;
	width: 900px;
	margin: 0 auto;
/*	text-align: center; */
	text-align: left;
}

h1, h2 {
	font-family: Bauhaus93, Verdana, arial, sans-serif;
	font-weight: bold;
	text-align: center;
}

h1     {
	font-size: 36pt;
	clear: both;
}

h2     {
	font-size: 16pt;
	clear: both;
}

hr {
	color: gray;
	height: 1px;
	width: 80%;
}

em {
	font: bold italic 12pt Verdana, arial, sans-serif;
}

dt {
	font-weight: bold;
	font-style: italic;
}

dd {
	padding: 15px;
}

.strike {
	text-decoration: line-through;
}

.full {
	display: none;
	text-align: left;
	margin-left: 75px;
}

.urllist {
	margin-left: 340px;
}

.faq {
	padding: 20px;
	width: 700px;
	margin: 20px auto;
}

.fullsize {
	display: block;
}

.tabletsize, .phonesize {
	display: none;
}


/*	Standard divisions */

#header {
	max-width: 900px;
	margin: 0 auto;
	margin-bottom: 12px;
	text-align: center;
}

#tabletheader {
	display: none;
	margin: 0 auto;
	margin-bottom: 12px;
	text-align: center;
}

#phoneheader {
	display: none;
	margin: 0 auto;
	margin-bottom: 12px;
	text-align: center;
}

#printheader {
	display: none;
	margin: 0 auto;
	margin-bottom: 2px;
	text-align: center;
}


/*	Other standard divisions */

#content {
	width: 900px;
	display: block;
	margin: 0 auto;
	line-height: 1.3em;
	padding-top: 12px;
}

#content p {
	padding: 20px;
	width: 700px;
	margin: 0 auto;
	text-indent: 40px;
}

#content p.img {
	padding: 20px;
	width: 750px;
	margin: 20px auto;
	text-indent: 0;
}

#content .bauhaus93 {
	font: 15pt Bauhaus93;
	colour: lightblue;
}

#content a {
	color: moccasin;
}

#content ul {
	padding: 20px;
	width: 700px;
	margin: 0 auto;
/*	text-indent: 40px; */
}

#content li {
	margin-left: 40px;
}

#gallerypage #content p,
	padding: 6px 20px;
	width: 900px;
	text-align: center;
}

#endcontent {
	clear: both;
	height: 20px;
}

#footer {
	clear: both;
	font-size: small;
	max-width: 900px;
	text-align: center;
	padding-top: 2px;
	padding-bottom: 20px;
	margin: 5px auto 0;
	line-height: 1.5em;
	border-top: 1px solid grey;
}

#footer a {
	color: moccasin;
}



/*	Navigation */

#menu {	width: 900px;
	text-align: center;
	margin: 0 auto;
	padding: 8px 0;
}

#nav > a {
	display: none;
}

#tabmenu {
	font: bold 12pt Bauhaus93, Verdana, arial, sans-serif;
	border: 1px solid gray;
	border-width: 1px 0;
	list-style: none;
	margin: 0;
	padding: 0;
	text-align: center;
}

#tabmenu li {
	position: relative;
	display: inline;
}

#tabmenu a {
	display: inline-block;
	padding: 12px 10px;
	border-right: 1px solid grey;
	color: violet;
	text-decoration: none;
	font-weight: bold;
}

#tabmenu li li a {
	border-left: 1px solid grey;
}

#tabmenu > li:first-child a {
	border-left: 1px solid grey;
}


#tabmenu ul {
	display: none;
	position: absolute;
	left: -9999px;
	margin: 0;
	padding: 0;
	text-align: left;
}

#tabmenu ul li {
	display: block;
}

#tabmenu li:hover ul {
	display: block;
	left: 0;
	background-color: black;
	border-top: 1px solid grey;
}

#tabmenu li:hover a {
	text-decoration: underline;
	color: lightblue;
}

#tabmenu li:hover ul a {
	text-decoration: none;
	background: none;
}

#tabmenu li:hover ul a:hover {
	text-decoration: underline;
	color: lightblue;
}

#tabmenu ul a {
	white-space: nowrap;
	display: block;
	border-bottom: 1px solid grey;
}

#tabmenu a:hover {
	text-decoration: underline;
	color: lightblue;
}



/* If the link is to the current page, change its colour */

#indexpage #indexlink,
#historypage #historylink,
#historypage #bandlink,
#kazpage #kazlink,
#kazpage #bandlink,
#martynpage #martynlink,
#martynpage #bandlink,
#mikepage #mikelink,
#mikepage #bandlink,
#andycpage #andyclink,
#andycpage #bandlink,
#andybpage #andyblink,
#andybpage #bandlink,
#songspage #songslink,
#gallerypage #gallerylink,
#gallerypage #gallerylink2,
#videospage #videoslink,
#gigspage #gigslink,
#gigspage #gigslink2,
#availabilitypage #availabilitylink,
#availabilitypage #gigslink,
#faqpage #faqlink,
#contactpage #contactlink,
#linkspage #linkslink
	{
	color: white;
}


/*	Bits and pieces */

/*	Images */

.titleimg {
	text-align: center;
	margin: 0 auto;
	padding-top: 12px;
	padding-bottom: 12px;
}

img.right-align {
	float: right;
	padding: 6px 12px;
}

img.left-align {
	float: left;
	padding: 6px 12px;
}

img.centre-align {
	clear: both;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
	padding: 6px 12px;
}


/*	Alignment */

.centre-align {
	clear: both;
	text-align: center;
	margin: 0 auto;
	padding: 6px 12px;
}

.end-floats {
	clear: both;
}

.centred {
	clear: both;
	text-align: center;
}

.centred table {
	margin: 0 auto;
}

.subscribeform {
	padding: 6px 60px;
}


/*	Testimonials */

.right-test {
	width: 250px;
	float: right;
}

.left-test {
	width: 250px;
	float: left;
}

.all-test {
	width: 100%;
}

.right-test, .left-test, .all-test {
	display: block;
	border: thin solid;
	margin: 15px;
	padding: 8px 5px;
	background-color: lightblue;
	color: black;
}

#content p.quote {
	font-weight: bold;
	width: 210px;
	padding: 10px 10px 5px 10px;
	line-height: 1.2em;
	font-size: 75%;
}

#content .right-test p.quotee, #content .left-test p.quotee {
	clear: both;
	color: navy;
	text-align: left;
}

#content .all-test p.quotee {
	text-align: right;
}

#content p.quotee {
	font-weight: normal;
	width: 210px;
	padding: 10px;
	line-height: 1.2em;
	font-size: 75%;
}

/*	Start and end quote in testimonials */

.startquote {
	width: 20px;
	height: 20px;
	float: left;
	padding-left: 18px;
	background: transparent url(images/start_quote.gif) no-repeat center left;
}

.endquote {
	width: 20px;
	height: 20px;
	float: right;
	padding-right: 18px;
	background: transparent url(images/end_quote.gif) no-repeat center right;
}


/*	For video page
*/

.right-pic, .right-player {
	float: right;
}

.left-pic {
	float: left;
}

.left-pic ul {
	text-align: left;
}

.left-pic li:hover {
	cursor: pointer;
}

.right-pic, .left-pic {
	border: none;
	margin: 15px;
	padding: 8px 5px;
}

.right-player {
	border: none;
	margin: 15px;
	padding: 8px;
	padding-right: 15px;
}



td input, td textarea, td select {
	float: right;
}

img.banner {
	border: none;
}

a img {
	border: none;
}


/*	Profile pages
*/

#content .profile {
	margin: 20px auto;
}

#content .profile table {
	border: none;
	margin: 0 auto;
	width: 75%;
}

#content .profile tr {
	vertical-align: top;
	text-align: left;
}

#content .profile td {
	width: 48%;
}

#content .profile td:first-child {
	white-space: nowrap;
}

#content .profile table ul {
	width: 100%;
	margin-left: -10%;
}


/*	Gigs page
*/

.gigs, .venues {
	text-align: center;
}

.gigs table {
	width: 690px;
	padding-bottom: 20px;
	margin: 0 auto;
}

.gigs td {
	padding: 5px;
	vertical-align: top;
	padding-bottom: 15px;
}

.gigs th {
	padding-bottom: 15px;
}

.date  {
	width: 140px;
}

.venue  {
	width: 370px;
}

.map {
	width: 180px;
}

.venues {
	width: 100%;
	padding-bottom: 20px;
	margin: 0 auto;
}

/*	Songs page
*/

.songs table {
	width: 100%;
	padding-bottom: 20px;
	margin: 0 auto;
}

.songs {
	margin: 6px;
}

.songs th {
	font-family: Bauhaus93, Verdana, arial, sans-serif;
	font-weight: bold;
	font-size: 16pt;
}

.songs th:first-child {
	width: 48%;
	text-align: right;
	padding-right: 10px;
}

.songs th + th {
	width: 48%;
	text-align: left;
	padding-left: 10px;
}

.songs td:first-child {
	text-align: right;
	padding-right: 10px;
}

.songs td + td {
	text-align: left;
	padding-left: 10px;
}

#jukebox {
	margin: 0 auto;
}

/*	Can't get auto to work here so forcing it to centre alignment
*/

#jukebox-outer {
	margin: 20px 130px;
}


/*	Contact page
*/

.contact table {
	width: 100%;
}

.contact table, .contact th, .contact th {
	border: none;
}

.contact th:first-child {
	padding-right: 10px;
}

.contact th + th {
	padding-left: 10px;
}

.contact td:first-child {
	text-align: right;
	padding-right: 10px;
}

.contact td + td {
	float: left;
}


/*	Links page
*/

.links table {
	width: 100%;
}

.links td {
	width: 48%;
}

.links a img {
	border-style: none;
}

.links td:first-child {
	text-align: right;
	padding-right: 10px;
}

.links td + td {
	text-align: left;
	padding-left: 10px;
}

/*	News division
*/

.news {
	border: 2px solid white;
	padding: 10px;
	margin: 20px;
}

/*	Put an Adobe PDF icon by links to PDFs
*/

a[href $='.pdf'] {
	padding-right: 18px;
	background: transparent url("images/logos/adobe.gif") no-repeat center right;
}

/*	Put a Facebook icon by links to Facebook pages
*/

a.facebook {
	padding-right: 18px;
	background: transparent url("images/logos/facebook.jpg") no-repeat center right;
}

/*	Facebook stuff
*/

#fb {
	width: 600px;
	margin: 0 auto;
	padding-top: 20px;
}

.fb-find {
	clear: both;
	text-align: center;
	margin: 0 auto;
}

.fb-like {
	display: inline-block;
	float: left;
}

.fb-share {
	display: inline-block;
	float: right;
}


/*	General for the admin page
*/

#adminpage {
	max-width: 740px;
	margin: 0 auto;
}

#adminpage h1 {
	text-align: left;
}


/*	Availability page
*/

#availabilitypage body {
	font-size: 16pt;
}

#availabilitypage h1 {
	font-size: 30pt;
	clear: both;
}

#availabilitypage h2 {
	font-size: 20pt;
	clear: both;
}

#availabilitypage table {
	width: auto;
}

#availabilitypage td {
	width: 60px;
}

#availabilitypage .footer {
	font-size: 12pt;
}

#availabilitypage .footer p {
	padding: 8px;
}

#availabilitypage .left {
	float: left;
	width: 48%;
}

#availabilitypage .right {
	float: right;
	width: 48%;
}


/*	For print heads
*/

@media print {
	body {
		background: white;
		color: black;
		font-size: 75%;
	}
	.noprint {
		display: none;
	}
	h1     {
		font-size: 18pt;
	}
	h2     {
		font-size: 12pt;
	}
	#header {
		display: none;
	}
	#printheader {
		display: block;
	}
	#menu, #fb, #footer {
		display: none;
	}
}


@media only screen and ( max-width: 900px ) /* 62.5em 1000 */
{

	html {
		font-size: 75%; /* 12 */
	}

	#tabmenu {
		font-size: 90%;
	}

	body {
/*		width: 100%; */
		width: 638px;
	}

	.fullsize, #header {
		display: none;
	}

	.phonesize, #phoneheader {
		display: none;
	}

	.tabletsize, #tabletheader {
		display: block;
	}

	.gigs table {
		width: 450px;
	}

	.date  {
		width: 95px;
	}

	.venue  {
		width: 250px;
	}

	.map {
		width: 125px;
	}

	#nav {
		width: 100%;
		position: static;
		margin: 0;
	}

	#tabmenu {
		margin: 0;
	}

	#menu, #content, #content p, #content p.img, #content ul, #fb {
		width: 100%;
	}

}


@media only screen and ( max-width: 640px ) /* 40em 640 */
{
	html {
		font-size: 75%; /* 12 */
	}

	body {
/*		width: 100%; */
		width: 380px;
		margin-left: 10px;
	}

	.news {
		padding: 5px;
		width: 360px;
		margin-left: 10px;
	}

	#menu {
		width: 240px;
		margin-left: 0;
	}

	#tabmenu {
		background-color: midnightblue;
		margin: 0;
		font-size: 100%;
	}

	.fullsize, #header {
		display: none;
	}

	.tabletsize, #tabletheader {
		display: none;
	}

	.phonesize, #phoneheader {
		display: block;
	}

	.gigs table {
		width: 345px;
	}

	.date  {
		width: 70px;
	}

	.venue  {
		width: 185px;
	}

	.map {
		width: 90px;
	}

	#nav {
		position: relative;
		top: auto;
		left: auto;
	}

	#nav > a {
		width: 3.125em;  /* 50 */
		height: 3.125em;  /* 50 */
		text-align: left;
		text-indent: -9999px;
		position: relative;
	}

	#nav > a:before, #nav > a:after {
		position: absolute;
		border: 2px solid white;
		top: 35%;
		left: 25%;
		right: 25%;
		content: '';
	}

	#nav > a:after {
		top: 60%;
	}

	#nav:not( :target ) > a:first-of-type, #nav:target > a:last-of-type {
		display: block;
	}

	/* first level */

	#tabmenu {
		height: auto;
		display: none;
		position: absolute;
		left: 0;
		right: 0;
/*		padding: 5px; */
	}

	#nav:target > ul {
		display: block;
	}

	#tabmenu > li {
/*		width: 100%;
		float: none; */
		display: block;
		text-align: left;
		padding: 10px 0 10px 20px;
		border: 1px solid grey;
		border-top: none;
	}

	#tabmenu > li:first-child {
		border-top: 1px solid grey;
	}

	#tabmenu > li > a {
		height: auto;
		text-align: left;
/*		padding: 0 0.833em;*/ /* 20 (24) */
		padding: 0;
		border: none;
	}

	#tabmenu > li:first-child a {
		border-left: none;
	}


	/* second level */

	#tabmenu li ul {
		position: static;
/*		padding: 1.25em; *//* 20 */
		padding-top: 0;
		padding: 0;
	}
}
