/* -- Resets and Defaults -------------------------- */

    /* -- Resets -- */
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{font:inherit;padding:0;border:0;letter-spacing:.5px;margin:0;vertical-align:baseline;background-repeat:no-repeat;}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none}table{border-collapse:collapse;border-spacing:0}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}.clear{clear:both}html,body{overflow-x:hidden;width:100%}body{font-family:"PT Sans", sans-serif;font-size:16px;line-height:1.2;margin:0;padding:0;-moz-text-size-adjust:none;-webkit-text-size-adjust:none;-ms-text-size-adjust:none}a{text-decoration:none;}*{box-sizing:border-box}input:focus,select:focus,textarea:focus,button:focus {outline: none;}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button {-webkit-appearance: none; margin: 0;}input[type=number] { -moz-appearance:textfield; }

br { clear: none !important; }

    /* -- Mods -- */
.noborders { border: none !important; }
.justified { text-align: justify; }
.justified:after { content: ""; display: inline-block; width: 100%; }
.hide { display: none !important; }
.clearfix:after {
    clear: both;
    content: ".";
    display: block;
    font-size: 0;
    height: 0;
    visibility: hidden;
}

    /* -- Defaults -- */
html, body { height: 100vh; }
body { background-color: #fff; }

body,
h1,
input,
a { 
    color: #000;
    font-family: "PT Sans", sans-serif;
    font-weight: 400;
    margin: 0;
}
a:hover { text-decoration: underline; }

.bannerslider .caption,
.single_post h1, 
.featured_link,
h1 em,
.tagline {font-family: "Playfair Display", serif;}

h1,
.header_nav, 
.header_nav a, 
.news_section h2 a,
.footer_nav a {font-family: "PT Sans Narrow", sans-serif;}

h1 { text-transform: uppercase; font-weight: 700; }

h2 {
    font-weight: 700;
    font-size: 1.25em;
    letter-spacing: 0;
    margin: 0;
    padding: 1.563em 0 1em;
}
.single_post h2 a { color: #262626; text-decoration: none; }

h3 {
    color: #262626;
    font-size: 1em;
    font-weight: 700;
    letter-spacing: 0;
    padding: 1.25em 0 .8em;
    text-align: center;
}

h4 { font-size: 1em; font-weight: 700; padding: 5px 0 25px 1em; }

h2:first-child,
h3:first-child,
h4:first-child { padding-top: 0; }

.breadcrumbs + * { padding-top: 1em; }

/* hack: keeps full width of article content  */
.breadcrumbs:after {
    color: transparent;
    content: '--- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- -- -- -- -- - -- - -- - - - - - - --  - - - -  - - - - -- - -- ---- --- --- -- - - -';
    display: block;
    height: 0px;
    overflow: hidden;
}

p {
    color: #000;
    padding: 5px 0 1.25em;
    font-size: 1em;
    line-height: 145%;
}


article ul { font-size: 1em; padding-left: 1.953em; }
article ul li { padding-bottom: 1.25em; list-style: initial; }

em { font-style: italic; }
strong { font-weight: bold; }

hr { border-color: #3F2971; border-top: 1px; margin: 2.441em; }

.single_post {
    display: block;
    background-image: url("../images/background-hands.jpg");
    background-repeat: no-repeat;
    background-size: 100% auto;
    box-shadow: inset 0 -150px 125px -50px #fff;
    width: 100%;
}
.single_post.hands { background-image: url("../images/background-hands.jpg"); }

.single_post h1, .single_post .wrapper { margin: 0 auto; width: 100%; }
.single_post h1 { color: #fff; font-size: 1.563em; padding-left: 30px; padding-top: 30px; }
.single_post a { color: #3F2971; font-weight: 700; text-decoration: underline; }
.single_post a:hover { color: #7B60B8; }

.single_post .wrapper { border-bottom: 1px solid #3F2971; }

.single_post .wrapper > article {
    background-color: #fff;
    display: block;
    line-height: 1.25;
    padding: 30px 30px 35px 50px;
}

.single_post .wrapper > aside { 
    background: #FFD356;
    background: -moz-linear-gradient(top,  #FFD356 0%, #fff 100%); /* FF3.6+ */
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#FFD356), color-stop(100%,#fff)); /* Chrome,Safari4+ */
    background: -webkit-linear-gradient(top,  #FFD356 0%,#fff 100%); /* Chrome10+,Safari5.1+ */
    background: -o-linear-gradient(top,  #FFD356 0%,#fff 100%); /* Opera 11.10+ */
    background: -ms-linear-gradient(top,  #FFD356 0%,#fff 100%); /* IE10+ */
    background: linear-gradient(to bottom,  #FFD356 0%,#fff 100%); /* W3C */
    display: none;
    width: 200px;
}
.wrapper aside a.menu-item {
    border-bottom: 1px solid #fff;
    color: #3F2971;
    display: block;
    font-size: 1.25em;
    padding: 30px 20px 10px;
    text-decoration: none;
}
.wrapper aside a.menu-item:last-of-type { padding-bottom: 40px;}

.posts_nav_link { margin: 50px 0 20px; }
.posts_nav_link a:last-of-type { float: right; }

.breadcrumbs { margin-top: -30px; padding: 0; }
.breadcrumbs li { display: inline-block; }
.breadcrumbs li,
.breadcrumbs li { font-size: .8em; font-weight: 700; }

p.wp-caption-text { font-size: 1em; font-weight: 700; letter-spacing: 0; }

div.aligncenter { margin: 0 auto; }

.profile { display: inline-block; margin: 3.051em 1.563em; vertical-align: top; width: 40%; }
.profile span { display: block; font-size: 1em; letter-spacing: 0; }
.profile span.name { font-weight: 700; }
.profile span.email a { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; width: 100%; }

.tablepress tfoot th, 
.tablepress thead th { background-color: #fff5da !important; }

#gallery-1 .gallery-item { width: 100% !important; }

    /* -- Responsive -- */
@media screen and (min-width: 500px) {
    .single_post .wrapper > article { padding: 45px 45px 50px; }
}

@media screen and (min-width: 650px) {
    #gallery-1 .gallery-item { width: auto !important; }
}

@media screen and (min-width: 800px) {
    .single_post h1 { font-size: 2.441em; padding-left: 60px; padding-top: 130px; }
    h2 { font-size: 1.563em; }
    h3,
    h4,
    article ul,
    p { font-size: 1.25em; }
    .single_post .wrapper > article { display: table-cell; padding: 60px 60px 75px; }
    .single_post .wrapper > aside { display: table-cell; width: 25%; }
}

@media screen and (min-width: 1000px) {
    .single_post h1, .single_post .wrapper { width: 80%; }
    .single_post h1 { font-size: 3.051em; padding-left: 60px; padding-top: 130px; }
    .single_post .wrapper > article { padding: 60px 60px 75px; }
    #gallery-1 .gallery-item { width: 33% !important; }
    div.gallery br { clear: both !important; }
}

@media screen and (min-width: 1200px) {
    .wrapper aside a.menu-item { font-size: 1.563em; }
}

@media screen and (min-width: 1600px) {
    .single_post h1, .single_post .wrapper { width: 66%; }
}

/* -- Header --------------------------------------- */
header .logo_image {
    display: inline-block;
    margin-top: 20px;
    padding: 0 10% 10px; 
    position: relative;
    vertical-align: bottom;
    width: 100%;
    z-index: 10; /* Show above navbar */
}
header .logo_image img { width: 100%; }

header .tagline {
    color: #3F2971;
    display: none;
    border-width: 1px;
    border-style: solid;
    -webkit-border-image: 
      -webkit-gradient(left top, right top, rgba(0, 0, 0, 0), #cdcdcd 50%, rgba(0, 0, 0, 0)) 100% 0;    
    -webkit-border-image: 
      -webkit-linear-gradient(left, rgba(0, 0, 0, 0), #cdcdcd 50%, rgba(0, 0, 0, 0)) 100% 0;    
    -moz-border-image:
      -moz-linear-gradient(left, rgba(0, 0, 0, 0), #cdcdcd 50%, rgba(0, 0, 0, 0)) 100% 0;    
    -o-border-image:
      -o-linear-gradient(left, rgba(0, 0, 0, 0), #cdcdcd 50%, rgba(0, 0, 0, 0)) 100% 0;    
    border-image:
      linear-gradient(to left, rgba(0, 0, 0, 0), #cdcdcd 50%, rgba(0, 0, 0, 0)) 100% 0;
    font-size: .8em;
    font-weight: 700;
    line-height: 1.25;
    margin-top: 70px;
    padding-bottom: 10px;
    padding-top: 10px;
    text-align: center;
    vertical-align: top;
}
.tagline em { color: #E84C01; font-style: normal; }

    /* -- Navigation Bar -- */
.header_nav {
    background-color: #FFD356;
    height: 45px;
    padding-left: 200px;
    position: relative;
    -webkit-transition: all .35s ease; 
          -moz-transition: all .35s ease; 
          -ms-transition: all .35s ease; 
          -o-transition: all .35s ease; 
          transition: all .35s ease;}
.header_nav nav, 
.header_nav form { display: block; line-height: 1.5; }
.header_nav > nav > a { line-height: 45px; position: relative; }
.primary_nav {
    background-color: #FFD356;
    left: -230px;
    position: absolute;
    top: 45px;
    vertical-align: top;
    width: 230px;
    z-index: 110;
}
.primary_nav a { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.primary_nav > a {
    color: #3F2971;
    display: block;
    float: left;
    font-size: 1em;
    font-weight: 700;
    height: 45px;
    line-height: 45px;
    padding-left: 20px;
    position: relative;
    width: 100%;
    z-index: 110; /* place above logo */
}
.primary_nav > a:after { 
    background-color: #3F2971; 
    content: "";
    display: none;
    height: 20px; 
    position: absolute;
    right: 0;
    top: 12px;
    width: 2px;
}
.primary_nav > a:last-of-type:after { display: none; }
.primary_nav > a:hover,
.primary_nav > a:active { background-color: #3F2971; color: #fff; text-decoration: none;  }
.primary_nav > a:active { left: 1px; top: 1px; }

.header_nav nav.submenu {
    background-color: #3F2971;
    color: #3F2971;
    max-height: 0;
    overflow: hidden;
    text-align: left;
    -webkit-transition: all .5s ease; 
          -moz-transition: all .5s ease; 
          -ms-transition: all .5s ease; 
          -o-transition: all .5s ease; 
          transition: all .5s ease;    width: 100%;
    z-index: -100;
}
.header_nav nav.submenu.visible { max-height: 2000px; z-index: 130; }
.header_nav nav.submenu.on_top { z-index: 130; }
.header_nav nav.submenu .sidebar a { font-weight: 700; } 
.header_nav nav.submenu a {
    color: #fff;
    display: block;
    font-weight: 400;
    line-height: 45px;
    padding: 0 10px 0 15px;
    text-transform: uppercase;
    width: 100%;
}
.header_nav nav.submenu .group a { padding-left: 30px; }
.header_nav nav.submenu .group a:before { content: '-'; }

    /* -- Responsive Menu -- */
#menu_toggle { display: none; }
.menu_button {
    cursor: pointer;
    background-image: url("../images/menu.png");
    border: none;
    height: 25px;
    left: 10px;
    position: absolute;
    top: 10px;
    width: 25px;
    z-index: 30;
}
.primary_nav,
.social_nav,
.menu_search,
.menu_button { -webkit-transition: all .35s ease; 
          -moz-transition: all .35s ease; 
          -ms-transition: all .35s ease; 
          -o-transition: all .35s ease; 
          transition: all .35s ease; }
.menu_toggle:checked ~ .menu_search { left: 20px; }
.menu_toggle:checked ~ .menu_button { left: 240px; }
.menu_toggle:checked ~ .primary_nav { left: 0; }
.menu_toggle:checked ~ .social_nav { left: 300px; }

    /* -- Social Navigation -- */
.social_nav { height: 45px; left: 60px; min-width: 150px; 
overflow: hidden; position: absolute; }
.social_nav a { display: inline-block; height: 25px; width: 25px; margin: 8px 5px; }
.footer_social_nav svg path,
.social_nav svg path { fill: #3F2971; }
.footer_social_nav a:hover,
.social_nav a:hover path { fill: #200D49; }
.footer_social_nav a:active,
.social_nav a:active { left: 1px; position: relative; top: 1px; }

    /* -- Search Form -- */
.header_nav form {  
    background-color: #FFD356;
    cursor: pointer;
    height: 45px;
    left: -240px;
    padding-top: 6px;
    position: absolute;
    top: 0px; 
    vertical-align: top;
    z-index: 30;
}
.header_nav input { border: none; color: #fff; display: inline-block; height: 32px; font-size: .8em; vertical-align: top;}
.header_nav input#searchsubmit { 
    background-color: #3F2971;
    background-image: url('../images/submit.png');
    background-position: center;
    background-repeat: no-repeat;
    cursor: pointer; 
    font-size: 0; 
    width: 30px;
}
.header_nav input#searchsubmit:hover { background-color: #200D49; }
.header_nav input#searchsubmit:active { left: 1px; position: relative; top: 1px; }
.header_nav input#s { background-color: #E4B83B; border: 1px solid #fff; padding: 0 8px 0 38px; width: 160px; }
.header_nav form:after { 
    background-image: url('../images/search.png');
    background-repeat: no-repeat;
    content: "";
    display: block;
    height: 18px;
    left: 10px;
    position: absolute;
    top: 12px;
    width: 20px;
}

    /* -- Responsive -- */
@media screen and (min-width: 500px) {
    header .logo_image { padding: 0 50px 10px; width: 500px; }
}

@media screen and (min-width: 815px) {
    header .logo_image { margin: 0; padding: 0 20px 0 0; top: 40px; }
}

@media screen and (min-width: 920px) {
    header .tagline { display: inline-block; width: 35%; }
}

@media screen and (min-width: 1000px) {
    header .tagline { font-size: 1em; width: 40%; }
}

@media screen and (min-width: 1270px) {
    header .tagline { font-size: 1.25em; width: 55%; }
}

@media screen and (min-width: 1600px) {
    header .tagline { width: 65%; }
}

@media screen and (min-width: 1805px) {
    header .tagline { font-size: 1.563em; width: 68%; }
}

@media screen and (min-width: 820px) {
    .main_header { padding: 0 80px 0 38px; margin-top: -20px; text-align: justify; }
    .main_header:after { content: ""; display: inline-block; width: 100%; }
    .header_nav { padding: 0; text-align: justify; }
    .header_nav.showsearch { transform: translateX(-250px); }
    .header_nav:after { content: ""; display: inline-block; width: 100%; }

    .menu_button { display: none; }
    .primary_nav { position: static; width: auto; }
    .primary_nav > a { background-color: transparent; padding: 0 9px; width: auto; }
    .primary_nav > a:hover { color: #977000; background-color: transparent; }
    .primary_nav > a:last-child, 
    .secondary_nav a:last-child { border: none; }
    .header_nav > .primary_nav > a.current:before { content: ''; border-width: 0 10px 6px 10px;
        border-color: transparent transparent #3F2971 transparent; border-style: solid; bottom: 0;
        display: block; height: 0; left: calc(50% - 10px); position: absolute; 
        transform: rotate(360deg); -moz-transform: scale(.9999); -webkit-transform: rotate(360deg); width: 0; }
    .menu_toggle:checked ~ .social_nav,
    .social_nav { left: 0; position: relative; }
    .menu_toggle:checked ~ .menu_search,
    .header_nav nav, 
    .header_nav form { display: inline-block; cursor: auto; }
    .header_nav form { left: 99.5%; padding: 6px 10px 0; top: 0; width: 260px; }
    .header_nav form:after { left: -20px; top: 11px; }
    .header_nav input#s { padding: 4px 8px; width: 200px; }
    .header_nav nav.submenu { display: block; position: absolute; left: 0; line-height: 1; overflow-y:hidden; top: 45px; 
        -webkit-transition: max-height .35s ease-in-out, padding-bottom .35s ease-in-out, padding-left .35s ease-in-out, padding-right .35s ease-in-out, padding-top .35s ease-in-out; 
          -moz-transition: max-height .35s ease-in-out, padding-bottom .35s ease-in-out, padding-left .35s ease-in-out, padding-right .35s ease-in-out, padding-top .35s ease-in-out; 
          -ms-transition: max-height .35s ease-in-out, padding-bottom .35s ease-in-out, padding-left .35s ease-in-out, padding-right .35s ease-in-out, padding-top .35s ease-in-out; 
          -o-transition: max-height .35s ease-in-out, padding-bottom .35s ease-in-out, padding-left .35s ease-in-out, padding-right .35s ease-in-out, padding-top .35s ease-in-out; 
          transition: max-height .35s ease-in-out, padding-bottom .35s ease-in-out, padding-left .35s ease-in-out, padding-right .35s ease-in-out, padding-top .35s ease-in-out; }
    .header_nav nav.submenu.open { height: auto; padding: 20px; max-height: 650px; }
    .header_nav nav.submenu .group { float: left; width: 250px; }
    .header_nav nav.submenu .sidebar { display: none; float: right; width: 250px; }
    .header_nav nav.submenu .sidebar a { border-left-width: 3px; } 
    .header_nav nav.submenu a { border-left: 1px solid #fff; line-height: 1;
        padding: .25em 0 .25em 15px; }
    .header_nav nav.submenu .group a { padding-left: 15px; }
    .header_nav nav.submenu .group a:before { content: ''; }
}

@media screen and (min-width: 1220px) {
    .menu_toggle:checked ~ .menu_search,
    .header_nav form { left: 0; position: relative; width: auto; }
    .header_nav.showsearch { transform: translateX(0); }
    .header_nav input#searchsubmit { background-image: none; font-size: .8em; width: 100px; }
}

@media screen and (min-width: 1350px) {
    .primary_nav > a { padding: 0 14px; }
    .primary_nav > a:after { display: block; }
    .header_nav nav.submenu .sidebar { display: block; }
}

@media screen and (min-width: 1500px) {
    .header_nav { padding-left: 150px; }
    .primary_nav > a { font-size: 1.25em; padding: 0 20px; }
    .header_nav input#s { width: 260px; }
    .header_nav nav.submenu { left: -150px; width: calc(100% + 150px); }
    .header_nav nav.submenu.open { padding: 15px 100px 30px 250px; }
}

@media screen and (min-width: 1600px) {
    .header_nav nav.submenu.open { padding: 15px 150px 30px 300px; }
}

@media screen and (min-width: 1900px) {
    .header_nav nav.submenu.open { padding: 15px 300px 30px 450px; }
}

/* -- Footer --------------------------------------- */

.main_footer { text-align: center; }

.text-logo { padding: 0 10%; margin: 60px 0 32px; width: 100%; }

    /* -- Footer Navigation -- */
.footer_nav { margin: 0 auto; width: 66%; }
.footer_nav nav nav { width: 100%; }
.footer_nav a { display: inline-block; line-height: 1.5; }

.footer_primary_nav {
    border-width: 1px;
    border-style: solid;
    -webkit-border-image: 
      -webkit-gradient(left top, right top, rgba(0, 0, 0, 0), #262626 50%, rgba(0, 0, 0, 0)) 0 0 100% 0;    
    -webkit-border-image: 
      -webkit-linear-gradient(left, rgba(0, 0, 0, 0), #262626 50%, rgba(0, 0, 0, 0)) 0 0 100% 0;    
    -moz-border-image:
      -moz-linear-gradient(left, rgba(0, 0, 0, 0), #262626 50%, rgba(0, 0, 0, 0)) 0 0 100% 0;    
    -o-border-image:
      -o-linear-gradient(left, rgba(0, 0, 0, 0), #262626 50%, rgba(0, 0, 0, 0)) 0 0 100% 0;    
    border-image:
      linear-gradient(to left, rgba(0, 0, 0, 0), #262626 50%, rgba(0, 0, 0, 0)) 0 0 100% 0;
    padding-bottom: 18px;
    margin-bottom: 17px;
}

.footer_text  { 
    color: #000; 
    font-size: 8;
    line-height: 1;
    margin: 10px 10px 10px 10px;
}

.footer_primary_nav a { 
    color: #000; 
    font-weight: 700;
    font-size: 1.25em;
    line-height: 1;
    margin: 10px 0;
}
.footer_primary_nav a:last-of-type { border: none; }

.footer_secondary_nav a {
    color: #000;
    font-weight: 400;
    font-size: 1em;
    line-height: 1;
    margin: 8px 0;
}
.footer_secondary_nav a:last-of-type { border: none; }

.footer_primary_nav a,
.footer_secondary_nav a { display: block; padding: 0 0 8px; }

.footer_social_nav a { height: 30px; margin: 30px 10px; width: 30px; }

    /* -- Credits -- */
.credits { background-color: #3F2971; height: 50px; line-height: 50px; overflow: hidden; }
.credits svg { max-height: 30px; vertical-align: middle; width: auto; }
.credits svg path, .credits svg polygon { fill: #fff; }

    /* -- Responsive -- */
@media screen and (min-width: 400px) {
    .text-logo { padding: 0; width: auto; }
}

@media screen and (min-width: 600px) {
    .footer_nav { width: 90%; }
    .footer_primary_nav a { border-right: 2px solid #000; }
    .footer_secondary_nav a { border-right: 1px solid #000; }
    .footer_primary_nav a,
    .footer_secondary_nav a { display: inline-block; padding: 0 20px; }
}

/* -- Forms --------------------------------------- */
.wpcf7 em,
.contact_page em { color: #FFD356; }
.instructions em { display: block; }
.wpcf7 p { padding: 0; }
.wpcf7 .instructions { font-size: 1em; padding-bottom: 30px; }
.wpcf7 textarea,
.wpcf7 input {
    border: 1px solid #262626;
    font-size: 1em;
    padding: 7px;
    margin-bottom: 5px;
    width: 100%;
}
.wpcf7-form-control-wrap { display: block; padding: 10px 0; }

.wpcf7 input[type=submit] {
    background-color: #fff;
    border-radius: 0;
    line-height: 1;
    padding: 10px;
    cursor: pointer;
    height: 40px;
    width: 180px;
}
.wpcf7 input[type=submit]:hover { background-color: #efefef; }
.wpcf7 input[type=submit]:active { left: 1px; position: relative; top: 1px; }

input.wpcf7-not-valid,
textarea.wpcf7-not-valid{ 
    -webkit-box-shadow: 0px 0px 5px 0px #E84C01;
    -moz-box-shadow: 0px 0px 5px 0px #E84C01;
    box-shadow: 0px 0px 5px 0px #E84C01;
}

span.wpcf7-not-valid-tip { color: #E84C01; }

div.wpcf7-mail-sent-ok,
div.wpcf7-response-output {
    background-color: #f7f7f7;
    border: none;
    border-top: 3px solid #3F2971;
    color: #262626;
    padding: 1em 2em 1em 3.5em;
    position: relative;
    margin: 0 0 2em;
    width: 100%;
}
div.wpcf7-spam-blocked,
div.wpcf7-mail-sent-ng,
div.wpcf7-validation-errors { border-top-color: #E84C01; }

/* -- Login Page --------------------------------------- */
body.login {
    background-color: #cdcdcd !important;
    color: #777 !important;
}
body.login h1 a { 
    background-image: url('../images/logo.png') !important;
    background-size: 270px auto;
    padding-bottom: 0;
    width: 270px;
}
body.login h1 {
    background-color: transparent;
    border: none;
    color: #fff;
    font-size: 2.441em;
    letter-spacing: 0;
    height: 86px;
    line-height: 80px;
    padding: 0;
    position: static;
    width: 100%;
}

body.login h1:after,
body.login h1:before { display:none }

body.login form { box-shadow: none; }
body.login #login_error { border-left-color: #FFD356; box-shadow: none; }
body.login label { color: #777 !important; }
body.login input { border: 1px solid #777; }
body.login input:focus { outline: none !important; }
body.login input[type=submit],
body.login input[type=submit]:hover {
    background-color: #fff;
    border: 1px solid #777;
    border-radius: 0;
    box-shadow: none;
    color: #777 !important;
    width: 40%;
}
body.login.wp-core-ui .button-primary { color: #777 !important; -webkit-box-shadow: none; box-shadow: none; text-shadow: none; }
body.login input[type=submit]:hover { background-color: #efefef; }
body.login input[type=submit]:active { background-color: #3F2971; border: none; left: 1px; position: relative; top: 1px; }

body.login .message { border-left-color: #777; }

/* -- Home Page --------------------------------------- */
.featured_content {
    float: left;
    overflow: hidden;
    position: relative;
    vertical-align: top;
    width: 100%;
}

    /* -- Flexslider Banner -- */
.featured_content .flexslider { border: none !important; -webkit-border-radius: 0 !important; 
-moz-border-radius: 0 !important; -o-border-radius: 0 !important; border-radius: 0 !important; margin-bottom: 0; position: relative; }
.featured_content .flexslider .slides img { height: 300px; width: auto; }
.flexslider .flex-control-nav { bottom: 20px; z-index: 100; }
.flexslider .flex-control-nav li { vertical-align: middle; }
.flexslider .flex-control-nav a {
    background-color: #fff;
    border-radius: 0;
    display: block !important;
    height: 8px;
    margin: 5px;
    width: 8px;
}
.flexslider .flex-control-nav a:hover { background-color: #7B60B8; }
.flexslider .flex-control-nav a.flex-active:hover,
.flexslider .flex-control-nav a.flex-active { 
    background-color: #3F2971;
    height: 16px;
    margin: 0;
    width: 16px;
}
.flexslider .flex-direction-nav { display: none; }
.flexslider .flex-direction-nav a,
.flexslider .flex-direction-nav a:before {
    color: rgba(255, 255, 255, 0.8);
    cursor: pointer;
    text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.3);
    text-indent: 500px;
}
.flexslider .flex-direction-nav a:before { display: none; }
.flexslider .flex-direction-nav a {
    background: url('../images/bg_direction_nav.png') no-repeat 0 0;
    height: 50px;
    width: 25px;
}
.flexslider .flex-direction-nav a.flex-next { background-position: -25px 0; }
.flexslider .caption { background-color: rgba(255, 255, 255, 0.6); width: 75%; }
.flexslider .slides img.overlay { height: auto; width: 85%; }
.flexslider .caption,
.flexslider .overlay {
    color: #000;
    font-size: 1.25em;
    font-weight: 700;
    left: 50%;
    line-height: 1;
    padding: 1% 1% 1.5%;
    position: absolute;
    text-align: center;
    top: 50%;
    -webkit-transform: translate(-50%, -50%); 
          -moz-transform: translate(-50%, -50%); 
          -ms-transform: translate(-50%, -50%); 
          -o-tranform: translate(-50%, -50%); 
          transform: translate(-50%, -50%);}

    /* -- Verse of the Day -- */
.verse_of_day { background-color: #fff; padding: 0 20px 20px; z-index: 10; }
.verse_of_day h1 {
    border-width: 1px;
    border-style: solid;
    -webkit-border-image: 
      -webkit-gradient(right top, right top, #000, rgba(0, 0, 0, 0) 66%) 0 0 100% 0;    
    -webkit-border-image: 
      -webkit-linear-gradient(right, #000, rgba(0, 0, 0, 0) 66%) 0 0 100% 0;    
    -moz-border-image:
      -moz-linear-gradient(right, #000, rgba(0, 0, 0, 0) 66%) 0 0 100% 0;    
    -o-border-image:
      -o-linear-gradient(right, #000, rgba(0, 0, 0, 0) 66%) 0 0 100% 0;    
    border-image:
      linear-gradient(to right, #000, rgba(0, 0, 0, 0) 66%) 0 0 100% 0;
    color: #E84C01;
    font-size: 1.25em;
    padding: 20px 0;
}
.verse_of_day h1 em { color: #3F2971; font-style: normal; text-transform: none; }
.verse_of_day p { font-size: 1em; padding-top: 20px; line-height: 1.25; }
.page .verse_of_day { padding: 0; }
.page .verse_of_day h1 { width: 100%; }

    /* -- News Section -- */
.news_section {
    background-color: #fff;
    clear: both; /* firefox fix */
    line-height: 1.25;
    overflow: hidden;
    position: relative;
    width: 100%;
}
.news_section h1 {
    color: #fff;
    background-color: #3F2971;
    font-size: 1.563em;
    padding: 20px 40px 10px;
}
.news_section h2 { padding: 30px 0 0 0; }
.news_section h2 a { color: #E84C01; font-size: 1.25em; }
.news_section p { padding: 0 0 25px 0; font-size: 1em; }
.news_section .container  {
    height: 100%;
    overflow: hidden;
    position: relative;
}
.news_section .container:after {
    -mox-box-shadow: inset 0 230px 75px -175px #fff,
                     inset 0 -250px 75px -150px #fff;
    -webkit-box-shadow: inset 0 230px 75px -175px #fff,
                        inset 0 -250px 75px -150px #fff;
    box-shadow: inset 0 230px 75px -175px #fff,
                inset 0 -250px 75px -150px #fff;
    height: 100%;
    pointer-events: none;
    position: absolute;
    width: 100%;
    z-index: 10;
}
.news_section article {
    border-width: 1px;
    border-style: solid;
    -webkit-border-image: 
      -webkit-gradient(right top, right top, #000, rgba(0, 0, 0, 0) 66%) 0 0 100% 0;    
    -webkit-border-image: 
      -webkit-linear-gradient(right, #000, rgba(0, 0, 0, 0) 66%) 0 0 100% 0;    
    -moz-border-image:
      -moz-linear-gradient(right, #000, rgba(0, 0, 0, 0) 66%) 0 0 100% 0;    
    -o-border-image:
      -o-linear-gradient(right, #000, rgba(0, 0, 0, 0) 66%) 0 0 100% 0;    
    border-image:
      linear-gradient(to right, #000, rgba(0, 0, 0, 0) 66%) 0 0 100% 0;
    position: relative;
    pointer-events: all;
    margin-left: 20px;
    margin-right: 15px;
}
.news_section article:last-of-type { border: none; }

.featured_links { width: 100%; }
a.featured_link {
    float: left;
    height: 200px;
    position: relative;
    overflow: hidden;
    -webkit-transition: all .5s ease; 
          -moz-transition: all .5s ease; 
          -ms-transition: all .5s ease; 
          -o-transition: all .5s ease; 
          transition: all .5s ease;;
    width: 50%;
}
a.featured_link.primary { float: left; height: 400px; width: 100%; }
a.featured_link:hover { box-shadow: inset 0 0 100px 0px #fff; }
a.featured_link.primary:hover { box-shadow: inset 0 0 150px 20px #fff; }
a.featured_link img { position: relative; z-index: -1; }
a.featured_link:after {
    background-color: rgba(255, 255, 255, 0.8);
    content: '';
    height: 35%;
    left: 10%;
    position: absolute;
    top: 33%;
    width: 80%;
    z-index: 1;
}
a.featured_link.primary:after { height: 14%; left: 17%; top: 43%; width: 66%; }
a.featured_link span {
    color: #000;
    font-size: 1em;
    font-weight: 700;
    left: 50%;
    line-height: 1;
    position: absolute;
    text-align: center;
    top: 50%;
    -webkit-transform: translate(-50%, -50%); 
          -moz-transform: translate(-50%, -50%); 
          -ms-transform: translate(-50%, -50%); 
          -o-tranform: translate(-50%, -50%); 
          transform: translate(-50%, -50%);    width: 80%;
    z-index: 2;
}
a.featured_link.primary span { font-size: 1.25em; width: 60%; }

    /* -- Responsive -- */
@media screen and (min-width: 500px) {
    .flexslider .slides img.overlay {  width: 65%; }
    a.featured_link span { font-size: 1.25em; }
    a.featured_link.primary span { font-size: 1.563em; }
}

@media screen and (min-width: 650px) {
    .featured_content { width: 67%; min-height: 750px; }
    .featured_content:after { bottom: 0; 
        box-shadow: inset -30px 0px 50px -40px #000; 
        content: ""; height: 100%; position: absolute; top: 0; width: 100%; }
    .flexslider .flex-direction-nav { display: block; }
    .news_section { clear: none; width: 33%; }
    a.featured_link { width: 33%; }
    .news_section { height: 750px; }
    .news_section .container:after { content: ''; }
    .news_section #news_ticker { position: absolute; }
    .news_section article:last-of-type {
        border-width: 1px;
        border-style: solid;
        -webkit-border-image: 
          -webkit-gradient(right top, right top, #000, rgba(0, 0, 0, 0) 66%) 0 0 100% 0;    
        -webkit-border-image: 
          -webkit-linear-gradient(right, #000, rgba(0, 0, 0, 0) 66%) 0 0 100% 0;    
        -moz-border-image:
          -moz-linear-gradient(right, #000, rgba(0, 0, 0, 0) 66%) 0 0 100% 0;    
        -o-border-image:
          -o-linear-gradient(right, #000, rgba(0, 0, 0, 0) 66%) 0 0 100% 0;    
        border-image:
          linear-gradient(to right, #000, rgba(0, 0, 0, 0) 66%) 0 0 100% 0;
    }
}

@media screen and (min-width: 950px) {
    .featured_content .flexslider .slides img { height: auto; width: 100%; }
    .flexslider .flex-control-nav a.flex-active:hover,
    .flexslider .flex-control-nav a.flex-active { height: 20px; width: 20px; }
    .flexslider .flex-control-nav a { height: 10px; width: 10px; }
    .flexslider .slides img.overlay {  width: 65%; }
    .featured_links { height: 500px;  }
    a.featured_link { height: 50%; width: 20%; }
    a.featured_link.primary { height: 100%; width: 40%; }
    a.featured_link.primary span { padding: 4% }
    a.featured_link span { padding: 7% 2%; }
}

@media screen and (min-width: 1200px) {
    .flexslider .caption,
    .flexslider .overlay { font-size: 1.953em; padding: 1% 1% 1.5%; }
    .flexslider .flex-control-nav { bottom: 30px; }
    .verse_of_day { padding: 0 50px 40px; }
    .verse_of_day h1 { font-size: 1.953em; }
    .verse_of_day p { font-size: 1.25em; }
    .news_section p { font-size: 1.25em; }
    .news_section .container  { padding: 0px 20px; }
    .news_section h1 { font-size: 1.953em; }
    a.featured_link.primary span { font-size: 1.953em; padding: 2%; }
    a.featured_link span { font-size: 1.563em; padding: 2%; }
}

@media screen and (min-width: 1650px) {
    .flexslider .slides img.overlay { width: auto; }
    .flexslider .flex-control-nav { bottom: 40px; }
}

@media screen and (min-width: 1700px) {
    .flexslider .caption,
    .flexslider .overlay { font-size: 3.051em; padding: 1% 1% 1.5%; }
    a.featured_link.primary span { font-size: 2.441em; }
    a.featured_link span { font-size: 1.953em; }
}

