/****** MASTER RESET *******/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}
body {
	line-height: 1.33;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}

/* remember to define focus styles! */
:focus {
	outline: 0;
}

/* remember to highlight inserts somehow! */
ins {
	text-decoration: none;
}
del {
	text-decoration: line-through;
}

/* tables still need 'cellspacing="0"' in the markup */
table {
	border-collapse: collapse;
	border-spacing: 0;
}


/******* TAG STYLES ********/
body {
	font: 15px/1.4em "Century Gothic", Verdana, Helvetica, sans-serif;
	background: black  url(../images/bg_strip_02.jpg) repeat-x;
}
p {
	color: #ccc;
	margin-bottom: 1em;
}
a { color: #ddd; text-decoration: none;}


/******* CLASS STYLES ********/
.first-p {margin-top: 12px;}


.clearfix:after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
	}
* html .clearfix             { zoom: 1; } /* IE6 */
*:first-child+html .clearfix { zoom: 1; } /* IE7 */


/******* LAYOUT STYLES ********/

#container {
	position: relative;
	width: 900px;
	margin: 0 auto;
	text-align: center;
}

#header {
	background: url(../images/header_bg_03.jpg) 200px 21px no-repeat;
	height: 167px;
	width: 900px;
	color: white;
}
#header h1 { text-indent: -9999px;}

#content {
	background: url(../images/content_bg_03-trans.png) 200px 0 no-repeat;
	min-height: 453px;
	height: auto !important;
	height: 453px;
	position: relative;
	width: 100%; /* Needed for IE 6 */
}

#footer {
	background: url(../images/footer-bg.gif) repeat-x;
	height: 30px;
	width: 100%;
	position: relative;
	overflow: hidden;
}

#footer-menu-wrap {
	float:left;
	position:relative;
	left:50%;
	text-align:left;
}

#footer ul {
	list-style:none; 
	position:relative;
	left:-50%;
}

#footer ul li {
	float: left;
	position: relative;
}

#footer a, #footer a:visited {
	font-size: 10px;
	background: black;
	padding: 5px 13px;
	float: left;
	text-align: center;
	white-space: nowrap;
}
#footer a:hover, #footer a:focus, #footer a:active {
	color: red;
}

/******* PAGE STYLES ********/
/******************* home ***/
span.home {
	display: block;
	background: url(../images/home-img_02-trans.png) no-repeat;
	width: 900px;
	position: relative;
	top: 55px;
	letter-spacing: 1px;
	font-variant: small-caps;
	font-size: 18px;
}
span.home p.one {
	padding-top: 250px;
}

/******************/

span.history {
	display: block;
	background: url(../images/history-img_02-trans.png) no-repeat;
	width: 900px;
	position: relative;
	top: 55px;
	font-size: 13px;
	line-height: 18px;
}
span.history p.one {
	padding-top: 235px;
}
span.history p {
	padding: 0 35px;
}

/******************/

span.reservations {
	display: block;
	width: 900px;
	position: relative;
	font-size: 13px;
	line-height: 18px;
}
span.reservations p.one {
	padding-top: 55px;
	font-size: 17px; line-height: 28px;
	margin-bottom: 12px;
}
span.reservations p {
	font-size: 11px;
	padding: 0;
	margin: 0;
}

a#open-table {
	padding: 4px 7px;
	background: red; color: white;
	border-radius: 8px;
} a#open-table:hover { background: #500; }

/******************/

span.pdining {
	display: block;
	background: url(../images/pdining-img_02-trans.png) 0 45px no-repeat;
	width: 900px;
	position: relative;
	top: 55px;
	font-size: 13px;
	line-height: 18px;
	color: #ccc;
}
span.pdining h5 { 
	font-size: 19px; 
	margin: 8px 0 6px 0; 
	letter-spacing: 1px; 
	font-variant: small-caps;
	color: #777;
}
span.pdining h5.one { margin-top: 18px;}
span.pdining p.one {
	padding-top: 0;
}
span.pdining p.two {
	padding: 240px 0 0 0;
}
span.pdining p {
	padding: 0 35px;
}
span.pdining strong.times { color: red;}
span.pdining a {
	font-size: 25px;
	text-decoration: none;
	line-height: 30px;
}
span.pdining a:hover {
	color: red;	
}

/******************/

span.menus {
	display: block;
	background: url(../images/menus-img_02-trans.png) 0 0 no-repeat;
	width: 900px;
	position: relative;
	top: 55px;
	font-size: 13px;
	line-height: 18px;
}
span.menus p.one {
	padding: 30px 245px 0 472px;
}
span.menus p.two {
	padding-top: 25px;
}
span.menus p {
	padding: 0 235px 0 462px;
}
span.menus a {
	font-family: Arial Narrow, Century Gothic, Arial;
	font-size: 20px;
	text-decoration: none;
	line-height: 30px;
}
span.menus a:hover {
	color: red;	
}

/******************/

span.reviews {
	display: block;
	width: 900px;
	position: relative;
	top: 55px;
	font-size: 13px;
}
span.reviews blockquote {
	color: #888;
	margin: 0 0 15px 0;
}
span.reviews img.left {
	margin: 0 4px 0 0;
}
span.reviews img.right {
	margin: 0 0 0 4px;
}
span.reviewsleft {
	float: left;
	padding: 0 10px 0 0;
	text-align: center;
	width: 440px;
}
span.reviewsright {
	float: right;
	padding: 0 0 0 10px;
	text-align: center;
	width: 440px;
}
.reviewer {
	margin: -15px 0 15px 0;
}

/******************/

#gallery-container {
	display: block;
	height: 482px;
	width: 900px;
	position: relative;
	top: 55px;
	font-size: 13px;
}


/******************/

span.contact {
	display: block;
	background: url(../images/contact-img_02-trans.png) 0 0 no-repeat;
	width: 900px;
	position: relative;
	top: 55px;
	font-size: 13px;
}

span.contact p.one {
	padding-top: 220px;
}
span.contact p.address {
	font-size: 16px;
}
span.contact p.map {
	font-size: 20px;
}
span.contact a {
	color: #888;
}
span.contact a:hover {
	color: red;
}

/******************/

span.subscribe {
	display: block;
	width: 900px;
	position: relative;
	top: 15px;
	font-size: 13px;
}

span.subscribe h3.one {
	padding: 10px 0;
	color: red;
	font-size: 18px;
	line-height: 16px;
	font-weight: normal;
}
span.subscribe p.feedback {
	padding: 0 50px 0 50px;
	font-size: 12px;
}
span.subscribe #feedback-form {
	width: 300px;
	line-height: 16px;
	text-align: left;
}
span.subscribe form {
	padding: 0 0 0 290px;
}
span.subscribe #feedback-form input {
	font-size: 16px;
	padding: 0;
	width: 300px;
}
span.subscribe #feedback-form label { 
	display: block;
}
.bubbleInfo {
    position: relative;
}

.popup {
    position: absolute;
    display: none; /* keeps the popup hidden if no JS available */
    width: 160px;
    height: 100px;
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
	background-color: white;
    z-index: 50;
}
.popup p {
	padding: 8px;
}
.popup span {
	width: 33px;
	height: 24px;
	position: absolute;
	top: 100px;
	left: 90px;
    background: url(../images/speech_point_03-trans.png) bottom right no-repeat;
}

.popup2 {
    position: absolute;
    display: none; /* keeps the popup hidden if no JS available */
    width: 545px;
    height: 198px;
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
	background-color: white;
    z-index: 50;
    font-size: 8px;
    border: 3px solid gray;
}
.popup2 p {
	display: block;
	padding: 5px;
}
.popup2 span {
	width: 33px;
	height: 24px;
	position: absolute;
	top: 120px;
	left: 110px;
    background: url(../images/speech_point_03-trans.png) bottom right no-repeat;
}



/******************/

span.cookery {
	display: block;
	background: url(../images/cookery-img_02-trans.png) 0 0 no-repeat;
	width: 900px;
	position: relative;
	top: 55px;
	font-size: 13px;
	color: #ccc;
	padding-bottom: 40px;
}
span.cookery p { padding: 0 30px; line-height: 17px; margin-bottom: 18px;}
span.cookery p.one {
	padding: 300px 30px 0 30px;
}
span.cookery h5 { font-size: 16px; line-height: 22px; color: red; font-weight: normal}
span.cookery h2 { font-size: 19px; line-height: 22px; color: red;}
span.cookery a, span.cookery a:visited { color: red;}
span.cookery a:hover, span.cookery a:focus { color: #fff;}

/******************/

span.development {
	display: block;
	width: 900px;
	position: relative;
	top: 55px;
	font-size: 13px;
}

span.development p.one {
	padding-top: 40px;
	font-size: 20px;
}
span.development strong {
	font-weight: bold;
	font-size: 16px;
	color: red;
	line-height: 40px;
}

/********/

span.success {
	display: block;
	height: 102px;
	width: 900px;
	position: relative;
	font-size: 13px;
}
span.success h2 {
	color: #ccc;
	font-size: 23px;
	padding-top: 65px;
	line-height: 32px;
}

/******* OTHER STYLES ********/


/******* NAV STYLES ********/
ul#topnav-one {
	display: block
	float: left;
	position: absolute;
	text-align: left;
	left: 0;
	top: 10px;
}

ul#topnav-two {
	display: block;
	float: right;
	position: absolute;
	text-align: right;
	right: 0;
	top: 10px;
}

/**/

#home, #home span{
	display:block;
	width:137px;
	height:30px;
	position:relative;
	overflow: hidden;
}

#home span{
	width:274px;
	background: url(../images/topnav/home_sprite.jpg) 0 0 no-repeat;
	text-indent:-9000px;
}

#home:hover {
	background-position: 0 0;
}

#home:hover span, #home span.active {
	left:-137px;
}

#home:active span, #home:focus span{
	left: 0px;
}

/**/

#history, #history span{
	display:block;
	width:137px;
	height:30px;
	position:relative;
	overflow: hidden;
}

#history span{
	width:274px;
	background: url(../images/topnav/history_sprite.jpg) 0 0 no-repeat;
	text-indent:-9000px;
}

#history:hover {
	background-position: 0 0;
}

#history:hover span, #history span.active {
	left:-137px;
}

#history:active span, #history:focus span{
	left: 0px;
}

/**/

#reservations, #reservations span{
	display:block;
	width:137px;
	height:30px;
	position:relative;
	overflow: hidden;
}

#reservations span{
	width:274px;
	background: url(../images/topnav/reservations_sprite.jpg) 0 0 no-repeat;
	text-indent:-9000px;
}

#reservations:hover {
	background-position: 0 0;
}

#reservations:hover span, #reservations span.active{
	left:-137px;
}

#reservations:active span, #reservations:focus span{
	left: 0px;
}

body#reservations-lite {
	background: none;
}
body#reservations-lite input#reservation_time {
	width: 120px;
}
body#reservations-lite input#inputDate.inputDate {
	width: 120px;
}

/**/

#pdining, #pdining span{
	display:block;
	width:137px;
	height:30px;
	position:relative;
	overflow: hidden;
}

#pdining span{
	width:274px;
	background: url(../images/topnav/pdining_sprite.jpg) 0 0 no-repeat;
	text-indent:-9000px;
}

#pdining:hover {
	background-position: 0 0;
}

#pdining:hover span, #pdining span.active{
	left:-137px;
}

#pdining:active span, #pdining:focus span{
	left: 0px;
}

/**/

#menus, #menus span{
	display:block;
	width:137px;
	height:30px;
	position:relative;
	overflow: hidden;
}

#menus span{
	width:274px;
	background: url(../images/topnav/menus_sprite.jpg) 0 0 no-repeat;
	text-indent:-9000px;
}

#menus:hover {
	background-position: 0 0;
}

#menus:hover span, #menus span.active {
	left:-137px;
}

#menus:active span, #menus:focus span{
	left: 0px;
}

/**/

#reviews, #reviews span{
	display:block;
	width:137px;
	height:30px;
	position:relative;
	overflow: hidden;
}

#reviews span{
	width:274px;
	background: url(../images/topnav/reviews_sprite.jpg) 0 0 no-repeat;
	text-indent:9000px;
	right: 137px;
}

#reviews:hover {
	background-position: 0 0;
}

#reviews:hover span, #reviews span.active {
	right: 0px;
}

#reviews:active span, #reviews:focus span{
	right: 137px;
}

/**/

#gallery, #gallery span{
	display:block;
	width:137px;
	height:30px;
	position:relative;
	overflow: hidden;
}

#gallery span{
	width:274px;
	background: url(../images/topnav/gallery_sprite.jpg) 0 0 no-repeat;
	text-indent:9000px;
	right: 137px;
}

#gallery:hover {
	background-position: 0 0;
}

#gallery:hover span, #gallery span.active {
	right:0;
}

#gallery:active span, #gallery:focus span{
	right: 137px;
}

/**/

#contact, #contact span{
	display:block;
	width:137px;
	height:30px;
	position:relative;
	overflow: hidden;
}

#contact span{
	width:274px;
	background: url(../images/topnav/contact_sprite.jpg) 0 0 no-repeat;
	text-indent:9000px;
	right: 137px;
}

#contact:hover {
	background-position: 0 0;
}

#contact:hover span, #contact span.active {
	left:0;
}

#contact:active span, #contact:focus span{
	right: 137px;
}

/**/

#cookery, #cookery span{
	display:block;
	width:137px;
	height:30px;
	position:relative;
	overflow: hidden;
}

#cookery span{
	width:274px;
	background: url(../images/topnav/cookery_class_sprite.jpg) 0 0 no-repeat;
	text-indent: 19999px;
	right: 137px;
	color: #000;
}

#cookery:hover {
	background-position: 0 0;
}

#cookery:hover span, #cookery span.active {
	left:0;
}

#cookery:active span, #cookery:focus span{
	right: 137px;
}

/**/

#subscribe, #subscribe span{
	display:block;
	width:137px;
	height:30px;
	position:relative;
	overflow: hidden;
}

#subscribe span{
	width:274px;
	background: url(../images/topnav/subscribe_sprite.jpg) 0 0 no-repeat;
	text-indent:9000px;
	right: 137px;
}

#subscribe:hover {
	background-position: 0 0;
}

#subscribe:hover span, #subscribe span.active {
	left:0;
}

#subscribe:active span, #subscribe:focus span{
	right: 137px;
}


/*************************
FORM STYLES
*************************/

#formcontainer {
	width: 100%;
	position: relative;
	overflow: hidden;
}

#form-wrap {
	float:left;
	position:relative;
	left:50%;
	text-align:left;
}

#formcontainer form { 
	position:relative;
	left:-50%;
}


/****** intro styles above to centre form *********/

form {
  margin: 30px 0 0 0;
  padding: 0;
  font-size: 100%;
  min-width: 560px;
  max-width: 720px;
  width: 590px;
  color: #888;
}

form fieldset {
  clear: both;
  font-size: 100%;
  border-color: #555;
  border-width: 1px 0 0 0;
  border-style: solid none none none;
  padding: 10px;
  margin: 0 0 0 0;
}

form fieldset legend {
  font-size: 150%;
  font-weight: normal;
  color: #000000;
  margin: 0 0 0 0;
  padding: 0 5px;
  text-align: center;
}

label {
  font-size: 100%;
}

label u {
  font-style: normal;
  text-decoration: underline;
}

input, select, textarea {
  font-family: Tahoma, Arial, sans-serif;
  font-size: 100%;
  color: #000000;
}

textarea {
  overflow: auto;
}

form div {
  clear: left;
  display: block;
  width: 354px;
  zoom: 1;
  margin: 5px 0 0 0;
  padding: 1px 3px;
}

form fieldset div.notes {
  float: right;
  width: 158px;
  height: auto;
  margin: 0 0 10px 10px;
  padding: 5px;
  border: 1px solid #666666;
  background-color: #ffffe1;
  color: #666666;
  font-size: 88%;
}

form fieldset div.notes h4 {
  background-image: url(/images/icon_info.gif);
  background-repeat: no-repeat;
  background-position: top left;
  padding: 3px 0 3px 0;
  border-width: 0 0 1px 0;
  border-style: solid;
  border-color: #555;
  color: #666666;
  font-size: 110%;
}

form fieldset div.notes p {
  margin: 0em 0em 1.2em 0em;
  color: #666666;
}

form fieldset div.notes p.last {
  margin: 0em;
}

form div fieldset {
  clear: none;
  border-width: 1px;
  border-style: solid;
  border-color: #555;
  margin: 0 0 0 144px;
  padding: 0 5px 5px 5px;
  width: 197px;
}

form div fieldset legend {
  font-size: 100%;
  padding: 0 3px 0 3px;
}

form div.required fieldset legend {
  font-weight: bold;
}

form div label {
  display: block;
  float: left;
  width: 130px;
  padding: 3px 5px;
  margin: 0 0 5px 0;
  text-align: right;
}

form div.optional label, label.optional {
  font-weight: normal;
}

form div.required label, label.required {
  font-weight: bold;
}

form div label.labelCheckbox, form div label.labelRadio {
  float: none;
  display: block;
  width: 200px;
  zoom: 1;
  padding: 0;
  margin: 0 0 5px 142px;
  text-align: left;
}

form div fieldset label.labelCheckbox, form div fieldset label.labelRadio {
  margin: 0 0 5px 0;
  width: 170px;
}

form div img {
  border: 1px solid #000000;
}


form div select, form div textarea {
  width: 200px;
  padding: 1px 3px;
  margin: 0 0 0 0;
}

form div input.inputText, form div input.inputPassword {
  width: 200px;
  padding: 1px 3px;
  margin: 0 0 0 0;
}

form div input.inputFile {
  width: 211px;
}

form div select.selectOne, form div select.selectMultiple {
  width: 211px;
  padding: 1px 3px;
}

form div input.inputCheckbox, form div input.inputRadio, input.inputCheckbox, input.inputRadio {
  display: inline;
  height: auto;
  width: auto;
  background-color: transparent;
  border-width: 0;
  padding: 0;
  margin: 0 0 0 140px;
}

form div.submit {
  width: 214px;
  padding: 0 0 0 146px;
}

form div.submit div {
  display: inline;
  float: left;
  text-align: left;
  width: auto;
  padding: 0;
  margin: 0;
}

form div input.inputSubmit, form div input.inputButton, input.inputSubmit, input.inputButton {
  background-color: #cccccc;
  color: #000000;
  width: auto;
  padding: 0 6px;
  margin: 0;
}

form div.submit div input.inputSubmit, form div.submit div input.inputButton {
  float: right;
  margin: 0 0 0 5px;
}

form div small {
  display: block;
  margin: 0 0 5px 142px;
  padding: 1px 3px;
  font-size: 88%;
  zoom: 1;
}

label img {
  behavior: url(/behaviors/label_img.htc);
}

form fieldset legend {
  line-height: 150%;
  color: #777;
}

form input, form select, form textarea {
  background-color: #ffffff;
}

form textarea.expanding {
  overflow: auto;
  overflow-x: auto;
  overflow-y: visible;
}

div.optional label:before {
  content: '';
}

div.required label:before {
  content: '';
}
  
form div label.labelCheckbox, form div label.labelRadio, label.labelCheckbox, label.labelRadio {
  display: block;
  width: 190px;
  zoom: 1;
  padding: 4px 0 0 8px;
  text-indent: -18px;
  line-height: 120%;
}

form div label.labelCheckbox input.inputCheckbox, form div label.labelRadio input.inputRadio, label.labelCheckbox input.inputCheckbox, label.labelRadio input.inputRadio {
  margin: 0;
}

form div fieldset input.inputText, form div fieldset input.inputPassword, form div fieldset input.inputFile, form div fieldset textarea.inputTextarea {
  width: 160px;
  margin: 0 0 0 18px;
  margin: expression(setCntr(), '0px 0 0 -124px');
}

form div label.compact {
  display: inline;
  width: auto;
  padding: 4px 10px 0 0;
  text-indent: 0;
  margin: 0 0 0 0;
}

form div.wide label {
  float: none;
  display: block;
}

form div label.wide {
  width: 348px;
}

form div.wide input.inputText, form div.wide input.inputPassword, form div.wide input.inputFile, form div.wide select, form div.wide textarea {
  width: 344px;
  margin: 0;
}

form div.notes p, form div small {
  line-height: 125%;
}

form div.wide small {
  margin: 0 0 5px 0;
}

form span.date {
	width: 250px;
	overflow: visible;
}
form span.date select {
	width: 50px;
}
form h4.second {
	margin: 5px 0 0 0;
}
form div.details {
	text-align: left;
}