@charset "utf-8";
/* Reset All Styles */
* {
	font-weight: inherit;
	font-family: inherit;
	font-style: inherit;
	font-size: 100%;
	border: 0 none;
	outline: 0;
	padding: 0;
	margin: 0;	
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	}
body {
	font-family: 'Roboto', Arial, Helvetica, sans-serif;
	font-weight: 400;
	color: #111;
	}
html {
	overflow: -moz-scrollbars;
	overflow-y: scroll;
}
html, body {
	height: 100%;	
}

/* Standard Styles */		
a, a:link, a:visited, a:hover, a:active {
	color: #111;
	-webkit-transition: .25s ease-in-out;
	-moz-transition: .25s ease-in-out;
	-o-transition: .25s ease-in-out;
	transition: .25s ease-in-out;		
}
	a:hover {
		text-decoration: none;
	}

h1 {
	font-family: 'Crimson Text', serif;
	color: #333333;
	text-align: center;
	font-weight: 700;
	text-transform: uppercase;
	font-size: 2.2em;
	margin: 45px 10px 20px 10px;
	letter-spacing: 0.5px;
	overflow: hidden;
	white-space: nowrap;
}
	h1:before, h1:after {
		content: "";
		display: inline-block;
		width: 50%;
		margin: 0 .5em 5px -55%;
		vertical-align: middle;
		border-bottom: 1px solid #bab0a2;
	}
	h1:after {
		margin: 0 -55% 5px .5em;
	}
	span {
		display: inline-block;
		vertical-align: middle;
	}
h2 {
	font-family: 'Crimson Text', serif;
	font-weight: 600;
	font-style: italic;
	font-size: 1.75em;
	line-height: 1em;
	text-align: left;
	padding: 0;
	margin: 30px 0 0 0;
}
h3, h4, h5 {
	font-family: 'Roboto', sans-serif;
	font-weight: 700;
	font-size: 1.25em;
	margin: 30px 0 10px 0;
	color: #111;
}
h4 {font-size: 1em;}
h5 {font-weight: 400; font-size: 0.8em;}
hr { 
	margin: 25px 0;
	border: 0;
	height: 0;
	border-top: 1px solid #000;
	display: block;
	clear: both;
	opacity: .15;
}
p {
	font-size: 1em;
	line-height: 1.25em;
	margin: 15px 0;
}
strong, b {
	font-weight: bold;
}
ul {
	margin: 20px;
	list-style: outside;
}
	ul li {
		margin: 10px 0;
	}
em {font-style: italic;}

/* Page Layout */
#wrapper {
	width: 100%;
	overflow: hidden;
}
header, nav, main, footer {display:block;}
main {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	padding-bottom: 50px;
}
	.container {max-width: 1200px; margin: 0 auto;}

header {
	width: 100%;
	height: 175px;
	background-image: url(../img/header.png);
	background-position: center bottom;
	position: relative;
	z-index: 800;
}
	header .preheader {
		display: none;
	}
	header .logo { width: 222px; margin: 0 auto; padding: 25px 0}
	header .logo-print {display:none}
footer {
	width: 100%;
	background-color: none;
	background: url(../img/footer.png) no-repeat;
	background-position: center top;
	padding-top: 30px;
	color: #fff;
	font-size: .95em;
}
	footer a {color: #fff !important;}
	footer .one-half {
		width: 100%;
		clear: both;
		float: none;
		padding: 25px 10px;
		background: #000 url(../img/footer.gif);
		overflow: hidden;
	}
	footer .one-half.hours strong {
		display: block;
		font-weight: 700;
		text-transform: uppercase;
	}
	footer .one-half.contact {
		background-image: url(../img/footer-dark.gif);
	}
	footer .one-half.contact ul.social {
		list-style: none;
	}
	footer .one-half.contact ul.social li {
		display: inline;
		margin-right: 10px;
	}
	footer .one-half.contact ul.social li a {
		opacity: .5;
	}
	footer .one-half.contact ul.social li a:hover {
		opacity: 1;
	}
	footer p.copyright {color: #999;}



/* Wrappers and Formatted Blocks */
.center {text-align: center; padding: 0 10px;}
.callout {padding: 20px; margin: 30px 0; background: #eeebe8;}
.callout * {padding: 0; margin: 10px 0;}
.photo-wrapper.full-width {
	width: 100%;
	display: block;
}
.photo-wrapper.full-width img {width: 100%;}
.photo-wrapper.float-right {
	width: 100%;
	display: block;
	margin: 15px 0;
}
.photo-wrapper.float-right img {
	display: block;
	width: 100%;
}
.photo-wrapper figcaption, .slideshow p {
	display: block;
	font-size: .8em;
	font-style: italic;
}
.slideshow {overflow: hidden;}
.video-wrapper {
    position: relative;
    padding-bottom: 56.25%; /* 16:9 */
    padding-top: 25px;
    height: 0;
}
.video-wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/* Quotes */
div.quote {
	margin: 45px 10px;
	padding-left: 42px;
	background: url(../img/icon-quote-bab0a2.png) 0 0/28px 28px no-repeat;
}
div.quote h5 {font-size: 1.125em; margin: 10px 0 5px 0;}
div.quote p {font-size: 0.875em; margin-top: 5px;}
div.quote p span {display: block; margin-top: 5px; color: #837057;}
div.quote p span a {color: #837057;}
div.reviews div.quote h2 {margin: 0;}

/* Columns */
.one-half {
	width: 50%;
	float: left;
}
	main .one-half {
		width: 100%;
		display: block;
		float: none;
	}
	main .one-half.add-padding {
		padding: 0 10px;
	}
.two-thirds {
	width: 100%;
	padding: 0 10px;

}
.one-third {
	width: 100%;
	background: #eeebe8 url(../img/footer-one-third.jpg) top no-repeat;
	padding: 45px 10px;	
	margin-top: 80px;
	margin-bottom: -80px;
	padding-bottom: 80px;
}
.one-third p a.button {
	border: none;
	background: none;
	color: #bab0a2;
	text-align: left;
	margin-left: 42px;
	padding: 0;
	font-size: 0.875em;
}	
.one-third p a.button:hover {
	color: #766145;
}
.one-third p a.button:after {
    position: relative; /* Prevent underline of arrow */
	font-size: 0.875em;
	padding-left: 4px; /* Add a little space between text and arrow */
	top: -1px;
    content: "\25B6"; /* Unicode hex; */
}

/* Homepage blocks */
main .blocks .block {
	margin: 20px 10px;
	position: relative;
	overflow: hidden;
}
	main .blocks .block a, main .blocks .block a:hover {
		text-decoration: none;
		display: block;
	}
	main .blocks .block .image {
		background-size:  cover;
		background-repeat:  no-repeat;
		background-position:  top 30px;
	}
	main .blocks .block .details {
		width: 100.5%!important;
		min-height: 100px;
		display: table;
		color: #fff;
	}
	main .blocks .block .header {
		background-color: rgba(0, 0, 0, 0.65);
		padding: 20px;
		display: table-cell;
		vertical-align: middle;
	}
		main .blocks .block .header:hover {
			background-color: rgba(0, 0, 0, 0.5);
			-webkit-transition: .25s ease-in-out;
			-moz-transition: .25s ease-in-out;
			-o-transition: .25s ease-in-out;
			transition: .25s ease-in-out;					
		}
		main .blocks .block .header h1 {
			font-family: 'Roboto', sans-serif;
			font-weight: 700;
			font-size: 2em;
			letter-spacing: normal;
			color: #fff;
			line-height: 1em;
			text-transform: uppercase; 
			padding-top: 0;
			margin: 0;
			text-align: left;
			white-space: normal;
		}
		main .blocks .block .header h1::after, main .blocks .block .header h1::before {border: 0;}
		main .blocks .block .header h2 {
			font-family: 'Crimson Text', serif;
			font-weight: 400;
			font-size: 1em;
			font-style:  normal;
			color: #FFF;
			border: 0;
			padding: 0;
			margin: 0;
			text-align: left;
			line-height: 1.1em;			
			letter-spacing: 2px;
			text-transform: uppercase; 
			margin-bottom: 4px;
		}

	/* formatting for first block */
	main .blocks .large-block .block {
		margin: -30px 0 20px 0;
		min-height: 575px;
		position: relative; 
		z-index: 500;
	}
	main .blocks .large-block .block a {
		text-decoration: underline;
	}
		main .blocks .large-block .block a:hover {
			text-decoration: none;
		}
	main .blocks .large-block .block .image {
		width: 100%;
		min-height: 650px;
		background: #000;
		font-size: 0;
		overflow: hidden;
	}
		main .blocks .large-block .block .image img {
			object-fit: cover; width: 100%;
			font-family: 'object-fit: cover;';
		}

	main .blocks .large-block .block .header {
		display: block;
		background-color: rgba(0, 0, 0, 0.5);
	}
		main .blocks .large-block .block .header:hover {
				background-color: rgba(0, 0, 0, 0.5);
			}
	main .blocks .large-block .block .details {
		display: block;
		position: absolute;
		bottom: 0;
	}
	main .blocks .large-block .block .description {
		background-color: #766145;
		padding: 20px;	
		min-height: 175px;
	}
		main .blocks .large-block .block .description p {
			margin: 10px 0;
		}
		main .blocks .large-block .block .description p.date {
			text-transform: uppercase; 
			color: #ffcc66;
			font-weight: 700;
			padding-left: 25px;
			background: url(../../core/img/icon-calendar-ffcc66.png) 0 1px/16px no-repeat; 
		}
		main .blocks .large-block .block .description a {
			color: #fff;
		}
	main .blocks .large-block .block .addthis {
		background-color: #766145;
		padding: 0 20px 10px 20px;	
		height: 40px;
	}
main .blocks .large-block .block .addthis a {display:inline-block!important;}
	main .blocks .large-block .block a.button {
		background: #474747;
		color: #FFF;
		border: 0;
		width: 100%;
	}
	main .blocks .large-block .block a.button:hover {background:#333;}
	main .blocks .large-block .block .one-half {float: right; width: 50%;}
	main .blocks .large-block .block h1 {margin: 0;}
	main .blocks .block h1:before, main .blocks .large-block .block h1:after {content:none}

/* Mobile and Tablet blocks */
.show-on-tablet, .show-on-desktop {
	display: none;
}
.show-on-mobile {
	display: block;
}
.info-block {
	margin: 0 10px;
}
	.button-block .one-half, .info-block .one-half {
		padding: 10px 10px 5px 10px;
	}
	.button-block .one-half ~ .one-half {padding: 10px 5px 10px 10px;}
.button-block.show-on-mobile {
	position: absolute;
	z-index: 3;
	top: 50px;
	width: 100%;
}
	.button-block.show-on-mobile a {background-color: rgba(71, 71, 71, 0.9);}
.info-block ul {list-style: none;}
	.info-block ul li {padding: 10px 0;}
	.info-block ul li a {display: block;}
	.info-block ul li.hours {
		background: url(../img/icon-clock-766145.png) 0/60px no-repeat;
		padding-left: 70px;
	}
	.info-block ul li.directions {
		background: url(../img/icon-map-766145.png) 0/60px no-repeat;
		padding-left: 70px;
	}
	.info-block ul li strong {
		display: block;
		text-transform: uppercase;
		font-family: 'Crimson Text', serif;
		color: #766145;
		letter-spacing: 2px;
	}

/* Page header */
#page-header {
	background: #000;
	background-size: cover !important;
	background-repeat: no-repeat!important;
	position: relative;
	z-index: 500;	
	margin: -30px 0 20px 0;	
	overflow: hidden;
	color: #fff;
}
	#page-header h1 {
		color: #fff;
		margin-top: 75px;
	}
	#page-header h1:before, #page-header h1:after {
		border-bottom: 1px solid #fff; 
		opacity: .5;
	}
	#page-header a {color:#fff;}
	#page-header .left {
		text-align: center;
		font-size: 1.05em;
		padding: 0 30px;
	}
	#page-header .right {
		padding: 0 30px;
	}
	#page-header .right .quote {
		background-image: url(../img/icon-quote-ffffff.png);
		background-position: 1px 5px;
	}
	#page-header .right .quote h5 {color: #fff;}	
	#page-header .right .quote p span {color: #fff}
	#page-header .right .slick .slick-dots li {color: #fff !important;}

/* Menus */
.menu {padding: 0 10px;}
.menu h1 {display:none;}
.menu h2 {	
	font-size: 1.5em;
	line-height: 1.25em;
	text-align: center;
	padding: 20px 10px 17px 10px;
	margin: 20px 0;
	color: #333333;
	border-top: 1px solid #bab0a2;
	border-bottom: 1px solid #bab0a2;
}
.menu #menu-nav ul.nav {
	margin: 50px 10px 50px 10px;
	padding: 0;
	display: block;
	text-align: center;
}
	.menu #menu-nav  ul.nav li {
		font-weight: 700;
		color: #766145;
		list-style: none;
		height: 42px;	
		margin: 3px;
		display: inline-block;
	}
	.menu #menu-nav  ul.nav li a {
		color: #766145; 
		display: block;
		height: 42px;	
		padding: 10px 15px;
		border: 1px solid #766145;
		text-decoration: none;		
	}
	.menu #menu-nav  ul.nav li a span {
		font-family: 'Crimson Text', serif;
		font-weight: 400;
		font-style: italic;
		text-transform: none;
		padding-left: 5px;
	}
	.menu #menu-nav  ul.nav li.active a {
		color: #fff;
		background: #766145;
		text-transform: uppercase;
	}
.menu #menu-nav  ul.nav li a.highlight {
	background-image: url(../img/icon-star-006600.png);
	background-repeat:  no-repeat;
	background-position: 10px center;
	background-size: 16px;
	padding-left: 32px;
	color: #006600;
}
	.menu #menu-nav  ul.nav li.active a.highlight {
		color: #fff;
		background-image: url(../img/icon-star-ffffff.png);
	}
.menu #menu-nav select {
	color: #fff;	
	margin: 40px 0;
	display: block;
	width: 100%;
	height: 48px;
	border: 1px solid #766145;
	padding: 10px;
	background: #766145 url(../img/icon-downarrow-837057.jpg) no-repeat right/48px;
	font-weight: 700;
	/*text-transform: uppercase;*/
}
.menu #menu-nav option {background: #fff; padding: 5px 10px; color: #111; font-weight: 400; text-transform: none;}
.menu #menu-nav option:selected {text-transform: uppercase;}
.menu div.item {
	background: #333333;
	margin: 20px 0;
    display: -moz-box;
    display: -webkit-flexbox;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    -webkit-flex-direction: row;
    -moz-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
	position: relative;
}
.lazy {
  background-color: #333;
}
.menu div.item div.photo a div.new, .menu div.item div.new {
	font-family: 'Roboto', sans-serif;
	font-weight: 700;
	font-size: 13px;
	line-height: 13px;
	color: #fff;
	text-transform:  uppercase;
	position: absolute;
	background: url(../img/icon-star-ffffff.png) 5px/12px no-repeat;
	padding: 5px 5px 5px 20px;
	left: 0;
	bottom: 10px;
	z-index: 500;
	opacity: 0.25;
	height: 23px; width: 55px;
	background-color: rgba(0,0,0,0.5);
}
.menu div.item div.photo a div.keto, .menu div.item div.keto {
	font-family: 'Roboto', sans-serif;
	font-weight: 700;
	font-size: 13px;
	line-height: 13px;
	color: #fff;
	text-transform:  uppercase;
	position: absolute;
	background: url(../img/icon-kf-ffffff.png) 5px/12px no-repeat;
	padding: 5px 5px 5px 20px;
	left: 0;
	bottom: 10px;
	z-index: 500;
	opacity: 0.25;
	height: 23px; width: 121px;
	background-color: rgba(0,0,0,0.5);
}
.menu div.item div.photo a div.fave, .menu div.item div.fave {
	font-family: 'Roboto', sans-serif;
	font-weight: 700;
	font-size: 13px;
	line-height: 13px;
	color: #fff;
	text-transform:  uppercase;
	position: absolute;
	background: url(../img/icon-star-ffffff.png) 5px/12px no-repeat;
	padding: 5px 5px 5px 20px;
	left: 0;
	bottom: 10px;
	z-index: 500;
	opacity: 0.25;
	height: 23px; width: 131px;
	background-color: rgba(0,0,0,0.5);
}
.menu div.item div.photo a div.new, .menu div.item div.photo a div.keto, .menu div.item div.photo a div.fave {top: 10px; opacity: 0.8;}
.menu div.item div.photo div.zoom {
	background-image: url(../img/icon-zoom-ffffff.png);
	background-position: bottom 10px left 10px;
	background-repeat: no-repeat;
	background-size: 32px;
	width: 100%;
	height: 100%;
	position: absolute;
	cursor: pointer;
}
.menu div.item div.photo {
	width: 50%; 
	min-height: 100px; 
	font-size: 0;
	position: relative;
	overflow: hidden;
}
	.menu div.item div.photo {background-size: cover; background-position: center;}
	/*.menu div.item div.photo a img {object-fit: cover; width: 100%; height: 100%; font-family: 'object-fit: cover;'; border: 1px solid #f00;}*/
	/*.menu div.item div.photo.fix-photo-ie {background-size: cover; background-position: center;}
	.menu div.item div.photo.fix-photo-ie img {display: none;}*/
.menu div.item div.desc {   
	-webkit-flex: 1;
    -ms-flex: 1;
    flex: 1; 
	padding: 20px; 
}
.menu div.item h4 {
	font-family: 'Crimson Text', serif;
	font-size: 1.6em;
	line-height: .9em;
	font-weight: 700; font-style: italic;
	letter-spacing: 0.5px;
	color: #cfc4a9;
	margin: 0 0 5px 0;	
}
	.menu div.item h4 span {
		font-family: 'Roboto', sans-serif;
		color: #fff;
		font-size: .6em;
		line-height: 1.25em;
		font-style: normal;
		font-weight: 400;	
	}
.menu div.item h4 em {font-weight: 400; font-size: .65em; text-transform: uppercase;}
.menu div.item p {color: #fff; margin: 0; font-size: .95em;}
.menu div.item p em {font-family: 'Crimson Text', serif; font-style: italic; font-weight: 400; line-height: .5em; font-size: 1.1em; letter-spacing: 0.5px}
.menu div.item p span.diet, .menu div.footer p span.diet {font-weight: 700; font-size: .8em; color: #aaaaaa;}
	.menu div.footer p span.diet {color: #111}
.menu div.header {
	text-align: center;
	margin: 15px 0 35px 0;
	border-top: 1px solid #bab0a2;
	border-bottom: 1px solid #bab0a2;	
	padding: 20px 10px 17px 10px;	
}
	.menu div.header h2 {border: 0; margin: 0;padding: 0;}
.menu div.section {
	text-align: center;
	padding: 10px 0;
	margin: 25px 0 15px 0;
}
.menu div.section h3 {
	font-family: 'Crimson Text', serif;
	font-weight: 700;
	font-size: 1.1em;
	font-style:  normal;
	text-align: center;
	color: #333333;
	text-transform: uppercase;
	letter-spacing: 5px;
	margin-bottom: 5px;
}
.menu div.header p, .menu div.section p, .menu p {
	font-size: .9em;
	color: #666666;
	margin: 0;
}
.menu .group .group-header {

	background-color: #000;
	background-size: cover;
	background-repeat: no-repeat;
	margin: 20px 0;
	padding: 10px;
	min-height: 120px;
	position: relative;
	overflow: hidden;
	cursor: pointer;
}
.menu .group .group-header img {
	position: absolute;
	left: 0;
    top: -30%;
    width: 100%;
    height: auto;
    opacity: 0.4;
}
.menu .group .group-header h2 {
	font-weight: 700;
	color: #fff;
	font-size: 1.8em;
	line-height: 1em;
	letter-spacing: 0.5px;
	border: 0;
	margin-bottom: 0;
	padding-top: 0;
	padding-bottom: 5px;
	position: relative;
    z-index: 2;
}
.menu .group .group-header .icon {
	height: 30px; width: 30px;
	margin: 0 auto;
	background: url(../img/icon-plus-ffffff.png) no-repeat;
	background-size: contain;
}
.menu .group .group-header .icon.minus {background-image: url(../img/icon-minus-ffffff.png)}
.menu .group .group-menu {margin: 0; padding: 0;}
.menu .footer {text-align: center; margin-top: 30px; display: block; overflow: auto;}
	.menu .footer p {
		color: #111;
		margin: 10px;
	}
	.menu .footer p.icon {
		background: url(../img/icon-info-766145.png);
		background-size: 60px;
		background-position:  center;
		background-repeat:  no-repeat;
		margin: 55px auto 25px auto;
		height: 60px; width: 100%;
		position: relative;
		z-index: 1;
		text-align:center;
	}
		.menu .footer p.icon:before {
			  border-top: 1px solid #bab0a2;
			  content:"";
			  margin: 0 calc(50% + 30px) 0 0;
			  position: absolute; 
			  top: 50%; left: 0; right: 0; bottom: 0;
			  z-index: -1;
			}
		.menu .footer p.icon:after	{
			  border-top: 1px solid #bab0a2;
			  content:"";
			  margin: 0 0 0 calc(50% + 30px);
			  position: absolute; 
			  top: 50%; left: 0; right: 0; bottom: 0;
			  z-index: -1;
			}

/* Nav & hamburger  */
nav {
	width: 100%;
	position: relative;
	z-index: 600;
	top: -28px;
	background: #111;
	padding-top: 25px;
	display: none;
}
	nav ul {
		margin: 0;
		padding: 0;
	}
	nav ul li {
		list-style: none;
		width: 100%;
		margin: 0;
	}
	nav a:link, nav a:visited {
		display: block;
		text-transform: uppercase;
		color: #fff;
		background: #111;
		text-decoration: none;
		padding: 15px 10px;
		width: 100%;
		border-bottom: 1px solid #1e1e1e;
	}
nav ul li.order a {
	color: #39a639;
	font-weight: 700;
}
	/*!
	* Hamburgers
	* @description Tasty CSS-animated hamburgers
	* @author Jonathan Suh @jonsuh
	* @site https://jonsuh.com/hamburgers
	* @link https://github.com/jonsuh/hamburgers
	*/
.hamburger {
	padding: 15px 15px;
	position: absolute;
	z-index: 1000;
	right: 0;
	top: -3px;  
	display: inline-block;
	cursor: pointer;
	transition-property: opacity, filter;
	transition-duration: 0.15s;
	transition-timing-function: linear;
	font: inherit;
	color: inherit;
	text-transform: none;
	background-color: transparent;
	margin: 0;
	overflow: visible; }
.hamburger:hover {
	opacity: 0.7; }
.hamburger-box {
	width: 40px;
	height: 24px;
	display: inline-block;
	position: absolute; 
	right: 10px; top: 20px;}
.hamburger-inner {
	display: block;
	top: 50%;
	margin-top: -2px; }
.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
	width: 40px;
	height: 2px;
	background-color: #fff;
	border-radius: 0px;
	position: absolute;
	transition-property: transform;
	transition-duration: 0.15s;
	transition-timing-function: ease; }
.hamburger-inner::before, .hamburger-inner::after {
	content: "";
	display: block; }
.hamburger-inner::before {
	top: -10px; }
.hamburger-inner::after {
	bottom: -10px; }
/*Squeeze */
.hamburger--squeeze .hamburger-inner {
	transition-duration: 0.1s;
	transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
.hamburger--squeeze .hamburger-inner::before {
	transition: top 0.1s 0.14s ease, opacity 0.1s ease; }
.hamburger--squeeze .hamburger-inner::after {
	transition: bottom 0.1s 0.14s ease, transform 0.1s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
.hamburger--squeeze.is-active .hamburger-inner {
	transform: rotate(45deg);
	transition-delay: 0.14s;
	transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
.hamburger--squeeze.is-active .hamburger-inner::before {
	top: 0;
	opacity: 0;
	transition: top 0.1s ease, opacity 0.1s 0.14s ease; }
.hamburger--squeeze.is-active .hamburger-inner::after {
	bottom: 0;
	transform: rotate(-90deg);
	transition: bottom 0.1s ease, transform 0.1s 0.14s cubic-bezier(0.215, 0.61, 0.355, 1); }

/* Menu item modals */
a.menu-modal span {
	height: 25px; width: 25px;
	background-image: url('/core/img/icon-menu-magnify-ffffff.png');
}
/* The Modal (background) */
.featherlight .caption {
	font-family: 'Crimson Text', serif;
	font-style: italic;
	font-weight: 400;	
	font-size: 1.5em;
	color: #fff;
	background: #000;
	background-color: rgba(0,0,0,0.6);
	margin: 0;
	padding: 20px;
	position: relative; 
	z-index: 900;
	width: 100%;
}
#storehours {
	display: none;
	background: #000;
	min-width: 400px;
}
#storehours h6 {
	font-family: 'Crimson Text', serif;
	font-style: italic;
	font-weight: 400;	
	font-size: 1.5em;
	color: #ccc;
	padding: 20px;
}
#storehours p {
	color: #fff;
	margin: 0 20px;
	padding: 20px 0;
	border-top: 1px solid #1e1e1e;
}
#storehours strong {
	font-size: 1.25em;
	line-height: 1.5em;
	display: block;
}


/* Back to top ------ */
#back-to-top {
    position: fixed;
    bottom: 40px;
    right: 30px;
    z-index: 9999;
    width: 42px;
    height: 42px;
    text-align: center;
    line-height: 30px;
    background: #111 url(../img/icon-arrowup-ffffff.png) no-repeat center/28px;
	background-color: rgba(17,17,17,0.9);
    color: #fff;
    cursor: pointer;
    border: 0;
    border-radius: 20px;
    text-decoration: none;
    opacity: 0;
}
#back-to-top:hover {
    background-color: #555555;
}
#back-to-top.show {
    opacity: 1;
}

/* Messages */
.site-message {
	background-color: #ffcc66;
}
.site-message p {	
	text-align: center;
	font-weight: 700;
	padding: 20px;
	margin: 0; 
}
	.site-message .close {
		position: fixed;
		top: 5px; right: 10px;
		width: 48px;
		height: 48px;
		background: url(../img/icon-x-000.png) no-repeat center;
		opacity: .25;
		cursor: pointer;
	}
	.site-message .close:hover {opacity: 1}

/* Forms */	
a.button, input[type='button'], input[type='submit'] {
	background: #fff;
	color: #766145;
	border: 1px solid #766145;
	font-weight: 700;
	text-transform: uppercase;
	text-align: center;
	white-space: nowrap;
	font-size: 1em;
	cursor: pointer;
	padding: 10px;
	text-decoration: none !important;
	display: block;
	-webkit-transition: .25s ease-in-out;
	-moz-transition: .25s ease-in-out;
	-o-transition: .25s ease-in-out;
	transition: .25s ease-in-out;		
}
	a.button:hover, input[type='button']:hover, input[type='submit']:hover {
		background-color: #766145;
		color: #fff;
		text-decoration:  none;
	}	
	input[type='submit'] {
		margin-top: 10px;
		padding: 10px 32px;
	}
input[type="submit"]:disabled {
	background:#333;
	border-color: #333;
	color: #ccc;
	cursor: not-allowed;
}	
input, select, textarea {
	border: 1px solid #ccc;
	color: #111;
	padding: 10px;
	width: 100%;
	margin: 10px 0;	
	-webkit-transition: .25s ease-in-out;
	-moz-transition: .25s ease-in-out;
	-o-transition: .25s ease-in-out;
	transition: .25s ease-in-out;	
}
input:focus, textarea:focus {
	border: 1px solid #666;
}
label {	
	font-weight: 700;
	font-size: 0.9em;
	clear: both;
	display: block;
	color: #111;
	margin: 10px 0 0 0;
	text-transform: uppercase;
}
	label span {
		color: #666;
		font-size: .8em;
		margin-left: 5px;
		}
select, select:focus {
	font-style: normal !important;
}
input:focus, textarea:focus {
	font-style: normal !important;
}
input[type='checkbox'] {
	width: auto;
}
.alert {
	color: #F00;	
}
span.mce_inline_error {
	color: #ff6666;
	padding: 0 4px;
	text-transform: uppercase;
	margin: 0;
	font-weight: normal;
}
#mce-error-response {
	color: #D8000C;  
	background-color: #ffcccc;	
	border: 1px solid;  
	margin: 10px 0;  
	padding: 20px; 
	}
#mce-success-response {
	color: #000;  
	background-color: #DFF2BF;	
	border: 1px solid;  
	margin: 10px 0;  
	padding: 20px;  
	}

/* Tablet ----------- */
@media only screen 
and (min-width : 599px) {
	
	.show-on-mobile, .show-on-desktop {
		display: none;
	}
	.show-on-tablet {
		display: block;
	}	
	.one-half {display: inline-block!important; vertical-align: top; float: none; width: 50%!important; padding-right: 10px;}
	.one-half ~ .one-half {padding-right: 0; padding-left: 10px} 	
	.two-thirds {
		width: 66.66%;
		float: left;
	}
	.one-third {
		width: 33.3%;
		float: left;
	}
	header {
		background-image: url(../img/header-large.png);
	}
	main {
		padding: 20px 10px;
		overflow: auto;
	}
	main .blocks {overflow: hidden;}
	main .blocks .block, main .blocks .button-block, main .blocks .info-block {margin: 10px;}	
	main .blocks .large-block, main .blocks .small-blocks {width: 50%; display: inline-block; vertical-align: top;}
	main .blocks .button-block, main .blocks .info-block, main .blocks .small-blocks .block {margin: 0 0 20px 20px;}
	main .blocks .small-blocks * {margin-right: 0;}
	main .button-block a {
		background: #474747;
		color: #FFF;
		border: 0;
		width: 100%;
	}
	main .button-block a:hover {background:#333;}
	.button-block .one-half {padding: 0!important;}
	.button-block .one-half ~ .one-half {padding-left: 10px!important;}	
	.menu #menu-nav  ul.nav li a {text-transform: uppercase}
	/*.menu .item {width: 48%; margin: 5px 0 5px 10px !important; float: left; height: 300px; overflow: hidden;}
	.menu .section, .menu .footer, .menu .group-header {display: block; clear: both;}
	.menu h2 {margin-right: 10%!important; margin-left: 10%!important;}*/
	.menu {padding:0!important; text-align: center;}
	.menu .section {width: 220px;height: 275px;float:left;border: solid 3px #91816a; padding: 10px!important;margin: 7.5px!important; clear: none;}
	.menu .item {width: 220px;height: 275px;margin: 5px!important;overflow: hidden;}
	.menu div.item {
		display: inline-block;
		vertical-align: top;
		position: relative;
		float: none;
		text-align: left;
	}
	.menu div.item.wide {width: 455px;}
	.menu div.item div.photo {
		width: 100%; 
		height: 100%;
		position: relative;
		z-index: 100;
	}
	.menu div.item div.photo a img {object-fit: cover; height: 100%; width: 100%; font-family: 'object-fit: cover;';}
	.menu div.item div.desc.slidey {   
		flex: none; 
		position: absolute;
		z-index: 200;
		background: rgba(0,0,0,0.65);
		top: 187px;
		width: 100%;
		min-height: 90px;
	}
	.menu div.item div.desc h4 {font-size: 1.375em;}
	.menu div.item div.desc p {font-size: 0.875em}
	.menu div.item div.photo div.zoom {	background-position: top 10px right 10px;}
	.menu div.section {display: inline-table;float:none;vertical-align: text-top;margin: 5px!important;}
	.menu div.section span {display: table-cell; vertical-align: middle;}
	.menu div.section h3 {font-size: 1em; margin:0; margin-left: 10px;}
	.menu div.section h3:after {
		position: relative; /* Prevent underline of arrow */
		font-size: 0.5em;
		color: #999;
		padding-left: 4px; /* Add a little space between text and arrow */
		top: -1px;
		content: "\25B6"; /* Unicode hex for &raquo; */
	}	
	

	#page-header {margin: 25px 0 35px 0;}	
	#page-header h1:after {margin-right: -23.25%!important;}	
	#page-header h1:before {margin-left: -23.25%!important;}	
	
	
	
	footer {margin-top: 50px; display: block!important; clear: both; overflow: auto;}
	footer .one-half {padding: 0 10px !important; width: 50% !important;height: 325px!important;}
	footer .one-half.contact {
		background-image: url(../img/footer.gif);
		text-align: right;padding:0;margin: 0!important; 
		height: 100%;
		padding-right: 10px;
	}
	main .one-third {margin: 0; padding: 0 20px; background: none;}
	main .two-thirds.color {background:#eeebe8; padding: 20px;}
	main .photo-wrapper.float-right {width: 50%; float: right; padding: 0 0 10px 10px;}
	#page-header {margin-top: 0;}
	#page-header h1 {margin-top: 45px;}
	#page-header .right {width: 50%; float: right; margin: 0;padding-right: 20px!important;}
	#page-header .right .quote {margin: 0 0 10px 0;}
	#page-header .left {width: 50%; float: left; text-align: left;}
	a.button, input[type='button'], input[type='submit'] {width: auto;}	
	div.reviews div.quote {width: 47%;margin:10px!important;}
}

/* Desktop ----------- */
@media only screen 
and (min-width : 999px) {
	
	.show-on-mobile, .show-on-tablet, .info-block {
		display: none;
	}
	.show-on-desktop {
		display: block;
	}	
	
	.container {margin: 0 auto;}
	header .preheader {display: block; color: #ccc; position: relative;font-size: 0.750em;margin: 0 auto;}
	header .preheader  {
		/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#ffffff+0,ffffff+50,ffffff+100&0.1+0,0+50,0.1+100 */
		background: -moz-linear-gradient(left,  rgba(255,255,255,0.1) 0%, rgba(255,255,255,0) 50%, rgba(255,255,255,0.1) 100%); /* FF3.6-15 */
		background: -webkit-linear-gradient(left,  rgba(255,255,255,0.1) 0%,rgba(255,255,255,0) 50%,rgba(255,255,255,0.1) 100%); /* Chrome10-25,Safari5.1-6 */
		background: linear-gradient(to right,  rgba(255,255,255,0.1) 0%,rgba(255,255,255,0) 50%,rgba(255,255,255,0.1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1affffff', endColorstr='#1affffff',GradientType=1 ); /* IE6-9 */
		height: 50px;
	}
	header .preheader .one-half:nth-child(2) {text-align: right;}
	header .preheader a {color:#ccc;}
	header .preheader ul {margin: 15px 0; height: 40px; }
	header .preheader ul li {display:inline-block; list-style: none; vertical-align: middle; height: 20px; line-height: 20px; margin: 0 5px;}
	header .preheader ul li.hours {background:url(../img/icon-clock-a0a0a0.png) no-repeat 0/20px; border-right:1px solid #6c6d6d; padding: 0 10px 0 28px;}
	header .preheader ul li.hours strong {text-transform: uppercase;}
	header .preheader ul li.social a {opacity: .5;}
	header .preheader ul li.social a:hover {opacity: 1;}	
	header .preheader ul li.social a img {width: 20px; height: 20px;}
	header .logo {position: absolute;margin-left: auto;margin-right: auto;left: 0;right: 0;top:0px;}

	.hamburger {display: none;}
	nav {display: block;}
	nav {
		position: relative;
		z-index: 600;
		top: 0;
		background: #fff;
		padding-top: 0;
		display: block;
		text-align: center;
		font-size: 1.15em;
	}
		nav ul {margin: 20px auto 0 auto;}
		nav ul li {
			display: inline-block;
			list-style: none;
			width: inherit;
			margin: 0;
			padding: 0;
		}
		nav a:link, nav a:visited {
			display: inline-block;
			text-transform: none;
			color: #111;
			background: none;
			padding: 15px 5px;
			width: auto;
			border-bottom: none;
		}
		nav a:hover {color: #39a639;}
	nav ul li.order {
		border-right: 1px solid #CCC;
		margin-right: 10px;
		padding-right: 20px;
	}
	nav ul li.order a {
		font-weight: 700;
		text-transform: uppercase
	}
	nav ul li.order a:hover {color:#111;}
	footer {background: url(../img/footer-large.png) repeat-x; font-size: .9em;}
	footer .one-half {padding: 35px 10px!important;}
	.video-wrapper.full-width {width: 75% !important; padding-bottom: 46.25%; margin: 25px auto;}
	.photo-wrapper.float-right {width: 35% !important;}
	h1 {margin-right: 0; margin-left: 0;}
	h1:before, h1:after {width: 20%;}
	/*main .blocks {margin-bottom: 35px;}
	main .blocks .block {width: 33%; margin: 0 0 20px 20px}*/
	main .blocks .large-block {width: 66%;}
	main .blocks .small-blocks {width: 33%;}
	main .blocks .large-block .block {height: 540px; margin-bottom: 0;}
	/*main .blocks .large-block .block .image { background: #fff}
	main .blocks .large-block .block .image * {width:100%;height: 100%;}*/	
	main .blocks .large-block .block .details {width: 375px!important; margin-left: 25px;}
	main .blocks .large-block .block .details .description {padding-bottom: 40px;}
	.menu div.item div.photo div.zoom {height: 190px; background-size: auto; background-position: center; opacity: 0;}
	.featherlight .caption {position: absolute;}
	.featherlight .featherlight-close-icon:hover {
		opacity: 1;
		-webkit-transition: .25s ease-in-out;
		-moz-transition: .25s ease-in-out;
		-o-transition: .25s ease-in-out;
		transition: .25s ease-in-out;
	}
	div.reviews div.quote {width:30%;}
	.menu .header {margin-left: 23.25%!important; margin-right: 23.25%!important;}
	.menu h2 {margin: 20px 20.5%;}	
.menu div.group  {width: 50%; max-width: 495px; overflow: auto; display: inline-block; padding: 0 10px;border-right: 1px solid #ccc; vertical-align: top; text-align: left;}
	.menu div.group ~ .group {border:0;}
	.menu div.group div.group-header {padding: 0; margin: 0; background: none;min-height: auto;cursor: auto!important;}
	.menu div.group div.group-header h2 {margin: 0!important;}
	.menu div.group:first-of-type div {border-right: 1px solid #111;}
	.menu div.group div.group-menu div.section {display: block; clear: both; height: auto; width: 100%; padding: 0; border: 0; margin-top: 20px!important;}
	.menu div.group div.group-menu div.section span {display: block; padding: 0;}
	.menu div.group div.group-menu div.section h3 {margin: 0; padding: 0}
	.menu div.group div.group-menu div.section h3:after {content:''}	
	.menu div.group div.group-header h2 {color: #111}
	.menu div.group div.group-header img, .menu div.group div.group-header .icon {display: none;}
	.menu div.group div.group-header h2 {color: #111}
	.menu div.group div.group-header img, .menu div.group div.group-header .icon {display: none;}		
	.menu div.item div.photo a div.new, .menu div.item div.new {left: 0;}
	.menu div.item div.new {bottom: 10px; top: auto;}
	.menu .footer p.icon:before { margin-left: 23.25%;}
	.menu .footer p.icon:after	{ margin-right: 23.25%; }	
}

/* Desktop ----------- */
@media only screen 
and (min-width : 1180px) {
	nav ul li {
		display: inline-block;
		list-style: none;
		width: inherit;
		margin: 0;
		padding: 0 10px;
	}
}