/* STANDARD STYLES TO FIX BROWSER FORMATING */
html {
	height: 100%;
}
body {
	position: relative;
	background-color: #000;
	padding: 0;
	margin: 0;
	position:relative; /* needed for footer positioning*/
	height:auto !important; /* real browsers */
	height:100%; /* IE6 treated as min-height */
	min-height:100%; /* real browsers */
}
table {
	border: 0;
	border-collapse: collapse;
}
table th, table td {
	text-align: left;
}
img {
	border: 0;
}
form {
	display: inline;
}
select {
	margin: 0;
}
label {
	padding-right: 4px;
}
ul {
	padding: 0;
	margin-bottom: 50px;
	list-style-type: square;
}

/* Hide hidden classed elements */
.hidden {
	display: none;
}

/* TODO: add the desktop overrides */

/* Large desktop */
@media (min-width: 1220px) {
	#content {
		width: 1200px;
	}
}
/* Standard desktop */
@media (min-width: 800px) and (max-width: 1219px) {
	#content {
		width: 95%;
	}
}
/* Mobile displays*/
@media (max-width: 799px) {
	#content {
		width: auto;
	}
}
/* SITE WIDE MARGINS AND LAYOUT */
#content {
	position: relative; /* for footer... */
	height: 100%;
	margin: 0;
	padding: 0;
	margin-left: auto;
	margin-right: auto;
	overflow: auto;
	z-index: 5;
}
#navigation {
	width: 22%;
	margin-left: 3%;
	margin-right: 2%;
}
#navigation, #moduleContent {
	float: left;
	overflow: auto;
}
#header {
	margin: 0;
	padding: 3%;
}
#header a.logo {
	position: relative;
	display: inline-block;
	width: 76px;
	height: 76px;
	overflow: hidden;
}
#header a.logo:hover img {
	position: relative;
	bottom: 76px;
}
#moduleContent {
	width: 70%;
	padding-right: 3%;
	margin-bottom: 24px;
}
#moduleContent .column {
	float: left;
}
#moduleContent .column + .column {
	margin-left: 2.85%; /* (10 / 7 * 2) */
}
#moduleContent .column.small{
	width: 31.42%; /* (10 / 7 * 22) */
}
#moduleContent .column.medium{
	width: 48.57%; /* (10 / 7 * 34) */
}
#moduleContent .column.large{
	width: 65.71%; /* (10 / 7 * 46) */
}
#moduleContent .column.full{
	margin: 0;
	width: 100%;
}
hr + .column, hr + .column + .column {
	margin-top: 20px;
}
.column > p:first-child, .column .overviewSection p:first-child {
	margin-top: 0;
}
.column .overviewSection {
	margin-top: 34px;
}
.column .overviewSection:first-child {
	margin-top: 0;
}
#navigation {
	position: relative;
}
#navigation, #moduleContent .column {
	padding-top: 20px;
	border-top: solid 1px #54534A;
	overflow: hidden;
}
.stub {
	position: relative;
	margin-top: 50px;
}
#footer {
	clear: both;
	height: 30px;
	margin: 0 3%;
	padding: 30px 0;
}
#footer p {
	margin: 0;
	line-height: 26px;
}
#footer span {
	font-size: 11px;
}
#footer span.info {
	float: right;
	width: 30%;
}
#footer span.info a {
	float: right;
}
#footer span.info span.gaal {
	display: block;
	float: right;
	height: 20px;
	width: 40px;
	background: url('../images/gaal-logo.png') no-repeat top left;
}
#footer span.info span.gaal:hover {
	background: url('../images/gaal-logo.png') no-repeat bottom left;
}

/* background */
.background {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 1;
}

/* Button styles */
a.buttonLink {
	display: inline-block;
	height: 24px;
	line-height: 24px;
	padding-left: 30px;
	font-size: 14px;
	background-position: top left;
	background-repeat: no-repeat;
}
a.buttonLink:hover {
	background-position: bottom left;
	color: #B7B6B3;
}
a.buttonLink.email {
	background-image: url('../images/email.png');
}
a.buttonLink.link {
	background-image: url('../images/link-website.png');
}
a.buttonLink.video {
	background-image: url('../images/link-video.png');
}
a.buttonLink.news {
	background-image: url('../images/link-news.png');
}
/* twitter button */
.twitterHome { /* home twitter button */
	display: inline-block;
	width: 40px;
	height: 40px;
	margin: 20px 0 0 0;
	background: url('../images/twitter-large.png');
	background-size: 100% 200%;
	background-repeat: no-repeat;
	background-position: top left;
}
.stub .twitterHome {
	margin-bottom: 12px;
}
.linkedInHome { /* home linkedIn button */
	display: inline-block;
	width: 40px;
	height: 40px;
	margin: 20px 0 0 0;
	background: url('../images/linkedin-large.png');
	background-size: 100% 200%;
	background-repeat: no-repeat;
	background-position: top left;
}
.share {
	display: inline-block;
	width: 24px;
	height: 24px;
	margin: 10px 0;
	background-size: 100% 200%;
	background-repeat: no-repeat !important;
	background-position: top left;
}
.share:hover {
	background-position: bottom left !important;
}
.share.facebook {
	background: url('../images/facebook-small.png');
}
.share.linkedIn {
	background: url('../images/linkedin-small.png');
}
.share.twitter {
	background: url('../images/twitter-small.png');
}
.twitterHome:hover,
.linkedInHome:hover,
.twitter:hover {
	background-position: bottom left;
}

/* global font properties */
h1, h2, h3, h4, h5, p, a, li, dt, dd, th, td, input, select, option, optgroup, textarea, span, label, legend, div, .logout {
	font-family: "adobe-garamond-pro-1","adobe-garamond-pro-2","Times New Roman","Times","Serif";
	font-style: normal;
	font-weight: 400;
	font-size: 16px;
	line-height: 18px;
	color: #878680;
}
h1, h2, h3, h4, h5, .logout, .cancel {
	margin: 2px 0;
	font-size: 18px;
	line-height: 18px;
}
a {
	font-size: inherit;
}
h1 {

}
h2,
h2 a {
	color: #FFF;
}
h3 {

}
#home .column.medium h3 {
	font-size: 24px;
	line-height: 22px;
	font-style: italic;
	padding-right: 150px;
	opacity: .5;
}
.stub h3,
.stub p {
	font-size: 14px;
	line-height: 14px;
	margin: 0;
}
.stub h3 > a {
	font-size: 14px;
	line-height: 14px;
}
#restaurantOverview .column.large h3 {
	color: #FFF;
	font-size: 24px;
	line-height: 20px;
}

h4 {
	font-size: 16px;
	line-height: 18px;
	font-style: italic;
	margin-bottom: 30px;
}
#newsSubscribe h4 {
	margin-bottom: 14px;
}
h5 {

}
/* heading highlights/hovers */
h1.active,
h2.active,
h3.active,
h1 a:hover,
h2 a:hover,
h3 a:hover ,
h1.active a,
h2.active a,
h3.active a,
.logout:hover {
	color: #FFF;
}
b {
	font-weight: 700;
}
input, select,
select option {
	color: #000;
}
input.checkbox,
input.radio {
	vertical-align: middle;
}
/* remove underlines on links */
a {
	text-decoration: none;
}
/* telephone link hover */
a.telephone:hover {
	color: #FFF;
}

/* Content area font colour overrides */
.contentContainer.blue h4,
.contentContainer.blue p {
	color: #FFF;
}

/* form element sizing */
input[type="text"], input[type="password"] {
	width: 70%;
	padding: 4px 4px;

}
.button {
	display: inline-block;
	margin: 24px 0;
	background-color: #878680;
	color: #FFF;
	padding: 8px 40px;
	font-size: 14px;
	border: none;
	border-radius: 6px;
	cursor: pointer;
}
.button:hover {
	background-color: #B7B6B3;
}
.logout, .cancel {
	padding: 0;
	padding-bottom: 2px;
	background: none;
	border: none;
	cursor: pointer;
}

/* column content blocks */
.block  {	
	padding-bottom: 20px;
	border-bottom: solid 1px #54534A;
}
.block + .block {
	margin-top: 20px;
}
.block img {
	width: 100%;
	margin-bottom: 20px;
}
.block.subscribe {
	margin-top: 0;
}
.block > h2,
.column > h2,
.column > h2 a,
.column > h3,
.column > h3 a,
#clearStub > h1 a {
	font-size: 22px;
	line-height: 20px;
}
.column.media > h3 a {
	font-size: 18px;
	line-height: 16px;
}

/* overrides to the home and news headings */
.module h2 {
	line-height: 24px;
}

/* Block module styles */
#home .block h4.date,
#news .block h4.date,
#newsArchived .block h4.date {	
	font-size: 14px;
	font-style: normal;
}
#news p.link,
#newsArchived p.link,
body.people p.link {
	float: left;
	width: 50%;
	margin: 36px 0;
	margin-bottom: 0;
}
#contactEmployment p.link {
	margin-bottom: 0px;
}
#news .shareLinks,
#newsArchived .shareLinks,
body.people .shareLinks {
	display: block;
	float: right;
	width: 50%;
	height: 24px;
	line-height: 24px;
	margin: 36px 0;
	margin-bottom: 0;
	text-align: right;
}
#news .shareLinks span,
#newsArchived .shareLinks span,
body.people .shareLinks span {
	position: relative;
	top: -8px;
	width: auto;
	margin: 0;
	margin-right: 5px;
	padding: 0;
	height: 25px;
	line-height: 25px;
	font-size: 14px;
}
#news .shareLinks a.share,
#newsArchived .shareLinks a.share,
body.people .shareLinks a.share {
	margin: 0;
}
#console {
	margin-top: 50px;
	padding-top: 30px;
	border-top: solid 1px #54534A;
}

/* strips */
.strip {
	display: block;
	margin-top: 30px;
	background-color: #878680;
	padding: 16px;
	min-height: 46px;
	line-height: 46px;
}
.strip + .strip {
	margin-top: 6px;
}
.strip:first-child {
	margin-top: 0;
}
.strip h2 > span {
	float: right;
	font-style: italic;
}
#gallery .strip h2 {
	height: 46px;
	line-height: 46px;
}
#gallery .strip h2 > span {
	float: right;
	line-height: 46px;
	font-style: italic;
}
#awards .strip img {
	height: 46px;
}
.strip p {
	font-style: italic;
	margin: 0;
}
/* strip hover states */
a.strip:hover {
	background-color: #B7B6B3;
}
/* strip hover transition time */
.strip, .strip p, 
.strip h2 > span,
.strip .circle {
	-webkit-transition: all 0.1s;
	-moz-transition: all 0.1s;
	transition: all 0.1s;
}
.strip .icon {
	float: left;
	margin-right: 20px;
}
.strip .circle {
	display: inline-block;

	background-color: #878680;
	margin-top: 10px;
	margin-left: 10px;
	height: 20px;
	width: 20px;
	border-radius: 10px;
}
.strip:hover .circle {
	background-color: #54534A;
}
.strip.award h2,
.strip.award p {
	text-align: right;
}
/* HOME styles */
#home div.news {
	margin-top: 30px;
	border-bottom: 1px solid #54534A;
}
#home div.news:first-child {
	margin-top: 0;
}
#home div.news.block p {
	margin-bottom: 0; 
}

/* Reservations details */
body.reservations .reservationsDetails {
	height: 0;
	opacity: 0;
	visibility: hidden;
	display: none;
	-webkit-transition: all 1s;
	-moz-transition: all 1s;
	transition: all 1s;
}

body.reservations .reservationsDetails iframe {
	width: 100%;
	height: 700px;
	min-height: 100%;
	max-height: 100%;
	background-color: #000;
	overflow: hidden;
}
body.reservations .reservationsDetails.active {
	display: block;
	height: auto;
	opacity: 1;
	visibility: visible;
}
body.reservations .column h3 + h4 {
	margin-top: 30px;
}
body.reservations .reservationsDetails p {
	margin-top: 0;
}

/* People details */
body.people .block {
	padding: 0;
	padding-bottom: 20px;
	margin-top: 0;
}
body.people .peopleDetails {
	height: 0;
	opacity: 0;
	visibility: hidden;
	display: none;
	-webkit-transition: all 1s;
	-moz-transition: all 1s;
	transition: all 1s;
}
body.people .peopleDetails.active {
	display: block;
	height: auto;
	opacity: 1;
	visibility: visible;
}

/* ALBUMS */
.asset {
	display: inline-block;
	position: relative;
	float: left;
	width: 48.5%; /* 3% gap middle */
}
.asset.active {
	display: inline-block;
}

body.media .asset.right {
	float: left;
}

/* Hide and show the assets */
body.media .asset {
	margin-left: 1.2%;
	margin-right: 1.2%;
	width: 47.5%; /* 3% gap middle */
	display: none;
}
body.media .asset.active {
	display: inline-block;
}

.asset.small {
	width: 22.75%; /* 4 per line with 9% total gaps */
	margin-left: 3%;
	margin-bottom: 3%;
}
.asset.small.first {
	clear: left;
	margin-left: 0;
}
.asset.right {
	float: right;
}
.asset h2 {
	margin-top: 10px;
}
.asset h3  {
	margin-top: 12%; /* is only approximate to match the 3% margin bottom on the asset (asset width: 22.75%, 12 to 13% of 22.75 is approximately equal to 3% of 100%)*/
}
.canvas {
	position: relative;
	min-height: 160px;
	background-color: #000 !important;
	border: 1px solid #54534A;
}
.canvas:hover {
	border-color: #000;
}
.asset.small > .canvas {

	min-height: 90px;
}
.canvas > h2, .canvas > .filter {
	position: absolute;	
	width: 100%;
	height: 100%;
	margin: 0;
	opacity: 0;
	-webkit-transition: all 0.2s;
	-moz-transition: all 0.2s;
	-o-transition: all 0.2s;
	transition: all 0.2s;
}
.canvas > h2 {
	position: relative;
	top: 50%;
	height: auto;
	line-height: 100%;
}
.canvas > .filter {
	background-color: #54534A;
	z-index: 1;
}
.canvas > h2 {
	text-align: center;
	text-transform: uppercase;
	z-index: 2;
} 
.canvas:hover > h2 {
	opacity: 1;
	
}
.canvas:hover > .filter {
	opacity: 0.7;
}
.albumImage > img {
	display: none;
}

/* video styles */
.block.video {
	padding-bottom: 20px;
	height: 70px;
}
.block.video h4 {
	margin-bottom: 30px;
}
.block.video h2{
	font-size: 18px;
	line-height: 18px;
}
.preview {
	position: relative;
	float: left;
	display: inline-block;
	height: 70px;
	width: 110px;
	margin-right: 20px;
	background-color: #878680;
}
.preview .colour, .preview .monochrome {
	position: absolute;
	width: 100%;
	height: 100%;
}
.preview:hover .colour, .preview .monochrome {
	display: inline-block;
}
.preview .colour, .preview:hover .monochrome {
	display: none;
}
.preview .playButton {
	position: absolute;
	width: 30px;
	height: 30px;
	left: 40px;
	top: 20px;
	overflow: hidden;
}
.preview:hover .playButton > img {
	margin-top: -30px;
}

/* profile */
#userProfile h4 {
	margin-bottom: 0px;
}
#userProfile h2 {
	margin-bottom: 30px;
}
#userProfile h2 + .button {
	margin-top: 40px;
}

/* general FORM guff */
.banner {
	padding: 24px;
	color: #FFF;
	background-color: #54534A;
	text-align: center;
	font-size: 20px;
	text-transform: uppercase;
	margin: 0;
}
.banner + p {
	margin: 30px 20px;
}
p.errors, p.error {
	margin-left: 0;
	margin: 20px 0;
	margin-top: 0;
	font-size: 18px;
	font-style: italic;
	color: #AF4A36;
}
.cancel {
	margin-right: 10px;
	font-size: 13px;
	color: #808285;
}

/* tables */
table {
	width: 100%;
}
td, th {
	line-height: 40px; /* matches overall height of inputs */
	padding: 2px 0px;
	padding-right: 24px;
	background-color: #efefef;
}
/* top row */
tbody > tr:first-child > td,
tbody > tr:first-child > th {
	padding-top: 20px;
}

/* first left cell */
tr > td:first-child, tr > th:first-child {
	white-space: nowrap;
	width: 20%;
	min-width: 120px;
	padding-left: 24px;
}
tr.tall > th, tr.tall > td {
	vertical-align: top;
}
tr.underline > th, tr.underline > td {
	padding-bottom: 20px;
	border-bottom: solid 1px #FFF;
}
/* Required for following underlines */
tr.underline + tr.underline > th, tr.underline + tr.underline > td {
	padding-top: 20px;
}
tr th input[type="text"], 
tr th input[type="password"], 
tr td input[type="text"],
tr td input[type="password"],
tr td textarea,
tr td textarea {
	display: block;
	padding: 10px 6px;
	width: 97%;
	border: none;
	color: #54534A;
}
tr th input[type="text"], 
tr th input[type="password"], 
tr td input[type="text"],
tr td input[type="password"] {
	height: 21px;
}
tr th input.button, 
tr td input.button {
	margin: 14px 4px;
}

tr td .upload {
	position: relative;
}
tr td .upload input.file {
	display: inline-block;
	position: absolute;
	top: -41px;
	left: 0;
	opacity: 0;
	padding: 10px 6px;
	width: 200px;
	height: 19px;
	border: 0;
}
table tr th,
table tr td .hint {
	font-style: italic;
}


/* video iframes */
.video.player {
	overflow: hidden;
	background-color: #000;
}
.video.player > iframe {
	width: 100%;
	height: 100%;
}

/* SCROLL BAR STYLES */
::-webkit-scrollbar {
	width: 10px;
	z-index: 50;
}
/* track */
::-webkit-scrollbar-track {
	background-color: #FFF;
	-webkit-box-shadow: inset 0 0 6px #878680;
}
/* bar */
::-webkit-scrollbar-thumb {
    background: #878680;
	height: 70px;
	max-height: 70px;
}
::-webkit-scrollbar-thumb:hover {
	background: #878680;
}

#holding, .meta{
 display: none;
}
hr.fake { /* this is required to give the content containers a height */
	margin: 0;
	padding: 0;
	opacity: 0;
	border-color: transparent;
	clear: both;
}
