/*-------------------------------
	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,
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-weight: inherit;
	font-style: inherit;
	font-size: 100%;
	font-family: inherit;
	vertical-align: baseline;
}
/* remember to define focus styles! */
:focus {
	outline: 0;
}


body {
	line-height: 1;
	color: black;
	background: white;
}
ol, ul {
	list-style: none;
}
/* tables still need 'cellspacing="0"' in the markup */
table {
	border-collapse: collapse;
	border-spacing: 0;
}
caption, th, td {
	text-align: left;
	font-weight: normal;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: "";
}
blockquote, q {
	quotes: "" "";
}
p {
	font-size: 1.4em;
	line-height: 1.5;
	padding: 0 0 15px;
}
ul {
	list-style: disc;
	padding: 0 3em 1em;
}
ol {
	list-style: decimal;
	padding: 0 3em 1em;
}
li {
	font-size: 1.4em;
	margin: 0 0 10px;
}
td, th, caption, dl {
	font-size: 1.4em;
}
li li,
li p,
li h2,
li h3,
td li,
th li,
td dl,
th dl,
td p,
th p {
	font-size: 1em;
}
label {
	font-size: 1.4em;
}
strong, b {
	font-weight: bold;
}
em, i {
	font-style: oblique;
}
hr {
	clear: both;
	display: block;
	border: 0;
	border-top: 1px solid RGBa(0,0,0,0.2);
	border-bottom: 1px solid RGBa(255,255,255,0.2);
	height: 0;
	margin: 0 0 1em;
}

body {
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size: 0.625em;
	color: #222;
	line-height: 1;
	text-align: center;
}
body#zilli {
	background: url(../assets/images/construct/bg_body.gif);
}
body#green {
	background: url(../assets/images/construct/bg_body_green.gif);
}
body#fish {
	background: url(../assets/images/construct/bg_body_fish.gif);
}
body#bar {
	background: url(../assets/images/construct/bg_body_bar.gif);
}
body#cafe {
	background: url(../assets/images/construct/bg_body_cafe.gif);
}
h1, h2, h3, h4, h5 {
	font-weight: bold;
}
h1 {
	font-size: 2.4em;
	line-height: 1.1;
	padding: 0 0 0.5em;
}
h2 {
	font-size: 1.3em;
	line-height: 1.1;
	padding: 0 0 0.2em;
	text-transform: uppercase;
	font-weight: 700;
}
h3 {
	font-size: 1.3em;
	line-height: 1.1;
	padding: 0 0 0.2em;
	text-transform: uppercase;
	font-weight: 500;
}
h4 {
	font-size: 1.3em;
	line-height: 1.1;
	font-weight: 300;
}
h5 {
	font-size: 1.2px;
	line-height: 1.1;
}
acronym {
	border-bottom: 1px dotted #999;
}
acronym:hover {
	cursor: help;
}
a {
	color: #923;
	text-decoration: none;
}
a:hover {
	text-decoration: underline;
}
a span {
	display: none;
}
#green a {
	color: #004812;
}
#fish a {
	color: #003768;
}
#bar a {
	color: #4c2432;
}
#cafe a {
	color: #4f91cd;
}
input {
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size: 1.1em;
}

.container {
	display: block;
	position: absolute;
	left: 0;
	right: 0;
	min-height: 100%;
	margin: 0 auto;
}
#zilli .container {
	background: url(../assets/images/construct/bg_grad.gif) 50% 0 repeat-x;
}
#green .container {
	background: url(../assets/images/construct/bg_grad_green.gif) 50% 0 repeat-x;
}
#green.lower .container {
	background: url(../assets/images/construct/bg_grad_green_lower.gif) 50% 0 repeat-x;
}
#fish .container {
	background: url(../assets/images/construct/bg_grad_fish.gif) 50% 0 repeat-x;
}
#bar .container {
	background: url(../assets/images/construct/bg_grad_bar.gif) 50% 0 repeat-x;
}
#cafe .container {
	background: url(../assets/images/construct/bg_grad_cafe.gif) 50% 0 repeat-x;
}

.content {
	margin: 0 auto;
	padding: 0 0 15em;
	width: 960px;
	margin: 0 auto;
	display: block;
	text-align: left;
	overflow: hidden;
}

/* -------------------------------
   HEADER STYLES
   ----------------------------- */ 

.header {
	position: relative;
	z-index: 10;
}
h1.id {
	display: block;
	width: 154px;
	height: 154px;
	margin: 10px auto 0;
	position: relative;
	padding: 0;
}
#zilli h1.id {
	background: url(../assets/images/construct/bg_logo.png) 0 100% no-repeat;
}
#green.home  h1.id {
	background: url(../assets/images/construct/bg_logo_green.png) 0 100% no-repeat;
}
#green h1.id {
	background: url(../assets/images/construct/bg_logo_green_lower.png) 0 -5px no-repeat;
}
#fish h1.id {
	background: url(../assets/images/construct/bg_logo_fish.png) 0 100% no-repeat;
}
#bar h1.id {
	background: url(../assets/images/construct/bg_logo_bar.png) 0 100% no-repeat;
}
#cafe h1.id {
	background: url(../assets/images/construct/bg_logo_cafe.png) 0 100% no-repeat;
}
h1.id a {
	margin: 0 auto;
	display: block;
	width: 142px;
	height: 142px;
	text-indent: -5000px;
}
#zilli h1.id a {
	background: url(../assets/images/construct/logo_zilli_group.png) no-repeat;
}
#green h1.id a {
	background: url(../assets/images/construct/logo_zilli_green.png) no-repeat;
}
#fish h1.id a {
	background: url(../assets/images/construct/logo_zilli_fish.png) no-repeat;
}
#bar h1.id a {
	background: url(../assets/images/construct/logo_zilli_bar.png) no-repeat;
}
#cafe h1.id a {
	background: url(../assets/images/construct/logo_zilli_cafe.png) no-repeat;
}

/* -------------------------------
   NAV STYLES
   ----------------------------- */ 

.nav ul {
	position: absolute;
	top: 51px;
	left: 0;
	list-style: none;
	padding: 0;
	margin: 0;
	font-weight: 300;
	line-height: 1;
	min-height: 50px;
	width: 950px;
}
.nav ul li {
	float: left;
	margin: 0;
	font-size: 1.2em;
	min-height: 45px;
}
.nav ul li.selected, .nav ul li.trail {
	background: url(../assets/images/nav/marker_green.png) 51% 0 no-repeat;
}
.lower .nav ul li.selected, .lower .nav ul li.trail {
	background: url(../assets/images/nav/marker_green_sub.png) 51% 0 no-repeat;
}
.nav ul li a {
	display: block;
	padding: 17px 10px;
	width: 74px;
	text-align: center;
	background: url(../assets/images/construct/nav_sep.png) no-repeat;
}
.nav ul li.fourth {
	margin: 0 212px 0 0;
}
.nav ul li.fourth span {
	display: block;
	background: url(../assets/images/construct/nav_sep.png) 100% 0 no-repeat;
}
.nav ul li.last span {
	display: block;
	background: url(../assets/images/construct/nav_sep.png) 100% 0 no-repeat;
}
body#green div.subnav div.subnav ul {
	list-style: none;
	float: left;
	padding: 0;
	margin: 52px 0 0;
	width: 170px;
}
body#green div.subnav div.subnav ul a {
	color: #fff;
	text-shadow: none;
}

/* -------------------------------
   MAIN CONTENT STYLES
   ----------------------------- */ 

.mainContent {
	padding: 20px 10px 0;
	font-weight: 300;
	text-shadow: 0px 1px 1px RGBa(255,255,255,0.5);
	float: left;
	width: 940px;
	overflow: visible;
}
.home .mainContent {
	padding: 0 10px;
}
.subnav .mainContent {
	margin: -53px 0 0;
	background: url(../assets/images/construct/bg_subnav_green.png) repeat-y;
}
.colHolder {
	width: 520px;
	float: left;
	background: url(../assets/images/construct/col_rules.png);
	font-size: 0.9em;
}
.asides {
	float: left;
	width: 340px;
	font-size: 0.9em;
}
.asides.booking {
	width: 240px;
}
.asides p {
	line-height: 1.2;
}
.asides .colHolder {
	font-size: 1em;
}
.menu .asides {
	width: 220px;
}
.col.first {
	float: left;
	clear: left;
	width: 400px;
	margin: 0 20px 10px 0;
}
.col.booking {
	float: left;
	clear: left;
	width: 600px;
	margin: 0 10px 10px 0;
}

.lower .col.first {
	clear: none;
}
.subnav .col,
.subnav .asides {
	padding-top: 53px;
}
.col .article .info {
	width: 200px;
	float: left;	
}
.col .article img {
	display: block;
	float: left;
	margin: 0 10px 10px 0;
}
.lower .col.first {
	width: 520px;
	margin: 0 80px 10px 0;
}
.lower.menu .col.first {
	width: 460px;
	margin: 0 80px 10px 0;
}
.three-col {
	float: left;
	width: 150px;
	padding: 0 0 0 10px;
	margin: 0 20px 10px 0;
}
.three-col.last {
	margin: 0 0 10px;
}
.three-col img {
	display: block;
	margin: 0 0 1em;
}
.three-col p {
	line-height: 1.2;
}
.home .three-col p {
	padding:0;
}
.standfirst {
	font-size: 2em;
	line-height: 1.2;
}
.hero,
.gallery {
	position: relative;
	top: -52px;
	margin: 0 -10px;
	padding: 5px;
	height: 316px;
	
	background: #fff;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
}
.gallery {
	height: auto;
	top: 0;
}
.gallery ul {
	list-style: none;
	padding: 0;
	margin: 0;
}
#zilli .hero {
	margin: 0 -10px -52px;
}
.allHeroes,
.hero img,
.gallery img {
	display: block;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}
.scrollWin {
	position: relative;
	overflow: hidden;
	width: 950px;
}
.allHeroes {
	width: 4750px;
	height: 321px;
	overflow: hidden;
}
.allHeroes div {
	position: relative;
	float: left;
	height: 321px;
}
.hero h2 {
	display: block;
	height: 50px;
	width: 950px;
	position: absolute;
	text-align: center;
	left: 0;
	right: 0;
	text-align: center;
	top: 60px;
	background-repeat: no-repeat;
	background-position: 50% 0;
	background-image: url(../assets/images/titles/strap_group.png);
	text-indent: -10000px;
}
.hero #green h2,
#green .hero h2 {
	background-image: url(../assets/images/titles/strap_green.png);
}
.hero #fish h2,
#fish .hero h2 {
	background-image: url(../assets/images/titles/strap_fish.png);
}
.hero #bar h2,
#bar .hero h2 {
	background-image: url(../assets/images/titles/strap_bar.png);
}
.hero #cafe h2,
#cafe .hero h2 {
	background-image: url(../assets/images/titles/strap_cafe.png);
}
.allHeroes p.logo {
	display: block;
	position: absolute;
	bottom: 0px;
	z-index: 100;
	height: 93px;
	width: 142px;
	padding: 0;
}
.allHeroes p.logo a {
	display: block;
	width: 142px;
	height: 93px;
	text-indent: -5000px;
}
#green p.logo {
	left: 160px;
	background: url(../assets/images/construct/logo_zilli_green.png);
}
#fish p.logo {
	left: 322px;
	background: url(../assets/images/construct/logo_zilli_fish.png);
}
#bar p.logo {
	left: 484px;
	background: url(../assets/images/construct/logo_zilli_bar.png);
}
#cafe p.logo {
	left: 646px;
	background: url(../assets/images/construct/logo_zilli_cafe.png);
}
.heroNav {
	list-style: none;
	padding: 0 145px 20px;
	margin: 0;
	overflow: hidden;
}
.heroNav li {
	float: left;
	width: 142px;
	height: 49px;
	margin: 0 10px;
}
.heroNav li a {
	display: block;
	width: 142px;
	height: 49px;
	text-indent: -5000px;
	background-position: 0 100%;
	background-repeat: no-repeat;
}
.heroNav li.green a {
	background-image: url(../assets/images/construct/logo_zilli_green.png);
}
.heroNav li.fish a {
	background-image: url(../assets/images/construct/logo_zilli_fish.png);
}
.heroNav li.bar a {
	background-image: url(../assets/images/construct/logo_zilli_bar.png);
}
.heroNav li.cafe a {
	background-image: url(../assets/images/construct/logo_zilli_cafe.png);
}
.hero .cta {
	width: 140px;
	position: absolute;
	right: 10px;
	bottom: 15px;
	z-index: 20;
	padding: 0;
}
.cta {
	float: left;
	clear: both;
}
.cta.submit {
	float: right;
}
.cta a {
	display: block;
	text-align: center;
	text-transform: uppercase;
	text-shadow: 0 1px 0px RGBa(255,255,255,0.3);
	background: RGB(255,255,255);
	background: RGBa(255,255,255,0.7);
	line-height: 1;
	font-size: 0.7em;
	text-decoration: none;
	border: 1px solid RGBa(255,255,255,0.4);
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	font-weight: 800;
	padding: 5px 10px;
}
.hero .cta a {
	padding: 15px 10px 12px;
}
#green .cta.submit a {
	padding: 6px;
	background: RGB(0,76,51);
	color: RGB(255,255,255);
}
.cta a:hover {
	background: RGB(255,255,255);
	background: RGBa(255,255,255,1);
	border: 1px solid RGBa(0,0,0,0.4);
}
img.bordered {
	border: 2px solid #fff;
}
.video {
	position: relative;
	display: block;
	padding: 0 0 20px;
}
.invisible{
	display: none;
}
p.date {
	padding: 0;
}
dl.menu {
	margin: 0 0 1em;
	border-bottom: 1px solid RGB(0,76,51);
	overflow: hidden;
}
dl.menu dt {
	font-size: 1em;
	float: left;
	font-weight: 400;
	width: 360px;
	line-height: 1.2;
}
dl dd {
	float: right;
	padding: 3px 0 2px 5px;
}
dl dd.price {
	padding: 2px 0 2px 5px;
}
dl dd span {
	display: block;
	width: 13px;
	height: 13px;
	text-indent: -5000px;
	background-repeat: no-repeat;
	float: left;
	margin: 0 3px 0 0;
}
dl dd span.v,
li.v {
	background-image: url(../assets/images/construct/icon_vegan.png);
}
dl dd span.n,
li.n {
	background-image: url(../assets/images/construct/icon_nuts.png);
}
dl dd span.g,
li.g {
	background-image: url(../assets/images/construct/icon_gluten.png);
}
dl dd span.vo,
li.vo {
	background-image: url(../assets/images/construct/icon_vegan_opt.png);
}
dl dd span.r,
li.r {
	background-image: url(../assets/images/construct/icon_raw.png);
}
dl dd span.s,
li.s {
	background-image: url(../assets/images/construct/icon_super.png);
}
ul.key {
	list-style: none;
	padding: 1em 0;
	margin: 0;
}
ul.key li {
	padding: 2px 0 2px 20px;
	background-repeat: no-repeat;
	background-position: 0 3px;
}
div.menu {
	padding: 0 0 1em;
}
div.menu h2 {
	padding: 0 0 1em;
}
.signpost img {
	float: left;
	margin: 0 10px 10px 0;
}
.signpost {
	overflow: hidden;
	border-bottom: 1px solid #004433;
	margin: 0 0 1em;
}

/* -------------------------------
   FOOTER STYLES
   ----------------------------- */ 


.footer {
	display: block;
	margin: 0 auto;
	text-align: left;
	position: absolute;
	display: block;
	bottom: 0;
	left: 0;
	right: 0;
	font-size: 0.9em;
	color: #666;
	background: RGB(204,204,204);
	background: RGBa(0,0,0,0.2);
}
.footer .inner {
	margin: 0 auto;
	padding: 10px;
	width: 940px;
	overflow: hidden;
}
.footer .copyright {
	float: left;
	width: 400px;
	margin: 0 20px 10px 0;
}
.copyright ul {
	list-style: none;
	padding: 0;
	margin: 0;
}
.copyright ul li {
	float: left;
	padding: 0 1em 0 0;
	margin: 0 1em 0 0;
	border-right: 1px solid #bbc;
}
.copyright ul li.last {
	border-right: 0;
}
.footer .links {
	float: left;
	width: 340px;
	margin: 0 10px 10px 10px;
}
.footer ul {
	list-style: none;
	padding: 0;
	margin: 0;
	overflow: hidden;
}
.footer .links ul li {
	float: left;
	display: inline;
	margin: 0 1em 0 0;
	padding: 0 1em 0 0;
	border-right: 1px solid #666;
}
.footer .links ul li.last {
	border-right: 0;
}
.footer .external {
	float: left;
	width: 150px;
	padding: 0 0 0 10px;
	margin: 0 0 10px;
}
.footer .external li {
	line-height: 1;
	padding 0;
	margin: 0;
}
.footer .external li a {
	display: block;
	padding: 3px 0 8px 25px;
	background-repeat: no-repeat;
	background-position: 0 0;
}
.footer .external li a:hover {
	background-position: 0 -100px;
}
.footer .external li.youtube a {
	background-image: url(../assets/images/construct/bullet_youtube.png);
}
.footer .external li.twitter a {
	background-image: url(../assets/images/construct/bullet_twitter.png);
}

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


.formRow {
	padding: 0 0 10px;
}
.formRow label {
	text-transform: uppercase;
	display: block;
	padding: 0 0 0.2em;
}
.formRow label.remove,
.formRow label span {
	display: none;
}
.formRow input,
.formRow textarea,
.formRow select {
	width: 244px;
	padding: 4px 2px;
	margin: 0 0 2px;
	border: 1px solid #333;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-weight: 500;
	font-size: 1.2em;
}
.contactZilli .formRow input,
.contactZilli .formRow textarea,
.contactZilli .formRow select {
	width: 514px;
}
.bookTable.first input {
	width: 324px;
}
.checkbox .formRow input {
	float: left;
	width: auto;
	padding: 0;
	margin: 2px 10px 0 0;
	border: 0;
}
.formRow select {
	width: 250px;
}
.contactZilli .formRow select {
	width: 520px;
}
.formRow input[type="file"] {
	border: 0;
}
.formRow textarea {
	height: 100px;
}
form.bookTable {
	float: left;
	font-size: 0.9em;
	background: RGB(255,255,255);
	background: RGBa(255,255,255,0.4);
	padding: 10px;
	width: 500px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}
form.bookTable.first {
	clear: left;
	width: 580px;
}
form.bookTable p {
	padding: 0 0 0.2em;
	text-transform: uppercase;
	display: block;
	line-height: 1;
}
form.bookTable p.note,
form.bookTable p.error,
form.bookTable #notice p {
	text-transform: none;
	line-height: 1.2;
}
form.bookTable p.error {
	color: #900;
}
form.bookTable #notice p {
	padding: 0 5px 10px 0;
}
.formRow.datepicker {
	float: left;
	margin: 0 10px 0 0;
}
.otherDeets,
.restDeets {
	float: left;
	width: 250px;
}
.restDeets {
	width: 230px;
	margin: 0 20px 0 0;
}
.timepicker .formRow{
	float:left;
}
.party .formRow{
	clear:left;
}
.timepicker .formRow select,
.party .formRow select {
	width: 50px;
	
}
.restDeets .formRow select {
	width: 220px;
}
.timepicker .formRow label {
	display: none;
}
#datepickerInputInline {
	width: 220px;
	overflow: hidden;
}
#datepickerInputInline select {
	width: 102px;
	margin: 0 5px 0 0;
}
#datepickerInputInline table {
	width: 220px;
	border-top: 1px solid RGBa(0,76,51,0.3);
	background: RGBa(0,76,51,0.1);
}
#datepickerInputInline tbody td {
	background: RGBa(0,76,51,0.2);
}
#datepickerInputInline table td,
#datepickerInputInline table th {
	text-align: center;
	border-left: 1px solid RGBa(0,76,51,0.3);
	border-right: 1px solid RGBa(0,76,51,0.3);
	border-bottom: 1px solid RGBa(0,76,51,0.3);
	width: 14%;
}#datepickerInputInline table th {
	padding: 3px;
}
#datepickerInputInline table td a {
	padding: 3px;
	display: block;
}
#datepickerInputInline table td a:hover {
	background: RGBa(0,76,51,0.6);
	text-decoration: none;
	color: RGB(255,255,255);
}
.datepick-header {
	width: 215px;
	padding: 5px 0 5px 5px;
	background: RGBa(0,76,51,0.4);
}
.datepick-links {
	position: relative;
	font-size: 1.2em;
	width: 220px;
	overflow: hidden;
	padding: 5px 0;
}
.datepick-current {
	width: 75px;
	left: 0;
	right: 0;
	position: absolute;
	margin: 0 auto;
	text-align: center;
}
.datepick-prev {
	float: left;
}
.datepick-next {
	float: right;
}
#datepickerInputInline table td.datepick-unselectable {
	color: #eee;
	background: #ccc;
	padding: 3px;
}
td.datepick-today a {
	background: RGBa(0,76,51,0.2);
}
#green td.datepick-current-day a {
	background: RGB(0,76,51);
	color: RGB(255,255,255);
	text-shadow: none;
}
#googlemap {
	width: 510px;
	height: 300px;
	margin: 0 0 1em;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	border: 5px solid #fff;
}
#dirForm .formRow {
	float: left;
}
#dirForm .formRow input {
	width: 380px;
}
#dirForm .formRow label {
	display: none;
}
#dirForm .formActions {
	float: right;
}
#directions {
	clear: both;
}


/* -------------------------------
   GENERAL LAYOUT TRICKERY
   ----------------------------- */ 

.clearfix:after {
    content: "."; 
    display: block; 
    height: 0;
    clear: both; 
    visibility: hidden;
}
.clearfix {display: inline-block;}
/* Hides from IE-mac \*/
* html .clearfix {height: 1%;}
.clearfix {display: block;}
/* End hide from IE-mac */

.hide {
	visibility: hidden;
}
.remove {
	display: none;
}
p.nospace {
	padding-bottom: 0.2em;
}

.ddp {
	display: block;
	float: right;
	height: 12px;
	width: 88px;
	padding: 0;
	margin: 0;
}
/* Hides from IE-mac \*/
.ddp { overflow: hidden; }
/* End hide from IE-mac */

.ddp a {
	padding: 0;
	margin: 0;
	display: block;
	text-indent: -5000px;
	width: 88px;
	height: 12px;
	background-image: url(../assets/images/construct/ddp.png);
	background-repeat: no-repeat;
	background-color: transparent;
}
.ddp a:hover {
	background-position: 0 -12px;
	background-color: transparent;
}


.gallery ul.galleria {
	list-style:none;
	padding: 10px 0 0;
	margin: 0;
	overflow: hidden;
}
.galleria li {
	display:block;
	width:50px;
	height:50px;
	overflow:hidden;
	float:left;
	margin:0 10px 10px 0;
}
.galleria li a{display:none}
.galleria li div{position:absolute;display:none;top:0;left:180px}
.galleria li div img{cursor:pointer}
.galleria li.active div img,.galleria li.active div{display:block}
.galleria li img.thumb{
	cursor:pointer;
	top:auto;
	left:auto;
	display:block;
	width:auto;
	height:auto;
}
.galleria li .caption{display:block;padding-top:.5em}
* html .galleria li div span{width:400px} /* MSIE bug */
