/*
Theme Name: CaterMap
Theme URI: http://www.catermap.co.uk/
Description: CaterMap WordPress theme
Version: 2.0
Author: Craig Buckler
Author URI: http://optimalworks.net/
*/

/* import fonts */
@import url(http://fonts.googleapis.com/css?family=Anton|Droid+Sans:400,700);

body
{
	position: relative;
	font-family: "Droid Sans", arial, helvetica, freesans, sans-serif;
	font-size: 85%;
	font-weight: 400;
	padding: 0;
	margin: 0;
	color: #716851;
	background: #f4f3db url("images/background.png") 0 0 repeat;
	border: 0 none;
	overflow-x: hidden;
	overflow-y: scroll;
}

header, article, footer, section, aside, nav, #search
{
	display: block;
	width: auto;
	padding: 0;
	margin: 0;
}

/* header */
header
{
	position: relative;
	min-width: 320px;
	padding: 0;
	background: #442916 url("images/header/background.jpg") 50% 100% no-repeat;
	overflow: hidden;
}

.main header
{
	height: 245px;
}

header #search p
{
	position: relative;
	margin-top: 10px;
	text-align: center;
	z-index: 999998;
}

header #search a
{
	display: block;
	text-decoration: none;
}

header #search img
{
	display: block;
	margin: 0 auto;
}

header #search span
{
	display: block;
	font-size: 0.95em;
	font-weight: 700;
	text-decoration: none;
	color: #e7d8af;
	text-shadow: 1px 1px 2px rgba(0,0,0,0.7);
}

header div
{
	position: absolute;
	top: 0;
	left: 0;
	min-width: 294px;
	width: 100%;
	height: 100%;
}

header div p
{
	width: 94%;
	max-width: 960px;
	margin: 110px auto 0;
}

header div strong, header div span
{
	display: block;
	float: left;
	width: 45%;
	margin-bottom: 6px;
	color: #fff;
}

header div strong
{
	font-family: Anton, impact, arial, helvetica, freesans, sans-serif;
	font-size: 2em;
	font-weight: 400;
	line-height: 1em;
	text-transform: uppercase;
	text-shadow: 2px 2px 0px #000;
}

header div span
{
	float: right;
	font-size: 0.9em;
	line-height: 1.1em;
	text-align: right;
	text-shadow: 0px 1px 0px #000, 1px 1px 0px #000;
}

/* breadcrumbs */
div#breadcrumbs
{
	width: 100%;
	height: 60px;
	background: #f8f8f3 url("images/location.png") 0 0 repeat-x;
	box-shadow: 0 -2px 4px rgba(0,0,0,0.3);
}

div#breadcrumbs p
{
	text-transform: uppercase;
	line-height: 60px;
	margin: 0 3%;
	color: #676358;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

div#breadcrumbs a
{
	font-weight: 400;
	text-decoration: none;
	color: #948e7e;
}

div#breadcrumbs a:hover, div#breadcrumbs a:focus
{
	text-decoration: underline;
}

/* article */
#page
{
	background: url("images/header-shadow.png") 50% 0 no-repeat, url("images/footer-shadow.png") 50% 100% no-repeat;
	overflow: auto;
}

.content
{
	overflow: auto;
}

article
{
	padding: 45px 3% 0;
}

aside
{
	clear: both;
	padding: 20px 3% 45px;
}

/* news list */
ul#news
{
	list-style-type: none;
	padding: 0;
	margin: 0;
	overflow: auto;
}

ul#news li
{
	clear: both;
	padding: 0;
	margin: 0 0 2em 0;
	overflow: auto;
}

ul#news li a
{
	display: block;
	font-weight: 400;
	text-decoration: none;
}

ul#news li strong
{
	display: block;
	text-decoration: none;
	overflow: hidden;
}

ul#news li span.date
{
	display: block;
	font-size: 0.8em;
	color: #978c6f;
}

ul#news li span.ex
{
	display: block;
	font-size: 0.85em;
	color: #716851;
}

/* article back/next */
ul#newsnav
{
	clear: both;
	list-style-type: none;
	padding: 0;
	margin: 1em 0;
	overflow: auto;
}

ul#newsnav li.back, ul#newsnav li.next, ul#newsnav strong, ul#newsnav span
{
	display: inline;
	float: left;
	width: 40%;
	padding: 0;
	margin: 0;
}

ul#newsnav strong { width: 4em; }
ul#newsnav span { width: auto; font-weight: 400; }

ul#newsnav li.next, ul#newsnav li.next strong, ul#newsnav li.next span
{
	float: right;
	text-align: right;
}

ul#newsnav li strong
{
	display: block;
}

/* paged navigation */
ol#pagenav
{
	clear: both;
	display: inline;
	float: right;
	list-style-type: none;
	padding: 0;
	margin: 1em 0;
}

ol#pagenav li
{
	display: inline;
	float: left;
	line-height: 3.5em;
	padding: 0;
	margin: 2px 0 0 2px;
}

ol#pagenav a, ol#pagenav strong, ol#pagenav span
{
	display: block;
	width: 3.5em;
	height: 3.5em;
	font-size: 1.2em;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
	line-height: 3.4em;
	color: #fff;
	background-color: #716851;
	border: 2px solid #716851;
	border-radius: 5px;
}

ol#pagenav li.control a, ol#pagenav li.control span
{
	font-weight: 400;
}

ol#pagenav span
{
	color: #cfc97e;
	background-color: #f1efd6;
	border-color: #cfc97e;
}

ol#pagenav a:link, ol#pagenav a:visited
{
	color: #442916;
	background-color: #f1efd6;
}

ol#pagenav a:hover, ol#pagenav a:focus
{
	color: #417917;
	background-color: #fff;
	border-color: #417917;
}

/* menu */
nav#submenu
{
	display: none;
}

nav#mainmenu
{
	font-family: Anton, impact, arial, helvetica, freesans, sans-serif;
	padding: 20px 3%;
	margin: 0;
	background: #442916 url("images/header/background.jpg") 50% 100% no-repeat;
}

nav ul, nav ul li
{
	list-style-type: none;
	padding: 0;
	margin: 0;
}

nav ul li
{
	margin: 2px 0;
}

nav ul ul
{
	display: none;
}

nav ul li.open ul, nav ul li.active ul
{
	display: block;
	margin: 0 0 0 20px;
}

nav a:link, nav a:visited
{
	display: block;
	font-size: 1.3em;
	font-weight: 400;
	text-transform: uppercase;
	text-decoration: none;
	height: 2.4em;
	line-height: 2.3em;
	padding: 0 0 0 20px;
	color: #716851;
	background-color: #d0cec6;
	border: 2px solid #d0cec6;
	-moz-border-radius: 6px;
	-webkit-border-radius: 6px;
	border-radius: 6px;
}

nav ul li.active > a,
nav a:hover, nav a:focus, nav a:active
{
	color: #fff;
	background-color: #716851;
}

nav li.open a
{
	background-image: url("images/arrow.png");
	background-position: 6px 50%;
	background-repeat: no-repeat;
}

nav ul li.open ul a, nav ul li.active ul a
{
	font-weight: 400;
	background-image: none;
}

/* footer */
footer
{
	padding: 30px 3%;
	background: #fff url("images/footer.png") 0 1px repeat-x;
	border-top: 1px solid #dcdabe;
}

footer section
{
	margin: 30px 0;
}

section#copyright p
{
	text-align: center;
	margin: 0;
}

/* hCard address microformat */
.vcard
{
	margin: 0.5em auto 2em auto;
}

footer .vcard
{
	margin: 0 0 1em 0;
	color: #716851;
}

.vcard dl, .vcard dt, .vcard dd, .vcard ul, .vcard li, .vcard p
{
	list-style-type: none;
	padding: 0;
	margin: 0;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.vcard dt
{
	font-size: 0.9em;
	line-height: 1em;
}

.vcard .tel dd
{
	font-size: 1.8em;
	letter-spacing: -0.05ex;
}

.vcard dd
{
	margin-bottom: 10px;
}

.vcard a:link, .vcard a:visited
{
	font-weight: 400;
	text-decoration: none;
	color: #716851;
}

.vcard p.add a:link, .vcard p.add a:visited
{
	clear: both;
	display: block;
	font-size: 1em;
	padding: 0 0 0 22px;
	margin: 0.8em 0 0 0;
	color: #716851;
	background: url("images/vcard.png") 0 60% no-repeat;
}

/* typography */
h1, h2, h3
{
	clear: both;
	font-family: Anton, impact, arial, helvetica, freesans, sans-serif;
	font-size: 1.8em;
	font-weight: 400;
	line-height: 1em;
	text-transform: uppercase;
	margin: 0 0 3px 0;
	color: #c3bf9d;
	text-shadow: 0 -1px 0px rgba(0,0,0,0.4);
}

h2
{
	font-size: 1.6em;
	margin-top: 1.5em;
}

aside h2:first-child
{
	margin-top: 0;
}

h3
{
	font-size: 1.4em;
	margin-top: 1.5em;
}

ul, ol
{
	padding: 0;
	margin: 1em 0 1.5em 3em;
}

ul
{
	list-style-type: disc;
}

li
{
	padding: 0;
	margin: 0.8em 0;
}

p
{
	line-height: 1.4em;
	margin: 0 0 1em 0;
}

p.date
{
	font-size: 0.9em;
	color: #978c6f;
}

#pagelist p.date
{
	margin: 0;
}

blockquote
{
	font-size: 1.1em;
	font-style: italic;
	padding: 0.6em 0 0 1em;
	margin: 0 0 1.5em 1em;
	background: url("images/quote.png") 0 0 no-repeat;
}

a img
{
	border: 0 none;
}

article img, aside img
{
	clear: right;
	display: inline;
	float: right;
	max-width: 50%;
	padding: 6px;
	margin: 0 2px 15px 15px;
	background-color: #fff;
	border: 1px solid #c3bf9d;
	border-right-color: #e2e1cf;
	border-bottom-color: #e2e1cf;
}

article img.left, ul#news li img, #pagelist img
{
	clear: left;
	float: left;
	margin: 0 15px 4px 2px;
}

article img.center
{
	clear: both;
	display: block;
	float: none;
	margin: 15px auto;
}

#pagelist img
{
	margin-bottom: 1.5em;
}

strong
{
	font-weight: 700;
}

a:link
{
	font-weight: 700;
	color: #485e38;
	text-decoration: none;
}

a:visited
{
	color: #927430;
}

a:hover, a:focus, a:active
{
	color: #417917;
	text-decoration: underline;
}

h2 a:link
{
	font-weight: 400;
}

a.newsview:link, a.newsfeed:link
{
	display: block;
	font-weight: 400;
	padding-left: 20px;
	background: url("images/news.png") 0 2px no-repeat;
}

a.newsfeed:link { background-image: url("images/feed.png"); }

/* forms */
form
{
	padding: 0;
	margin: 0;
}

fieldset
{
	padding: 0;
	margin: 1em 0;
	border: 0 none;
}

legend
{
	font-size: 1.2em;
	padding: 0;
	margin: 0 0 0.5em 0;
	color: #716851;
}

fieldset div
{
	clear: both;
	padding: 0;
	margin: 3px;
}

fieldset label
{
	display: block;
	margin: 5px 0 2px 0;
}

fieldset .checkbox label
{
	display: inline;
}

fieldset label.help
{
	display: none;
	font-size: 0.85em;
	font-weight: 400;
	font-style: italic;
	margin: 1em 0 0 0;
}

fieldset div.error label.help { display: block; }

input, textarea, select
{
	font-family: arial, helvetica, freesans, sans-serif;
	font-size: 1em;
	width: 96%;
	padding: 4px 4px 5px 4px;
	margin: 0;
	color: #948e7d;
	background-color: #f2ebd8;
	border: 0 none;
	border-radius: 3px;
	box-shadow: inset 0 1px 2px rgba(0,0,0,0.4);
}

textarea
{
	overflow: auto;
}

input:focus, textarea:focus, select:focus
{
	color: #222;
	background-color: #f4f2d9;
}

.checkbox input
{
	display: inline;
	float: left;
	width: auto;
	padding: 0;
	margin: 0.2ex 0.5ex 0 2%;
	border: 0 none;
	color: #fff;
	background: transparent none !important;
	outline: 0 none;
	box-shadow: none;
}

div.button
{
	text-align: center;
}

button, a.button
{
	clear: both;
	display: block;
	width: 8em;
	font-family: Anton, impact, arial, helvetica, freesans, sans-serif;
	font-size: 1.3em;
	font-weight: 400;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
	padding: 4px 10px;
	margin: 10px auto;
	color: #fff;
	background-color: #719757;
	background-image: -webkit-linear-gradient(#a5bd95, #455b35);
	background-image: -moz-linear-gradient(#a5bd95, #455b35);
	background-image: -ms-linear-gradient(#a5bd95, #455b35);
	background-image: -o-linear-gradient(#a5bd95, #455b35);
	background-image: linear-gradient(#a5bd95, #455b35);
	border: 0 none;
	text-shadow: -1px -1px 1px rgba(0,0,0,0.5);
	border-radius: 7px;
	box-shadow: 0 0 3px rgba(0,0,0,0.5);
	cursor: pointer;
}

button
{
	padding: 0;
}

button:hover, button:focus,
a.button:hover, a.button:focus
{
	background-color: #88da52;
	background-image: -webkit-linear-gradient(#9de171, #417917);
	background-image: -moz-linear-gradient(#9de171, #417917);
	background-image: -ms-linear-gradient(#9de171, #417917);
	background-image: -o-linear-gradient(#9de171, #417917);
	background-image: linear-gradient(#9de171, #417917);
}

.error { font-weight: bold; color: #c00; }

/* search */
input#s
{
	width: 92%;
	max-width: 300px;
	padding: 4px 2px;
	margin: 5px auto;
	background-color: #d2cdbd;
	box-shadow: inset 0 1px 4px rgba(0,0,0,0.3);
}

input#s:focus { outline: 0 none; }

input#ss
{
	float: none;
	font-size: 0;
	width: 22px;
	height: 22px;
	vertical-align: middle;
	padding: 0;
	margin: 0 0 0 -24px;
	border: 0 none;
	background: transparent url("images/search.png") 50% 50% no-repeat;
	box-shadow: none;
	cursor: pointer;
}

/* print styles */
@media print
{
	header div, aside, #breadcrumbs, nav, ul#newsnav, ol#pagenav, #search input, #quickenquiry, p.add
	{
		display: none;
	}

	header, .main header, article, footer
	{
		height: auto;
		padding: 0;
		margin: 30px 0;
		border: 0 none;
	}

	header, .main header
	{
		padding-bottom: 10px;
		border-bottom: 1px solid #000;
	}

	h1, h2, h3, header #search p a span
	{
		text-transform: none;
		text-shadow: none;
	}

	footer
	{
		padding-top: 10px;
		border-top: 1px solid #000;
	}

	*, a:link, a:visited
	{
		font-weight: 400;
		color: #000 !important;
	}

	section.vcard
	{
		page-break-inside: avoid;
	}

}
