/* -------------------------------------------------------------- 
  
   RESET
   
-------------------------------------------------------------- */

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, code,
del, dfn, em, img, q, dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	border: 0;
	font-weight: inherit;
	font-style: inherit;
	font-size: 100%;
	font-family: inherit;
	vertical-align: baseline;
}

body { 
	line-height: 1.5; 
}

/* Tables still need 'cellspacing="0"' in the markup. */
table { border-collapse: separate; border-spacing: 0; }
caption, th, td { text-align: left; font-weight: normal; }
table, td, th { vertical-align: middle; }

/* Remove possible quote marks (") from <q>, <blockquote>. */
blockquote:before, blockquote:after, q:before, q:after { content: ""; }
blockquote, q { quotes: "" ""; }

/* Remove annoying border on linked images. */
a img { border: none; }


/* -------------------------------------------------------------- 
   
   GRID
   
-------------------------------------------------------------- */

body > .container {
	margin-top: 280px;
	margin-bottom: 50px;
}


/* A container should group all your columns. */
.container {
	width: 950px;
	margin: 0 auto;
}

body > #global-header {
	position: fixed;
}


#global-header {
	background-color:transparent;
	background-image:url(/images/structure/trans_pixel_fffbf9.png);
	background-repeat:repeat;
	margin-bottom:85px;
	overflow:hidden;
	padding:20px 0;
	top:60px;
	width:100%;
	z-index:30;
}



/* Columns
-------------------------------------------------------------- */

/* Sets up basic grid floating and margin. */
.column, div.span-1, div.span-2, div.span-3, div.span-4, div.span-5, 
div.span-6, div.span-7, div.span-8, div.span-9, div.span-10, 
div.span-11, div.span-12, div.span-13, div.span-14, div.span-15, 
div.span-16, div.span-17, div.span-18, div.span-19, div.span-20, 
div.span-21, div.span-22, div.span-23, div.span-24 {
  float: left;
  margin-right: 10px; 
}

/* The last column in a row needs this class. */
.last, div.last { margin-right: 0; }

/* Use these classes to set the width of a column. */
.span-1  { width: 30px; }
.span-2  { width: 70px; }
.span-3  { width: 110px; }
.span-4  { width: 150px; }
.span-5  { width: 190px; }
.span-6  { width: 230px; }
.span-7  { width: 270px; }
.span-8  { width: 310px; }
.span-9  { width: 350px; }
.span-10 { width: 390px; }
.span-11 { width: 430px; }
.span-12 { width: 470px; }
.span-13 { width: 510px; }
.span-14 { width: 550px; }
.span-15 { width: 590px; }
.span-16 { width: 630px; }
.span-17 { width: 670px; }
.span-18 { width: 710px; }
.span-19 { width: 750px; }
.span-20 { width: 790px; }
.span-21 { width: 830px; }
.span-22 { width: 870px; }
.span-23 { width: 910px; }
.span-24 { width: 950px; margin: 0; }

/* Add these to a column to append empty cols. */
.append-1  { padding-right: 40px; }  
.append-2  { padding-right: 80px; } 
.append-3  { padding-right: 120px; } 
.append-4  { padding-right: 160px; } 
.append-5  { padding-right: 200px; } 
.append-6  { padding-right: 240px; } 
.append-7  { padding-right: 280px; } 
.append-8  { padding-right: 320px; } 
.append-9  { padding-right: 360px; } 
.append-10 { padding-right: 400px; } 
.append-11 { padding-right: 440px; } 
.append-12 { padding-right: 480px; } 
.append-13 { padding-right: 520px; } 
.append-14 { padding-right: 560px; } 
.append-15 { padding-right: 600px; } 
.append-16 { padding-right: 640px; } 
.append-17 { padding-right: 680px; } 
.append-18 { padding-right: 720px; } 
.append-19 { padding-right: 760px; } 
.append-20 { padding-right: 800px; } 
.append-21 { padding-right: 840px; } 
.append-22 { padding-right: 880px; } 
.append-23 { padding-right: 920px; } 

/* Add these to a column to prepend empty cols. */
.prepend-1  { padding-left: 40px; }  
.prepend-2  { padding-left: 80px; } 
.prepend-3  { padding-left: 120px; } 
.prepend-4  { padding-left: 160px; } 
.prepend-5  { padding-left: 200px; } 
.prepend-6  { padding-left: 240px; } 
.prepend-7  { padding-left: 280px; } 
.prepend-8  { padding-left: 320px; } 
.prepend-9  { padding-left: 360px; } 
.prepend-10 { padding-left: 400px; } 
.prepend-11 { padding-left: 440px; } 
.prepend-12 { padding-left: 480px; } 
.prepend-13 { padding-left: 520px; } 
.prepend-14 { padding-left: 560px; } 
.prepend-15 { padding-left: 600px; } 
.prepend-16 { padding-left: 640px; } 
.prepend-17 { padding-left: 680px; } 
.prepend-18 { padding-left: 720px; } 
.prepend-19 { padding-left: 760px; } 
.prepend-20 { padding-left: 800px; } 
.prepend-21 { padding-left: 840px; } 
.prepend-22 { padding-left: 880px; } 
.prepend-23 { padding-left: 920px; } 


/* Border on right hand side of a column. */
div.border {
  padding-right: 4px;
  margin-right: 5px;
  border-right: 1px solid #eee;
}

/* Border with more whitespace, spans one column. */
div.colborder {
  padding-right: 24px;
  margin-right: 25px;
  border-right: 1px solid #000;
}


/* Use these classes on an element to push it into the 
   next column, or to pull it into the previous column.  */

.pull-1 { margin-left: -40px; }
.pull-2 { margin-left: -80px; }
.pull-3 { margin-left: -120px; }
.pull-4 { margin-left: -160px; }
.pull-5 { margin-left: -200px; }

.pull-1, .pull-2, .pull-3, .pull-4, .pull-5 {
  float:left;
	position:relative;
}

.push-1 { margin: 0 -40px 1.5em 40px; }
.push-2 { margin: 0 -80px 1.5em 80px; }
.push-3 { margin: 0 -120px 1.5em 120px; }
.push-4 { margin: 0 -160px 1.5em 160px; }
.push-5 { margin: 0 -200px 1.5em 200px; }

.push-1, .push-2, .push-3, .push-4, .push-5 { 
  float: right;
	position:relative;
}


/* Misc classes and elements
-------------------------------------------------------------- */

/* In case you need to add a gutter above/below an element */
.prepend-top { 
	margin-top:1.5em; 
}
.append-bottom { 
	margin-bottom:1.5em; 
}

/* Use a .box to create a padded box inside a column.  */ 
.box { 
	padding: 1.5em; 
	margin-bottom: 1.5em; 
	background: #E5ECF9; 
}

/* Use this to create a horizontal ruler across a column. */
hr {
	background: #ddd; 
	color: #ddd;
	clear: both; 
	float: none; 
	width: 100%; 
	height: .1em;
	margin: 0 0 1.45em;
	border: none; 
}
hr.space {
	background: #fff;
	color: #fff;
}


/* Clearing floats without extra markup
   Based on How To Clear Floats Without Structural Markup by PiE
   [http://www.positioniseverything.net/easyclearing.html] */

.clearfix:after, .container:after {
    content: "\0020"; 
    display: block; 
    height: 0; 
    clear: both; 
    visibility: hidden; 
    overflow:hidden; 
}
.clearfix, .container {display: block;}

/* Regular clearing
   apply to column that should drop below previous ones. */

.clear { clear:both; }


/* -------------------------------------------------------------- 
   
   TYPOGRAPHY
   
-------------------------------------------------------------- */

/* Default font settings. 
   The font-size percentage is of 16px. (0.75 * 16px = 12px) */
body { 
  font-size: 75%;
  color: #000; 
  background: #fffbf9;
  font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;
}


/* Headings
-------------------------------------------------------------- */

h1,h2,h3,h4,h5,h6 { font-weight: normal; color: #111; }

h1 { 
	font-size: 3em; 
	line-height: 1; 
	margin-bottom: 0.5em; 
}
h2 { 
	border-bottom:1px solid #000;
	font-size:16px;
	font-weight:bold;
	margin:1em auto 0.75em;
	padding-bottom:0.5em;
	text-align:center;
	text-transform:uppercase;
}
h2 span {
	display: none;
}
h3 { 
	color:#000;
	font-size:14px;
	font-weight:bold;
	line-height:1.5;
	margin-bottom:0.8em;
	text-align:center;
	text-transform: uppercase;
}
h4 { 
	font-size:17px;
	line-height:1.25;
	margin-bottom:0.1em;
	text-align:center;
}

h4 a {
	color:#aa1a3b;
	text-decoration: none;
	font-style: normal;
}
h4 a:hover {
	text-decoration: underline;
}

h5 { font-size: 1em; font-weight: bold; margin-bottom: 1.5em; }
h6 { font-size: 1em; font-weight: bold; }

h1 img, h2 img, h3 img, 
h4 img, h5 img, h6 img {
  margin: 0;
}

h1#logo {
	background-position: top center;
	background-repeat: no-repeat;
	margin: 0 auto;
	background-image: url(/images/structure/logo.png);
	margin-bottom: 12px;
}

h1#logo span {
	display: block;
	text-indent: -9999em;
}
h1#logo a {
	display: block;
}

h1#logo,
h1#logo a {
	height:24px;
	width:272px;
}




/* Navigation
-------------------------------------------------------------- */


ul#main-navigation {
list-style:none outside none;
margin:0 auto;
padding:0;
width:750px;
}

ul#main-navigation li {
	float: left;
	font-size: 15px;
}


ul#main-navigation li.feedback a {
color: #00ad7c;
}
ul#main-navigation li.feedback a:hover {
color: #000;
}

ul#main-navigation li a {
	text-transform: uppercase;
	display: block;
	float: left;
	color: #000;
	margin-left: 5px;
	margin-right: 5px;
}

ul#main-navigation li.selected a {
	color: #aa1a3b;
}

ul#main-navigation li a:hover {
	color: #aa1a3b;
}

ul#main-navigation li.last {
	margin-right: 0;
}


/* Text elements
-------------------------------------------------------------- */

p {
	margin:0 auto 1.5em;
text-align:center;
}

p.img {
	padding: 0;
	margin-bottom: 0.9em !important;
}

p img.left  { float: left; margin: 1.5em 1.5em 1.5em 0; padding: 0; }
p img.right { float: right; margin: 1.5em 0 1.5em 1.5em; }

a:focus, 
a:hover     { color: #808080; }

a {
	color:#aa1a3b;
	outline: none;
	text-decoration:none; 
}

p#address,
p#opening-times {
	font-size: 12px;
}

p#address {
	margin-bottom: 0;
}

p#opening-times {
	margin-bottom: 1.4em;
}

p.link {
	margin-top: 1.5em;
}

p.link a {
	background-color: #FFF;
	text-decoration: none;
	margin-right: 0.5em;
	padding: 0 0.4em;
}

blockquote  { margin: 1.5em; color: #666; font-style: italic; }
strong      { font-weight: bold; }
em,dfn      { font-style: italic; }
dfn         { font-weight: bold; }
sup, sub    { line-height: 0; }

abbr, 
acronym     { border-bottom: 1px dotted #666; }
address     { margin: 0 0 1.5em; font-style: italic; }
del         { color:#666; }

pre 				{ margin: 1.5em 0; white-space: pre; }
pre,code,tt { font: 1em 'andale mono', 'lucida console', monospace; line-height: 1.5; }


/* Lists
-------------------------------------------------------------- */

li ul, 
li ol       { margin:0 1.5em; }
ul, ol      { margin: 0 1.5em 1.5em 1.5em; }

ul          { list-style-type: disc; }
ol          { list-style-type: decimal; }

dl          { margin: 0 0 1.5em 0; }
dl dt       { font-weight: bold; }
dd          { margin-left: 1.5em;}


/* Tables
-------------------------------------------------------------- */

table       { margin-bottom: 1.4em; width:100%; }
th          { font-weight: bold; }
thead th 		{ background: #c3d9ff; }
th,td,caption { padding: 4px 5px 4px 5px; }
tr.even td  { background: #e5ecf9; }
tfoot       { font-style: italic; }
caption     { background: #eee; }



/* Misc classes
-------------------------------------------------------------- */

.small      { font-size: .8em; margin-bottom: 1.875em; line-height: 1.875em; }
.large      { font-size: 1.2em; line-height: 2.5em; margin-bottom: 1.25em; }
.hide       { display: none; }

.quiet      { color: #666; }
.loud       { color: #000; }
.highlight  { background:#ff0; }
.added      { background:#060; color: #fff; }
.removed    { background:#900; color: #fff; }

.first      { margin-left:0; padding-left:0; }
.last       { margin-right:0; padding-right:0; }
.top        { margin-top:0; padding-top:0; }
.bottom     { margin-bottom:0; padding-bottom:0; }

/* -------------------------------------------------------------- 
   
   FORMS
   
-------------------------------------------------------------- */

label       { font-weight: bold; }
fieldset    { padding:1.4em; margin: 0 0 1.5em 0; border: 1px solid #ccc; }
legend      { font-weight: bold; font-size:1.2em; }


/* Form fields
-------------------------------------------------------------- */

input.text, input.title,
textarea, select {
  margin:0.5em 0;
  border:1px solid #bbb;
}

input.text:focus, input.title:focus,
textarea:focus, select:focus {
  border:1px solid #666;
}

input.text, 
input.title   { width: 300px; padding:5px; }
input.title   { font-size:1.5em; }
textarea      { width: 390px; height: 250px; padding:5px; }


/* Success, notice and error boxes
-------------------------------------------------------------- */

.error,
.notice, 
.success    { padding: .8em; margin-bottom: 1em; border: 2px solid #ddd; }

.error      { background: #FBE3E4; color: #8a1f11; border-color: #FBC2C4; }
.notice     { background: #FFF6BF; color: #514721; border-color: #FFD324; }
.success    { background: #E6EFC2; color: #264409; border-color: #C6D880; }
.error a    { color: #8a1f11; }
.notice a   { color: #514721; }
.success a  { color: #264409; }







/* Calendar
-------------------------------------------------------------- */

#event-calendar {
	height:210px;
}

td.calendar-today {
	text-align: center;
}

td.calendar-cell {
	text-align:center;
}

td.calendar-cell a {
	text-decoration: none;
	color: #aa1a3b;
	font-style: normal;
}

th.calendar-month-header {
	text-align: center;
	font-weight: normal;
	color: #000;
	text-transform: uppercase;
	font-weight: bold;
}

th div.calendar-month-links {
	text-align:center;
}

th div.calendar-month-links a {
	text-decoration: none;
	color: #000;
}

td.calendar-blank {
	text-align:center;
}


#calendar {
	height:230px;
}

td.calendar-today,
td.calendar-today a {
	background-color: #aa1a3b;
	color: #FFF;
}

tr.calendar-header a {
	color: #000;
}


td.calendar-day-heading {
	color: #000;
	text-align:center;
}





/* Posts
-------------------------------------------------------------- */

div.post p.img {
	border-top: 3px solid #aa1a3b;
}


div.separator {
	background-image:url(/images/structure/separator.jpg);
	background-position:center center;
	background-repeat:no-repeat;
	height:28px;
	margin-bottom:2em;
	margin-top:3em;
	width:510px;
}




/* Homepage features
-------------------------------------------------------------- */

#featured-event {
	height:210px;
}

#featured-event p {
	padding:0 5px 20px;
}
#featured-event h4 {
	margin-top: 10px;
	text-align: center;
}

.feature h4,
.feature p.title {
	padding: 0px 9px;
}

.feature {
	padding:7px 0;
	margin-bottom: 8px;
}

.feature img {
	margin-top:-7px;
	border-top: 3px solid #aa1a3b;
}

.feature a {
	color: #000;
}

.feature h4 a {
	color: #aa1a3b;
}

#featured-event,
.feature {
	border-bottom:1px solid #000;
}

#facebook,
#twitter,
#slideshow {
	border-bottom:1px solid #000;
	margin-bottom: 1em;
}

#slideshow .slides {
	height: 126px;
}

