/*
Theme Name: Elevation Church Starter Theme
Theme URI: http://elevationchurch.org/
Author: the Elevation Church Digital Team
Author URI: http://elevationchurch.org/
Description: The Elevation Church starter theme is a theme that can be extended to create sites for Elevation Church.  It includes default plugins and options that speeds up development. If you are reading this, we would love to hear from you: webteam@elevationchurch.org
Version: 1.0
Tags:
Text Domain: ec_starter
*/

.Grid {
  display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-flex-wrap: wrap;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
list-style: none;
margin: 0;
padding: 0;
}

.Grid-cell {
  flex: 1;
}

.Grid--flexCells > .Grid-cell {
  display: flex;
}

.Grid--top {
  align-items: flex-start;
}

.Grid--bottom {
  align-items: flex-end;
}

.Grid--center {
  align-items: center;
}

.Grid--justifyCenter {
  justify-content: center;
}

.Grid-cell--top {
  align-self: flex-start;
}

.Grid-cell--bottom {
  align-self: flex-end;
}

.Grid-cell--center {
  align-self: center;
}

.Grid-cell--autoSize {
  flex: none;
}

.Grid--fit > .Grid-cell {
  flex: 1;
}

.Grid--full > .Grid-cell {
  flex: 0 0 100%;
}

.Grid--1of2 > .Grid-cell {
  flex: 0 0 50%;
}

.Grid--1of3 > .Grid-cell {
  flex: 0 0 33.3333%;
}

.Grid--1of4 > .Grid-cell {
  flex: 0 0 25%;
}

@media (--break-sm) {
  .small-Grid--fit > .Grid-cell {
    flex: 1;
  }
  .small-Grid--full > .Grid-cell {
    flex: 0 0 100%;
  }
  .small-Grid--1of2 > .Grid-cell {
    flex: 0 0 50%;
  }
  .small-Grid--1of3 > .Grid-cell {
    flex: 0 0 33.3333%;
  }
  .small-Grid--1of4 > .Grid-cell {
    flex: 0 0 25%;
  }
}

@media (--break-md) {
  .med-Grid--fit > .Grid-cell {
    flex: 1;
  }
  .med-Grid--full > .Grid-cell {
    flex: 0 0 100%;
  }
  .med-Grid--1of2 > .Grid-cell {
    flex: 0 0 50%;
  }
  .med-Grid--1of3 > .Grid-cell {
    flex: 0 0 33.3333%;
  }
  .med-Grid--1of4 > .Grid-cell {
    flex: 0 0 25%;
  }
}

@media (--break-lg) {
  .large-Grid--fit > .Grid-cell {
    flex: 1;
  }
  .large-Grid--full > .Grid-cell {
    flex: 0 0 100%;
  }
  .large-Grid--1of2 > .Grid-cell {
    flex: 0 0 50%;
  }
  .large-Grid--1of3 > .Grid-cell {
    flex: 0 0 33.3333%;
  }
  .large-Grid--1of4 > .Grid-cell {
    flex: 0 0 25%;
  }
}

.Grid--gutters {
  margin: -1em 0 1em -1em;
}
.Grid--gutters > .Grid-cell {
  padding: 1em 0 0 1em;
}

.Grid--guttersLg {
  margin: -1.5em 0 1.5em -1.5em;
}
.Grid--guttersLg > .Grid-cell {
  padding: 1.5em 0 0 1.5em;
}

.Grid--guttersXl {
  margin: -2em 0 2em -2em;
}
.Grid--guttersXl > .Grid-cell {
  padding: 2em 0 0 2em;
}

@media (--break-sm) {
  .small-Grid--gutters {
    margin: -1em 0 1em -1em;
  }
  .small-Grid--gutters > .Grid-cell {
    padding: 1em 0 0 1em;
  }
  .small-Grid--guttersLg {
    margin: -1.5em 0 1.5em -1.5em;
  }
  .small-Grid--guttersLg > .Grid-cell {
    padding: 1.5em 0 0 1.5em;
  }
  .small-Grid--guttersXl {
    margin: -2em 0 2em -2em;
  }
  .small-Grid--guttersXl > .Grid-cell {
    padding: 2em 0 0 2em;
  }
}

@media (--break-md) {
  .med-Grid--gutters {
    margin: -1em 0 1em -1em;
  }
  .med-Grid--gutters > .Grid-cell {
    padding: 1em 0 0 1em;
  }
  .med-Grid--guttersLg {
    margin: -1.5em 0 1.5em -1.5em;
  }
  .med-Grid--guttersLg > .Grid-cell {
    padding: 1.5em 0 0 1.5em;
  }
  .med-Grid--guttersXl {
    margin: -2em 0 2em -2em;
  }
  .med-Grid--guttersXl > .Grid-cell {
    padding: 2em 0 0 2em;
  }
}

@media (--break-lg) {
  .large-Grid--gutters {
    margin: -1em 0 1em -1em;
  }
  .large-Grid--gutters > .Grid-cell {
    padding: 1em 0 0 1em;
  }
  .large-Grid--guttersLg {
    margin: -1.5em 0 1.5em -1.5em;
  }
  .large-Grid--guttersLg > .Grid-cell {
    padding: 1.5em 0 0 1.5em;
  }
  .large-Grid--guttersXl {
    margin: -2em 0 2em -2em;
  }
  .large-Grid--guttersXl > .Grid-cell {
    padding: 2em 0 0 2em;
  }
}

.Aligner {
    display: -webkit-box; /* OLD - iOS 6-, Safari 3.1-6 */
    display: -moz-box; /* OLD - Firefox 19- (buggy but mostly works) */
    display: -ms-flexbox; /* TWEENER - IE 10 */
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -webkit-flex-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center; /* Safari 6.1+ */
    justify-content: center;
    height: 100%;
}

.Aligner-item {
  flex: 1;
}

.Aligner-item--top {
  align-self: flex-start;
}

.Aligner-item--bottom {
  align-self: flex-end;
}

/*---------------------------*
 * BOOTSTRAP CHANGES / ADDITIONS
 *---------------------------*/
.btn {    
    font-family: Montserrat, sans-serif;
    letter-spacing: 0.21416666666667em;
    border-radius: 0;
    padding: 1em 2em;
    text-transform: uppercase;
    transition: all .2s ease-in-out;
}

.btn:hover, 
.btn:active, 
.btn:focus {
    outline: none;
}

.btn.btn-no-caps {
    text-transform: none;
}

.btn-group-lg>.btn, 
.btn-lg {
    padding: 1.5em 2.5em;
    font-size: 14px;
}

.btn-group-sm>.btn, .btn-sm {
    padding: 5px 10px;
    padding-top: 5px;
    padding-right: 10px;
    padding-bottom: 5px;
    padding-left: 10px;
    font-size: 12px;
    line-height: 1.5;
}

.btn.btn-text {
    background: transparent;
    color: black;
    border-color: transparent;
    padding: 0;
    margin: 0;    
}

.btn.btn-text:active,
.btn.btn-text:focus {
    background: transparent;
    outline: none;
}

.lead {
    font-size: 18px;
    line-height: 1.25;
}

@media ( min-width: 768px ) {
    
    .lead {
        font-size: 20px;
    }
    
}

@media ( min-width: 1200px ) {
    
    .lead {
        font-size: 24px;
    }
    
}

.form-control {
    border-radius: 0;
}

.input-lg {
    font-size: 14px;
}


@media( min-width: 768px ) {
    .col-sm-pull-right {
        float: right !important;
    }
    
    .col-sm-spacing-right {
        padding-right: 70px !important;
    }
    
    .col-sm-spacing-left {
        padding-left: 70px !important;
    }
}

@media( min-width: 992px ) {
    .col-md-pull-right {
        float: right !important;
    }
    
    .col-md-spacing-right {
        padding-right: 70px !important;
    }
    
    .col-md-spacing-left {
        padding-left: 70px !important;
    }
}

@media( min-width: 1200px ) {    
    .col-lg-pull-right {
        float: right !important;
    }    
    
    .col-lg-spacing-right {
        padding-right: 70px !important;
    }
    
    .col-lg-spacing-left {
        padding-left: 70px !important;
    }
}

.list-inline>li {
    padding-left: 0;
    padding-right: 0;
}

.modal-content {
    border-radius: 0;
    border: none;
}

.modal-header {
    border-bottom: none;
}

.modal-header .close {
    position: absolute;
    top: 0;
    right: 0;
    padding: 15px;
}

.modal-title {
    color: #D3D3D3;
    font-family: Montserrat, sans-serif;
    text-transform: uppercase;
    font-weight: bold;
    letter-spacing: 0.14285714285714em;
    font-size: 1em;
}

.modal-footer {
    border-top: none;
}

.col-xs-stretch {
    padding-left: 0;
    padding-right: 0;
}

@media( min-width: 1200px ) and ( max-height: 800px ) {
    .single-ec-sermon .container, 
    .single-ec-media-post .container {
        width: 970px;
    }
    
}

.widget_nav_menu {
    list-style: none;
}


/*---------------------------*
 * GENERAL SETTINGS
 *---------------------------*/
html, body {
    width: 100%;    
}

html {
    overflow-y: scroll;
}

body {
    font-family: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
    font-weight: normal;
    -webkit-font-smoothing: antialiased;
    background-color: black;
}

.vc_row {
    background-color: white;
}

.ec-section {
    background-color: white;
}

button {
    font-family: Montserrat, sans-serif;
    border-radius: 0;
}

p {
    color: #777;
    font-size: 1em;
    line-height: 1.75;
    font-weight: 300;
}

a:hover {
    text-decoration: none;
}

h1, h2, h3, h4, h5, h6 {
    font-weight: 300;
    margin-top: 0;
}

ul li {
    padding-bottom: .25em;
    font-weight: 300;
    
}

input[type="text"] {
    padding: 5px 10px;
    font-size: 16px;
}

.ec-full-height-xs {
    min-height: 100vh;
}

.ec-lowercase-first::first-letter, 
.ec-lowercase-first:first-letter,
.ec-lowercase-first *::first-letter, 
.ec-lowercase-first *:first-letter {
    text-transform: lowercase !important;
}

@media ( max-width: 767px ) {
    
    .ec-normal-height-xs {
        height: auto !important;
    }
    
}

@media ( min-width: 768px ) {
    .ec-content-center {
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;

        -ms-flex-align: center;
        -webkit-align-items: center;
        -webkit-box-align: center;

        align-items: center;
    }
    
    .container.ec-content-center {
        padding-left: 0;
        padding-right: 0;
    }
    
    .container.ec-content-center > .row {
        width: 100%;
        margin-left: 0;
        margin-right: 0;
    }    
}


.col-xs-stretch {    
    padding-left: 0 !important;
    padding-right: 0 !important;
}

@media( min-width: 768px ) {
    
    .col-sm-pad {
        padding-left: 15px !important;
        padding-right: 15px !important;
    }
}

.ec-row-o-content-middle {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;

    -ms-flex-align: center;
    -webkit-align-items: center;
    -webkit-box-align: center;

    align-items: center;
}

.ec-section {
    padding: 5em 0;
}

.ec-section.ec-section-light, 
.ec-section.ec-section--light {
    background-color: #F2F2F2;
}

.ec-section.ec-section-dark, 
.ec-section.ec-section--dark {
    background-color: black;
}

.ec-section.ec-section--gray {
    background-color: #222;
}

.ec-section.ec-section--light-gray {
    background-color: #E8E8E8;
}

.ec-section.ec-section--short {
    padding: 1.5em 0;
}

.ec-section.ec-section--no-padding {
    padding: 0;
}

.ec-section.ec-section--has-title {
    padding-top: 3em;
}

.ec-section .ec-section__title {
    margin-bottom: 1em;
    text-align: center;
}

.ec-section.ec-section--show-single-sermon {
    padding-top: 0;
}

.ec-section--404 {
    color: white;
}

.ec-section--404 .btn-text {
    color: white;
}

.ec-section--404 .btn-lg {
    margin-bottom: 1em;
}

.ec-section--404 h2 {
    margin-bottom: 20px;
}

.ec-page-header {
    height: 80vh;
    background-color: black;
    background-size: cover;
}

.ec-page-header .btn-lg:hover  {
    background-color: #efefef;
    border-color: #efefef;
}

.ec-page-header.ec-page-header--short {
    max-height: 350px;
}

@media( min-width: 768px ) {
    .single-ec-location .ec-page-header.ec-page-header--short {
        max-height: 450px;
    }
}



/*---------------------------*
 * VC OVERRIDES / ADDITIONS
 *---------------------------*/
body .wpb_button, 
body .wpb_content_element,
body .wpb_row,
body ul.wpb_thumbnails-fluid>li {
    margin-bottom: 0;
}

.vc_video-bg {
    object-fit: cover;
    object-position: top center;
}

.vc_row {
    background-size: cover;
    background-position: center;
    overflow: hidden;
    opacity: 0;
    position: relative;
}

.vc_mobile .ec-video-bg {
    display: none;
}

.ec-bg-image {
    position: absolute;
    height: 100%;
    width: 100%;
    background-size: cover;
    top:0;
    left: 0;
}

.ec-row-o-full-height {
    height: 100vh;
}

.ec-full-screen-video {
    background: black;
}

.vc_col-lg-1, .vc_col-lg-10, .vc_col-lg-11, .vc_col-lg-12, .vc_col-lg-2, .vc_col-lg-3, .vc_col-lg-4, .vc_col-lg-5, .vc_col-lg-6, .vc_col-lg-7, .vc_col-lg-8, .vc_col-lg-9, .vc_col-md-1, .vc_col-md-10, .vc_col-md-11, .vc_col-md-12, .vc_col-md-2, .vc_col-md-3, .vc_col-md-4, .vc_col-md-5, .vc_col-md-6, .vc_col-md-7, .vc_col-md-8, .vc_col-md-9, .vc_col-sm-1, .vc_col-sm-10, .vc_col-sm-11, .vc_col-sm-12, .vc_col-sm-2, .vc_col-sm-3, .vc_col-sm-4, .vc_col-sm-5, .vc_col-sm-6, .vc_col-sm-7, .vc_col-sm-8, .vc_col-sm-9, .vc_col-xs-1, .vc_col-xs-10, .vc_col-xs-11, .vc_col-xs-12, .vc_col-xs-2, .vc_col-xs-3, .vc_col-xs-4, .vc_col-xs-5, .vc_col-xs-6, .vc_col-xs-7, .vc_col-xs-8, .vc_col-xs-9 {
    /*
    -webkit-box-flex: 1;
    -moz-box-flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    */
}

body .vc_col-has-fill>.vc_column-inner, 
body .vc_row-has-fill+.vc_row-full-width+.vc_row>.vc_column_container>.vc_column-inner, 
body .vc_row-has-fill+.vc_row>.vc_column_container>.vc_column-inner, 
body .vc_row-has-fill+.vc_vc_row>.vc_row>.vc_vc_column>.vc_column_container>.vc_column-inner, 
body .vc_row-has-fill+.vc_vc_row_inner>.vc_row>.vc_vc_column_inner>.vc_column_container>.vc_column-inner, 
body .vc_row-has-fill>.vc_column_container>.vc_column-inner, 
body .vc_row-has-fill>.vc_row>.vc_vc_column>.vc_column_container>.vc_column-inner, 
body .vc_row-has-fill>.vc_vc_column_inner>.vc_column_container>.vc_column-inner {
    padding-top: 0;
}


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



/*---------------------------*
 * SITE WRAPPER
 *---------------------------*/
.ec-site-wrapper {
    width: 100%;
    height: auto;
    overflow: hidden;
}



/*---------------------------*
 * LOADING GIF
 *---------------------------*/
.ec-loading {
    height: 100px; 
    width: 100px;
    background-image: url('assets/img/loading_gif_logo.png');
    background-size: 100%;
    background-position: center;
    background-repeat: no-repeat;
    position: relative;
    display: inline-block;
}

.ec-loading:after {
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    content: '';
    background-image: url('assets/img/loading_gif_circle.png');
    position: absolute;
    background-size: 100%;
    -webkit-animation:spin .75s linear infinite;
    -moz-animation:spin .75s linear infinite;
    animation:spin .75s linear infinite;
}

@-moz-keyframes spin { 100% { -moz-transform: rotate(360deg); } }
@-webkit-keyframes spin { 100% { -webkit-transform: rotate(360deg); } }
@keyframes spin { 100% { -webkit-transform: rotate(360deg); transform:rotate(360deg); } }



/*---------------------------*
 * MENU BUTTON
 *---------------------------*/
.ec-menu-button__wrapper {
    right: 15px;
    height: 60px;
    position: absolute;
    z-index: 100;
}

.ec-menu-button--live {
    color: white;
    background-color: black;
    border: none;
    margin-top: 9px;
    position: relative;
    left: 10px;
}

.ec-menu-button {
    height: 60px;
    width: 65px;
    display: block;
    position: relative;
    z-index: 1;
    top: 0;
    padding: 20px;
    padding-right: 20px;
    box-sizing: border-box;
    float: right;
    right: -15px;
}

.ec-menu-button__line {
    float: left;
    position: relative;
    height: 2px;
    width: 100%;
    background-color: black;
    transition: all .3s ease-in-out;
    -webkit-transform-origin: left center;
    -moz-transform-origin: left center;
    transform-origin: left center;
}

.ec-menu-button--line-1 {
    top: 0;
}

.ec-menu-button--line-2 {
    top: 7px;
    opacity: 1;
}

.ec-menu-button--line-3 {
    top: 14px;
}

.ec-menu-open .ec-menu-button__line {
    background-color: white;
}

.ec-menu-open .ec-menu-button .ec-menu-button--line-1 {
    -webkit-transform: rotate(45deg); 
    -moz-transform: rotate(45deg);  
    filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=5); /*for IE*/
}

.ec-menu-open .ec-menu-button .ec-menu-button--line-2 {
    opacity: 0;
}

.ec-menu-open .ec-menu-button .ec-menu-button--line-3 {
    -webkit-transform: rotate(-45deg); 
    -moz-transform: rotate(-45deg);  
    filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=-5); /*for IE*/    
}

@media ( min-width: 768px ) {
    
    .ec-menu-button--live {
        background-color: #ccc;
        background-color: rgba(255,255,255, 0.4);
    }
    
    .ec-menu-button__wrapper {
        height: 100px;
        padding-top: 30px;
        right: 40px;
        top: -10px;
    }    
    
    .ec-menu-button__line {
        background-color: white;
    }
    
}


/*---------------------------*
 * HEADER
 *---------------------------*/
.ec-site-header {
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 12;
    line-height: 30px;
    vertical-align: middle;
    height: 60px;
    transition: all .4s ease-in-out;
    overflow: hidden;
    padding-left: 15px;
    padding-right: 15px;
    background-color: white;
}

/*
.ec-site-header__mobile-overlay .ec-site-header {
    position: absolute;
    background-color: transparent;
    color: white;
}

.ec-site-header__mobile-overlay .ec-logo--dark {
    display: none;    
}

.ec-site-header__mobile-overlay .ec-logo--light {
    display: inline-block;
}

.ec-site-header__mobile-overlay .ec-menu-button__line {
    background-color: white;
}
*/

.ec-menu-open .ec-site-header {
    background-color: transparent;
}

.ec-menu-open .ec-site-header .ec-logo--dark {
    display: none;    
}

.ec-site-header.menu-active .ec-logo--light {
    display: inline;
}

.ec-header__wrapper {
    display: table;
    width: 100%;
    height: 60px;
}

.ec-header-content__wrapper {
    display: table-row;
}

.ec-site-header .ec-header-content {
    display: table-cell;
    vertical-align: middle;
}

.ec-site-header .ec-header-content > a {
    display: inline-block;
}

.ec-header-content__wrapper {
    position: relative;
}

.ec-logo {
    display: none;
}

.ec-logo--mobile {
    height: 30px;
    width: 30px;
}

.ec-logo--light {
    display: none;
}

.ec-menu-open .ec-logo--light {
    display: inline;
}

.ec-menu-open .ec-logo--dark {
    display: none;
}



@media screen and ( min-width: 768px ) {
    
    .ec-logo--mobile {
        display: none !important;
    }
    
    .ec-logo {
        display: inline;
        height: 40px;
    }
    
    .ec-site-header {
        height: 100px;
        padding-left: 40px;
        padding-right: 40px;
        background-color: transparent;
        z-index: 10;
        position: absolute;
    }
    
    .ec-header__wrapper {
        height: 100px;
    }
    
    .ec-content-left, 
    .ec-content-right {
        width: 175px;
    }        
    
}


/*---------------------------*
 * SIDE NAV
 *---------------------------*/
.ec-side-nav {
    width: 100%;
    max-width: 100%;
    right: 0;
    top: 0;
    height: 100vh;
    background-color: #333;
    background-color: rgba( 0,0,0,0.9 );
    position: fixed;
    opacity: 0;
    z-index: -1;
    transition: all .2s ease-in-out;
    padding-top: 80px;
    padding-right: 30px;
    padding-left: 30px;
    padding-bottom: 140px;
    text-align: center;
    overflow-x: hidden;
    overflow-y: scroll;
}

.ec-side-nav .ec-side-nav__scroll-wrapper {
    overflow-y: scroll;
}

.ec-menu-open .ec-side-nav {
    z-index: 11;
    opacity: 1;
}

.ec-side-nav a {
    color: #a3a3a3;
    transition: all 0.15s ease-in-out;
    display: block;
}

.ec-side-nav__main a {
    color: white;
}

.ec-side-nav a:hover {
    color: white;
}

.ec-side-nav__main:hover a {
    color: #a3a3a3;
}

.ec-side-nav__main:hover a:hover {
    color: white;
}

.ec-side-nav__main .menu, 
.ec-side-nav__secondary .menu {
    list-style: none;
    padding-left: 0;
    margin-bottom: 2em;
}

.ec-side-nav__main .menu {
    font-family: Montserrat, sans-serif;
}

.ec-side-nav__secondary .menu {
    
}

.ec-side-nav__main .menu-item {
    
}

.ec-side-menu__title {
    font-size: 14px;
    font-family: 'Montserrat', sans-serif;
    font-weight: bold;
    color: #a3a3a3;
    text-transform: uppercase;
    margin: 0;
    line-height: 1.5;
}

.ec-side-nav__main a {
    font-size: 14px;
    line-height: 2;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 0.21428571428571em;
}

.ec-side-nav__secondary a {
    line-height: 2;    
}

.ec-side-nav__main a:hover,
.ec-side-nav__main a:active, 
.ec-side-nav__main a:focus, 
.ec-side-nav__secondary a:hover,
.ec-side-nav__secondary a:active, 
.ec-side-nav__secondary a:focus {
    text-decoration: none;
}

@media (min-width: 768px ) {
    
    .ec-side-nav {
        width: 320px;
        text-align: left;
        right: -20px;
    }
    
    .ec-side-menu__title {
        color: #a3a3a3;
    }
    
}



/*---------------------------*
 * MAIN NAV
 *---------------------------*/
.ec-main-nav {
    text-transform: uppercase;
    font-family: Montserrat, sans-serif;
    letter-spacing: 0.11142857142857em;
    font-size: 13px;
    display: none;
    margin-bottom: 0;
}

.ec-main-nav.list-inline li {
    margin-left: 10px;
}

.ec-main-nav.list-inline li:first-child {
    margin-left: 0;
}

.ec-main-nav a {
    color: white;
    transition: all 0.15s ease-in-out;
}

.ec-header--dark .ec-main-nav a {
    color: black;
}

.no-touch .ec-main-nav:hover .menu-item a {
    color: #bbb;
}

.no-touch .ec-main-nav:hover .menu-item:hover a {
    text-decoration: none;
    color: white;
}

@media screen and ( min-width: 1000px ) {
    
    .ec-main-nav {
        display: block;
    }
    
}


@media screen and ( min-width: 1200px ) {
 
    .ec-main-nav.list-inline li {
        margin-left: 1em;
    }
    
}



/*---------------------------*
 * SCRIM
 *---------------------------*/
.ec-overlay-scrim {
    background-color: black;
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
}


/*---------------------------*
 * CALL TO ACTION
 *---------------------------*/
.vc_cta3-container {
    color: white;
    max-width: 450px;
}

.vc_cta3-container h2 {
    font-size: 36px;
    font-weight: 300;    
}

.vc_cta3-container h4 {
    font-size: 18px;
    font-weight: 300;
    line-height: 1.5;
}

.vc_general.vc_cta3 .vc_cta3-actions {
    text-align: center;
}

.vc_btn3 {
    border-radius: 0 !important;
    text-transform: uppercase;
    font-family: Montserrat, sans-serif;
    color: #333 !important;
}

body .vc_btn3.vc_btn3-size-md {
    padding: 18px 48px;
}


/*---------------------------*
 * EC CALL TO ACTION
 *---------------------------*/
.ec-call-to-action {
    text-align: center;
}

.ec-call-to-action .ec-call-to-action__title {
    color: white;
    font-size: 36px;
    font-weight: 300;
    margin-top: 0;  
    margin-bottom: 15px;
    line-height: 1.22;
}

.ec-call-to-action .ec-call-to-action__subtitle {
    color: white;
    font-size: 18px;
    font-weight: 300;
    margin-top: 0;
    margin-bottom: 25px;
    line-height: 1.5;
}

.ec-call-to-action .ec-call-to-action__button {
    background-color: white;
    color: black;
    font-family: Montserrat, sans-serif;
    text-transform: uppercase;
    font-size: 14px;
    letter-spacing: 0.30428571428571em;
    padding: 16px 25px;
    display: inline-block;
}

.ec-call-to-action .ec-call-to-action__button:hover {
    text-decoration: none;
}


@media screen and ( min-width: 1000px ) {
    
    .ec-call-to-action .ec-call-to-action__title {
        font-size: 44px;
    }
    
}


/*---------------------------*
 * POP UP
 *---------------------------*/
.wpdb-background {
    display: none;
}



/*---------------------------*
 * SERMON GRID
 *---------------------------*/
body .ec-sermon-grid .ec-sermon {
    position: relative;
    margin-bottom: 30px;
    background-color: #222;
}

.ec-sermon-grid .ec-sermon:before {
    content: ' ';
    position: absolute;
    height: 60px;
    width: 60px;
    top: 50%;
    left: 50%;
    margin-left: -30px;
    margin-top: -30px;
    background-image: url('assets/img/play-button.png');
    background-size: 60px;
    opacity: 0;
    transition: all .15s ease-in-out;
}

.ec-sermon-grid .ec-sermon:hover:before {
    opacity: 1;
}

.ec-sermon-grid .ec-sermon:after {
    content: ' ';
    position: absolute;
    bottom: 0;
    width: 100%;
    height: 50%;
    z-index: 1;
    opacity: 0.5;
    background: -moz-linear-gradient(top, rgba(0,0,0,0) 0%, rgba(0,0,0,1) 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,1) 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(0,0,0,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#000000',GradientType=0 ); /* IE6-9 */
}



.ec-sermon-grid .ec-sermon__info {
    position: absolute;
    bottom: 0;
    width: 100%;
    color: white;
    padding: 15px;   
    z-index: 10;
}

.ec-sermon__has-series .ec-sermon__info-text {
    margin-left: 60px;
}

.ec-sermon-grid .ec-sermon__title {
    font-size: 18px;
    font-weight: 400;
    margin-bottom: 0;
    line-height: 1.25;
}

.ec-sermon-grid .ec-sermon__info p {
    margin-bottom: 0;
}

.ec-sermon-grid .ec-sermon__series-thumbnail {
    float: left;
    width: 50px;
    height: auto;
    margin-right: 15px;
    border: 2px solid white;
}

.ec-sermon-grid .ec-sermon__type {
    font-size: 12px;
    text-transform: uppercase;
    font-family: Montserrat, sans-serif;
    font-weight: bold;
    letter-spacing: 0.14285714285714em;
    color: white;
}


@media ( min-width: 768px ) {
    
    .ec-sermon-grid .ec-sermon__info {
        padding: 20px;    
    }
    
    .ec-sermon-grid .ec-sermon__title {
        font-size: 24px;
    }
    
    .ec-sermon-grid .ec-sermon__type {
        font-size: 14px;
    }    
    
    .ec-sermon-grid .ec-sermon__series-thumbnail {
        width: 60px;
    }
    
    .ec-sermon__has-series .ec-sermon__info-text {
        margin-left: 70px;
    }
    
}


/*---------------------------*
 * RESPONSIVE VIDEO
 *---------------------------*/
.ec-responsive-video {
    position: relative;    
}

.ec-responsive-video .ec-responsive-video__bg-img {
    position: absolute;
    top: 0;
    left; 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    background-size: cover;
    opacity: 1;
    transition: all .5s ease-in-out;
}

.ec-responsive-video .ec-responsive-video__bg-img.video-playing {
    opacity: 0;
}



/*---------------------------*
 * SINGLE SERMON
 *---------------------------*/
.ec-single-sermon__share-images.list-inline > li {
    padding-left: 10px;
    padding-right: 10px;
}

.ec-single-sermon__type {
    color: #8D8D8D;
    font-family: Montserrat, sans-serif;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.16666666666667em;
}

.single-ec-sermon .ec-section--show-single-sermon {
    padding-top: 0;
    padding-bottom: 0;
}

.single-ec-sermon .ec-site-header {
    position: relative;
}

.single-ec-sermon .ec-single-sermon__video-container {
    padding-left: 0;
    padding-right: 0;
    margin-bottom: 1em;
}

.ec-single-sermon__video-container iframe:nth-child(2) {
    opacity: 0;
}

.vc_mobile .ec-single-sermon__video-container iframe:nth-child(2) {
    display: none;
}

@media ( min-width: 768px ) {
    .single-ec-sermon .ec-single-sermon__video-container {
        padding-left: 15px;
        padding-right: 15px;
    }
    
    .single-ec-sermon .ec-section--show-single-sermon {
        padding-bottom: 5em;
    }
    
    .single-ec-sermon.admin-bar .ec-menu-button__wrapper {
        padding-top: 62px;
    }
}



/*---------------------------*
 * FULL SCREEN VIDEO BG
 *---------------------------*/
.ec-video-bg {
    object-fit: cover;
    object-position: top center;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}


/*---------------------------*
 * FULL SCREEN VIDEO BG
 *---------------------------*/
.ec-full-screen-video .ec-title {
    color: white;
    font-size: 48px;
    line-height: 41px;
    opacity: 1;
    margin-bottom: 15px;
}

.ec-full-screen-video .ec-subtitle {
    color: white;
    font-weight: 500;
    font-size: 16px;
    margin-bottom: 15px;
}

.ec-full-screen-video .ec-button button, 
.ec-full-screen-video .ec-button a {
    background-color: white;
    color: black;
}


/*---------------------------*
 * ANCHOR LINK
 *---------------------------*/
.ec-anchor-link {
    position: absolute;
    left: 0;
    width: 100%;
    bottom: 40px;
    text-align: center;
    padding: 10px 0;
    color: white;
    font-family: Montserrat, sans-serif;
    text-transform: uppercase;
    letter-spacing: 0.11142857142857em;
}

.ec-anchor-link:hover, 
.ec-anchor-link:focus {
    color: white;
    text-decoration: none;
}

.ec-anchor-link-arrow {
    margin-right: 1em;
}


/*---------------------------*
 * HEADER ROW
 *---------------------------*/
.ec-header-row {
        
}

.ec-header-row .ec-title {
    color: white;
    margin-bottom: 10px;
}

.ec-header-row .ec-title a {
    color: white;
}

.ec-header-row .ec-title a:hover {
    text-decoration: none;
}

.ec-header-row .ec-subtitle-small {
    color: white;
    font-family: Montserrat;
    text-transform: uppercase;
    color: #ccc;
    font-weight: bold;
    font-size: 12px;
    letter-spacing: 0.14583333333333em;
}

.ec-header-row .ec-icon-play img {
    height: 70px;
    width: auto;
}


/*---------------------------*
 * SERMON FILTER
 *---------------------------*/
.ec_sermon_filter_button {
    color: black;
    font-family: Montserrat, sans-serif;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 0.14285714285714em;
}

.ec_sermon_filter_button:hover {
    text-decoration: none;
    color: black;
}



/*---------------------------*
 * FULL SCREEN HEADER
 *---------------------------*/
body .ec-page-header__play-icon img {
    height: 80px;
    width: auto;
    display: none;
}

@media ( min-width: 768px ) {
    
    body .ec-page-header__play-icon img {
        display: inline;
    }
}

.ec-page-header__title,
.ec-page-header__title h2,
.ec-page-header__title a {
    color: white;
    font-size: 24px;
    font-weight: 400;
    margin-top: 0;
    margin-bottom: 0.13888888888889em;
    line-height: 1.25;
}

.ec-page-header__subtitle, 
.ec-page-header__subtitle a, 
.ec-page-header__subtitle p {
    color: white;
    font-size: 16px;
    margin-bottom: 0.83333333333333em;
    line-height: 1.5;
}

@media ( min-width: 768px ) {
    .ec-page-header__title,
    .ec-page-header__title h2,
    .ec-page-header__title a {
        font-size: 36px;
        font-weight: 100;
    }
    
    .ec-page-header__subtitle, 
    .ec-page-header__subtitle a, 
    .ec-page-header__subtitle p {
        font-size: 18px;
    }
}





/*---------------------------*
 * CUSTOM MENU
 *---------------------------*/
.vc_wp_custommenu {
    text-align: center;
}

.vc_wp_custommenu .menu {
    list-style: none;
    margin: 0;
    padding: 0;
    overflow: hidden;
    display: inline-block;
}

.vc_wp_custommenu .menu .menu-item {
    display: inline-block;
    float: left;
}

.vc_wp_custommenu .menu .menu-item a {
    display: inline-block;
    padding: 5px 15px;
    font-family: Montserrat, sans-serif;
    font-size: 14px;
    letter-spacing: 0.21428571428571em;
    color: #898989;
    transition: all .2s ease-in-out;
}

.vc_wp_custommenu .menu:hover .menu-item a:hover, 
.vc_wp_custommenu .menu:hover .menu-item.current-menu-item a:hover {
    text-decoration: none;
    color: black;
}

.vc_wp_custommenu .menu:hover .menu-item a, 
.vc_wp_custommenu .menu:hover .menu-item.current-menu-item a {
    color: #bbb;
}

.vc_wp_custommenu .menu .menu-item.current-menu-item a {
    color: #000;
}



/*---------------------------*
 * LOCATIONS TEXT
 *---------------------------*/
body .ec_location_text .ec-page-header__title {
    color: white;
    margin-bottom: 15px;
}

.ec_location_text .ec-location__zip {
    text-align: center;
    width: 350px;
    max-width: 100%;
    margin: 0 auto;
    margin-bottom: 1em;
    position: relative;
}

.ec_location_text .ec-location__zip.current-location {
    color: #2E9AF6;
}

.ec_location_text .ec-location__input-wrapper {
    position: relative;
    display: inline-block;
}

.ec_location_text .ec-location__input-wrapper i {
    position: absolute;
    right: 15px;
    top: 0;
    line-height: 46px;
    z-index: 1;
}

.ec_location_text .ec-location-text__button {
    background-color: white;
    color: black;
}

.ec_location_text .ec-location__button {
    background-color: white;
    color: black;
    margin: 0 auto;
    text-transform: uppercase;
}

.ec_location_text .ec-location__lead {
    color: white;
    font-size: 18px;
    margin-bottom: 1.25em;
}

#ec-location-loading {
    display: none;
}

#ec-found-location {
    display: none;
}


/*---------------------------*
 * SINGLE SERMONS
 *---------------------------*/
.ec-single-sermon__wrapper {
    background-color: black;
}

.ec-single-sermon__info {
    color: #acacac;
    font-size: 0.9em;
    margin-bottom: 1em;
}

.ec-single-sermon__post-type {
    font-weight: bold;
    font-family: Montserrat, sans-serif;
    text-transform: uppercase;
    font-size: 0.85714285714286em;
    letter-spacing: 0.16666666666667em;
    color: #B8B8B8;
    margin-bottom: 0.28571428571429em;
    display: block;
}

.ec-single-sermon__title {
    color: white;
    font-size: 1.71428571428571em;
    font-weight: 500;
    margin-bottom: 0.42857142857143em;
    margin-top: 0;
}

.ec-single-sermon__speaker {
    color: #a9a9a9;
    margin-bottom: 0.42857142857143em;
}

.ec-single-sermon__time {
    color: white;
    margin-bottom: 0.42857142857143em;
    display: block;
}

.ec-single-sermon__share-button-wrapper {
    margin-left: -15px;
    margin-right: -15px;
}

.ec-single-sermon__share-button {
    color: black;
    display: block;
    width: 100%;
    border-color: white;
    background-color: white; 
    margin-bottom: 1em;
}

.ec-single-sermon__share-button:focus {
    color: black;
}

.ec-single-sermon__subscribe-button {
    background-color: #222;
    border-color: #222;
    color: white;
    display: block;
    margin-bottom: 1em;
}

.ec-single-sermon__subscribe-button:hover {
    color: white;
}

.ec-single-sermon__subscribe-button:focus {
    color: white;
}

.ec-single-sermon__more-info {
    display: none;
}

.ec-single-sermon__more-info-button {
    font-family: Montserrat, sans-serif;
    text-transform: uppercase;
    font-weight: bold;
    letter-spacing: 0.1em;
}

.ec-single-sermon__more-info-button:hover {
    cursor: pointer;
}

.ec-single-sermon__more-info-button i {
    transition: all .3s ease-in-out;
    font-size: 1.5em;
    line-height: 1rem;
}

.ec-single-sermon__more-info-button.active i {
    -ms-transform: rotate(180deg); /* IE 9 */
    -webkit-transform: rotate(180deg); /* Chrome, Safari, Opera */
    transform: rotate(180deg);
}

@media( min-width: 768px ) {
    
    .ec-single-sermon__info {
        font-size: 1em; 
    }
    
    .ec-single-sermon__subscribe-button {
         display: inline-block;   
    }
    
    .ec-single-sermon__share-button-wrapper {
        margin-left: 0;
        margin-right: 0;
    }    
    
    .ec-single-sermon__share-button {
        background-color: white;
        color: black;
        display: inline-block;
        width: auto;
        margin-left: 0.5em;
    }
    
}
/*---------------------------*
 * MAILCHIMP SUBSCRIBE FORM
 *---------------------------*/
#ec-subscribe-modal .modal-content {background-color: #efefef;}

#mc_embed_signup {
    background:#efefef;
    clear:left;
    font: 14px 'Open Sans',Helvetica,Arial,sans-serif; 
    text-align: center;
    padding: 20px 50px;
}

#mc_embed_signup .hide {display: none;}

#mc_embed_signup .mc-field-group {
    margin-bottom: 25px;
    width: 100%;
}

#mc_embed_signup h2 {
    font-weight: 300;
    font-size: 25px;
}

#mc_embed_signup label {
    font-weight: 400;
    display: block;
    padding: 15px;
    line-height: 2em;
    vertical-align: middle;
}

#mc_embed_signup label:hover {
    cursor: pointer;
}

#mc_embed_signup .input-group li {
    background-color: #fff;
    list-style: none;
    text-align: left;
    margin: 5px 0;
}

#mc_embed_signup .input-group ul {padding-left: 0;}

#mc_embed_signup label span {    
    position: relative;
    line-height: 2em;
    height: 2em;
    width: 2em;
    margin-top: 0;
    margin-right: 0.5em;
    vertical-align: middle;
}

#mc_embed_signup label span:before, 
#mc_embed_signup label span:after {
    position: absolute;
    content: ' ';
    height: 100%;
    width: 100%;
}

#mc_embed_signup label span:before {
    background-color: white;
    z-index: 1;
}

#mc_embed_signup label span:after {
    z-index: 2;
    background-color: #efefef;
    border-radius: 99px;
}

#mc_embed_signup input[type=checkbox] {
    margin-right: 1em
}

#mc_embed_signup input[type=checkbox]:checked:after {
    background-color: #EF8D46;
    content: "\f00c";
    font-family: FontAwesome;
    font-size: 1.6em;
    color: #efefef;
    padding: 2px;
    border-radius: 99px;
    position: relative;
    top: -.65em;
    left: -1.5em;
}

#mc_embed_signup input[type=checkbox]:before {
    color: #efefef;
    content: "\f111";
    font-family: FontAwesome;
    font-size: 2.5em;
    position: relative;
    top: -.25em;
    left: -.15em;
}

/* .mc-field-group input[type=checkbox] {
    width: 2em;
    margin: 0;
    padding: 0;
    font-size: 1em;
    opacity: 0;
}

 .mc-field-group input[type=checkbox] + label {
    display: block;
    margin-left: -2em;
    line-height: 2.25em;
}

.mc-field-group label span {
    display: inline-block;
    width: 25px;
    height: 25px;
    margin: 0.25em 1.25em 0.25em -2.5em;
    border: none;
    border-radius: 50px;
    background: #efefef;
    vertical-align: bottom;
    cursor: pointer;
}

.mc-field-group input[type="checkbox"]:checked span:before{
    content: "\f111";
    display: block;
    width: 25px;
    color: #EF8D46;
    font-size: 28px;
    font-family: 'FontAwesome';
    line-height: 1em;
    text-align: center;
} */

#mc_embed_signup .mc-field-group input[type="email"] {
    width: 100%;
    padding: 15px 0;
    border: none;
    text-align: center;
    
    -webkit-appearance: none;
    -webkit-border-radius: 0;
    border-radius: 0;    
}

#mc_embed_signup ::-webkit-input-placeholder { /* WebKit, Blink, Edge */
    color: #AAA;
    text-align: center;
    font-size: 14px;
}
#mc_embed_signup :-moz-placeholder { /* Mozilla Firefox 4 to 18 */
    color: #AAA;
    opacity: 1;
    text-align: center;
    font-size: 14px;
}
#mc_embed_signup ::-moz-placeholder { /* Mozilla Firefox 19+ */
    color: #AAA;
    opacity: 1;
    text-align: center;
    font-size: 14px;
}
#mc_embed_signup :-ms-input-placeholder { /* Internet Explorer 10-11 */
    color: #AAA;
    text-align: center;
    font-size: 14px;
}
#mc_embed_signup :placeholder-shown { /* Standard (https://drafts.csswg.org/selectors-4/#placeholder) */
    color: #AAA;
    text-align: center;
    font-size: 14px;
}

#mc_embed_signup input[type="submit"] {
    background-color: #000;
    color: #fff;
    border: none;
    padding: 20px 0;
    font-size: 16px;
    text-transform: uppercase;
    width: 100%;
    margin-bottom: 25px;
    font-family: 'Montserrat';    
    -webkit-appearance: none;
    -webkit-border-radius: 0;
    border-radius: 0;
    letter-spacing: 0.14285714285714em;
}

#mc_embed_signup input[type="submit"]:hover {
    background-color: #777;
}

@media( max-width: 457px ) {

    #mc_embed_signup {
        padding: 20px;
    }
    
    #mc_embed_signup label {
        font-size: 11px;
    }
    
    #mc_embed_signup h2 {
        font-size: 20px;
    }
}
/*---------------------------*
 * BUTTON
 *---------------------------*/
.ec-button {
    display: inline-block;
}

.ec-button .btn {
    /* font-size: 12px; */
}

.ec-button .btn.btn-lg {
    padding: 21px 35px;
    font-size: 14px;
}

.ec-sermons__lazy-load-button:focus {
    outline: none;
}


/*---------------------------*
 * SECONDARY TEXT
 *---------------------------*/
.ec-secondary-text p {
    font-size: 14px;
    color: #ddd;
    letter-spacing: 0.16642857142857em;
    line-height: 1.25;
    font-family: Montserrat, sans-serif;
    text-transform: uppercase;
    font-weight: bold;
}


/*---------------------------*
 * LOCATIONS MAP
 *---------------------------*/
.ec-locations-map__list {
    width: 100%;
    float: left;
    overflow-y: scroll;
    background-color: white;
}

.ec-locations-map__map {
    margin-left: 450px;
    height: 100%;
    display: none;
    position: relative;
}

.ec-locations-map__zoom {
    position: absolute;
    background: #F26F20;
    right: 0;
    top: 0;
    z-index: 1;
}

.ec-locations-map__zoom i {
    color: white;
    display: block;
    width: 40px;
    text-align: center;
    height: 40px;
    line-height: 40px;
}

.ec-locations-map__zoom i:first-child {
    border-bottom: 1px solid #F58C4D;
}

.ec-locations-map__locations {
    padding-left: 0;
    list-style: none;
}

.ec-locations-map__location {
    padding: 20px;
    border-bottom: 2px solid #EFEFEF;
    overflow: hidden;
    min-height: 114px;
}

.ec-locations-map__location:first-child {
    border-top: 2px solid #efefef;
}

.ec-locations-map__location .wp-post-image {
    width: 75px;
    height: 75px;
    float: left;
}

.ec-locations-map__location-info {
    margin-left: 95px;
}

.ec-locations-map__location-title {
    margin: 0;
    line-height: 1.375;
    font-size: 16px;
}

.ec-locations-map__location:hover {
    cursor: pointer;
}

.ec-locations-map__location-title a {
    color: black;    
}

.ec-locations-map__location-title a:hover {
    text-decoration: none;
}

.ec-locations-map__location-address {
    font-size: 14px;
    margin: 0;
    color: #999;
}

body .gm-style {
    font-family: 'Open Sans', sans-serif;
    font-size: 14px;
    font-weight: 300;
}

.gm-style div[title="Zoom in"], 
.gm-style div[title="Zoom out"] {
    background-color: #f26f20 !important;
    color: white !important;
}

.gm-style div[title="Zoom in"] > div > img, 
.gm-style div[title="Zoom out"] > div > img {
    left: -105px !important;
}

.ec-locations-map__marker-title {
    font-size: 16px;
    color: black;
    font-family: 'Open Sans', sans-serif;
    font-weight: 500;
    margin-top: 5px;
    margin-bottom: 5px;
}

.ec-locations-map__marker-btn {
    background-color: black;
    color: white;
    font-weight: bold;
    transition: all .1s ease-in-out;
}

.ec-locations-map__marker-btn:hover, 
.ec-locations-map__marker-btn:active {
    color: white;
    background-color: #333;
}

.ec-locations-map__location-broadcast {
    margin: 0;
    color: #F6790A;
}

.ec-locations-map__marker-broadcast {
    margin-bottom: 5px;
    color: #f6790a;
    font-weight: 500;
}

#ec-google-map {
    height: 600px;
}

@media (min-width: 768px ) {
    
    .ec-locations-map__list, 
    .ec-locations-map__map {
        height: 600px;
    }
    
    .ec-locations-map__list {
        width: 350px;
    }
    
    .ec-locations-map__map {
        margin-left: 350px;
        display: block;
    }
    
}



/*---------------------------*
 * SINGLE LOCATION
 *---------------------------*/
.ec-single-location__info {
    
}

.ec-single-location__info li {
    font-size: 15px;
    color: #333;
    line-height: 1.75;
    margin-bottom: 20px;
}

.ec-single-location__info li span {
    padding-left: 35px;
    display: block;
}

.ec-single-location__info i {
    float: left;
    font-size: 20px;
    text-align: center;
    width: 20px;
    line-height: 1.25;
}

.ec-single-location__time {
    margin-bottom: 1em;
    font-size: 24px;
    font-weight: 300;
}

.ec-single-location__share {
    margin-top: 3em;
}


/*---------------------------*
 * SUB-NAV WRAPPER
 *---------------------------*/

.ec-subpage-menu__wrapper {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    background-color: black;
    height: 50px;
}

.ec-subpage-menu__wrapper.text-center:before,
.ec-subpage-menu__wrapper.text-center:after {
    position: absolute;
    content: ' ';
    height: 50px;
    width: 50px;
    top: 0;    
    z-index: 11;
}

.ec-subpage-menu__wrapper:before {
    left: 0;
    background: -moz-linear-gradient(left, rgba(0,0,0,0.8) 0%, rgba(0,0,0,0) 100%);
    background: -webkit-linear-gradient(left, rgba(0,0,0,0.8) 0%, rgba(0,0,0,0) 100%);
    background: linear-gradient(to right, rgba(0,0,0,0.8) 0%, rgba(0,0,0,0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#99000000', endColorstr='#00000000',GradientType=1 );
}

.ec-subpage-menu__wrapper:after {
    right: 0;
    background: -moz-linear-gradient(left, rgba(0,0,0,0) 0%, rgba(0,0,0,0.8) 100%);
    background: -webkit-linear-gradient(left, rgba(0,0,0,0) 0%, rgba(0,0,0,0.8) 100%);
    background: linear-gradient(to right, rgba(0,0,0,0) 0%, rgba(0,0,0,0.8) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#99000000',GradientType=1 );
}

.ec-subpage-menu__wrapper a:hover, 
.ec-subpage-menu__wrapper a:focus {
    text-decoration: none;
}

.ec-subpage-menu__wrapper .menu {
    display: block;
    margin: 0 auto;
    padding-bottom: 50px;
    overflow-y: hidden;
    overflow-x: scroll;
    white-space: nowrap;
    padding-left: 30px;
    padding-right: 30px;
    -webkit-overflow-scrolling: touch;
}

.ec-subpage-menu__wrapper .menu .menu-item {
    display: inline-block;
}

.ec-subpage-menu__wrapper .menu .menu-item a {
    color: #818181;
    font-size: 14px;
    padding: 18px 14px;
    display: inline-block;
    float: left;
    font-family: Montserrat, sans-serif;
    letter-spacing: 0.21428571428571em;
    text-transform: uppercase;
    line-height: 1;
    font-weight: bold;
    transition: all .15s ease-in-out;
}

.ec-subpage-menu__wrapper .menu .menu-item.current-menu-item a {
    color: white;
}

.no-touch .ec-subpage-menu__wrapper .menu .menu-item a:hover {
    text-decoration: none;
    color: white;
}

.no-touch .ec-subpage-menu__wrapper .menu:hover .menu-item.current-menu-item a {
    color: #818181; 
}

.no-touch .ec-subpage-menu__wrapper .menu:hover .menu-item.current-menu-item a:hover {
    color: white;
}

@media (min-width: 768px ) {
    
    .ec-subpage-menu__wrapper {
        height: 54px;
    }
    
    .ec-subpage-menu__wrapper .menu .menu-item a {
        padding: 20px 24px;
    }
    
}


/*---------------------------*
 * SERMON FILTERS
 *---------------------------*/
.ec-sermon-filters__button {
    text-transform: uppercase;
    color: black;
    margin-left: 10px;
    background-color: transparent;
    padding: 0.5em;
    font-size: 12px;
}

.ec-sermon-filters__button i {
    -ms-transform: rotate(0deg); /* IE 9 */
    -webkit-transform: rotate(0deg); /* Chrome, Safari, Opera */
    transform: rotate(0deg);
    transition: all 0.2s ease-in-out;
}

.ec-sermon-filters__button.ec-sermon-filters--active {
    background-color: white;
}

.ec-sermon-filters__button.ec-sermon-filters--active i {
    -ms-transform: rotate(180deg); /* IE 9 */
    -webkit-transform: rotate(180deg); /* Chrome, Safari, Opera */
    transform: rotate(180deg);
}

.ec-sermon-filters__menu {
    float: right;
    clear: right;
    width: 100%;
    background-color: white;
    padding: 1em 0;
    margin-bottom: 0;
    display: none;
}

.ec-sermon-filters__menu li {
    width: 50%;
    text-align: center;
    float: left;
}

.ec-sermon-filters__menu li:nth-child( 2n + 1 ) {
    clear: left;
}

.ec-sermon-filters__menu a {
    color: black;
    text-transform: uppercase;
    font-family: Montserrat, sans-serif;
    letter-spacing: 0.14285714285714em;
    display: block;
    padding: 0.5em 1em;
    font-size: 12px;
}

.ec-sermon-filters__menu a:hover, 
.ec-sermon-filters__menu a:active, 
.ec-sermon-filters__menu a:focus {
    text-decoration: none;
}

@media ( min-width: 768px ) {
    
    .ec-sermon-filters__menu a {
        font-size: 1em;
    }
    
    .ec-sermon-filters__menu {
        padding: 1em 2em;    
    }
    
    .ec-sermon-filters__menu li {
        width: 25%;   
    }
    
    .ec-sermon-filters__menu li:nth-child( 2n + 1 ) {
        clear: none;
    }
    
    .ec-sermon-filters__menu li:nth-child( 4n + 1 ) {
        clear: left;
    }
    
    .ec-sermon-filters__button {
        padding: 1em 2em;   
        font-size: 14px;
    }
}


/*---------------------------*
 * SHARE MODAL
 *---------------------------*/
.ec-share-modal__image {
    margin-bottom: 1em;
}

.ec-share-modal__list {
    
}

.ec-share-modal__list i {
    color: black;
    font-size: 26px;
}

.ec-share-modal__list.list-inline li {   
    text-align: center;
    display: inline-block;
    margin-left: 2em;
}

.ec-share-modal__list.list-inline li:first-child {
    margin-left: 0;
}

.ec-share-modal .modal-body {
    overflow: hidden;
}

.ec-share-modal__share-link-button a {
    margin-bottom: 1em;
    font-size: 14px;
    font-family: Montserrat, sans-serif;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 0.14285714285714em;
    color: #333;
}


/*---------------------------*
 * EVENT GRID
 *---------------------------*/
body .ec-events-grid .ec-event {
    margin-bottom: 30px;
}

.ec-events-grid a:hover {
    text-decoration: none;
}

.ec-events-grid > .row > .col-sm-6:nth-child( 2n + 1 ) {
    clear: left;
}

.ec-event__info {
    background-color: white;
    padding: 20px;
}

.ec-event__title {
    font-size: 1em;
    color: black;
    text-decoration: none;
    margin-bottom: 0;
    line-height: 1.25;
}

.ec-event__date {
    color: #aaa;
    font-size: 0.78571428571429em;
}

@media ( min-width: 768px ) {
    
    .ec-event__title {
        font-size: 1.42857142857143em;
    }
    
    .ec-event__date {
        font-size: 1em;    
    }
    
}



/*---------------------------*
 * SINGLE EVENT
 *---------------------------*/
.single-ec-event .ec-page-header {
    background-size: cover;
    background-position: center;
}

.ec-single-event__label {
    color: #858585;
    font-size: 1em;
    font-weight: 400;
    margin-bottom: 0;
}

.ec-single-event__label i {
    margin-right: 0.25em;
}

.ec-single-event__data {
    font-size: 1.71428571428571em;
    color: white;
    font-weight: 300;
}

.ec-single-event__promotion-section .col-xs-6:nth-child( 2n + 1 ) {
    clear: left;
}

.ec-single-event__promotion-section .col-sm-3:nth-child( 4n + 1 ) {
    clear: left;
}

.ec-section__promotion img {
    margin-bottom: 30px;
}

.list-sharables {
    display: table;
    text-align: center;
    width: 100%;
}

.list-sharables li {
    width: 50%;
    padding-left: 15px;
    padding-right: 15px;
    vertical-align: top;
}

@media ( min-width: 768px ) {
    
    .list-sharables li {
        width: 25%;
    }
    
}


/*---------------------------*
 * JOBS GRID
 *---------------------------*/
.ec-jobs-grid__job {
    background-color: white;
    padding: 2.5em;
    margin-top: 30px;
}

.ec-jobs-grid > .row:first-child .col-sm-6:first-child .ec-jobs-grid__job {
    margin-top: 0;
}

.ec-jobs-grid .Grid {
    margin-bottom: 30px;
}

.ec-jobs-grid .Grid-cell {
    padding-left: 15px;
    padding-right: 15px;    
}

.ec-jobs-grid .ec-jobs-grid__job-title a {
    color: #333;
}

.ec-jobs-grid__job-desc {
    margin-bottom: 0.5em;
}

.ec-jobs-grid__link {
    font-family: Montserrat, sans-serif;
    text-transform: uppercase;
    letter-spacing: 0.14285714285714em;
    color: black;
    font-size: 12px;
}

.ec-jobs-grid__link:hover {
    color: black;
    text-decoration: none;
}

@media( min-width: 768px ) {        
    
    .ec-jobs-grid__job {
        margin-top: 0;
    }
    
    .ec-jobs-grid > .row {
        margin-top: 30px;
    }
    
    .ec-jobs-grid > .row:first-child {
        margin-top: 0;
    }
}


/*---------------------------*
 * SINGLE JOB
 *---------------------------*/
.single-ec-job .ec-page-header__title {
    margin-bottom: 15px;
}

.ec-single-job__apply-button {
    margin-bottom: 2em;
}

.ec-single-job__list {
    color: #7D7D7D;
    margin-bottom: 4em;
    list-style: none;
}

.ec-single-job__list li {
    margin-top: 2em;
    font-size: 16px;
    font-weight: 300;
    line-height: 1.75;
    position: relative;
}

.ec-single-job__list li:before { 
    content:"•";
    position: absolute;
    left: -15px;
}

.ec-single-job__list li:first-child {
    margin-top: 0;
}


/*---------------------------*
 * MEDIA POSTS GRID
 *---------------------------*/
body .ec-media-grid .ec-media {
    position: relative; 
    margin-bottom: 30px;
}

.ec-media-grid .ec-media:after {
    content: ' ';
    position: absolute;
    height: 50%;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 1;
    background: -moz-linear-gradient(top,  rgba(0,0,0,0) 0%, rgba(0,0,0,1) 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top,  rgba(0,0,0,0) 0%,rgba(0,0,0,1) 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom,  rgba(0,0,0,0) 0%,rgba(0,0,0,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#000000',GradientType=0 ); /* IE6-9 */
    opacity: .5;
}

.ec-media-grid .ec-media__info {
    position: absolute; 
    bottom: 0;    
    width: 100%;
    z-index: 10;
    padding: 15px 20px;
}

.ec-media-grid .ec-media__title {
    color: white;
    font-size: 24px;
    font-weight: 400;
    margin-bottom: 0;
    line-height: 1.25;
}

.ec-media-grid .ec-media__subtitle {
    color: white;
    font-family: Montserrat, sans-serif;
    text-transform: uppercase;
    font-weight: bold;
    letter-spacing: 0.14285714285714em;
}


/*---------------------------*
 * SINGLE MEDIA POST
 *---------------------------*/
.single-ec-media-post .ec-site-header {
    position: relative;
}

.ec-section.ec-section__video-wrapper {
    padding-top: 0;
}

.ec-single-media-post__category {
    font-family: Montserrat, sans-serif;
    color: #B8B8B8;
    letter-spacing: 0.14285714285714em;
    font-weight: bold;
    margin-top: 1em;
    text-transform: uppercase;
}

.single-ec-media-post__title {
    color: white;
    font-weight: 400;
    font-size: 24px;
}

.single-ec-media-post__artist {
    color: white;
    font-size: 18px;    
}

.ec-single-media-post__subscribe-button {
    background-color: #222;
    border-color: #222;
    color: white;    
}

.ec-single-media-post__subscribe-button:hover {
    color: white;
}

.ec-single-media-post__info-button {
    color: #868686;
    background: transparent;
    border: none;
}

.ec-single-media-post__share-button {
    background-color: white;
    color: black;
    border-color: white;
    margin-left: 0.5em;
}

.ec-single-media-post__info {
    display: none;
}

.ec-single-media-post__info-button {
    color: #868686;
    background: transparent;
    border: none;
    text-transform: uppercase;
    letter-spacing: 0.14285714285714em;
    margin-bottom: 1em;
}

.ec-single-media-post__info-button:active, 
.ec-single-media-post__info-button:focus {
    outline: none;
}

.ec-single-media-post__info-button i {
    font-size: 18px;
    transition: all .2s ease-in-out;
}

.ec-single-media-post__info-button.active i {
    -ms-transform: rotate(-180deg); /* IE 9 */
    -webkit-transform: rotate(-180deg); /* Chrome, Safari, Opera */
    transform: rotate(-180deg);
}

.single-ec-media-post .ec-embed-column {
    padding-left: 0;
    padding-right: 0;
}

@media( min-width: 768px ) {
    .single-ec-media-post .ec-embed-column {
        padding-left: 15px;
        padding-right: 15px;
    }
    
    .ec-single-media-post__buttons {
        text-align: right;
    }
}


/*---------------------------*
 * FOOTER STYLES
 *---------------------------*/
.ec-section__footer-app {
    background-size: cover;
    text-align: center;
}

.ec-section__footer-app .ec-page-header__title h2 {
    color: black;
}

.ec-section__footer-app .ec-page-header__subtitle p {
    color: #777;
}

.ec-section__footer-app .btn {
    color: white;
    background-color: black;
    border-color: black;
}

.ec-section__footer-app__text {
    margin-bottom: 1em;
}

.ec-phone-image {
    height: 400px;
    width: 200px;
    position: relative;
    margin: 0 auto;
}

.ec-phone-image img {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
}

.ec-phone-image__overlay {
    z-index: 2;
}

.ec-phone-image__background {
    z-index: 1;
}

.ec-section__footer-app__image {
    height: 100px;
    position: relative;
}

.ec-section__footer-menus {
    position: relative;
    z-index: 10;
    color: black;
}

.ec-section__footer-menus .menu {
    list-style: none;
    margin: 0;
    padding: 0;
}

.ec-section__footer-menus .widget_nav_menu {
    display: inline-block;
    float: left;
    text-align: left;
    padding: 0 30px;
    margin-bottom: 30px;
    width: 100%;
}

.ec-section__footer-menus .widget_nav_menu .widgettitle {
    font-size: 18px;
    color: #555;
}

.ec-section__footer-menus .widget_nav_menu a {
    color: black;
    font-weight: 300;
    display: inline-block;
    margin-top: 5px;
}

.ec-section__footer-menus .widget_nav_menu .menu-item:first-child a {
    margin-top: 0;
}

.widget-area__footer_menus {
    display: inline-block;
}

.widget-area__footer_menus .menu a {

}

.ec-footer-icons {
    margin-bottom: 2em;
}

.ec-footer-icons i {
    font-size: 24px;
    color: black;
}

footer .ec-footer-icons li  {
    padding-left: 2em;
}

footer .ec-footer-icons li:first-child  {
    padding-left: 0;
}

.ec-footer-menu .menu {
    display: block;
    padding-left: 0;
    list-style: none;
    margin: 0 auto;
}

.ec-footer-menu .menu a {
    color: black;
}

.ec-footer-menu .menu a:hover {
    text-decoration: none;
}

.ec-footer-menu .menu > li {    
    display: inline-block;
    float: left;
    width: 50%;
    text-align: center;
    padding-top: 2em;
}

.ec-footer-menu .menu > li:first-child {
    padding-left: 0;
}

.ec-footer-menu .menu > li:nth-child( 2n + 1 ) {
    clear: left;
}

.ec-footer-menu .menu > li > a {
    display: block;
    font-family: Montserrat, sans-serif;
    letter-spacing: 0.11142857142857em;
    text-transform: uppercase;
}

.ec-footer-menu .menu .sub-menu {
    list-style: none;
    padding-left: 0;
}

.ec-footer-menu .menu .sub-menu li {
    margin-top: 1em;
}

.ec-section__footer-contact {
    position: relative;
    z-index: 3;
}

.ec-section__footer-contact p {
    margin-bottom: 0;
}

.ec-section__footer-contact a {
    color: black;
}

.ec-section__footer-contact .ec-footer--phonenumber {
    color: white;
    font-weight: 300;
}

.ec-section__footer-contact a:hover {
    color: #ccc;
}

.ec-section__footer-contact small a {
    color: #afafaf;
}

.ec-section__footer-contact small a:hover {
    color: #ccc;
}

.ec-section__footer-contact p {
    color: white;
}

.ec-section__footer-contact p small {
    color: #AFAFAF;
}

.ec-section__footer-contact .btn {
    color: black;
}

.ec-section__footer-contact .widget-area .menu {
    margin: 0;
    padding: 0;
    display: table;
    width: 100%;
    list-style: none;
    text-align: center;
}

.ec-section__footer-contact .menu .menu-item {
    display: inline-block;    
}

.ec-section__footer-contact .menu-item a {
    padding: 16px 24px;
    display: inline-block;
    font-family: Montserrat, sans-serif;
    text-transform: uppercase;
    letter-spacing: 0.07142857142857em;
}


@media( min-width: 400px ) {
    
    .ec-section__footer-menus .widget_nav_menu {
        width: 50%;        
    }
    
    .ec-section__footer-menus .widget_nav_menu:nth-child( 2n + 1 ) {
        clear: left;
    }
}


@media ( min-width: 768px ) {
    
    .ec-section__footer-app__text {
        float: right;
        text-align: left;
    }
    
    .ec-footer-menu .menu {
        display: table;
    }
    
    .ec-footer-menu .menu > li {
        display: table-cell;
        float: none;
        width: auto;
        padding-left: 3em;
    }
    
    .ec-section__footer-menus .widget_nav_menu {
        width: auto;        
    }
    
    .ec-section__footer-menus .widget_nav_menu:nth-child( 2n + 1 ) {
        clear: none;
    }
    
}

@media( min-width: 1200px ) {
    
    .ec-section__footer-app .ec-page-header__title {
        margin-top: 65px;
    }
    
    .ec-section__footer-app__image {
        height: auto;
    }
    
    .ec-phone-image {
        width: 175px;
    }
    
    .ec-section__footer-app__image img {
        max-height: 350px;
    }
    
    .ec-section__footer-app__text {
        margin-right: 16.66666667%;    
    }
    
}



/*---------------------------*
 * TAXONOMY FILTER
 *---------------------------*/
.ec-taxonomy-filter__wrapper {
    display: block;
    text-align: center;
}


.ec-taxonomy-filter {
    display: inline-block;
    margin: 0 auto;
    list-style: none;
    padding: 0;
}

.ec-taxonomy-filter__item {
    float: left;
    font-family: Montserrat, sans-serif;
    text-transform: uppercase;
    padding: 5px 15px;
    letter-spacing: 0.21428571428571em;
    color: #898989;    
}

.ec-taxonomy-filter__item a {
    color: #898989;
    transition: all .2s ease-in-out;
}

.ec-taxonomy-filter__item a:hover {
    color: black;
}

.ec-taxonomy-filter__current-item a {
    color: black;    
}

.ec-taxonomy-filter__current-item a:active, 
.ec-taxonomy-filter__current-item a:focus {
    text-decoration: none;
}

.ec-taxonomy-filter__wrapper:hover .ec-taxonomy-filter__item a {
    color: #898989;
}

.ec-taxonomy-filter__wrapper:hover .ec-taxonomy-filter__item a:hover {
    color: black;
}


/*---------------------------*
 * SMI BANNER
 *---------------------------*/
.ec-smi-banner {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    background-color: rgba(0,0,0, 0.8);
    color: white;
    padding: 5px 10px;
    text-align: center;
}

.ec-smi-banner > * {
    padding: 0 15px;
    display: inline-block;
    margin: 5px 0;
}

.ec-smi-banner__title {
    font-size: 18px;
}
