/******************************************************************************
 * Kellari main stylesheet.
 * Note: Internet Explorer hacks are in a separate file (all_ie.css)
 * Author: Neal Krouse (krousen@comcast.net)
 *
 * Table of Contents for navigation:
 * _general
 *
 * _wrapper
 *
 * _branding
 *
 * _navigation
 *
 * _content
 *
 * _left
 *
 * _middle
 *
 * _right
 *
 * _footer
 *
 ******************************************************************************/
 
 
/*-----------------------------------------------------------------------------
 *	SITE COLORS:
 *
 *----------------------------------------------------------------------------*/
 
 
/* _general
------------------------------------------------------------------------------*/

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,
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;
}

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

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

/* no list-markers by default, since lists are used more often for semantics */
ul,ol { list-style:none }

/* link underlines tend to make hypertext less readable, 
   because underlines obscure the shapes of the lower halves of words */
:link,:visited { text-decoration:none }

/* whoever thought blue linked image borders were a good idea? */
a img,:link img,:visited img { border:none }

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

.clear:after, .container:after
{
	content: "."; 
	display: block; 
	height: 0; 
	clear: both; 
	visibility: hidden;
}
.clear, .container { height: 1%; }
.clear, .container { display: block; }

html 
{ 
	/* Rule removes Page Shift by
	 * adding vertical scrollbars to every page */
	min-height: 100%; 
	margin-bottom: 1px; 
}

body
{
	font-family: verdana, sans-serif;
	line-height: 1.5;
	/* Unitless for proper inheritance */
	background-color: #FDF6EA;
	color: #737244;
	background-image: url(bodybkgn.gif);
	background-repeat: no-repeat;
	background-position: center top;
}

/* This is where you set your desired font size. The line-height 
   and vertical margins are automatically calculated from this. 
   
   You have to add an extra calculation here because of IE, so that 
   all users may resize text manually in their browsers.
   
   The top one is for IE: The percentage is of 16px (default IE text size)
   10px is 62.5%, 12px is 75%, 13px is 81.25%, and so forth).
   The second value is what all other browsers see (the wanted font size). */
   
body   { font-size: 12px; }  /* Compliant browsers */

h1,h2,h3,h4,h5,h6 { 
	font-family: verdana, sans-serif;
	font-weight: bold;
	clear: both; 
	line-height: 1.1;
 }

h1 { font-size: 1.5em; }
h2 { font-size: 1.5em; margin-bottom: 1em; }
h3 { font-size: 1.2em; margin-bottom: .2em; }
h4 { font-size: 1em; }
h5 { font-size: 1em; }
h6 { font-size: 1em; }

h3+h3 { margin-top: 1em; }

strong { font-weight: bold; }
em { font-style: italic; }
p { margin-bottom: 1em; }
.small { font-size: .8em; }
.large { font-size: 1.2em; }
.center { text-align: center; }
a, a:link, a:visited
{
	color: #b25538;
	text-decoration: underline;
}
a:hover 
{ 
	color: black;
	text-decoration: underline; 
}

/* _wrapper
------------------------------------------------------------------------------*/
#wrapper
{
	width: 998px;
	margin: 0 auto;
	background-color: white;
	padding-bottom: 1em;
}

#top
{
	position: absolute;
	top: 0;
	left: 0;
	width:1%;
	z-index: 100;
}

#skipnav
{
	position: relative;
	text-indent: -9000em;
	overflow: hidden;
}
 

/* _branding
------------------------------------------------------------------------------*/
#branding
{
	height: 170px;
	width: 998px;
	position: relative;
	background-image: url(brandingbkgn.gif);
	background-repeat: no-repeat;
	background-position: left -18px;
}

#branding h1
{
	position: absolute;
	top: -999em;
	left: -999em;
}


#date
{
	width: 193px;
	margin-left: 15px;
	text-align: center;
	float: left;
	display: inline;
	color: #c8665a;
}

#branding p
{
	width: 193px;
	margin-top: 22px;
	margin-left: 15px;
	text-align: center;
	color: #c8665a;
	float: left;
	display: inline;
	clear: left;
}

#sister_restaurants
{
	width: 100%;
	text-align: center;
	position: absolute;
	left: 0px;
	top: 148px;
	font-weight: bold;
}

#sister_restaurants a:link, #sister_restaurants a:visited
{
	color: #a04249;
	text-decoration: none;
}
#sister_restaurants a:hover
{
	color: #34282a;
	text-decoration: none;
}

#sister_restaurants a[href ^='http://']
{
	padding-right: 0;
	background-image: none;
}




/* _navigation
------------------------------------------------------------------------------*/
#menu
{
	background-image: url(menubkgn.gif);
	background-repeat: repeat-x;
	background-position: left top;
	padding-left: 223px;
}

#nav
{
	/* python note: width is the sum of all menu items' width. 
	 * if the width is calculated differently, change the figure. */
	width: 550px;
	height: 34px;
	position: relative;
	background-image: url(navigation.gif);
	background-repeat: no-repeat;
	background-position: left top;
	z-index: 100;
}

#nav li
{
	float: left;
	display: inline;
	background-image: url(navigation.gif);
	background-repeat: no-repeat;
	background-position: 0px 0px; 
	height: 34px;
}

#nav li a
{
	display: block;
	height:34px;
	text-indent: -9999em;
	overflow: hidden;
	outline: 0;
	text-decoration: none;
}

li#home 
{
	left: 0px;
	background-position: 0px 0px;
	width: 77px;
}

li#menus 
{
	left: 77px;
	background-position: -77px 0px;
	width: 80px;
}

li#restaurant 
{
	left: 157px;
	background-position: -157px 0px;
	width: 118px;
}

li#banquets 
{
	left: 275px;
	background-position: -275px 0px;
	width: 106px;
}

li#about 
{
	left: 381px;
	background-position: -381px 0px;
	width: 74px;
}

li#contact 
{
	left: 455px;
	background-position: -455px 0px;
	width: 95px;
}

/* over states */
li#home:hover, li#home.hover { background-position: 0px -34px; }
li#menus:hover, li#menus.hover { background-position: -77px -34px; }
li#restaurant:hover, li#restaurant.hover { background-position: -157px -34px; }
li#banquets:hover, li#banquets.hover { background-position: -275px -34px; }
li#about:hover, li#about.hover { background-position: -381px -34px; }
li#contact:hover, li#contact.hover { background-position: -455px -34px; }

/* pressed states */
li#home:active { background-position: 0px -68px; }
li#menus:active { background-position: -77px -68px; }
li#restaurant:active { background-position: -157px -68px; }
li#banquets:active { background-position: -275px -68px; }
li#about:active { background-position: -381px -68px; }
li#contact:active { background-position: -455px -68px; }

/* you-are-here states */
#home_page li#home { background-position: 0px -102px; }
#menus_page li#menus, .menus li#menus { background-position: -77px -102px; }
#restaurant_page li#restaurant, .restaurant li#restaurant { background-position: -157px -102px; }
#banquets_page li#banquets, .banquets li#banquets { background-position: -275px -102px; }
#about_page li#about { background-position: -381px -102px; }
#contact_page li#contact { background-position: -455px -102px; }



#nav li ul
{
	position: absolute;
	/* set width to suit layout */
	width: 13em; 
	left: -999em;
	background-color: #fece8b; 
	/*border: 1px solid #edbf7c;*/
	z-index: 110;
}

#nav li li
{
	float: none;
	display: block;
	background-image: none;
	margin: 0;
	padding: 0;
	/*height: 30px;*/
	height: auto;
	z-index: 110;
}

#nav li li a
{
	position: static;
	text-indent: 0;
	font-size: 1em;
	overflow: inherit;
	color: black;
	background-color: #fece8b; 
	padding: 0 .5em;
	margin: 0;
	text-decoration: none;
	line-height: 30px;
	outline: none;
	border-left: 1px solid #f2c17e;
	border-right: 1px solid #f2c17e;
	border-bottom: 1px solid #f2c17e;
	height: 30px;
}
#nav li li a:hover
{
	/* set this colors to suit */
	background-color: #ffe6c4; 
	color: #737244;
}
#nav li li.current a
{
	background-color: #c8665a;
	color: white;
}

/* you-are-here states for dropdown menus */
#nav li li a.current
{
	color: white; 
	background-color: #af676c;
}

#nav li:hover ul, #nav li.hover ul 
{ left: auto; }




/* _content
------------------------------------------------------------------------------*/
#content
{
	margin-top: 10px;
	background-image: url(../images/flutegirl.gif);
	background-repeat: no-repeat;
	background-position: left 40px;
	min-height: 500px;
}

#ui-datepicker-div
{
	font-size: .8em;
}

/* _left
------------------------------------------------------------------------------*/
#left
{
	width: 223px;
	float: left;
	display: inline;
}


.narrow_column
{
	width: 193px;
	margin: 1em auto 1.5em;
	
	margin: 0 auto 1.5em;
}

.quote { margin-bottom: 2em; }

.quote h4
{
	font-style: italic;
}

#subnav
{
	border-bottom: 1px solid #737244;
	margin: .5em 0 1em;
}

#subnav li
{
	border-top: 1px solid #737244;
}

#subnav li a
{
	display: block;
	text-decoration: none;
	line-height: 1.5;
	padding: .3em 0 .3em 1em;
}
#subnav li a.current
{
	color: black;
}

a#opentable
{
	padding-right: 0;
	background-image: none;
}

.seasonal-specials
{
	padding: 2px 0;
	border-top: 1px solid #34282a;
	border-bottom: 1px solid #34282a;
	text-align: left;
	font-size: .9em;
}


.menus .seasonal-specials h2
{
	text-align: left;
}
.seasonal-specials *
{
	margin: 0 0 .2em;
	text-align: left;
}


/**
 * Book Your Party Link
 */
#bookings
{
	-webkit-transform: scale(1);
	-moz-transform: scale(1);
	transform: scale(1);
	-webkit-transition: all 0.5s ease-in;
}

#bookings:link, #bookings:visited
{
	display: block;
	text-align: center;
	line-height: 1.2;
	background-color: #fecc89;
	padding: 1em 0;
	font-size: 1.1em;
	font-weight: bold;
	text-decoration: none;
	border: 1px solid #fecc89;
	/* CSS3 */
	-moz-border-radius: 4px; /* FF1+ */
	-webkit-border-radius: 4px; /* Saf3+, Chrome */
	border-radius: 4px; /* Opera 10.5, IE 9 */
	background-image: -moz-linear-gradient(top, #fecc89, #fff3e3); /* FF3.6 */
	background-image: -webkit-gradient(linear,left top,left bottom,color-stop(0, #fecc89),color-stop(1, #fff3e3)); /* Saf4+, Chrome */
	filter:  progid:DXImageTransform.Microsoft.gradient(startColorStr='#fecc89', EndColorStr='#fff3e3'); /* IE6,IE7 */
	-ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorStr='#fecc89', EndColorStr='#fff3e3')"; /* IE8 */
	-webkit-box-shadow: 2px 2px 4px rgba(0,0,0,0.5);
	-moz-box-shadow: 2px 2px 4px rgba(0,0,0,0.5);
	box-shadow: 2px 2px 4px rgba(0,0,0,0.5);
}

#bookings:hover
{
	background-color: #a04249;
	border: 1px solid #a04249;
	color: white;
	/* CSS3 */
	background-image: -moz-linear-gradient(top, #c3777c, #ac4e52); /* FF3.6 */
	background-image: -webkit-gradient(linear,left top,left bottom,color-stop(0, #c3777c),color-stop(1, #ac4e52)); /* Saf4+, Chrome */
	filter:  progid:DXImageTransform.Microsoft.gradient(startColorStr='#c3777c', EndColorStr='#ac4e52'); /* IE6,IE7 */
	-ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorStr='#c3777c', EndColorStr='#ac4e52')"; /* IE8 */
	-webkit-transform: scale(1.05);
	-moz-transform: scale(1.05);
	transform: scale(1.05);

}


/* _middle
------------------------------------------------------------------------------*/
#middle
{
	width: 552px;
	float: left;
	display: inline;
}

ul.bullet
{
	list-style-type: disc;
	list-style-position: outside;
	padding-left: 3em;
	margin-bottom: 1em;
}

ul.bullet li
{
	margin: .5em 0;
}


.menu .ui-widget-all div
{
	font-size: 1em ! important;
}

ul.ui-tabs-nav
{
	font-size: .8em;
}

.menus h2, .banquets #tabs h2
{
	text-align: center;
}

.menus #middle h3
{
	font-size: 1em;
}
.menus .price p
{
	position: relative;
	border-bottom: 1px solid #737244;
	padding-right: 30%;
	padding-bottom: 2px;
}

.menus .price p.normal
{
	position: static;
	padding-right: 0;
	padding-bottom: 0;
	border: none;
	margin-bottom: 1em;
}

.menus #middle div.container ul li,
.banquets #middle div.container ul li
{
	border-bottom: 1px solid #737244;
	padding-bottom: 2px;
	margin-bottom: 1em;
}
.menus .price p strong
{
	position: absolute;
	right: 0;
	margin-bottom: 2px;
}

.imagegallery li
{
	float: left;
	display: inline;
	margin: 0 8px 8px 0;
}

.menus table
{
	font-family: "Arial Narrow", "Helvetica Narrow", Tahoma, "Nimbus Sans L Condensed", sans-serif;
	width: 100%;
}

.menus table caption
{
	margin-bottom: .5em;
	text-align: center;
	font-family: verdana, sans-serif;
	font-weight: bold;
	font-size: 1.2em;
}

.menus thead th
{
	font-weight: bold;
	padding: 2px 4px;
	vertical-align: bottom;
}
.menus tbody td
{
	padding: 2px 4px;
}

.menus tbody th
{
	padding: 2px 4px;
	font-weight: bold;
	letter-spacing: .1em;
	background-color: #ffe4bf;
	text-align: center;
}

.menus .col1
{
	width: 25%;
}
.menus .col2
{
	width: 53%;
}
.menus .col3
{
	width: 10%;
}
.menus .col4
{
	width: 12%;
}

#champagne_page.menus .col1
{
	width: 75%;
}
#champagne_page.menus .col2
{
	width: 10%;
}
#champagne_page.menus .col3
{
	width: 15%;
}

.menus tbody td:last-child
{
	font-weight: bold;
}

.menus thead tr
{
	background-color: rgb(200, 102, 90);
	color: white;
}

.menus tbody tr.alt
{
	background-color: white;
}


blockquote
{
	padding: 1em 3em 3em 0em;
	background-image: url(blockquotebkgn.gif);
	background-repeat: no-repeat;
	background-position: right bottom;
}

#reviews_page h5
{
	text-align: right;
	padding-right: 4em;
	margin-bottom: 2em;
}


.special
{
	padding: 0 2em 1em;
	border-bottom: 1px dashed #ddd;
	margin-bottom: 2em;
}

.menus #middle .special h3
{
	text-align: center;
	font-size: 1.3em;
	margin-bottom: 1em;
}
.menus #middle .special h4
{
	text-align: center;
	font-size: 1.1em;
	margin-bottom: 1em;
}



/* add icons to links */
a[href ^="mailto:"]
{
	padding-right: 20px;
	background-image: url(icon_mailto.gif);
	background-repeat: no-repeat;
	background-position: right center;
}

a[href ^='http://'], a[href ^='https://']
{
	padding-right: 18px;
	background-image: url(icon_external.gif);
	background-repeat: no-repeat;
	background-position: right center;
}

a[href $='.pdf']
{
	padding-right: 18px;
	background-image: url(icon_pdf.gif);
	background-repeat: no-repeat;
	background-position: right center;
}

#middle a.pop-up
{
	padding-right: 18px;
	background-image: url(icon_pop-up.gif);
	background-repeat: no-repeat;
	background-position: right center;
}

#nav a.pop-up, #links li a.pop-up
{
	padding-right: 0;
	background-image: url(icon_pop-up.gif);
	background-repeat: no-repeat;
	background-position: right center;
}

#links li#amazing-offer a.pop-up
{
	background-position: right .8em;
}


/* Forms */
fieldset
{
	padding: 1em;
	border: 1px solid #e3e0ac;
	width: 80%;
	background-color: #fff5e8;
}

.banquets form { margin-bottom: 1em; }

.banquets fieldset
{
	background-color: #fdfdfd;
	border: 1px solid #ddd;
}

fieldset span
{
	font-style: italic;
	font-size: .8em;
}

input, textarea, select
{
	border: 1px solid #aaa;
}

input:focus, textarea:focus, select:focus
{
	outline: 2px solid #b25538;
}

fieldset label
{
	width: 8em;
	display: inline-block;
	text-align: right;
}
fieldset label#msglabel
{ 
	display: block;
	width: auto;
	text-align: left;
}

button
{
	margin-left: 9em;
}

#success
{
	text-align: center;
	font-weight: bold;
	padding: 1em 0;
}

#error
{
	padding: 1em 0 1em 18px;
	background-image: url(icon_error.gif);
	background-repeat: no-repeat;
	background-position: left 1em;
	font-style: italic;
	font-weight: bold;
}

fieldset p b
{
	display: block;
	padding-left: 8.5em;
}

fieldset p.error
{
	background-color: #fffdf3;
}

.banquets fieldset p.error
{
	background-color: #eee;
}




/* _right
------------------------------------------------------------------------------*/
#right
{
	width: 223px;
	float: left;
	display: inline;
}

#todays_special
{
	color: #c8665a;
	text-align: center;
}

#todays_special h3
{
	color: #c8665a;
	margin-bottom: .5em;
}

.extramargin
{
	margin: 1.5em 0 .5em;
}
#description li a
{
	color: #737244;
}
#description li a:hover
{
	color: #c8665a;
}

#links
{
	text-align: center;
}
#links li
{
	border-top: 1pt solid #737244;
	line-height: 2;
}

#links li a, #links li span
{
	font-weight: bold;
	display: block;
	text-decoration: none;
	background-color: white;
}
#links li span { color: #b25538; }
#links li a:hover
{
	background-color: #fafafa;
}

#links li ul
{
	/*margin-bottom: 1em;*/
}
#links li li
{
	line-height: 1.2;
	font-size: .9em;
	border-top: 1px dashed #ccc;
}

#links li li a
{
	font-weight: normal;
	padding: 1em 1em;
}

#links a[href ^='http://'], #links a[href ^='https://']
{
	padding-right: 0;
	background-image: none;
}


/* _footer
------------------------------------------------------------------------------*/
#footer
{
	width: 998px;
	margin: 0 auto;
	text-align: center;
	color: #c8665a;
	padding: .5em 0 .5em;
	background-color: #ffe0b4;
	border-top: 4px solid #b4565a;
	position: relative;
	font-style: italic;
	font-family: georgia, serif;
	line-height: 1;
}

#tag_address .big
{
	font-size: 1.5em;
	margin-bottom: .3em;
}

#footer-links
{
	font-size: .83em;
	margin-top: 10px;
	color: #77775b;
}

#footer-links a:link, #footer-links a:visited
{
	color: #77775b;
}

#footer-links a:hover
{
	color: #c8665a;
}

#copyright
{
	width: 223px;
	position: absolute;
	top: 22px;
	right: 12px;
	font-size: .83em;
	color: #34282a;
}	

#footer-icons
{
	position: absolute;
	top: 14px;
	left: 24px;
}

#footer-icons li
{
	display: inline;
	float: left;
	margin-right: 2px;
}

#footer-icons a[href ^='http://'], #footer-icons a[href ^='https://']
{
	padding-right: 0;
	background-image: none;
}
