/*
Theme Name: Magic Theme
Theme URI: http://example.com/example/
Description: Theme for Steve Faulkner.
Author: Remix Creative
Author URI: http://www.remixcreative.net
Version: 1.0
Tags: 
.
http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
.
*/
@charset "UTF-8";
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,
b, u, i, center,
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-size: 100%;
	vertical-align: baseline;
	background: transparent;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}

/* remember to define focus styles! */
:focus {
	outline: 0;
}

/* remember to highlight inserts somehow! */
ins {
	text-decoration: none;
}
del {
	text-decoration: line-through;
}

/* tables still need 'cellspacing="0"' in the markup */
table {
	border-collapse: collapse;
	border-spacing: 0;
}
/* Main classes */
body {background:#242424; font-family:"Droid Sans", sans-serif; color:#FFF; font-size:16px; line-height:22px;}
a:link {color: #FFF; text-decoration:underline;}
a:visited {color: #FFF;}
a:hover {color: #999;}
a:active {color: #FFF;}
#contentwrapper {background:url(images/bg-texture.png); overflow:hidden;}
#content {width:960px; margin:auto; overflow:hidden;}
.footer {height:117px; border-top:solid thin; border-top-color:#484848; padding:15px 0 15px 0;}
.footer-text {display:block; width:600px; margin:50px 0 0 0; float:left;}
.footer-content {width:960px; margin:auto; overflow:hidden; height:117px;}


/* Menu classes */
#menu {width:960px; height:73px; display:block; margin:0 auto 0 auto; font-size:21px; position:relative; z-index:10;}
#menu li {float: left; position: relative; }
#menu li a {text-decoration:none; color:#FFF; display:block; height:50px; padding:26px 24px 0 24px;}
#menu li a:hover,
#menu li a.hover {background:rgba(51, 51, 51, 0.6);}
#menu li a.selected {background:#b80404; height:50px; padding:26px 24px 0 24px}

#menu li ul { display: none; border: 1px solid #615f5f; position: absolute; top: 75px; left: 0px; }
#menu li ul li
{
	border-bottom: 1px solid #615f5f;
	height: 50px;
}
#menu li ul li.last { border: 0px; }
#menu li ul li a
{
	display: block;
	background-color: #303030;
	width: 190px;
	height: 50px;
	text-decoration: none;
	color: #fff;
	line-height: 50px;
	font-size: 17px;
	padding: 0 3px 0 20px;
}
#menu li ul li a:hover { background-color: #b80404; }

.logo {padding:65px 0 0 0; float:left;}
.logo_long {padding:45px 0 44px 0; }
.steve {float:right; margin:-35px 0 0 0;}
.remix {float:right; padding:50px 0 0 0;}
.magiccircle {float:left; padding:0 0 0 15px;}
.member {display:block; width:auto; float:right; margin:0; padding:0;}
.awards {padding:50px 0 0 0; float:left;}


/* Upper and Lower Footer */
.upper-footer {background:rgba(20, 20, 20, 0.5)  url(images/bg-texture2.png); margin:auto; padding-bottom:50px;}
.upper-content {width:960px; margin:auto; overflow:hidden;}
.whatido {width:630px; float:left; background:url(images/divider2.png) right top no-repeat;}
.contactme {width:290px; float:left; padding:0 0 0 40px;}
.whatimg {float:left; padding:0 0 25px 0;}
.serviceblock {float:left; width:630px; display:block;}
.homepage-service {width:175px; float:left; display:block; padding:0 35px 0 0; font-size:14px;}
.divider {display:block; margin:0 auto 50px auto;}
.service-h {display:block; width:175px; float:left; padding:0 0 10px 0; font-weight:100; font-size:17px;}
.readmore {display:block; float:left; padding:15px 0 0 0;}
.redhighlight {color:#b80404;}
.contactspanel {width:250px; float:left; padding:25px 0 0 0; overflow: hidden;}
.tel {display:block; width:200px; height:24px; background:url(images/tel-icon.png) no-repeat; padding:0 0 15px 40px;}
.email {display:block; width:200px; height:24px; background:url(images/envelope.png) no-repeat; padding:0 0 15px 40px; background-position:0 4px;}
.contactformbutt 
{
	float: none !important; 
	padding:0 0 0 0; 
	border: 0px !important; 
	margin: 15px 0 0 0 !important; 
	display: inline-block;
	width: 157px;
	height: 34px;
	background: url('images/contact-form.png') no-repeat;
	text-indent: -9999px;
}
.contactformbutt:hover { background-position: 0 -34px; }

.contactme .contactformbutt { margin: 10px 40px 0 0 !important; }
.contactme iframe { display: block; float: left; margin: 25px 20px 0 0; }
.contactme .twitter 
{ 
	margin-top: 22px;
	display: block; 
	float: left;
	width: 123px;
	height: 24px;
	text-indent: -99999px;
	background: url('images/follow_me.png') no-repeat;
}
.contactme .twitter:hover { background-position: 0 -24px; }

/* Testimonials */
.testimonial-panel {width:630px; float:left; margin:65px 0 0 0; height: 250px;}
.testimonial {display:block; width:256px; float:left; height:198px; background:url(images/quote.png) no-repeat; padding:0 15px 0 42px; font-size:21px; line-height:30px;}
.testimonial-who {font-size:18px;line-height:20px; font-weight:bold;}
.testimonial-where {font-size:15px;line-height:20px; font-weight:normal;}

.testimonial-page { padding: 20px 0; }
.testimonial-page #sfstest-page blockquote div.container { border-bottom: 1px solid #666; }

#sfstest-page,
#sfstest-sidebar { width: 100%; overflow: hidden; }

#sfstest-sidebar { position: relative; width: 630px; height: 250px; overflow: hidden; }
#sfstest-sidebar div.panel { width: 630px; height: 250px; position: absolute; top: 0px; left: 0px; overflow: hidden; }

#sfstest-page blockquote,
#sfstest-sidebar blockquote 
{
	position: relative;
	display:inline-block; 
	width:256px; 
	float:left; 
	min-height:30px; 
	background:url(images/quote.png) no-repeat; 
	padding:0 10px 0 42px; 
	font-size:19px; 
	line-height:30px;
	margin: 0 12px 20px 0;
}
#sfstest-sidebar blockquote { margin-right: 7px; }
#sfstest-page blockquote { width: 95%; float: none; display: block; }

#sfstest-page blockquote p,
#sfstest-sidebar blockquote p { font-size: 19px; line-height:30px; }
#sfstest-page blockquote cite.who,
#sfstest-sidebar blockquote cite.who {font-size:18px;line-height:20px; font-weight:bold;}
#sfstest-page blockquote cite.who span.where,
#sfstest-sidebar blockquote cite.who span.where {font-size:15px;line-height:20px; font-weight:normal;}

/* Pages */
.content_page { padding-bottom: 20px; }
.content_page img { float: right; border: 1px solid #666; margin: 15px 0 15px 30px; }
.content_page img.header { border: 0px; float: none; margin: 0 0 15px 0; }
.content_page p { padding: 0 0 15px 0; font-size: 14px; margin: 0; }
.content_page h2 { margin: 5px 5px 5px 0; }

.content_page .mediapack
{
	display: block; 
	float: right;
	width: 283px;
	height: 32px;
	text-indent: -99999px;
	background: url('images/media_pack.png') no-repeat;
	margin-right: 13px;
}
.content_page .mediapack:hover { background-position: 0 -32px; }

.content_page ul.services { color: #b80404; padding: 20px 0; }
.content_page ul.services li { margin-bottom: 5px; }
.content_page ul.services li.title { margin-bottom: 15px; }

/* gallery */
.content_page .ngg-galleryoverview { padding-bottom: 15px; overflow: hidden; }
.content_page .ngg-galleryoverview img { float: left; margin: 0 13px 15px 0; }

/* subscribe */
.subscribe
{
	background-color: #2b2a2a;
	border-top: 1px solid #484848;
	width: 100%;
	height: 68px;
	text-align: center;
}
.subscribe span { margin: 0 auto; width: 960px; display: block; }
.subscribe span img { margin: 22px 30px 0 0; float: left; }
.subscribe span a, 
.subscribe span a:visited
{
	float: left;
	display: block;
	width: 208px;
	height: 30px;
	background: url('images/newsletter_signup_btn.png') no-repeat;
	text-indent: -9999px;
	margin-top: 19px;
}
.subscribe span a:hover { background-position: 0 -30px; }

/* contact */
.content_page .col { width: 50%; float: left; }
.content_page .col.address { padding-top: 9px; }

.content_page .col form { }
.content_page .col form div.row 
{
	width: 100%;
	padding: 0px 5px 20px 0px;	
}
.content_page .col form div.row input,
.content_page .col form div.row textarea
{
	border: 0px;
	width: 380px;
	height: 20px;
	padding: 5px 5px 5px 15px;
	font-size: 14px;
	color: #999;
}
.content_page .col form div.row textarea { height: 147px; }
.content_page .col form div.row input.submit
{
	display: block;
	width: 156px;
	height: 30px;
	background: url('images/send_message.png');
	text-indent: -9999px;
	cursor: pointer;
}
.content_page .col form div.row input.submit:hover { background-position: 0 -30px; }

/* blog pages */
#blog {width:1000px; margin:auto; overflow:hidden;}
#blog .logo_long { padding-left: 20px; }
.blog_page { padding-bottom: 20px; margin-left: 36px; }

.posts { float: left; width: 628px; margin-right: 30px; }
.sidebar { float: left; width: 300px; }

.posts .post
{
	width: 508px;
	background-color: #fff;
	margin-bottom: 24px;
	padding: 40px 60px 40px;
	color: #7a7a7a;
	position: relative;
}
.posts .post a,
.posts .post a:visited { color: #7a7a7a; }
.posts .post a:hover { color: #b80404; }
.posts .post h2 { border-bottom: 1px solid #e7e7e7; padding-bottom: 20px; margin-bottom: 20px; }
.posts .post h2 a,
.posts .post h2 a:visited { font-size: 24px; font-weight: normal; color: #333; }
.posts .post h2 a:hover { color: #b80404; }
.posts .post .date
{
	float: left;
	display: block;
	width: 71px;
	height: 54px;
	background: url('images/date_circle.png') no-repeat;
	color: #fff;
	position: absolute;
	top: 20px;
	left: -35px;
	text-align: center;
	padding-top: 16px;
}
.posts .post .date .no { font-size: 36px; display: block; padding-bottom: 3px; }
.posts .post .date .month { font-size: 15px; }
.posts .post .post_content { overflow: hidden; padding-bottom: 40px; font-size: 14px; }
.posts .post .info { width: 100%; border-top: 1px solid #c4c4c4; border-bottom: 1px solid #c4c4c4; overflow: hidden; }
.posts .post .info .comments { border-right: 1px solid #c4c4c4; width: 33%; height: 47px; text-align: center; padding-top: 3px; float: left; }	
.posts .post .info .categories { border-right: 1px solid #c4c4c4; width: 33%; height: 47px; text-align: center; padding-top: 3px; float: left; }	
.posts .post .info .author { width: 33%; height: 47px; text-align: center; padding-top: 3px; float: left; }	
.posts .post .info strong { color: #000; font-size: 14px; display: block; }
.posts .post .info p { font-size: 14px; display: block; }

/* comments */
.comments_box
{
	width: 508px;
	background-color: #fff;
	margin-bottom: 24px;
	padding: 40px 60px 40px;
	color: #7a7a7a;
	position: relative;
}
.comments_box h2 
{ 
	border-bottom: 1px solid #e7e7e7; 
	padding-bottom: 20px; 
	margin-bottom: 20px; 
	font-size: 24px; 
	font-weight: normal; 
	color: #333; 
}
.comments_box a,
.comments_box a:visited { color: #333; }
.comments_box a:hover { color: #b80404; } 

.comments_box ol li.comment article,
.comments_box ol li.trackback article,
.comments_box ol li.pingback article { border-bottom: 1px solid #e7e7e7; padding: 20px 0; margin: 20px 0; }
.comments_box ol li.comment.depth-2,
.comments_box ol li.comment.depth-3,
.comments_box ol li.comment.depth-4,
.comments_box ol li.comment.depth-5,
.comments_box ol li.comment.depth-6,
.comments_box ol li.comment.depth-7,
.comments_box ol li.comment.depth-8,
.comments_box ol li.comment.depth-9,
.comments_box ol li.comment.depth-10 { margin-left: 15px; }

.comments_box footer { overflow: hidden; }
.comments_box .comment-author img { float: left; margin: 0 10px 20px 0;border: 1px solid #7f7f7f; }
.comments_box .comment-author .author-details { float: left; }
.comments_box .comment-author .fn { display: block; font-size: 20px; }
.comments_box .comment-author .on,
.comments_box .comment-author .date,
.comments_box .comment-author .says { font-size: 14px; }
.comments_box .comment-content { display: block; font-size: 15px; }
.comments_box .edit-link { display: block; float: right; font-size: 13px; }
.comments_box .reply { padding: 5px 0; }

/* comment form */
.comments_box h3
{ 
	border-bottom: 1px solid #e7e7e7; 
	padding-bottom: 20px; 
	margin-bottom: 20px; 
	font-size: 20px; 
	font-weight: normal; 
	color: #333; 
}
.comments_box .logged-in-as { padding: 5px 5px 5px 0; font-size: 14px; }
.comments_box form { padding-bottom: 20px; }
.comments_box .comment-form-author,
.comments_box .comment-form-email,
.comments_box .comment-form-url,
.comments_box .comment-form-comment { display: block; overflow: hidden; padding: 4px 4px 4px 0; }

.comments_box label { float: left; font-size: 15px; padding-right: 10px; width: 90px; }
.comments_box .comment-form-author .required,
.comments_box .comment-form-email .required { float: left; padding-right: 5px; }

.comments_box textarea,
.comments_box input { float: left; border: 1px solid #333; }
.comments_box input { width: 300px; height: 25px; font-size: 14px; line-height: 25px; padding-left: 5px }
.comments_box textarea { width: 300px; font-size: 14px; padding: 5px 0 0 5px; }
.comments_box .comment-form-url input,
.comments_box .comment-form-comment textarea { margin-left: 14px; }

.comments_box #submit
{
	width: 153px;
	height: 30px;
	background: url('images/post_comment.png');
	text-indent: -9999px;
	border: 0px;
	cursor: pointer;
}
.comments_box #submit:hover { background-position: 0 -30px; }

.comments_box .form-allowed-tags { font-size: 14px; padding: 10px 0; }

/* blog paging */
#wp_page_numbers
{
	width: 618px;
	height: 30px;
	border: 5px solid #efefef;
	background-color: #fff;
	margin: 30px 0;
	font-family: "Georgia", "Droid Sans", "sans-serif";
	font-size: 15px;
	text-align: center;
}
#wp_page_numbers a,
#wp_page_numbers a:visited { color: #7a7a7a; }
#wp_page_numbers a:hover { color: #f3686d; }

#wp_page_numbers ul { margin: 4px auto; line-height: 20px; overflow: hidden; }
#wp_page_numbers ul li { display: inline-block; width: 18px; height: 20px; padding-bottom: 2px; margin: 0 3px; }
#wp_page_numbers ul li.prev,
#wp_page_numbers ul li.next { width: auto;}
#wp_page_numbers ul li.active_page { background-color: #f3686d; }
#wp_page_numbers ul li.active_page a { color: #fff; }

/* amended styles to work with comments paging */
#wp_page_numbers.comments ul li { width: auto; margin: 0px; }
#wp_page_numbers.comments ul li a { display: inline-block; width: 18px; height: 20px; padding-bottom: 2px; margin: 0 3px; }
#wp_page_numbers.comments ul li a.prev,
#wp_page_numbers.comments ul li a.next { width: auto; }
#wp_page_numbers.comments ul li span 
{ 
	display: inline-block; 
	width: 18px; 
	height: 20px; 
	padding-bottom: 2px; 
	margin: 0 3px; 
	background-color: #f3686d;
	color: #fff;
}

/* sidebar */
.sidebar h2.featured_header
{
	display: block;
	width: 100%;
	height: 15px;
	background: url('images/featured_header.png') no-repeat;
	padding-bottom: 15px;
	border-bottom: 1px solid #cc0000;
	text-indent: -9999px;
}
.sidebar .featured_posts { padding: 20px 0; }
.sidebar .featured_posts div
{
	padding: 0 0 5px 0;
	border-bottom: 1px solid #666;
	overflow: hidden;
	margin: 0 0 20px 0;
}
.sidebar .featured_posts div img { float: left; margin: 0 20px 10px 0; }
.sidebar .featured_posts div h3 { font-size: 14px; }
.sidebar .featured_posts div p { font-size: 12px; }

.sidebar h2.categories_header
{
	display: block;
	width: 100%;
	height: 15px;
	background: url('images/categories_header.png') no-repeat;
	padding-bottom: 15px;
	border-bottom: 1px solid #cc0000;
	text-indent: -9999px;
}
.sidebar .category_list { list-style: disc inside; padding-bottom: 20px; }
.sidebar .category_list li 
{ 
	border-bottom: 1px solid #fff; 
	padding: 10px 0 10px 10px;
}

.sidebar .subscribe_to
{
	display: block;
	width: 300px;
	height: 35px;
	background: url('images/subscribe_to.png') no-repeat;
	text-indent: -9999px;
	margin: 0 0 35px 0;
}
.sidebar .subscribe_to:hover { background-position: 0 -35px; }



