/*
Sharefaith theme (c) Sharefaith 2015
import fonts:*/
@import url('https://fonts.googleapis.com/css?family=Ubuntu|Open+Sans|Droid+Sans');
@import url(https://maxcdn.bootstrapcdn.com/font-awesome/4.4.0/css/font-awesome.min.css);
@import url('https://fonts.googleapis.com/css?family=Open-Sans|Roboto-Light|Roboto:300&subset=latin,greek');

html, textarea, input, select {
	font: 22px/25px Ubuntu;
	color: #222;
}
html[lang] {
	height:100%; margin-top:0;
}
body {
	background-color:#fff;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
	/*min-width:auto; can''t - sflb 3col messes up when smaller*/
	color:#222;
	font: 14px/22px Ubuntu;
	padding: 0 0 0 329px;
}
/*overwrites custom   body.home div.plHome {
	background-color:#4d2a46;
}*/
#body_wrapper {
	/* background: transparent url('body_bg.png') repeat-y center top; */
	min-height: 100%;
}
body.home #body_wrapper {
	min-height: 0px;
	height: 0px;
}
a {
	text-decoration: none;
}
a:hover {
	color:#000;
}
a, h1 a, h2 a, h3 a, h4 a, h5 a, h6 a, h1, h2, h3, h4, h5, h6 {
	color:#222;
}

textarea{
	border: 1px solid #000000 !important;
}

div{
	font: 14px/22px Ubuntu;
}

p{
	font: 14px/22px Ubuntu;
	margin-top: 10px;
	margin-bottom:10px;
}
input, textarea, select {
	background-color: rgb( 255, 255, 255 );
	border: 1px solid #000000;
	border-radius:2px;
	-webkit-border-radius:2px;
	-o-border-radius:2px;
	-ms-border-radius:2px;
	padding: 2px;
}
.sflb_section input[type=button], .sflb_section input[type=submit] {
	padding-left:10px;
	padding-right:10px;
	min-width:80px;
}

input[type='image'] {
	background-color: transparent;
	border: none;
	padding: 0;
}
/*must overwrite mobile.css #header*/
body #header {
	background:#E8EBED;
	position:fixed; top:0; left:0;
	bottom:auto;/*0 breaks Android scroll fixed*/
	width:329px; max-width:329px;
	height:100%;
}

body #header .container {
	width:100%; height:100%;
	text-align:center;
}
body #logo {
	left: 0;
	position:static;
	text-align:center;
	width:87%;/*or text->image won't work, clickable chooser*/
	margin:0 auto;
}

html body {
	min-width:100px;
	position:relative;
}
#logo img {
	/*max-height: 180px;*/
	max-width: 300px;
}
#logo a {
	margin-left:0 !important; left:0 !important;/*  no change right-left*/
	color:#222;
	font: 30px/34px Droid Sans;
}

body #logo a span {
	padding:0px;
	text-align:center;
}

body #header .search {
	position: absolute; top:135px; left:35px;
	width: 80%;
	margin: 10px auto;
	background: #FFF;
	border-radius:16px;
	-webkit-border-radius:16px;
}
#mobile_nav .menuWord {
	display:none;
}
body.search.search-results #content >.status-publish {
	background:transparent;
}
body.search.search-results .pagetitle {
	max-width: 1024px;
	width: 80%;
	margin: 0px auto;
}
body #header .search input.search_inp {
	padding: 8px;
	font-size:15px;
	color:#A3A8B1;
	font-family:fontawesome;
	float:right;
	text-align:center;
	width:100%;
}
body #header #searchsubmit {
	/*margin: 0;
	background:url(search.png) center center no-repeat;
	float:right;
	width:50px;
	height:32px;*/
	display:none;
}
#content >#searchform {
	margin-left:40px;
}
.nav_wrapper {
	overflow:auto;
	position:absolute; top:180px; left:0px;bottom:0px; width:329px;
}
body #main_nav {
	display:block;/*mobile!*/
	height:auto;
	position:static;
	width:100%;
}
body #main_nav li {
	height: 33px;
	margin: 0;
	padding:10px 0 0 0;
	float: none;
	color: #D0CECC;
	/*over mobile.css:*/
	border:none;
	text-align:center;
	/*text-align:left;
	padding-left:90px;*/
}

body #main_nav .sub-menu li {
	border:none;
}
#main_nav >li {
	clear:both;/*for after submenu*/
}
#main_nav li a {
	color: #3B3B3B;
	letter-spacing:2px;
	font: 20px/22px Droid Sans;
	/*height: auto; messes dropdown sometimes*/
	padding: 0;
	margin: 0;
	width:100%;
	overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
}

body #main_nav li a {
	height: 28px;
	line-height: 28px;/*as was in mobile.css before*/
}
body #main_nav ul.sub-menu li a, 
body #main_nav ul.sub-menu li a:hover {
/*as was in mobile.css before*/
	line-height: 28px;
	height: 28px;
}

#main_nav > li:hover {
	background:rgba(125,125,125,0.2); /*transparent;*/
}
#main_nav li:hover a {
	background: transparent;
	color:#777;
}
#main_nav > li.current_page_item a,
#main_nav > li.current_page_parent a,
#main_nav ul.sub-menu li.current-menu-item a{
	background: transparent;
	color:#777;
}
#main_nav > li.current_page_item,
#main_nav > li.current_page_parent{
	color:#777;/*slightly whiter*/
}

div .smaller_dialog
{
	font-size:12px;
	margin-left:10px;
}

#main_nav ul.children li.current_page_item, #main_nav ul.children li.current_page_item a ,
#main_nav ul.sub-menu li.current_page_item, #main_nav ul.sub-menu li.current_page_item a {
	/*text-decoration: underline;*/
	color:#000;
}
#main_nav li.current_page_item ul.children li a ,
#main_nav li.current_page_item ul.sub-menu li a {
	background:transparent;
	font-size:90%;
}
#main_nav ul.children ,
#main_nav ul.sub-menu {
	background:rgba(125,125,125,0.1);
	display: block;
	position: static;
	width:100%;
	margin: 0;
	padding: 0;
	z-index: -1;
	-moz-transition: padding 0.8s;
	-webkit-transition: padding 0.8s;
	-o-transition: padding 0.8s;
	transition: padding 0.8s;
}
#main_nav li:hover > ul.children ,
#main_nav li.hover > ul.children,
#main_nav li:hover > ul.sub-menu,
#main_nav li.hover > ul.sub-menu{
	padding: 0;
	-moz-transition: padding 0.8s;
	-webkit-transition: padding 0.8s;
	-o-transition: padding 0.8s;
	transition: padding 0.8s;
	box-shadow: none;
}
/*body.iOS #main_nav li:hover > ul.children ,
body.iOS #main_nav li:hover > ul.sub-menu,
body.iOS #main_nav li:hover > ul.children li ,
body.iOS #main_nav li:hover > ul.sub-menu li{
	-webkit-transition:none; 
	transition:none;
}*/
#main_nav ul.children li ,
#main_nav ul.sub-menu li {
	display: block;
	height: 0;
	overflow: hidden;
	padding: 0;
	-moz-transition: height 0.5s;
	-webkit-transition: height 0.5s;
	-o-transition: height 0.5s;
	transition: height 0.5s;
}
#main_nav li:hover > ul.children li ,
#main_nav li.hover > ul.children li ,
#main_nav li:hover > ul.sub-menu li ,
#main_nav li.hover > ul.sub-menu li {
	height: 28px;/*also li padding */
	background:transparent;/*to parent-color*/
	border:	none;
	color:#777;
	-moz-transition: height 0.6s;
	-webkit-transition: height 0.6s;
	-o-transition: height 0.6s;
	transition: height 0.6s;
	/*slower start pop-out*/
	transition-timing-function:cubic-bezier(0.93, -0.03, 0.1, 1);
}
#main_nav ul.children li:hover,
#main_nav ul.sub-menu li:hover{
	background: transparent;
	color:#9C9C9C;
}
#main_nav ul.children li a ,
#main_nav ul.sub-menu li a {
	background:transparent;
	color:#3D3D3D;
	/*font-size: inherit;*/
	font-weight: normal;
	line-height: 28px;
	height: 28px;
	padding:0;
	text-decoration: none;
	width: 100%;
}
#main_nav ul.children li a:hover,
#main_nav ul.sub-menu li a:hover{
	background: transparent;
	text-decoration: none;
	color:#000;
}

#content_container {
    background: transparent;
    width: 100%;
}

.gallery_container {
	background: transparent;
	float: none;
	margin-bottom: 28px;
	height:100%;
}
#content_container .slideshow_container, .slideshow_container {
	background:transparent;
}

/* special full height start home page for home-page */
body.home{
	height:100%;
}
/* No expand height for bogus mobile/standard, on front*/
body.home #footer .mobile_toggle {
	display:none
}
body.home #footer .container {
	padding:0px;
}

.plFrontPage.plHome {
	min-height:100%;
	height:100%;
	width:100%;
	/* was 0% 0%: */
	padding:0;/* or on all?*/
	position: relative;
}
body.iOS .plFrontPage.plHome {
	background-attachment:scroll;/*or doesn't display default image for some reason*/
}
body.Android .plFrontPage.plHome {/*http://stackoverflow.com/questions/14876035/ */
	background-attachment: scroll !important;
}

.plFrontPage.plHome .entry{
	/* set in JS just in case
	position: absolute; breaks Chrome admin edit hover parallax effect sometimes?
	top: 50%; also margin-top minus set in JS
	margin-top:-40px; just incase non-js? 
	left:10%;*/
	margin-left:auto;
	margin-right:auto;
	width:80%;
}
.plFrontPage.plHome .entry >*{
	max-width:1024px;
	margin-left:auto;
	margin-right:auto;
}
/* special non-frontpage, backgrounds should be full page 
body.page {
	min-height: 100%;
}
body.page div.page,
body.page #content, 
body.page #content_container,
body.page #body_wrapper {
	position:absolute;
	top:0;left:0;right:0;bottom:0;
}
body.page #content >.page {
	padding-top:90px;
	
	overflow:auto;
	position:fixed;
			ugly scrollbar but
			this is the only good way to fully cover body bg, big window small content,
			or smaller window with scroll big content..
}*/

#slideshow {
	margin:0 auto;
	width:100%;
	height:100%;
	background-size: cover;
	z-index:0;
}
#slideshow img {
	height:100%;
	width:100%;
	background-size:cover;
}

/*
.post, div.page {
	padding: 20px 20px 0 0;
}*/
.postmeta {
	color: #9C9C9C;
	font-family: Ubuntu;
}
/*collapse widgetside: Consider .home to be .noWidgets*/
#content_container_inner {
	width:80%;
	max-width:1024px;/*match header*/
	margin:0 auto;
}
body.noWidgets #content_container_inner,
body.home #content_container_inner {
	width:100%;
	max-width:none;
	margin:0px;
}
@media screen and (max-width: 1014px) {/*collapse widget page*/
	body:not(.noWidgets):not(.home) #content_container #content {
		width: 100%;
	}
	
	body:not(.noWidgets):not(.home) #content_container #sidebar {
		width: 100%;
		float:none;
		padding-left:0px;
	}
}

body.menuDown:before {
	content:' ';
	position:fixed;
	background:rgba(0,0,0,0.5);
	top:0; right:0; bottom:0; left:0;
	z-index:30;
}
/* Resolutions on which menu takes too much space: menu-btn:*/
@media screen and (max-width: 1000px) {
	html body {
		padding:0;
	}
	/* dont squish body.menuDown {
		padding:0 0 0 329px;
	}*/
	body #header {
		height:82px;
		width:100%; max-width:100%;
		z-index:99;/*over video*/
	}
	body #header .search {
		display:none;
	}
	body.menuDown:not(.SFsearchHid) #header .search {
		display:block;
	}
	body .plFrontPage.plHome .SFVideo >* {/*video position with header*/
		margin-top:82px;
	}
	body.menuDown  .plFrontPage.plHome .SFVideo >* {
		margin-top:0;
	}
	body.menuDown #body_wrapper {
		overflow:hidden;
	}
	body:not(.menuDown) #header #logo a {
		margin-top:0px !important;
		top:2px !important;
		width:auto !important;
		height:100% !important;
		height:calc(100% - 4px) !important;
	}
	body:not(.menuDown) #header #logo a * {
		width:auto !important;
		height:77px !important;
	}
	/*body #header #logo
	{
		padding-top:10px;
	}*/
	body.menuDown #header {/*show again:*/
		width:329px; max-width:329px;
		height:100%;
	}
	/* these overflow to menu should replace the width-mobile stuff commented below:
	These need to be redefined here even if they're in mobile.css, since that's only for very small (phone)
	Keeping this in-general, body.menuOverflow replaced with #body_wrapper */
	#body_wrapper #header #mobile_nav {/*the menu-btn*/
		display:inline-block;
		margin:0;
		height:56px;
		/* fixed breaks demo*/
		position:absolute; top:0; left:0;
	}
	body #main_nav {
		display:none;
	}
	body.menuDown #main_nav {
		display:block;
	}
	#mobile_nav >ul {
		margin:15px 0;
	}
	body.menuDown #body_wrapper #mobile_nav .menu_btn a:before {
		content:'\f00d';
	}
	/*Must be on a:before or IE9 doesn't get any a click events */
	#mobile_nav >ul> li.menu_btn a:before {
		content:'\f0C9';
		font: 30px/40px FontAwesome !important;/*or custom may overwrite*/
		position:absolute; z-index: -1; left:0px; top:17px;
		width: 50px;
		text-align:center;
		color:#000;
	}
	#body_wrapper #header #mobile_nav >ul> li.menu_btn {
		display: block;
		float: right;
		height: 45px;
		/*margin: 9px 0 0 0;
		padding: 0px;*/
		width: 50px;
	}
	#body_wrapper #header #mobile_nav >ul> li.menu_btn >a {
		display:block;
		height:100%;
		text-decoration:none;
	}
}

#content {/*with old sidebars*/
	width:65%;
	padding:82px 0 0 0;
	margin:0 auto;
	float:left;
}
body.noWidgets #content {
	width:100%;
	padding:82px 0 0 0;
	margin:0 auto;
	float:none;
}
body.home #content {
	width:100%;
	margin:0 auto;
	padding:0;
}
/*not adding to these, not:not not supported in ancient IE. break specificity edit*/
#content >div >a,
#content >div >h1,
#content >div >h2,
#content >div >h3,
#content >div >form,
#content >div >.postmeta,
#content >div >.entry,
#footerPage .entry,
#content >div >.homeCommentLink
/*#content >div .entry .post >*
#content .post hr, #content .page hr search*/{
	max-width:1024px;
	margin-left: auto;
	margin-right:auto;
	float:none;
	position:relative;/*clickable, above sfploverlay and others, in search results*/
	
	/*widgets have different sizing to match 80%-max-1024:*/
	width: 100%;
}
/*nonwidgets:*/
body.noWidgets #content >div >a,
body.noWidgets #content >div >h1,
body.noWidgets #content >div >h2,
body.noWidgets #content >div >h3,
body.noWidgets #content >div >form,
body.noWidgets #content >div >.postmeta,
body.noWidgets #content >div >.entry,
#footerPage .entry,
body.noWidgets #content >div >.homeCommentLink,
body.home #content >div >a,
body.home #content >div >h1,
body.home #content >div >h2,
body.home #content >div >h3,
body.home #content >div >.postmeta,
body.home #content >div >.entry,
body.home #content >div >.homeCommentLink,
#footerPage .entry
{
	width: 80%;
}

#content >div >.homeCommentLink {
	display:block;
}

/* required for it to display above the fixed SFPLOverlay on single page bg */
#content #comments, #content .commentlist {
	position:relative;
}

#content >div >.more_link {/*searchpage*/
	display:block;
}
/* Is is possible to set fullwidth blog entries within?
#content >div .entry .post {
	width:100%;
}*/

body.noWidgets #sidebar,
body.home #sidebar{
	display:none;
}
#sidebar {
	padding: 100px 0 20px 5%;
	margin: 0;
	max-width:292px; width:30%;
}
#sidebar .sf_image_widget img {
	max-width: 292px !important; /* workaround for IE*/
}
/* not bottom
#sidebar ul.widgets li {
	width:250px;
	padding:10px 25px;
	display:inline-block;
}*/
li.widget {
	margin: 20px 0 40px;
}
li.widget_simpleimage {
	border: 0;
}
li.widget li {
	border: 0;
}
body div.widget.widget h2 {
	background:transparent;
	border: none;
	font: 34px/38px Ubuntu;
	color: #222;
	font-weight:bold;
}
body div.widget.widget li {
	list-style-type: none;
}
body.home .widget_recent_entries h2.widgettitle {
	display:none;
}
#sidebar h2 {
	padding-left: 0px;
	background: transparent;
	border: 0;
	color:#525252;
	font: 34px/38px Ubuntu;
	margin: 0 0 4px;
}
li.widget ul {
	padding-left: 0;
}
.sf_widget_paypal_donations > div {
	padding-left: 0 !important;
}

a.more-link, body:not(.iOS) a.more-link:hover {
	background: transparent;
	color:#222;
	display: inline-block;
	font-size: 1em;
	height: auto; line-height: 2em;/*oveerlow*/
	margin: 0 0 14px 0;
	border: 1px solid #D0CECC;
	text-decoration: none;
	padding: 10px;
	max-width: 100%;
	box-sizing: border-box;
	transition: background 1s linear;
	-webkit-transition: background 1s linear;
}
body:not(.iOS) a.more-link:hover {
	background: #000;
	color: #FFF;
	transition: background 1s linear;
	-webkit-transition: background 1s linear;
}
.entry p, html body p
{
	line-height:22px;
	margin-top: 20px;
}

.entry h1 , h1 a{
	font: 34px/38px Ubuntu;
	color:#222;
}
.entry h2 {
	font: 25px/30px Ubuntu;
	color:#222;
	/*margin: 0 0 10px;*/
}
h2.posttitle, h2.posttitle a {
	font: 30px/32px Ubuntu; /*!important*/
	color:#222;
	margin: 0 0 10px;
	text-decoration: none;/* !important;*/
}
.entry h3 {
	font: 21px/23px Ubuntu;
	color:#222;
}
.entry h4 {
	font: 18px/20px Ubuntu;
	color:#222;
}
.entry h5 {
	font: 16px/16px Ubuntu;
	color:#222;
}
.entry h6 {
	font: 14px/14px Ubuntu;
	color:#222;
}
div.navigation {
	margin: 10px 7px 8px;
}
#content_container_inner >br {
	display:none;
}
#footerPage {
	left:329px !important;/*only when fixed)*/
}
@media screen and (max-width: 1000px) {
#footerPage {
	left:0px !important;/*only when fixed)*/
}
}

#footer {
	height:0px;
	z-index: 22;
}
#footer .fl_l {
	position: relative;
	margin-top:-20px;
	z-index:22;
}
/*black by default, on white bg*/
#footer .fl_l a {
	background-image: url('../../css/sf-logo16-black.png');
	color: #000 !important;
}
#footer .fl_l.white a {
	background-image: url('../../css/sf-logo16-white.png');
	color: #FFF !important;
}
#footer .container >ul {
	float: none;
	text-align: center;
}
#footer .container {
	width:100%;
	padding: 0;
	height:0;
	/*position:static;*/
}
#footer_nav {
	display:none;
}
#footer_nav li {
	visibility:hidden;
}

.sermon_playlist li:hover, .sermon_playlist li.active {
	background-color: #a25410;
	color:#FFF;
}
.sermon_playlist li:hover >.date,
.sermon_playlist li.active >.date {
	color:#FFF;
}

body.single.single-sermons .post.type-sermons >*:not(a){
	width:80% !important;
	max-width:1024px;
	margin-left: auto;
	margin-right:auto;
}
body.single.single-sermons .post.type-sermons.sermons >img {
	display: block;
	margin: 10px auto;
	width: 150px !important;/*override above*/
}

/* no extra spacing, and consitent with mobile:
body #logo a span,*/ body #logo a {
	margin: 0;
	padding: 0;
	display:inline-block;/*center*/
}

@media screen and (max-width: 640px) {
	/*overwrite some mobile.css stuff: on 480 and 640 (wide phone rotation)*/
	html body #header #mobile_nav {
		display:block;
	}
	html body #logo { /*Fix #1399 */
		margin: 0 auto;
		max-width: calc(100% - 87px);
	}
	body #content_container {
		margin: 0 auto;/*as usual. No gaptop*/
	}
	#header #mobile_nav >ul> li {
		display:none;
		border:none;
		background:transparent;
	}
	body #main_nav ul.sub-menu {
		border:none;
	}
	body #main_nav ul.sub-menu li {
		height:0;
	}
	body #main_nav li {
		height:29px;
		/*border-bottom: none;*/
	}
	body #main_nav li a {
		line-height: inherit;/*or mobile css goofs*/
	}
	html body.mobileOn #logo a {
		margin-top:12px;/*2liner not ugly.*/
	}

	#body_wrapper #header {
		padding:0; margin:0; left:0;
	}
	
	/*nonwidgets:*/
	body.noWidgets #content >div >a,
	body.noWidgets #content >div >h1,
	body.noWidgets #content >div >h2,
	body.noWidgets #content >div >h3,
	body.noWidgets #content >div >.postmeta,
	body.noWidgets #content >div >.entry,
	#footerPage .entry,
	body.noWidgets #content >div >.homeCommentLink,
	body.home #content >div >a,
	body.home #content >div >h1,
	body.home #content >div >h2,
	body.home #content >div >h3,
	body.home #content >div >.postmeta,
	body.home #content >div >.entry,
	body.home #content >div >.homeCommentLink
	{
		width: 90%; /*slightly wider than previous themes*/
	}
	.post, div.page {
		padding:20px 0;
	}
	
	/* non-fixed */
	body:not(.menuDown) #header {
		position:absolute;
	}
	.plFrontPage.plHome {
		background-position:center 0px !important;
	}
	
	body.menuDown:before {
		content:' ';
		position:fixed;
		background:rgba(0,0,0,0.1);
		top:0; right:0; bottom:0; left:0;
	}
	#footerPage {
		left:0px !important;/*only when fixed)*/
	}
}

a#fancybox-left:hover, a#fancybox-left:hover span
{
	left: -9px;
}
a#fancybox-right:hover, a#fancybox-right:hover span
{
	right: -9px;
}
strong, b {/*gets overwritten*/
	font-weight:bold;
}


body.thumbLeft #content >.post .thumbnail.Top {
	margin-left:10%;
}
body.thumbLeft .post_info_posted {
	left: auto; margin-left: 10px;
}
