@charset "UTF-8";

/* Common settings */
body {
	margin: 0;
	background: #FFF url(../background-image/background.png) repeat-x top;
	text-align:center; /* For IE to centre the container */
}

a:link {
	text-decoration: none;
	color: #009;
}
a:visited {
	text-decoration: none;
	color: #00C;
}
a:hover {
	text-decoration: underline;
	color: #F00;
}
h1, h2, h3, h4 {
	font-family: Arial, Helvetica, sans-serif;
	text-decoration: none;
	font-weight: bold;
	color: #000;
}
h1 {
	font-size: 18px;
	text-align: center;
	margin-top: 2px;
	margin-bottom: 0;
}
h2 {
	font-size: 16px;
	text-align: center;
	margin-top: 6px;
	margin-bottom: 6px;
}

h2+p {
	margin-top: 6px;
}

h3 {
	margin-bottom: 3px;
	font-size: 13px;
}
h3+p, h3+ul {
	margin-top: 0;
}

h4 {
	font-size: 10px;
	font-weight: normal;
}
p, td, li {
	color: #444;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 14px;
}
th, caption {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 14px;
	color: #000;
	font-weight: bold;
}

img.photo, img.thumb, img.shadow {
	border: 1px solid #AAA;
	padding: 8px;
	box-shadow: 2px 2px 6px #AAA;
	box-sizing:border-box;
	max-height:100%;
	max-width:100%;

}



/* MAIN CONTAINER */
/* ============== */
#container {
	max-width: 960px;
	margin: 0 auto;
	padding: 0;
	background: #FFF;  
	text-align: left;
	background:rgba(255,255,255,0.9);
}

#music-background #container { /* Transparent container */
	background:none;
}

/* MAIN CONTAINER HEADER */
/* ===================== */
#container>header { /* Top level container's header */
	margin: 0;
	padding: 3px;
}

#container>header h2, #container>header p {
	color: #666;
	font: bold 13px Arial, Helvetica, sans-serif;
	margin: 0;
	padding-top: 8px;
	padding-bottom: 0px;
}
#container>header h2 {
	float: left;
}
#container>header p {
	float: right;
}

#container>header a, #container>header a:link, #container>header a:visited {
	text-decoration: none;
	color: #666;
}

/* MAIN CONTAINER CONTENT */
/* ====================== */
div#content, section#content {
	background-color: transparent;
	padding: 0px 0 5px;
	margin-left: 2px;
	margin-right: 2px;
}

nav:first-of-type {
	margin-bottom: 10px;
}

section.split {
	float: left;
	width: 690px;
	margin: 0;
	padding: 0 2px;
	overflow:hidden;
}

aside.split {
	float: right;
	width: 250px;
	margin: 0;
	padding: 0 2px;
	overflow:hidden;
}


aside.split img {
	margin-left: auto;
	margin-right: auto;
	max-width: 250px;
	height:auto;
}



/* MAIN CONTAINER FOOTER */
/* ===================== */
#container>footer { 
	clear:both;
	width: auto;
	background: #FFF;
	padding: 0;
	margin: 0;
	overflow:auto;
	border-top: 1px solid #69E;
	border-bottom: 1px solid #69E;
}


#container>footer>aside { /* Copyright */
	float: left;
	text-align: left;
	width: 20%;
	margin: 0;
	padding: 5px 0 0 5px;
	font: 12px Arial, Helvetica, sans-serif;
}

#container>footer>aside img { /* Logo */
	padding-right: 10px;
	padding-bottom: 4px; /* For mobiles */
}

#container>footer>section {
	float: right;
	width: 75%;
	text-align: center;
	margin: 0;
	padding: 0;
}

nav.button {
		text-align:center;
}
nav.button a { 
	color: blue;
	text-decoration: none;
	margin: 2px;
	padding: 4px;
	font: 13px Verdana, Geneva, sans-serif;
	background: #F0F0F0;
	border: 1px solid #DDD;
	border-radius: 5px;
	box-shadow: 2px 2px 2px #CCC;
}
nav.button a:hover {
	color:red;
	text-decoration:underline;
	box-shadow: inset 2px 2px 2px #CCC;
}


#container>footer>section>p {
	font-size: 12px;
	font-weight: normal;
	color: #000;
	margin: 0;
	padding: 8px 0;
}






/* Centering... divs and paragraphs */
.centre {
	text-align: center;
}
/* Centering tables */
div.centre {
	text-align: center;
}
div.centre table { /* To centre in old IE, wrap table in centred DIV */
	margin-left: auto; /* For some old browsers, can't combine all margins into one */
	margin-right: auto;
	text-align: left;
}
div.centre th { /* Put this one back... */
	text-align:center;
}

.left {
	text-align:left;
}

.right {
	text-align:right;
}

/* The DEFINITIONS page */
.definition {
	width:100%;
	background:white;
	overflow:hidden;
	box-sizing:border-box;
}
/* The colours */
.definition.defn1 {
	border: 1px solid #F9F;
}
.definition.defn1 h2 {
	background: #F9F;
}
.definition.defn1 p.left {
	background: #FCF;
}
.definition.defn2 {
	border: 1px solid #CF9;
}
.definition.defn2 h2 {
	background: #CF9;
}
.definition.defn2 p.left {
	background: #CFC;
}
.definition.defn3 {
	border: 1px solid #FF9;
}
.definition.defn3 h2 {
	background: #FF9;
}
.definition.defn3 p.left {
	background: #FFC;
}
.definition.defn4 {
	border: 1px solid #F9C;
}
.definition.defn4 h2 {
	background: #F9C;
}
.definition.defn4 p.left {
	background: #FCC;
}
.definition.defn5 {
	border: 1px solid #F96;
}
.definition.defn5 h2 {
	background: #F96;
}
.definition.defn5 p.left {
	background: #FC9;
}
.definition.defn6 {
	border: 1px solid #9FF;
}
.definition.defn6 h2 {
	background: #9FF;
}
.definition.defn6 p.left {
	background: #CFF;
}
/* The layout */
.definition h2 {
	clear:both;
	margin:0;
	padding:0;
}
.definition p.left {
	clear: both;
	text-align: right;
	width: 25%;
	border-top: 2px solid white;
	border-bottom: 2px solid white;
	margin: 1px 0;
	padding: 1px;
	float: left;
	box-sizing: border-box;
}
.definition p.right {
	text-align: left;
	background: white;
	width: 74%;
	border: 2px solid white;
	margin: 1px;
	padding: 1px;
	float:right;
	box-sizing:border-box;
}



/* COLOURS */
/* Foreground colours */

.red {
	font-weight: normal;
	color: #F00;
}
.green090 {
	color: #090;
}
.white {
	color: #FFF;
}
.grey6 {
	color: #666;
	font-weight: normal;
}
.blue36c {
	color: #36C;
}

/* Background colours */
.purple1 {
	background-color: #FCF;
}
.purple2 {
	background-color: #FEF;
}

.bg-lime {
	background-color: #CF3;
}
.bg-lt-blue {
	background-color: #CDF;
}
.bg-lt-cream {
	background-color:#FFE;
}




.large {
	font-size: 14px;
	font-weight: bold;
}
.small {
	font-size: 10px;
	font-weight: normal;
}


.bg-popup {
	background: #F46;
}

#shortcut {
	width: 118px;
	text-align: center;
}


#rooms {
	text-align: center;
}

.clear-b {
	clear: both;
}


/* Sidebar */
#popular, #shopular {
	width:140px;
	float: right;
	background: url(../background-image/background.png) no-repeat left top;
	padding-bottom: 20px;
	overflow:hidden;	
}
#shopular {
	background:#FFF;
}

#popular p, #shopular p {
	text-align: center;
	font-style: italic;
}
#popular ul {
	font-weight: bold;
	list-style-type: none;
	margin: 0;
	padding: 0 3px;
}

#popular li {
	padding-top: 5px;
	padding-bottom: 5px;
	text-align: center;
}

#popular li a {
	color: #777;
	text-decoration: none;
}
#popular li a:hover {
	color: #333;
}

#popular i {
	font-size: 85%;
}
/*********/

.shop h2 {
	font-size: 12px;
	text-align: left;
}

#onthisfloor img {
	border: 1px solid #666;
}
#popular img {
	border: 1px solid #666;
}

table.paper, tr.paper, td.paper {
	background: #FFFFF0;
}

table.relaxed {
	border-collapse:separate;
	border-spacing: 2px;
}
table.relaxed td {
	padding: 2px;
}
table.tight {
	border-collapse:collapse;
	border-spacing: 0;
}
table.tight td {
	padding: 2px;
}

.border {
	border: 1px solid #000;
}

.background p, .background h3, .background a {
	color: #FFF;
}
.background a:hover {
	color: red;
}

.float-r {
	float:right;
}
.float-l {
	float:left;
}

.float-175-r {
	float: right;
	width: 175px;
	text-align: center;
	overflow:hidden;
}
.float-250-r {
	float: right;
	width: 250px;
	text-align: center;
	overflow:hidden;
}
.float-350-r {
	float: right;
	width: 350px;
	text-align: center;
	overflow:hidden;
}
.float-450-r {
	float: right;
	width: 450px;
	text-align: center;
	overflow:hidden;
}

.float-2-boxes, .float-2-images {
	float:left;
	margin:0;
	padding:0;
	width:49%;
}
.float-2-images {
	text-align:center;
}

.float-3-photos, .float-3-boxes {
	float:left;
	margin:0;
	padding:0;
	width:32%;
}
.float-3-photos  img {
	max-height:100%;
	max-width:100%;
	border: 1px solid #AAA;
	padding: 8px;
	margin:2px;
	box-shadow: 2px 2px 6px #AAA;
	box-sizing:border-box;
}
.float-3-photos p.click {
}

/* Photos and graphics - common across sites */
.float-photo-right, .float-graphic-right {
	float:right;
	text-align:center;
}
.float-photo-left, .float-graphic-left {
	float:left;
	text-align:center;
}
.centre-photo, .centre-graphic {
	text-align:center;
}
.float-photo-right img, .float-photo-left img, .centre-photo img {
	max-width:auto;
	max-height:auto;
	border: 1px solid #CCC;
	padding: 10px;
	margin: 2px;
	box-sizing:border-box;
}
.float-graphic-right img, .float-graphic-left img, .centre-graphic img {
	max-width:auto;
	max-height:auto;
	border: none;
	margin: 2px;
	box-sizing:border-box;
}


.youtube-outer-wrapper { /* Forces padding to collapse */
	max-width:560px;
	margin: 0;
}

.youtube-wrapper {
	position:relative;
	height: 0;	/* Will grow responsively */
	padding-bottom: 56.25%; /* Height won't grow, but padding will! */
	overflow: hidden;
}

.youtube-wrapper iframe { /* Add to embed iframe. Style max-width and max-height as well */
	position: absolute;
	top: 0;
	left: 0;
	width:100%;
	height:100%;
	max-width: 560px;
	max-height: 315px;
	border: none;
}


/* RH Margin */
#newscontent {
	margin: 0 250px 0 0;
}

#sidebar {
	margin: 0;
	text-align: left;
	float: right;
	width: 250px;
	padding-left: 10px;
	padding-right: 2px;
}
.newsbox, .newsbox-naked {
	font-family: Verdana, Arial, Helvetica, sans-serif;
	text-align: left;
	margin: 15px 0;
	padding: 0;
	background: #FFF;
	opacity:0.9;
	border: 1px solid #999;
	border-radius: 5px;
	box-shadow: 2px 2px 4px #AAA;
	overflow: hidden;
}

.newsbox p, .newsbox-naked p {
	padding: 3px;
	margin: 1px;
}

.newsbox ul, .newsbox-naked ul {
	margin-right: 1px;
	padding-right: 3px;
}

.newsbox>h2, .newsbox>h3 { /* Following immediately, not in nested div */
	text-align: center;
	padding: 5px;
	margin: 0;
	font-weight: bold;
	color: #FFF;
	background: #999;
	border-radius: 4px 4px 0 0;
}
.newsbox>h2 {
	font-size: 15px;
}
.newsbox>h3 {
	font-size: 12px;
}

.newsbox>h2 a, .newsbox>h3 a, .newsbox>h2 a:hover, .newsbox>h3 a:hover {
	text-decoration:none;
	color: #FFF;
}

.newsbox.red-fill>h2 {
	background-color: #BB0000!important;
}
.newsbox.green-fill>h2 {
	background-color: #00AA00!important;
}
.newsbox.blue-fill>h2 {
	background-color: #0000BB!important;
}
.newsbox.light-blue-fill>h2 {
	background-color: #6699FF!important;
}

.newsbox ul {
	margin-left:0;
}

.spaced-list li {
	margin-top:5px;
	margin-bottom:5px;
}

.pack h3 {
	margin: 0;
	padding: 5px 2px;
}
.pack p {
	margin: 0;
	padding: 2px 0;
}
.pack ul, .pack li {
	margin-top: 0;
	margin-bottom: 0;
	padding-top: 1px;
	padding-bottom: 1px;
}
.pack h3 a:hover {
	color: #FEE;
	text-decoration: none;
}
.whiteback {
	background:#FFF;
}
.greyshade {
	background: #F8F8F8;
}
.darkgreyshade {
	background: #DDD;
}

/* Definition colours */
.w100 {
	width:100%;
}

th.defn1 {
	background: #ff99ff;
}
td.defn1 {
	text-align:right;
	background:#ffccff;
	width:25%;
}

th.defn2 {
	background: #ccff99;
}
td.defn2 {
	text-align:right;
	background:#ccffcc;
	width:25%;
}

th.defn3 {
	background: #ffff99;
}
td.defn3 {
	text-align:right;
	background:#ffffcc;
	width:25%;
}

th.defn4 {
	background: #ff99cc;
}
td.defn4 {
	text-align:right;
	background:#ffcccc;
	width:25%;
}

th.defn5 {
	background: #ff9966;
}
td.defn5 {
	text-align:right;
	background:#ffcc99;
	width:25%;
}

th.defn6 {
	background: #99ffff;
}
td.defn6 {
	text-align:right;
	background:#ccffff;
	width:25%;
}

#pdf {
	background: url(../../logos/pdf.gif) no-repeat;
	height: 26px;
	padding-left: 30px;
}
#ebook {
	background: url(../../logos/e.png) no-repeat;
	height: 26px;
	padding-left: 30px;
}

/* Table layout */
/* tbody redefines vertical align from table - redefine again at td level */
.c td, .ct td, td.c, td.ct {
	text-align: center;
}
.t td, .ct td, td.t, td.ct {
	vertical-align: top;
}

.l td, td.l {
	text-align:left;
}

.r td, td.r {
	text-align:right;
}

.valign-top, .valign-top td {
	vertical-align:top;
}
.valign-middle {
	vertical-align:middle;
}
.valign-bottom {
	vertical-align:bottom;
}

td.nowrap {
	white-space:nowrap;
}


p.mobile {
	display:none;
}

/* Programmes */
.programme, table.paper, tr.paper, td.paper {
	background: #FFFFF0;
}

.programme, table.paper {
	box-shadow: 2px 2px 6px #AAA;
}

.programme {
	width: 65%;
	text-align: center;
	background: #FFFFF0;
	color: #333;
	border: 3px solid #666;
	overflow:hidden; /* Constrain clears to here */
	padding-left:35px;
	padding-right:35px;
	margin-left:auto;
	margin-right:auto;
	margin-top: 6px;
	margin-bottom: 6px;
}
.programme .title, .programme p {
	clear: both;
	width: 60%;
	margin: 1px 0;
	padding: 0;
	text-align: left;
	float: left;
}
.programme .composer, .programme p.composer {
	clear: none;
	width: 39%;
	margin: 1px 0;
	padding: 0;
	text-align: right;
	float: left;
}
.programme .interval, .programme p.interval {
	clear: both;
	width:100%;
	margin:2px 0;
	padding: 0;
	text-align:center;
	font-style:italic;
}
.programme h3, .programme h4 {
	clear: both;
	padding-top: 10px;
	margin-top: 2px;
	margin-bottom: 2px;
}

.programme h4 {
	color: #666;
	font-size:14px;
	font-weight:bold;
}

.composer {
	font-style: italic;
	text-align: right;
	vertical-align: top;
}






.incipit-container {
		margin: 0;
		padding: 0;
		background: #69E;
		text-align:left;
}
.incipit-container article {
	border-top: 1px solid #FFF;
	border-bottom : 1px solid #FFF;
}
.incipit-left {
	width: 100px;
	padding: 2px;
	float: left;
}
.incipit-left p {
	text-align: center;
	color: #FFF;
	font-weight: bold;
	padding: 3px 0;
	margin: 0;
}
.incipit-right {
	margin-left:105px;
	background: #FFF;
	padding: 2px;
	overflow:hidden;
}
.incipit-right p {
	margin: 0;
	padding: 3px;
}

.incipit-right h2 {
		text-align:left;
		font-size:15px;
}

/* .incipit-right audio {
	display: table;
	margin: 0 auto;
} */

.incipit-book {
	float:left;
	margin-right:3px;
}
.incipit-book img {
	border: 1px solid #666;
	margin: 2px;
	box-shadow: #999 3px 3px 3px;
}


.book-container, .ebook-container, .best-seller {
		text-align:left;
		margin-right: 150px;
		overflow:auto;
}

.book-container {
		background: #FFFFF0;
		margin-bottom:20px;
}

.ebook-container {
		background: #CDF;
		margin-bottom:20px;
}

.best-seller {
	border:1px solid red;
	text-align:center;
	clear:left:
}

.book-container section, .ebook-container section {
	clear:left;
	border-top: 20px solid #FFF;
	border-bottom: 1px solid #666;	
  text-align: center;
}

.book-container article, .ebook-container article {
	background: #FFF;
	border-bottom: 1px solid #666;	
	overflow:auto;
}

.book-container article .float-2-boxes>p, .ebook-container article .float-2-boxes>p {
	margin: 1px;
	padding: 2px;
}

.book-container .float-2-boxes table td, .ebook-container .float-2-boxes table td {
	padding:5px;
}


/*Boxes */
section.box {
	clear: both;
	text-align:left;
	font-family: Verdana, Arial, Helvetica, sans-serif;
	margin: 20px 0 20px 0;
	padding: 1px;
	backgroound:#FFF;
	border: 1px solid #DDD;
}

section.box h2 {
	color: #47C;
	text-align:left;
	margin:0;
	padding: 3px;
	background: #F8F8FF;

}

section.box article {
	background: #FFF;
	padding: 0px 2px;
	margin: 0px;
	overflow: hidden;
}
section.box article+article {
	margin-top: 20px;
}
section.box article p {
	padding: 0px 2px;
	margin: 2px;
}
section.box article ul {
	margin: 2px;
}

a>img:hover {
-webkit-filter: brightness(0.9);
filter: brightness(0.9);
}


.spacer {
	padding: 0 2px;
}
.big-spacer {
	padding: 20px 2px;
}

.smaller {
	font-size:x-small!important;
}

.new-window-link {
	padding-right: 20px;
	background: url(../../furniture/open-in-new-window.png) no-repeat scroll right center;
	background-origin: initial;
	background-clip: initial;
}

/* FORMS */
/* Forms */
.form-container {
	width: 100%;
	max-width: 750px;
	overflow:hidden; /* Extend colour */
	background-color:#DEF;
	border: 1px solid #999;
	margin: 0 auto;
	padding-top: 1px;
	padding-bottom: 1px;
	overflow:hidden;
	box-sizing:border-box;
}
/* Make a nested declaration to save clutter in Dreamweaver dropdown */
.form-line {
	overflow: hidden;
	margin-bottom: 10px;
}
.form-container .form-left {
	text-align:right;
	float:left;
	width: 49%;
	min-width: 200px;
}
.form-left p { /* Move left & right apart but don't upset percentages */
	margin-right:5px;
	margin-top: 0;
	margin-bottom: 0;
}
.form-container .form-right {
	text-align:left;
	float:left;
	width: 49%;
	min-width: 200px;
}



.link-box {
	border: 1px solid #69F;
	padding: 10px;
}


/* Flip images W3Schools */
.flip-card {
  background-color: transparent;
  max-width: 400px;
  height: 370px;
  perspective: 1000px;
}

.flip-card-inner {
  position: relative;
  width: 100%;
  height: 100%;
  text-align: center;
  transition: transform 0.6s;
  transform-style: preserve-3d;
  box-shadow: 0 4px 8px 0 rgba(0,0,0,0.2);
}

.flip-card:hover .flip-card-inner {
  transform: rotateY(180deg);
}

.flip-card-front, .flip-card-back {
  position: absolute;
  width: 100%;
  height: 100%;
	border:thin #CCC solid;
	box-sizing: border-box;
	background-color:white;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.flip-card-front {
  color: black;
}

.flip-card-back {
	padding-top:100px;
  transform: rotateY(180deg);
}



