*, *:before, *:after { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }
html, body, div, span, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, em, img, strike, strong, sub, sup, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
	margin: 0; padding: 0; border: 0; font-size: 100%; vertical-align: baseline; }
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }
body {
	font-family: 'Lato', sans-serif;
	font-size: 1em; color: #333;
	-webkit-font-smoothing: antialiased;  -webkit-text-size-adjust: 100%; background-color: #fff;
}
ul { list-style: none; }
h1,h2,h3,h4,ul {  }
h1 { font-size: 2em;    line-height: 1.25em;   margin-bottom: 14px;    font-weight: normal; text-transform: uppercase; }
h2 { font-size: 1.4em;  line-height: 1.2em; margin-bottom: 10px;    font-weight: normal;  }
h3 { font-size: 1.25em; line-height: 1.1em; margin-bottom: 8px;     font-weight: normal;  }
h4 { font-size: 1em;    line-height: 1em;   margin-bottom: 4px;     font-weight: normal;  }
h5 { font-size: 1em;    line-height: 1em;   font-weight: normal;    }
p { font-family: 'Sorts Mill Goudy', serif; margin: 0px;  padding-bottom: 20px; line-height: 1.5em; font-size: 1.1em; }
em { font-style: italic; }
strong { font-weight: bold; }
small { font-size: 80%; }
hr { border: solid #000; border-width: 1px 0 0; clear: both; margin: 10px 0 10px; height: 0; }
a, a:visited { color: #cc0000; text-decoration: none; outline: 0; }
a:hover, a:focus { color: #cc9900; text-decoration: none; }
a.inverted, a.inverted:visited { color: #cc0000; text-decoration: none; outline: 0; }
a.inverted:hover, a.inverted:focus { color: #cc9900; text-decoration: none; }
p a, p a:visited { line-height: inherit; }
.clearfix:before,
.clearfix:after { content: '\0020'; display: block; overflow: hidden; visibility: hidden; width: 0; height: 0; }
.clearfix:after { clear: both; }
.clearfix { zoom: 1; }
.clear { clear: both; display: block; overflow: hidden; visibility: hidden; width: 0; height: 0; }
/* --------------------------------------------------------------- */

body { background-color: #efefef; }

/* Page Header */
header {
	width: 100%; position: relative; overflow: hidden;
	background: #a90329;
	background: -moz-linear-gradient(-45deg, #a90329 0%, #8f0222 44%, #6d0019 100%);
	background: -webkit-linear-gradient(-45deg, #a90329 0%,#8f0222 44%,#6d0019 100%);
	background: linear-gradient(135deg, #a90329 0%,#8f0222 44%,#6d0019 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#a90329', endColorstr='#6d0019',GradientType=1 );
}
header h1 {
	font-weight: bold; color: #ffcc00; text-align: center; font-family: 'Sorts Mill Goudy', serif; margin: 20px auto 0 auto; width: 400px; padding-bottom: 80px;
	background-size: contain; background-position: bottom left; background-image: url(/hamish/gfx/headerDivide.png); background-repeat: no-repeat;
}
header h2 { text-align: center; color: #ffcc00; text-transform: uppercase; font-family: 'Sorts Mill Goudy', serif; margin: 20px auto; width: 400px; }
header a { color: #ddaa00; }
header a:visited { color: #ddaa00; }
header a:active { color: #ddaa00; }
header a:hover { color: #ddaa00; }

/* Top menu - home, about, contact */
div.top-menu { width: 100%; position: relative; overflow: hidden;
	background: #99432d;
	background: -moz-linear-gradient(top, #99432d 0%, #8c3310 40%, #752201 59%, #8e4e3a 100%);
	background: -webkit-linear-gradient(top, #99432d 0%,#8c3310 40%,#752201 59%,#8e4e3a 100%);
	background: linear-gradient(to bottom, #99432d 0%,#8c3310 40%,#752201 59%,#8e4e3a 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#99432d', endColorstr='#8e4e3a',GradientType=0 );
	box-shadow: 0px 2px 5px #000;
}
div.top-menu ul { position: relative; overflow: hidden; padding: 0px; margin: 0px; list-style: none; text-align: center; }
div.top-menu ul li { padding: 0 25px 0 25px; margin: 0px; display: inline-block; text-align: center; }
div.top-menu ul li.active { font-weight: bold; }
div.top-menu ul li a { text-transform: uppercase; font-size: 0.85em; display: inline-block; color: #ffffff; padding: 8px 0px 8px 17px; background-repeat: no-repeat; background-position: top 11px left; background-size: 10px 10px; }
div.top-menu ul li a:hover { color: #ddaa00; }
div.top-menu ul li.home a { background-image: url(/hamish/gfx/iconHome.svg); }
div.top-menu ul li.about a { background-image: url(/hamish/gfx/iconAbout.svg); }
div.top-menu ul li.contact a { background-image: url(/hamish/gfx/iconContact.svg); }
div.top-menu ul li.search a { background-image: url(/hamish/gfx/iconSearch.svg); }

div.sub-menu { padding: 0 0 5px 0; width: 100%; position: relative; overflow: hidden;
	background: #f2e146;
	background: -moz-linear-gradient(-45deg, #f2e146 0%, #ddaa00 100%);
	background: -webkit-linear-gradient(-45deg, #f2e146 0%,#ddaa00 100%);
	background: linear-gradient(135deg, #f2e146 0%,#ddaa00 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f2e146', endColorstr='#ddaa00',GradientType=1 );
}
div.sub-menu ul { position: relative; overflow: hidden; padding: 0px; margin: 5px 70px 5px 70px; list-style: none; text-align: center; }
div.sub-menu ul li { padding: 5px 15px 5px 15px; margin: 0px; display: inline-block; text-align: center; }
div.sub-menu ul li.menu-item a { color: #333333; text-decoration: none; padding-left: 17px;
	background-repeat: no-repeat;
	background-position: top 4px left;
	background-size: 12px 12px;
	background-image: url(/hamish/gfx/iconBook1.svg);
}
div.sub-menu ul li a:hover { color: #cc0000; }
div.sub-menu ul li.active { font-weight: bold; }

div.page { min-height: 800px; width: 90%; margin: 0 auto; padding: 40px; background-color: #fff; }

div.container { position: relative; overflow: hidden; }
div.container div.col1 { position: relative; overflow: hidden; width: 50%; float: left; }
div.container div.col2 { position: relative; overflow: hidden; width: 50%; float: left; }

a.button { position: relative; display: inline-block; font-family: 'Lato', sans-serif; padding: 8px 13px; background-color: #000; color: #fff; text-transform: uppercase; font-size: 0.7em;}
a.button:hover { background-color: #cc0000; }

button.button { position: relative; display: inline-block; font-family: 'Lato', sans-serif; padding: 12px 18px; background-color: #000; color: #fff; text-transform: uppercase; border: 0}
button.button:hover { background-color: #cc0000; }

/* About Page */
div.about-image { width: 200px; height: 200px; float: right; margin-left: 30px; }
div.about-image img { width: auto; height: auto; }

/* Category Page */
div.category-header { position: relative; overflow: hidden; }
div.category-header h1 { margin-bottom: 20px; }
div.category-header div.category-image { width: 200px; height: 200px; float: right; margin-left: 30px; }
div.category-header div.category-image img { width: 100%; height: 100%; }

div.category-items { width: 100%; position: relative; overflow: hidden; }

div.category-item { width: 100%; position: relative; overflow: hidden; margin-top: 25px; padding-top: 25px; border-top: 1px solid #eee;}
div.category-item div.image { width: 200px; float: left; margin-right: 30px;  }
div.category-item div.image img { width: 200px; height: auto;   }
div.category-item h3 { font-weight: bold; }
div.category-item h4 { font-weight: bold; margin-top: 5px; margin-bottom: 20px; }
div.category-item a.button { float: right; margin: 0 5px 0 5px; }

div.document-item { position: relative; overflow: hidden; width: 100%; }
div.document-item div.detail { width: auto; float: left; margin-left: 250px;  }
div.document-item div.detail h1, div.document-item div.detail h2 { font-weight: bold; color: #cc0000; }
div.document-item div.detail h3 { font-weight: bold; margin-bottom: 20px; }
div.document-item div.images { position: absolute; top: 0px; width: 200px; float: left;  }
div.document-item div.image { margin-bottom: 20px; }
div.document-item div.images img { max-width:100%; max-height:100%; }
div.document-item div.images p.info { width: 100%; font-size: 0.8em; font-family: 'Lato'; }

div.contact-details { width: 100%; text-align: center; }
div.contact-details div.col-1 { width: 50%; float: left; }
div.contact-details div.col-2 { width: 50%; float: left; }
div.contact-details strong { display: block; }
div.contact-details div.col-2 strong { display: inline-block; }

div.contact-form { border-top: 1px solid #ddd; margin-top: 20px; padding-top: 20px; }
div.contact-form ul { position: relative; overflow: hidden; }
div.contact-form li { width: 50%; float: left; }
div.contact-form label { width: 100px; display: inline-block; font-size: 0.8em; }
div.contact-form input[type=text] { padding: 5px; border: 1px solid #aaaaaa; border-radius: 5px; font-size: 1.1em; margin-bottom: 5px; }
div.contact-form textarea { width: 100%; height: 200px; padding: 10px; border: 1px solid #aaaaaa; border-radius: 5px; margin: 10px 0 0 0; }
div.contact-form li.message { width: 100%; float: none; }
div.contact-form h3 { margin-bottom: 20px; }

ul.home-menu {  display: grid; grid-template-columns: 1fr 1fr; grid-gap: 20px; margin-right: 20px; }
ul.home-menu li {  display: block; position: relative; overflow: hidden; }
ul.home-menu li a { font-weight: bold; height: 100%; color: #000; min-height: 105px; font-size: 0.9em;
	text-align: center; display: block; padding: 0 0 0 0;
	border: 1px solid #aaa; border-radius: 5px; margin: 0px;
}
ul.home-menu li a:hover {
	/* background-color: #ddaa00;  */
	border-color: #ddaa00;
	color: #8f0222;
}
ul.home-menu li img {
	width: 100%;
}
ul.home-menu li p {
	line-height: normal;
	font-family: 'Lato', sans-serif;
	padding: 15px;
	margin: 0 0 0 0;
}

/* Homepage - What's New Box */
div.whatsnew-wrapper { position: relative; overflow: hidden; width: 100%; margin: 0 0 20px 0; }
div.whatsnew-item { position: relative; overflow: hidden; }
div.whatsnew-item p.title { font-weight: normal; font-size: 1.2em; text-transform: uppercase; line-height: 1.2em; color: #ddaa00; margin: 0 0 20px 0; padding: 10px;
	background: #a90329;
	background: -moz-linear-gradient(-45deg, #a90329 0%, #8f0222 44%, #6d0019 100%);
	background: -webkit-linear-gradient(-45deg, #a90329 0%,#8f0222 44%,#6d0019 100%);
	background: linear-gradient(135deg, #a90329 0%,#8f0222 44%,#6d0019 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#a90329', endColorstr='#6d0019',GradientType=1 );
}
div.whatsnew-item div.image { position: relative; overflow: hidden; float: left; width: 200px;  height: 250px; margin-right: 20px; }
div.whatsnew-item div.image img { width: auto; height: auto; max-width: 100%; }
div.whatsnew-item p.text {  }
div.whatsnew-item p.link { position: absolute; right: 10px; bottom: 0px; padding: 0px; margin: 0px; }

/* Homepage - Images */
p.home-images { padding: 0px; margin: 0px; width: 100%; display: grid; grid-template-columns: 1fr 1fr; grid-gap: 10px; font-size:0; }
p.home-images span { display: block; width: 100%; }
p.home-images span img { width: 100%; height: auto; }

footer { width: 100%; position: relative; overflow: hidden; font-size: 0.8em;
		background: #a90329;
		background: -moz-linear-gradient(-45deg, #a90329 0%, #8f0222 44%, #6d0019 100%);
		background: -webkit-linear-gradient(-45deg, #a90329 0%,#8f0222 44%,#6d0019 100%);
		background: linear-gradient(135deg, #a90329 0%,#8f0222 44%,#6d0019 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#a90329', endColorstr='#6d0019',GradientType=1 );
}
footer p { color: #fff; display: inline-block; width: 33%; }
footer p.name { padding-left: 20px; }
footer p.email { text-align: right; padding-right: 20px; }
footer ul { display: inline-block; width: 33%; text-align: center; text-transform: uppercase; }
footer ul li { display: inline-block; padding: 15px; }
footer a { color: #ffffff; }
footer a:visited { color: #ffffff; }
footer a:active { color: #ddaa00; }
footer a:hover { color: #ddaa00; }

/* MOBILE */
@media only screen and (max-width: 724px) {

	.mobile { display: block; }

	header h1 { width: 290px; font-size: 1.6em; padding-bottom: 55px; }
	header h2 { width: 290px; font-size: 1em; margin: 10px auto 20px auto; }

	div.sub-menu ul li.menu-item { display: none; text-align: left; }
	div.sub-menu ul { margin: 5px 20px 5px 20px; text-align: left; }
	div.sub-menu ul li.opener { display: block; }

	div.wrapper { margin: 0px; padding: 30px; }

	div.page { width: 100%; padding: 20px; }

	div.container {  }
	div.container div.col1 { width: 100%; float: none; }
	div.container div.col2 { width: 100%; float: none; }

	div.about-image { width: 100%; float: none; margin-left: 0px; margin-bottom: 20px; }

	ul.home-menu { display: block; margin-right: 0px; }
	ul.home-menu li {  width: 100%; float: none; position: relative; overflow: hidden; }
	ul.home-menu li p { float: right; width: 40%; text-align: right;}
	ul.home-menu li a { min-height: 10px; padding: 0; margin: 5px; overflow: hidden; position: relative;}
	ul.home-menu li a:hover {  }
	ul.home-menu li img {
		width: 50%;
		float: left;
	}

	div.whatsnew-wrapper { margin-top: 20px; text-align: center; }
	div.whatsnew-item {  }
	div.whatsnew-item p.title { font-weight: bold; font-size: 1.2em; background-color: #000; color: #ddaa00; margin: 0 0 10px 0; padding: 10px; }
	div.whatsnew-item div.image { float: none; width: 100%;  height: 200px; margin-right: 0px; }
	div.whatsnew-item div.image img { width: 100%; height: auto; max-width: 200px; }
	div.whatsnew-item p.text {  }
	div.whatsnew-item p.link { position: absolute; right: 10px; bottom: 0px; padding: 0px; margin: 0px; }

	div.category-header div.category-image { width: 100%; height: 100px; float: none; text-align: center; margin: 0 0 20px 0; }
	div.category-header div.category-image img { width: 100px; height: 100px; }
	div.category-header h1 { text-align: center; }
	div.category-item a.button { width: 100%; display: block; text-align: center;}
	div.category-item h3, div.category-item h4 { text-align: center; }
	div.category-item div.image { float: right; width: 100%; text-align: center; margin: 0 0 20px 0; }
	div.category-item div.content { float: left; }
	div.category-header p, div.category-item div.content p { text-align: center; }

	div.document-item {  }
	div.document-item div.detail { width: 100%; float: none; margin-left: 0px;  }
	div.document-item div.images { position: relative; overflow: hidden; width: 100%; float: none;  }
	div.document-item div.image { width: 280px; max-height: 280px; overflow: hidden; margin: 0 20px 20px 0; float: left; }
	div.document-item div.images img {  }

	div.contact-details div.col-1 { width: 100%; float: none; }
	div.contact-details div.col-2 { width: 100%; float: none; }
	div.contact-form ul { }
	div.contact-form li { width: 100%; float: none; }

	div.contact-form label { width: 100px; display: inline-block; font-size: 0.8em; }
	div.contact-form input[type=text] { width: 100%; }
	div.contact-form textarea { width: 100%;  }

}
/* INTER */
@media only screen and (min-width: 725px) and (max-width: 1119px) {

	.mobile { display: none !important; }
	div.contact-details { width: 100%; height: auto; float: none; }

}
/* DESKTOP */
@media only screen and (min-width: 1120px) {

	.mobile { display: none !important; }
	div.sub-menu ul li.menu-item { display: inline-block; }
	div.page { width: 1100px; }

}
