/*
Main CSS for site
by Simon Pollard - Deckchair UK Ltd
http://deckchair.co.uk
*/

/*
Sticky Footer Solution by Steve Hatcher
http://www.cssstickyfooter.com
*/

* {margin:0;padding:0;}

/* must declare 0 margins on everything, also for main layout components use padding, not
vertical margins (top and bottom) to add spacing, else those margins get added to total height
and your footer gets pushed down a bit more, creating vertical scroll bars in the browser */

html, body, #wrap {height: 100%;}

body > #wrap {height: auto; min-height: 100%;}

#main {padding-bottom: 274px;}  /* must be same height as the footer */

#footer {position: relative;
	margin-top: -274px; /* negative value of footer height */
	padding-top: 20px;
	height: 254px;
	clear:both;
	background-image: url(../images/footer_bg.gif);
	background-repeat: repeat-x;
}

/* CLEAR FIX*/
.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 */

/* General Content Styles */
body {
	background: url(../images/index/index_bg.gif) repeat-x;
}
#main_content, #header {
	width: 940px;
	margin-left: auto;
	margin-right: auto;
}
a img {
	border: none;
}
a {
	outline: none;
}
p {
	margin-bottom: 10px;
}

/* 
Header Styles
*/
#header {
	background: url(../images/index/index_bg.gif) repeat-x #112e4c;
	height: 131px;
	position: relative;
	margin-bottom: 20px;
}
/* logo */
h1 {
	position: absolute;
	left: 0px;
	top: 25px;
}
h1 a {
	width: 233px;
	height: 61px;
	display: block;
}
h1 a img {
	border: none;
	position: absolute;
	left: 0px;
	top: 0px;
}
/* header links */
#main_links {
	position: absolute;
	right: 0px;
	bottom: 0px;
	height: 89px;
}
#main_links a {
	float: left;
	height: 70px;
	width: 115px;
	text-align: center;
	display: block;
	padding-bottom: 19px;
	position: relative;
}
#main_links a:hover {
	background: url(../images/pink_select.gif) center bottom no-repeat;
}
#main_links a span.main_link_top {
	display: block;
	width: 115px;
	height: 20px;
	text-align: center;
	border-left: 1px solid #41586f;
	cursor: pointer;
}
#main_links a span.main_link_bottom {
	display: block;
	width: 115px;
	height: 50px;
	text-align: center;
	position: absolute;
	top: 20px;
	left: 0px;
	border-left: 1px solid #41586f;
	cursor: pointer;
}
a#contact_link span.main_link_top, a#contact_link span.main_link_bottom {
	border-right: 1px solid #41586f;
}

body.portfolio a#portfolio_link, body.services a#services_link, body.about a#about_link, body.blog a#blog_link, body.contact a#contact_link {
	background-image: url(../images/blue_select.gif) center bottom no-repeat;
}
body.portfolio a#portfolio_link:hover, body.services a#services_link:hover, body.about a#about_link:hover, body.blog a#blog_link:hover, body.contact a#contact_link:hover {
	background-image: url(../images/blue_select.gif) center bottom no-repeat;
}


/* Footer styles */
#footer_content {
	background-image: url(../images/footer_bg.gif)repeat-x bottom #354f69;
	width: 940px;
	height: 254px;
	margin-left: auto;
	margin-right: auto;
	position: relative;
}
#footer_content div {
	width: 295px;
	float: left;
}
#footer_content .column1, #footer_content .column2 {
	margin-right: 23px;
}
#footer_content h5 {
	padding-bottom: 10px;
	margin-bottom: 10px;
	border-bottom: 1px solid #7fd6f2;
}
#footer_content p {
	margin-bottom: 8px;
}
#footer_content a.twitter {
	background: url(../images/twitter.gif) no-repeat right;
	padding-top: 3px;
	height: 19px;
	width: 130px;
	padding-right: 25px;
	display: block;
}
#footer_content a:hover {
	text-decoration: underline;
}
#footer_content input#mce-EMAIL {
	padding: 5px;
	width: 285px;
	margin-top: 10px;
	margin-bottom: 10px;
}
div#footer_copywrite {
	position: absolute;
	left: 0px;
	bottom: 5px;
}
div#footer_links {
	position: absolute;
	right: 0px;
	bottom: 5px;
	text-align: right;
}

/* Lightbox style effect stuff */
#cover {
	height:100%;
        position: fixed;
        _position: absolute;
	top:0;
	left:0;
	width:100%;
	z-index:100;
	background-color: #000000;
	filter: alpha(opacity=0);
	-moz-opacity: 0;
	opacity: 0;
        z-index: 1001;
}
#cover-content {
	-moz-background-clip:border;
	-moz-background-inline-policy:continuous;
	-moz-background-origin:padding;
        -moz-border-radius-bottomright: 25px;
        -webkit-border-bottom-right-radius: 25px;
        -moz-border-radius-bottomleft: 25px;
        -webkit-border-bottom-left-radius: 25px;
	background:#FFFFFF none repeat scroll 0 0;
	border: 2px solid #525252;
	color: #000000;
        position: fixed;
        _position: absolute;
	top:50%;
	left:50%;
	z-index:102;
	display: none;
	text-align:left;
        z-index: 1002;
}
#cover-content p {
	margin-left: 5px;
}
.loading {
	position: relative;
	width: 100%;
	height: 100%;
}
.loading p, #map p {
	width: 200px;
	margin-right: -100px;
	height: 40px;
	margin-top: -20px;
	text-align: center;
	position: absolute;
	top: 50%;
	right: 50%;
	color: #ec008c;
}
#close_map {
	background-color: #fff;
	padding: 5px;
	position: absolute;
	top: 440px;
	right: 10px;
}
#close_map a {
	color: #0072bc;
	text-decoration: none;
	font-weight: 700;
	font-family: Verdana, Geneva, sans-serif;
	font-size: 12px;
}
#close_map a:hover {
	text-decoration: underline;
}

#cover-content form {
    padding: 10px;
}
#cover-content form input, #cover-content textarea {
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
}
#cover-content h3 {
    padding: 10px;
    background: #eee;
}
#close_email {
    position: absolute;
    right: 15px;
    top: 15px;
    border: 1px solid #0072BC;
    padding: 4px;
    display: block;
    background: #fff;
}
#close_email:hover {
    background: #0072BC;
    color: #fff;
    text-decoration: none;
}
#contact_popup_link {
    position: fixed;
    right: 50%;
    margin-right: -550px;
    top: 175px;
    border: 1px solid #0072BC;
    background: #fff;
    display: block;
    padding: 4px 6px 4px 6px;

    -webkit-transform: rotate(90deg);
    -moz-transform: rotate(90deg);
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
}
#contact_popup_link:hover {
    text-decoration: none;
    background: #0072BC;
    color: #fff;
}
* html #contact_popup_link {
    position: absolute;
}