/*
Theme Name: Grace Church Dundee
Theme URI: http://www.gracechurchdundee.co.uk
Author: Cloud 10
Author URI: https://www.cloudtencreative.co.uk
Developers: Suzanne Lowery
Version: 1.0
*/

/* CSS RESET
---------------------------------------------------------------------------------- */

article, aside, details, figcaption, figure, footer, header, hgroup, main, nav, section, summary { display: block; }
audio, canvas, video { display: inline-block; }
audio:not([controls]) { display: none; height: 0; }
[hidden] { display: none; }
html { font-family: sans-serif; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%; color: #222; -webkit-font-smoothing: antialiased; line-height: 1.4; }
body { margin: 0; }
a:focus { outline: thin dotted; }
a:active, a:hover { outline: 0; }
abbr[title] { border-bottom: 1px dotted; }
dfn { font-style: italic; }
hr { -moz-box-sizing: content-box; box-sizing: content-box; height: 0; }
mark { background: #ff0; color: #000; }
code, kbd, pre, samp { font-family: monospace, serif; font-size: 1em; }
pre { white-space: pre-wrap; }
q { quotes: "\201C" "\201D" "\2018" "\2019"; }
small { font-size: 80%; }
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sup { top: -0.5em; }
sub { bottom: -0.25em; }
img { border: 0; }
svg:not(:root) { overflow: hidden; }
figure { margin: 0; }
fieldset { border: 1px solid #c0c0c0; margin: 0 2px; padding: 0.35em 0.625em 0.75em; }
legend { border: 0; padding: 0; }
button, input, select, textarea { font-family: inherit; font-size: 100%; margin: 0; }
button, input { line-height: normal; }
button, select { text-transform: none; }
button, html input[type="button"], input[type="reset"], input[type="submit"] { -webkit-appearance: none; cursor: pointer; }
button[disabled], html input[disabled] { cursor: default; }
input[type="checkbox"], input[type="radio"] { box-sizing: border-box; padding: 0; }
input[type="search"] { -webkit-appearance: textfield; -moz-box-sizing: content-box; -webkit-box-sizing: content-box; box-sizing: content-box; }
input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }
input[type="submit"] { -webkit-transition: 0.2s; transition: 0.2s; }
input, textarea { border-radius: 0; outline: none; }
select option[disabled] { display: none; }
button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }
textarea { overflow: auto; vertical-align: top; }
table { border-collapse: collapse; border-spacing: 0; }
a { outline: 0; -webkit-transition: 0.3s; transistion: 0.3s; }
a:focus { outline: none; }



/* GLOBAL
---------------------------------------------------------------------------------- */

body { font-family: 'Montserrat', sans-serif; background: #fff; letter-spacing: 0.02em;}
body#tinymce {  padding: 3% !important; width: 94%; background: #fff !important;}
body#tinymce p { margin-bottom: 25px;}
body#tinymce ul { margin-left: 20px;} 
.clear { clear: both;}
.left, .alignleft { float: left;}
.right, .alignright { float: right;}
.alignleft { margin: 0 30px 30px 0;}
.alignright { margin: 0 0 30px 30px;}
.aligncenter { display: block; margin: 0 auto;}
p, li { margin: 0; padding: 0; font-size: 15px; line-height: 23px; color: #414042; font-weight: 300;}
ul { margin: 0; padding: 0;}
li { list-style: none;}
a, textarea { color: #414042; outline: none;}
input { color: #554D4F; border: 1px solid transparent; outline: none; font-size: 15px;line-height: 18px;}
input.ErrorField, textarea.ErrorField, select.ErrorField { border: 1px solid #CC2B28 !important;}
label { font-size: 15px;line-height: 18px;}
h1, h2, h3, h4, h5, h6 { margin: 0; padding: 0; font-weight: 400; color: #414042; font-family: 'Montserrat', sans-serif;}
h1 { font-size: 24px; line-height: 28px;} 
h2 { font-size: 33px; line-height: 40px;}
h3 { font-size: 21px; line-height: 26px; }
h4 { font-size: 19px; line-height: 23px;}
h5 { font-size: 16px; line-height: 21px;}
h6 { font-size: 14px; line-height: 18px;}
strong { font-family: 'Montserrat', sans-serif; font-weight: 800;}
strong.caps { text-transform: capitalize;}
em { font-style: italic; }
blockquote { font-weight: normal; font-size: 1em; line-height: 1.4; color: #000; width: 100%; padding: 0 0 0 90px; }
::-moz-selection { background-color: #A3D4F9; color: #fff; }
::selection { background-color: #A3D4F9; color: #fff; }


/* General Styles */
.wrapper { width: 1100px; margin: 0 auto;}
.overlay { position: absolute; left: 0; top: 0; width: 100%; height: 100%; z-index: 1; background-color: rgba(51,51,51,0.4);}
.overlay.white { background-color: rgba(255,255,255,0.9);}
img.bg { position: absolute; left: 0; top: 0; width: 100%; height: auto; z-index: 0; max-width: none;}
.cloudten_cookies p { color: #fff; font-size: 12px; line-height: 16px; margin: 10px 0; font-family: 'Open Sans', sans-serif;}


/* Wordpress Styles */
.wp-caption { border: 1px solid #000; text-align: center; padding: 10px; margin: 0 0 20px; overflow: hidden; }
.wp-caption a { border: none; }
.wp-caption img { margin: 0 0 10px 0; padding: 0; border: 0 none; display: block; width: 100%; height: auto; -webkit-transition: 0.2s; transition: 0.2s; }
.wp-caption a:hover img { opacity: 0.9; }
.wp-caption p.wp-caption-text { font-size: 12px; margin: 0; padding: 0; }
.alignleft, img.alignleft { float: left; margin: 0 30px 20px 0; }
.alignright, img.alignright { float: right; margin: 0 0 20px 30px; }
.aligncenter, img.aligncenter { display: block; margin: 0 auto 20px; }
.wp-block-image img { height: auto;}


/* Clearfix */
.cf:before, .cf:after { content: " "; display: table; }
.cf:after { clear: both; }


/* Buttons */
a { -webkit-transition: 0.3s; transition: 0.3s;}

.cta, .container div.wpforms-container-full .wpforms-form button[type=submit] { border: 2px solid #414042; text-decoration: none; display: inline-block; padding: 14px 28px; border-radius: 8px; font-size: 15px; line-height: 15px; background-color: transparent; cursor: pointer; vertical-align: middle;}
.cta:hover { background-color: #414042; color: #fff;}
.cta.white { color: #fff; border-color: #fff;}
.cta.white:hover { background-color: #fff; color: #414042;}
.cta.red, .container div.wpforms-container-full .wpforms-form button[type=submit] { color: #CC2B28; border-color: #CC2B28;}
.cta.red:hover, .container div.wpforms-container-full .wpforms-form button[type=submit]:hover { background-color: #CC2B28; color: #fff; border-width: 2px; border-color: #CC2B28;}


/* HEADER
---------------------------------------------------------------------------------- */

.hero { float: left; height: 360px; width: 100%; overflow: hidden;}
.home .hero { height: 100%; position: absolute !important; z-index: 0; left: 0; top: 0; }
header {  width: 100%; top: 0; position: absolute; z-index: 3; left: 0;}
.logged-in header { top: 32px;}
header h1, header h2 { float: left; margin-top: 20px;}
header img { width: 250px;}
header ul { float: right; margin-top: 35px;}
header ul li { display: inline-block; margin-left: 20px; font-weight: 400; position: relative;}
header ul li a { color: #fff; text-decoration: none; font-size: 15px; line-height: 15px; position: relative; padding-bottom: 3px;}
header ul li a:after { content: ""; height: 2px; width: 0; background: #E9C21E; position: absolute; left: 0; bottom: 0; transition: 0.3s; -webkit-transition: 0.3s;}
header ul li a:hover:after, header ul li.current-menu-item a:after, header ul li.current-page-ancestor a:after { width: 20px;} 

header ul.sub-menu { display: none; position: absolute; top: 18px; margin: 0; width: 170px; right: 0; background: transparent; padding-top: 15px;}
header ul.sub-menu li { margin: 0; float: left; width: 100%;}
header ul.sub-menu li a { padding: 12px 15px; float: left; width: 100%; border-bottom: 1px solid #666; font-size: 13px; line-height: 16px; box-sizing: border-box; color: #fff; background-color: rgba(50,50,50,0.93);}
header ul.sub-menu li a:after { display: none;}
header ul.sub-menu li a:hover { background-color: #CC2B28; color: #fff;}
.no-touch header ul li.menu-item-has-children:hover ul.sub-menu { display: block;}

.hero .slider { width: 100%; height: 100%; }
.hero .slider .flex-viewport { width: 100%; height: 100%; float: left;}
.hero .slider ul.slides { float: left; height: 100%;}
.hero .slider ul.slides li { height: 100%; position: relative; overflow: hidden;}
.hero .slider ul.slides li .inner { position: absolute; z-index: 1; margin: 0 auto; display: inline-block; top: 55%; left: 0; right: 0; transform: translateY(-55%); -webkit-transform: translateY(-55%); text-align: center; width: 80%;}
.hero .slider ul.slides li img { max-width: none;}
.hero .slider ul.slides li h2 { color: #fff; font-size: 43px; line-height: 50px; font-weight: 300; margin-bottom: 20px;}
.hero .slider ul.slides li p { color: #fff; font-size: 20px; line-height: 25px; margin-bottom: 40px;}
.hero .slider ul.slides li a {}
.hero .open_takeover { display: block; position: absolute; top: 0; right: 0; z-index: 3; width: 40px; height: 40px; transition: 0.3s; -webkit-transition: 0.3s; cursor: pointer;}
.hero .open_search { background: url(images/icon-search.png) no-repeat left 10px center #CC2B28; background-size: 19px;}
.logged-in .hero .open_search { top: 32px; }
.hero .open_menu { background: url(images/icon-menu.png) no-repeat left 10px center #E9C21E; background-size: 20px; display: none;}
.hero .open_takeover:hover { padding-right: 20px;}

.featured_image { float: left; width: 100%; height: 100%; overflow: hidden; position: relative;}
.featured_image .page_title { position: relative; text-align: center; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); z-index: 2; width: 80%; margin: 0 auto;}
.featured_image .page_title h1 { color: #fff; font-size: 40px; line-height: 50px; font-weight: 800; margin-bottom: 7px;}
.archive .featured_image .page_title h1 { font-weight: 400;}
.featured_image .page_title h6 { color: #fff; font-size: 17px; line-height: 22px; font-weight: 300;}

.flex-control-nav { position: absolute; bottom: 30px; margin: 0; left: 0; width: 100%; text-align: center; padding: 0;}
.flex-control-nav li { margin: 0 9px; display: inline-block; text-indent: -999px; overflow: hidden;}
.flex-control-nav li a { display: block; width: 7px; height: 7px; border-radius: 6px; border: 2px solid #fff;}
.flex-control-nav li a:hover, .flex-control-nav li a.flex-active { background-color: #fff;}

.flex-direction-nav { position: absolute; top: 40%; transform: translateY(-40%); -webkit-transform: translateY(-40%); width: 100%; left: 0; right: 0; margin: 0 auto; z-index: 1;}
.flex-direction-nav li {}
.flex-direction-nav li a { background: url(images/slider-nav-hero.png) no-repeat 0 0; position: absolute; background-size: 80px; width: 40px; height: 103px; text-indent: -999px; overflow: hidden;}
.flex-direction-nav li a.flex-prev { left: -5px;}
.flex-direction-nav li a.flex-prev:hover { left: 0;}
.flex-direction-nav li a.flex-next { right: -5px; background-position: -40px 0;}
.flex-direction-nav li a.flex-next:hover { right: 0;}

.breadcrumb_bar { position: absolute; top: 20px; left: 30px; z-index: 1;}
.breadcrumb_bar ul { float: left; width: 100%;}
.breadcrumb_bar ul li { display: inline-block; margin-right: 8px; font-size: 13px; line-height: 18px;}
.breadcrumb_bar ul li a { text-decoration: none;}
.breadcrumb_bar ul li a:hover { color: #CC2B28;}
.breadcrumb_bar ul li strong { font-weight: 400;}

.sticky_icons { position: fixed; right: 0; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); z-index: 2; height: 100px;}
.sticky_icons a { width: 140px; height: 50px; overflow: hidden; background: #414042; display: block; position: absolute; right: -89px; top: 0; box-sizing: border-box; padding: 11px 0 0 14px;}
.sticky_icons a.contact { background-color: #CC2B28; top: 50px;}
.sticky_icons img { width: 24px; margin: 0; display: inline-block; vertical-align: middle;}
.sticky_icons p {display: inline-block; vertical-align: middle; color: #fff; font-size: 14px; line-height: 14px; margin: 5px 0 0 14px;}
.sticky_icons a:hover { right: 0;}

.takeover { background-color: rgba(204,43,40,0.97); position: fixed; z-index: 4; width: 100%; height: 100%; text-align: center; top: 0; right: -100%;}
.takeover .inner { position: absolute; margin: 0 auto; left: 0; right: 0; top: 45%; transform: translateY(-45%); -webkit-transform: translateY(-45%);}
.takeover .inner h3 { color: #fff; font-size: 27px; line-height: 35px; margin-bottom: 5px; font-weight: 300;}
.takeover .inner p { color: #fff; margin-bottom: 25px;}
.takeover #searchform { display: inline-block; position: relative; width: 300px}
.takeover #searchform input[type=text] { padding: 14px 22px; border: 1px solid #fff; background: none; color: #fff; height: auto;}
.takeover #searchform input[type=submit] { background: url(images/icon-search.png) no-repeat 0 0; background-size: 20px; text-indent: -999px; overflow: hidden; width: 20px; height: auto; position: absolute; right: 20px; top: 13px;}
.takeover .close_takeover { width: 40px; top: 30px; right: 30px; position: absolute; transition: 0.3s; -webkit-transition: 0.3s;}
.takeover .close_takeover:hover { transform: scale(1.05); -webkit-transform: scale(1.05); cursor: pointer;}
.logged-in .takeover .close_takeover { top: 62px;}

.takeover_menu { background-color: rgba(233,194,30,0.97); text-align: left; overflow-x: scroll;}
.takeover_menu .inner { margin: 100px auto; float: left; width: 100%; position: relative; top: auto; transform: none; -webkit-transform: none;}
.takeover_menu .menu { float: left; width: 100%;}
.takeover_menu .menu li { float: left; width: 100%; position: relative;}
.takeover_menu .menu li a { text-decoration: none; float: left; width: 100%; font-size: 18px; line-height: 18px; text-transform: uppercase; padding: 16px 22px; font-weight: 600; box-sizing: border-box; border-bottom: 1px solid #CAAA16;}
.takeover_menu .menu li:first-child a { border-top: 1px solid #CAAA16;}
.takeover_menu .menu li a:hover { background-color: #CAAA16;}
.takeover_menu .menu li ul.sub-menu { display: none;}
.takeover_menu .menu li ul.sub-menu li {}
.takeover_menu .menu li ul.sub-menu li a { background-color: #CAAA16; padding-left: 40px; text-transform: none; font-size: 17px; line-height: 17px;}
.takeover_menu .menu li ul.sub-menu li a:hover { background-color: #b2950f;}
.takeover_menu .menu li.menu-item-has-children:after { content: ""; position: absolute; width: 30px; height: 30px; right: 22px; top: 12px; background: url(images/icon-arrow-down.png) no-repeat center center #414042; background-size: 10px; border-radius: 20px; transition: 0.3s;-webkit-transition: 0.3s;}
.takeover_menu .menu li.menu-item-has-children.active:after { transform: rotate(180deg); -webkit-transform: rotate(180deg);}
.takeover_menu .menu li.menu-item-has-children:hover ul.submenu { display: block;}

.takeover_image { display: none; right: 0; background-color: rgba(0,0,0,0.9);}
.takeover_image img.map { max-width: 90%; height: auto; top: 50%; position: absolute; transform: translateY(-50%); -webkit-transform: translateY(-50%); left: 0; right: 0; margin: 0 auto;}



/* GENERAL
---------------------------------------------------------------------------------- */

.wrap { float: left; width: 100%; position: relative;}
.home .wrap { position: absolute; z-index: 1; top: 100%; left: 0; width: 100%; min-height: 500px; background-color: #fff;}
.container { float: left; width: 100%; padding: 70px 0 80px; border-bottom: 1px solid #dedede;}
.home .container { border: none;}
.container.bg_img { position: relative; overflow: hidden;}
.container.bg_img .wrapper { position: relative; z-index: 1;}

.main { text-align: center; width: 80%; margin: auto; float: none;}
.left_align .main { text-align: left;}
.main.full { width: 100%;}
.main h2 { color: #CC2B28; font-weight: 300; font-size: 33px; line-height: 42px; margin-bottom: 20px; float: left; width: 100%;}
.main h3 { margin: 10px 0 20px; display: inline-block; color: #CC2B28;}
.main ul { margin-bottom: 20px;}
.main ul li { font-style: italic; display: block; margin-bottom: 5px;}
.main p { margin-bottom: 20px; display: inline-block; width: 100%;}
.main .cta { margin-top: 15px;}


/* HOMEPAGE
---------------------------------------------------------------------------------- */

.home .boxes { float: left; width: 100%; text-align: center; font-size: 0; position: relative; height: 320px;}
.home .boxes .box { float: left; width: 33%; height: 320px; overflow: hidden; position: absolute !important; left: 0; bottom: 0; transition: 0.3s; -webkit-transition: 0.3s; text-decoration: none;}
.home .boxes .box1 { }
.home .boxes .box2 { width: 34%; left: 33%;}
.home .boxes .box3 { right: 0; left: auto;}
.home .boxes .box img { transition: 0.3s; -webkit-transition: 0.3s;}
.home .boxes .box .overlay {}
.home .boxes .box .inner { position: relative; z-index: 1; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); padding: 30px; width: 80%; margin: 0 auto;}
.home .boxes .box h3 { color: #fff; font-size: 24px; line-height: 29px; font-weight: 800; margin-bottom: 5px;}
.home .boxes .box p { color: #fff; display: none;}
.home .boxes .box .cta { margin-top: 16px;}
.home .boxes .box:hover { height: 335px;}
.home .boxes .box:hover .overlay { background-color: rgba(204,43,40,0.85);}
.home .boxes .box:hover img { transform: scale(1.05); -webkit-transform: scale(1.05);}
.home .boxes .box:hover p { display: block;}

.sermon_feed { text-align: center; }
.sermon_feed .wrapper { position: relative; z-index: 1;}
.sermon_feed .main { padding: 0 0 15px;}
.sermon_feed h2 { color: #333;}
.sermon_feed p {}
.sermon_feed .feed { width: 47%;}
.sermon_feed .coming_up { float: left;}
.sermon_feed .happened { float: right;}
.sermon_feed .feed h3 { font-size: 26px; line-height: 32px; font-weight: 300;}
.sermon_feed .feed ul { background-color: #fff; float: left; width: 100%; box-sizing: border-box; padding: 30px; text-align: left; margin: 25px 0 30px; height: 280px; box-shadow: 2px 2px 7px #dedede;}
.sermon_feed .feed ul li { float: left; width: 100%; margin-bottom: 13px;}
.sermon_feed .feed ul li a { text-decoration: none;}
.sermon_feed .feed ul li a:hover { color: #888;}
.sermon_feed .feed h5 { display: inline-block; vertical-align: middle; background-color: #E9C21E; color: #fff; width: 62px; height: 62px; border-radius: 60px; text-align: center; font-size: 14px; line-height: 17px; box-sizing: border-box; padding-top: 12px; transition: 0.3s; -webkit-transition: 0.3s;}
.sermon_feed .feed h5 strong { display: block; font-size: 18px;}
.sermon_feed .feed .right { width: 80%; display: inline-block; float: none; vertical-align: middle; margin-left: 18px; transition: 0.3s; -webkit-transition: 0.3s;}
.sermon_feed .feed h4 { font-size: 16px; font-weight: 800; line-height: 23px; margin-bottom: 2px;}
.sermon_feed .feed p { font-size: 14px; line-height: 20px;}
.sermon_feed .coming_up ul li a { float: left; width: 100%; height: 100%; }
.sermon_feed .coming_up ul li a:hover h5 { transform: rotate(12deg);}
.sermon_feed .coming_up ul li a:hover .right { opacity: 0.8;}
.sermon_feed .sermon_info { float: left; width: 78%;}
.sermon_feed .sermon_play { float: right;}
.sermon_feed .sermon_play a { background: url(images/sprite-sermons.png) no-repeat 0 0; background-size: 84px; display: block; width: 42px; height: 42px; margin-left: 5px; float: left; transition: none; -webkit-transition: none;}
.sermon_feed .sermon_play a.listen {}
.sermon_feed .sermon_play a.listen:hover { background-position: 0 -42px;}
.sermon_feed .sermon_play a.download { background-position: -42px 0;}
.sermon_feed .sermon_play a.download:hover { background-position: -42px -42px;}
.sermon_feed .happened ul li { margin-bottom: 25px;}


/* STANDARD INTERNAL
---------------------------------------------------------------------------------- */

.content_area { font-size: 0; text-align: center; position: relative; border-bottom: 1px solid #dedede;}
.content_area .text { width: 40%; display: inline-block; vertical-align: middle; margin: 0 2%; text-align: left;}
.content_area .image { position: relative; overflow: hidden; width: 40%; height: 430px; display: inline-block; vertical-align: middle; margin: 0 2%;}
.content_area h2 { float: left; margin-bottom: 25px; font-weight: 300; color: #CC2B28; width: 100%;}
.content_area p { float: left; width: 100%; white-space: pre-line;}
.content_area a.cta { margin-top: 30px;}

.image_centre { overflow: hidden;}
.image_centre img { z-index: 0;}
.image_centre .text { width: 80%; background-color: rgba(255,255,255,0.95); text-align: center; position: relative; z-index: 1; box-sizing: border-box; padding: 60px 70px 70px;}
.image_centre h2 { width: 80%; margin: 0 auto 25px; float: none;}

.related { border-top: 1px solid #dedede; padding: 60px 0; text-align: center;}
.related h2 { font-size: 29px; line-height: 35px; margin-bottom: 40px; font-weight: 300;}
.child_pages { float: left; width: 100%; font-size: 0;}
.child_pages .box { position: relative; overflow: hidden; display: inline-block; width: 31%; height: 320px; margin: 1%;}
.child_pages .box a { display: block; width: 100%; height: 100%;}
.child_pages .box .popup, .child_pages .box h3 { position: absolute; z-index: 1; bottom: 0; width: 100%; left: 0; box-sizing: border-box; padding: 14px 20px; background-color: rgba(204,43,40,0.95); transition: 0.2s; -webkit-transition: 0.2s; color: #fff; font-size: 18px; line-height: 23px;}
.child_pages .box .popup { height: 0; padding: 0;}
.child_pages .box h4 { color: #fff; font-size: 22px; line-height: 26px; margin-bottom: 15px;}
.child_pages .box .inner p { color: #fff; }
.child_pages .box:hover .popup { height: 100%;}
.child_pages .box:hover .popup .inner { top: 50%; position: absolute; transform: translateY(-50%); -webkit-transform: translateY(-50%); width: 100%; box-sizing: border-box;}
.child_pages .box:hover h3 { display: none;}
.child_pages .box .popup .inner { padding: 40px;}

.values { border-top: 1px solid #CC2B28; margin-top: 40px; float: left; width: 100%;}
.values .value { float: left; width: 100%; border-bottom: 1px solid #CC2B28;}
.values .value h4 { color: #CC2B28; font-weight: 300; font-size: 23px; line-height: 27px; padding: 20px 60px 20px 0; position: relative; cursor: pointer;}
.values .value h4 span { background: url(images/accordion-open.png) no-repeat 0 0; background-size: 20px; position: absolute; width: 20px; height: 20px; right: 20px; top: 0; bottom: 0; margin: auto;}
.values .value h4.active span { background-position: 0 -20px;}
.values .value .text { float: left; width: 100%; padding-bottom: 25px;}

.main table { float: left; width: 100%; text-align: center; margin: 20px 0 0;}
.main table tr {}
.main table th { background: #CC2B28; border: 1px solid #dedede; color: #fff; padding: 13px; text-transform: uppercase; font-size: 15px;}
.main table td { border: 1px solid #dedede; padding: 13px; font-weight: 300; width: 50%;}
.main table td strong { font-size: 15px; font-weight: 600;}

.teaching table { text-align: left;}
.teaching table td { width: auto;}
.teaching table h6 { font-size: 15px; line-height: 18px; margin: 3px 0;}
.teaching table p { margin: 0;}

ul.search_results {}
ul.search_results li { border-bottom: 1px solid #dedede; padding-bottom: 40px; margin-bottom: 30px; font-style: normal;}
.search_results li h3 {}
.search_results li p {}
.search_results li a.cta {}


/* CALENDAR PAGE
---------------------------------------------------------------------------------- */

.mainCal { float: left; width: 100%;}
.simcal-default-calendar-grid .simcal-present>div { border: 1px solid #CC2B28 !important;}
.simcal-default-calendar-grid .simcal-day-has-events .simcal-day-number { background-color: #1B6384 !important;}
.simcal-default-calendar-grid .simcal-present .simcal-day-number { background-color: #CC2B28 !important;}
.simcal-default-calendar-grid.simcal-default-calendar-light .simcal-event { font-size: 13px; line-height: 16px; font-style: normal;}
.simcal-default-calendar-grid .simcal-calendar-head .simcal-nav { padding: 10px 0 30px !important; border: none; background: none;}
.simcal-default-calendar-grid>table thead th { background: none; color: #414042;}
.simcal-default-calendar .simcal-current h3 { color: #414042;}
.main .simcal-calendar ul li { background: none;}

.mobileCal { float: left; width: 100%; display: none;}
.simcal-default-calendar-list .simcal-calendar-head { background: none;}
.simcal-default-calendar-list dt.simcal-day-label>span { background: #1B6384 !important; padding: 7px 14px !important;}
.simcal-default-calendar-list ul.simcal-events { margin: 0 !important;}
.simcal-default-calendar-list ul.simcal-events li.simcal-event { margin: 0 !important; padding: 0;}
.simcal-default-calendar-list .simcal-event-details h4 { font-style: normal; font-size: 15px; line-height: 18px; margin: 0; font-weight: 300;}


/* SERMONS
---------------------------------------------------------------------------------- */

.sermon_search { float: left; width: 100%;}
.sermon_search h4 { float: left;}
.sermon_search input { float: left; margin: -5px 0 0 10px;}

.sermonFilter { float: left; width: 96%; margin: 20px 0 0; background-color: #414042; padding: 2%;}
.search .sermonFilter { margin-bottom: 40px;}
.sermonFilter .browse {}
.sermonFilter form { float: left;}
.sermonFilter select { margin-right: 10px; border: 1px solid #dedede; font-size: 14px; line-height: 14px; height: 38px; width: 180px; background: #fff; font-weight: 500; color: #0D304F;}
#searchform { position: relative; width: 250px;}
#searchform input[type=text] { font-size: 14px; line-height: 14px; border: none; height: 38px; padding: 0 15px; outline: 0; width: 100%; box-sizing: border-box;}
#searchform input[type=text]:focus { background-color: rgba(255,255,255,0.2);}
.sermonFilter #searchform input[type=text]:focus { background-color: rgba(255,255,255,0.9);}
#searchform input[type=submit] { background: url(images/icon-search.png) no-repeat center center; background-size: 20px; height: 38px; width: 38px; position: absolute; right: 0; top: 0; border: none;}
.sermonFilter #searchform input[type=submit] { background-color: #CC2B28;}
#searchform input[type=submit]:hover { background-size: 22px;}

ul.sermons { float: left; width: 100%; margin: 30px 0 30px; padding: 0;}
.page-template-template_sermons ul.sermons { margin-top: 0;}
ul.sermons li { float: left; width: 94%; list-style: none; padding: 20px 3%; border-bottom: 1px solid #dedede; margin: 0; background: none;}
ul.sermons li:nth-child(odd) { background: #F2F1EF;  }
ul.sermons li .sermonInfo { float: left; width: 75%;}
ul.sermons li .download { float: right;}
ul.sermons h3 { margin: 0 0 3px; font-weight: 700; font-size: 16px; line-height: 22px;}
ul.sermons h3 span.new { background: #F7D90E; color: #0D304F; font-size: 10px; padding: 3px 5px; position: relative; top: -3px; margin-left: 6px; font-weight: 700; text-transform: uppercase; line-height: 10px;}
ul.sermons h4 {font-style: italic; font-size: 13px; line-height: 16px; float: left; width: 100%; border: none; margin: 0; padding: 0; color: #414042; font-weight: 400;}
ul.sermons h4 a { color: #1E4164;}
ul.sermons h4 a:hover { border: none; color: #305C7F;}
ul.sermons .download a { float: left; margin-left: 10px; background: url(images/sprite-sermons-full.png) no-repeat 0 0; background-size: 168px; display: block; width: 42px; height: 42px; transition: none; -webkit-transition: none;}
ul.sermons .download a.listen { }
ul.sermons .download a.listen:hover { background-position: 0 -42px;}
ul.sermons .download a.mp3 { background-position: -42px 0;}
ul.sermons .download a.mp3:hover { background-position: -42px -42px;}
ul.sermons .download a.word { background-position: -84px 0; }
ul.sermons .download a.word:hover { background-position: -84px -42px;}
ul.sermons .download a.ppt { background-position: -126px 0;}
ul.sermons .download a.ppt:hover { background-position: -126px -42px;}
ul.sermons a { border: none !important; text-decoration: none;}
ul.sermons .download a.downloadFile { background: url(images/icon-download-only.png) no-repeat bottom center; background-size: 19px; padding-bottom: 24px;}

.sermonTop { float: left; width: 100%; margin-bottom: 20px; padding-bottom: 10px; border-bottom: 1px solid #dedede;}
.sermonTop h2, .sermon_page h2 { margin-bottom: 8px; font-size: 28px; line-height: 33px;}
.sermonTop h4 { font-size: 16px; line-height: 21px; margin-bottom: 10px; font-weight: 300;}
.sermonTop h4 a, a.back { text-decoration: none; color: #1E4164;}
.sermonTop h4 a:hover, a.back:hover { border-bottom: 1px dotted;}
.single-sermon .passage { float: left; width: 94%; background-color: #F1F2F2; border-radius: 6px; padding: 3%; margin-bottom: 24px;}
.single-sermon .passage h5 { margin-bottom: 10px;}
.single-sermon .esv { }
.single-sermon .esv p {}
.single-sermon .social { float: left; width: 100%;}
.single-sermon .series { margin: 50px 0 20px;}
.single-sermon .series a { text-decoration: none; color: #CC2B28; border-bottom: 1px dotted;}
audio { margin: 15px 0 40px; float: left; width: 100%; clear: both;}
.downloads { float: left; width: 100%; font-size: 0;}
.downloads .cta { margin: 0 5px 5px 0;}

.single .sharing { margin: 9px 0 0;}
.single .sharing li { float: left; list-style: none; margin-left: 4px; background: none; padding: 0; margin: 0 0 0 6px;}
.single .sharing li a { width: 37px; height: 37px; background: url(images/sharing-sprite.png) no-repeat 0 0; background-size: 185px; display: block;}
.single .sharing li.facebook a {}
.single .sharing li.facebook a:hover { background-position: 0 -37px;}
.single .sharing li.twitter a { background-position: -37px 0;}
.single .sharing li.twitter a:hover { background-position: -37px -37px;}
.single .sharing li.pinterest a { background-position: -74px 0;}
.single .sharing li.pinterest a:hover { background-position: -74px -37px;}
.single .sharing li.email a { background-position: -111px 0;}
.single .sharing li.email a:hover { background-position: -111px -37px;}
.single .sharing li.print a { background-position: -148px 0;}
.single .sharing li.print a:hover { background-position: -148px -37px;}

.noresults h3 {   font-size: 20px; font-weight: 500; line-height: 25px; margin: 25px 0 18px;}
.noresults .content { margin-bottom: 20px;}

.container .wp-pagenavi { float: left; width: 100%; text-align: center; margin-top: 20px;}
.container .wp-pagenavi a, .container .wp-pagenavi span { border: 1px solid transparent; border-radius: 12px; font-size: 17px; line-height: 17px; cursor: pointer;}
.container .wp-pagenavi a, .container .wp-pagenavi span { padding: 7px 12px;}
.container .wp-pagenavi span.current { font-weight: normal; border: 1px solid #CC2B28;}
.container .wp-pagenavi span.pages { margin-right: 20px;}
.container .wp-pagenavi span.last { margin-left: 20px;}
.container .wp-pagenavi a:hover { border: 1px solid #CC2B28;}

/* TEAM
---------------------------------------------------------------------------------- */

.team { float: left; width: 100%;}
.team .member { float: left; width: 100%; border-bottom: 1px solid #dedede; padding-bottom: 30px; margin-bottom: 30px;}
.team .member .image { float: left; width: 200px; overflow: hidden; height: 200px; border-radius: 130px; border: 2px solid #dedede;}
.team .member .image img { width: 100%; height: auto;}
.team .member .bio { float: left; width: calc(100% - 250px); margin: 20px 0 0 40px;}
.team .member .bio h2 { color: #CC2B28; font-size: 28px; line-height: 1.3em; margin-bottom: 10px; font-weight: 100;}
.team .member .bio p { margin-bottom: 12px;}



/* CONTACT PAGE
---------------------------------------------------------------------------------- */

.contact .main { width: 100%;}
.contact h2 {}
.contact form { font-size: 0; float: left; width: 100%;}
.contact form input[type=text], .contact form textarea { border: 1px solid #dedede; padding: 15px 20px; font-size: 15px; font-weight: 300; line-height: 15px; border-radius: 10px; display: inline-block; vertical-align: top; box-sizing: border-box;}
.contact form input[type=text] { width: 31%; margin: 2% 1%;}
.contact form textarea { width: 97%; height: 150px;}
.contact form input[type=submit] { padding: 14px 40px; margin-top: 40px;}
.contact form .g-recaptcha { float: left; width: 100%; margin: 30px 0 0;}
.contact form .g-recaptcha > div { display: inline-block;}

.find_us { }
.find_us h2 { color: #414042;}
#map, #map_office { height: 470px; width: 100%; margin-top: 50px;}
.contact_bar { float: left; width: 100%; background-color: #CC2B28; font-size: 0; padding: 27px 0;}
.contact_bar p { color: #fff; display: inline-block; margin: 0 20px; vertical-align: middle; font-size: 16px; line-height: 18px; padding: 5px 0; width: auto;}
.contact_bar p.address { background: url(images/icon-pin-white.png) no-repeat 0 0; background-size: 24px; padding-left: 33px; white-space: inherit;}
.contact_bar p.email { background: url(images/icon-contact.png) no-repeat 0 0; background-size: 25px; padding-left: 36px;}
.contact_bar p.tel { background: url(images/icon-tel-white.png) no-repeat 0 0; background-size: 32px; padding-left: 42px;}
.contact_bar p a { color: #fff; text-decoration: none; padding-bottom: 2px;}
.contact_bar p a:hover { border-bottom: 1px dotted;}
.contact_bar a.cta { margin: 0;}

/* WP forms */

.container .wpforms-container { text-align: left; margin-top: 50px;}
.container div.wpforms-container-full .wpforms-form .wpforms-field-label { font-weight: 300; font-size: 15px;}
.container div.wpforms-container-full .wpforms-form .wpforms-field-sublabel { font-weight: 300;}
.container div.wpforms-container-full .wpforms-form input.wpforms-field-medium, 
.container div.wpforms-container-full .wpforms-form select.wpforms-field-medium, 
.container div.wpforms-container-full .wpforms-form .wpforms-field-row.wpforms-field-medium { max-width: 100%;}
.container div.wpforms-container-full .wpforms-form .wpforms-field-checkbox .wpforms-field-label { margin: 10px 0 15px;}


/* FOOTER
---------------------------------------------------------------------------------- */

footer { float: left; width: 100%; background-color: #3D3D3D; padding: 40px 0 35px;}
footer .col { float: left; width: 32%; box-sizing: border-box; padding-right: 30px;}
footer .col2 { border-left: 1px solid #7B7A7B; padding: 0 0 0 35px; width: 68%;}
footer .col3 { padding-left: 35px;}
footer h4 { color: #E9C21E; font-size: 15px; line-height: 19px; margin-bottom: 15px;}
footer .col2 h4 a { color: #E9C21E; text-decoration: none;}
footer .col1 h4 { background: url(images/icon-questionmark.png) no-repeat center left; background-size: 17px; padding: 5px 0 5px 27px;}
/* footer .col2 h4 { background: url(images/icon-clock.png) no-repeat center left; background-size: 27px; padding: 5px 0 5px 38px;}*/
footer .col2 h4 { background: url(images/icon-facebook.png) no-repeat center left; background-size: 13px; padding: 5px 0 5px 28px;}
footer ul {}
footer ul li {}
footer ul li a { color: #fff; text-decoration: none; position: relative; padding-bottom: 3px; }
footer ul li a:after { content: ""; height: 1px; width: 0; background: #E9C21E; position: absolute; left: 0; bottom: 0; transition: 0.3s; -webkit-transition: 0.3s;}
footer ul li a:hover:after { width: 20px;}
footer p, footer li { color: #fff; font-size: 14px;}
footer p a { color: #fff; text-decoration: none; border-bottom: 1px dotted;}
footer p a:hover { color: #E9C21E;}
footer .time { font-size: 10px; line-height: 12px; font-weight: 300; text-transform: uppercase; color: #fff; margin-top: 10px; float: left; width: 100%;}

.facebook_feed a { color: #fff; border: none;}
.facebook_feed .cff-media-link .fa, #cff .cff-cta-link a { border-color: #fff;}

.bottom_bar { float: left; width: 100%; background-color: #333333; padding: 18px 0;}
.bottom_bar p { color: #fff; font-size: 12px;}
.bottom_bar p span { padding: 0 5px;}
.bottom_bar p a { color: #fff; text-decoration: none; padding-bottom: 3px; position: relative;}
.bottom_bar p a:after { content: ""; height: 1px; width: 0; background: #E9C21E; position: absolute; left: 0; bottom: 0; transition: 0.3s; -webkit-transition: 0.3s;}
.bottom_bar p a:hover:after { width: 20px;}
.bottom_bar p.copy { float: left;}
.bottom_bar p.copy br { display: none;}
.bottom_bar p.credit { float: right;}


/* ANIMATIONS
---------------------------------------------------------------------------------- */

.js .hero .slider ul.slides li .inner { opacity: 0;}

.js .home .logged-in header,
.js .home header { top: -140px;}


/* IE FIXES
---------------------------------------------------------------------------------- */

.ie9 .takeover .inner, .lt-ie9 .takeover .inner { top: 30%;}
.ie9 .hero .slider ul.slides li .inner, .lt-ie9 .hero .slider ul.slides li .inner { top: 30%;}
.ie9 .home .boxes .box .inner, .lt-ie9 .home .boxes .box .inner { top: 70px;}
.ie9 .featured_image .page_title, .lt-ie9 .featured_image .page_title { top: 150px;}
.ie9 header ul li a, .lt-ie9 header ul li a { padding-bottom: 10px;}
.ie9 header ul.sub-menu, .lt-ie9 header ul.sub-menu { top: 28px; padding-top: 0;}
.ie9 .child_pages .box:hover .popup .inner, .lt-ie9 .child_pages .box:hover .popup .inner { top: 60px;}