/*********************************************************

8bitstudio Boilerplate CSS version 1.08d
This is 8bitstudio's custom default styles for all websites.
We have made custom adjustments to Bootstrap, as well as laid
out a baseline for layout formatting and initial CSS.

::: UNAUTHORIZED EDITING OR USE OF THIS FILE IS STRICTLY PROHIBITED :::

::: Update Log :::
10:04am Dec 31, 2014: v0.1   | Initial Construction Began (During Two-Way development)
04:10pm Jun 10, 2015: v1.0   | Updated with several additional styles (additions discovered
    while developing Mt Olivet and LeadPages templates), commented documentation
    for new classes.
09:15am Jun 17, 2015: v1.01  | Added Flex Grid styles from Action Auto boiler.
10:43am Jun 17, 2015: v1.01  | Updated .site-wrapper with overflow:hidden (needed for improved background img).
11:09am Jun 17, 2015: v1.01  | Removed border and background hover on .navbar-toggle.
05:44pm Jun 17, 2015: v1.02  | Added new Top Banner classes for flexible banner layouts.
04:15pm Jun 22, 2015: v1.02a | Included .vcenter for columns (and general style for anything, off by default)
09:23am Jun 24, 2015: v1.03  | Adding Post Content for single page blog posts. (Source from Mt Olivet)
    Adding more comments to existing code.
03:18pm Aug 17, 2015: v1.04  | Added .bg-overlay to Banner classes for tinting background images. (Source from XDD)
    Moved min-height for banner classes to single line.
05:03pm Sep 28, 2015: v1.05  | Added .mobile-sm to force mobile navigation to appear on small screens. (Source from XDD)
    Added styles for images in Wordpress.
05:03pm Oct 01, 2015: v1.05a | Updated Ninja Forms styles to apply to correct element.
11:48am Oct 08, 2015: v1.05b | Tweaking banner style to improve resize and centering on small screens (In Testing, Source from Mt Olivet)
01:42pm Oct 13, 2015: v1.05c | Changed "Font Families" section to "Resets and Overrides", added Fancybox box-sizing reset.
10:16am Oct 21, 2015: v1.05d | Adjusting banner styles to adjust for home and subpage differences.
    Moved default dev styles to style.scss to make it easier for inclusion/removal on launch.
    Unlocked .vcenter and fleshed out Vertical Alignment section.
01:36pm Oct 23, 2015: v1.05e | Adding overflow:hidden to .img-background.
03:11pm Oct 27, 2015: v1.06  | Added new mobile navigation style and technology.
06:31pm Jan 27, 2016: v1.06a | Cleaning up and updating styles for default build.
04:59pm Jan 28, 2016: v1.07  | Removed and updated redundant styles for Bootstrap 4 alpha.
02:52pm Feb 01, 2016: v1.07a | Add outline removal from .navbar-toggler, fixed classes for mobile navigation.
09:48am Feb 17, 2016: v1.07b | Added default blockquote style.
05:12pm Feb 29, 2016: v1.07c | Fixed incorrect calls to translate for mobile navigation.
11:10am Mar 29, 2016: v1.07d | Added negative margin to .wrapper-bg-banner to fix 1px Chrome glitch.
12:47pm Mar 30, 2016: v1.08  | Added CSS for Additional Content sections (ACF Flexible Content feature).
11:32am Apr 07, 2016: v1.08a | Updating CSS for new ACF tech (animations to column layout & restyling for WP editor).
    Removed .mobile-sm class functionality (deprecated due to improved techniques in Bootstrap 4 alpha).
    Widened TinyMCE size to accomodate full size layout instead of sidebar layout.
    Fixed header position issue while logged into WordPress.
05:13pm Apr 25, 2016: v1.08b | Added "first row only" option to Gallery section.
03:44pm Apr 28, 2016: v1.08c | Added more fixes to move site below WordPress bar.
02:01pm May 03, 2016: v1.08d | Added IE9 class to display hidden elements instead of animate.

*********************************************************/


/**
 * 0.0 IE Fix
 * -----------------------------------------------------------------------------
 */
@-webkit-viewport{width:device-width}
@-moz-viewport{width:device-width}
@-ms-viewport{width:device-width}
@-o-viewport{width:device-width}
@viewport{width:device-width}



/**
 * 0.1 Resets and Overrides (Consider moving to a separate css package for each font)
 * -----------------------------------------------------------------------------
 */
#fancybox-content, #fancybox-wrap {
    box-sizing: content-box;
}



/**
 * 0.2 WordPress specific overrides
 * -----------------------------------------------------------------------------
 */
#tinymce {
    padding: 15px !important;
    margin-left: auto;
    margin-right: auto;
    max-width: 1140px;
}
blockquote {
    padding: .5rem 1rem;
    margin-bottom: 1rem;
    font-size: 1.25rem;
    border-left: .25rem solid #eceeef;
}
blockquote p:last-child {
    margin-bottom: 0;
}
.alignleft, .alignright, .aligncenter {
    margin: 5px auto;
}
.alignleft img, .alignright img, .aligncenter img {
    display: block;
    max-width: 100%;
    height: auto;
    margin: 0 auto;
}
@media (min-width: 768px) {
    .alignleft {
        float: left;
        margin-right: 20px;
        text-align: left;
    }
    .alignright {
        float: right;
        margin-left: 20px;
        text-align: right;
    }
    .aligncenter {
        display: block;
        margin: 5px 20px;
        text-align: center;
    }
}
.wp-caption-text {
    color: #666;
    font-size: 14px;
    text-align: center;
    margin-top: 5px;
}
.gallery dt.gallery-icon {
    padding: 0 15px;
}
.gallery img {
    border: none !important;
}
.gallery dd.wp-caption-text {
    font-size: 13px;
}



/**
 * 1.0 Enhanced Bootstrap Styles
 * -----------------------------------------------------------------------------
 */

/* Reset */
body {
	font-weight: 300;
	letter-spacing: 0.5px;
	word-wrap: break-word;
}
a:focus {
    outline: 0;
}
.img-responsive {
	width: auto;
}
.byline {
    font-size: 14px;
    font-weight: 500;
    text-transform: uppercase;
}
.admin-bar .navbar-fixed-top, .admin-bar .pswp, .admin-bar .full-menu {
    top: 46px;
}
@media (min-width: 768px) {
    .admin-bar .navbar-fixed-top, .admin-bar .pswp, .admin-bar .full-menu {
        top: 32px;
    }
}

/* Revision to Pagination (for WP) */
.pagination {
    display: inline-block;
    margin: 20px 0;
    border-radius: 4px;
}
.pagination a.page-numbers, .pagination span.page-numbers {
    position: relative;
    float: left;
    padding: 6px 12px;
    margin-left: -1px;
    line-height: 1.42857143;
    color: #005c91;
    text-decoration: none;
    background-color: #fff;
    border: 1px solid #ddd;
}
.pagination a.page-numbers:first-child, .pagination span.page-numbers:first-child {
    margin-left: 0;
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px;
}
.pagination a.page-numbers:last-child, .pagination span.page-numbers:last-child {
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
}
.pagination a.page-numbers:focus, .pagination a.page-numbers:hover, .pagination span.page-numbers:focus, .pagination span.page-numbers:hover {
    z-index: 2;
    color: #23527c;
    background-color: #eee;
    border-color: #ddd;
}
.pagination a.page-numbers.current, .pagination a.page-numbers.current:focus, .pagination a.page-numbers.current:hover, .pagination span.page-numbers.current, .pagination span.page-numbers.current:focus, .pagination span.page-numbers.current:hover {
    z-index: 3;
    color: #fff;
    cursor: default;
    background-color: #005c91;
    border-color: #005c91;
}
.pagination > li:first-child > a, .pagination > li:first-child > span {
    margin-left: 0;
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px;
}
.pagination > li > a, .pagination > li > span {
    position: relative;
    float: left;
    padding: 6px 12px;
    margin-left: -1px;
    line-height: 1.42857143;
    color: #337ab7;
    text-decoration: none;
    background-color: #fff;
    border: 1px solid #ddd;
}

/* Screen Reader (WordPress class change) */
.screen-reader-text {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
}
.screen-reader-text-focusable:active,
.screen-reader-text-focusable:focus {
    position: static;
    width: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    clip: auto;
}
.has-feedback label.screen-reader-text ~ .form-control-feedback {
    top: 0;
}

/******************
 Grid
*******************/

/*** Vertical Alignment
Can be used on columns or other formatting elements to create inline elements with consistent vertical alignment
***/
.vtop, .vcenter, .vbottom, .vspacing {
    float: none;
    display: inline-block;
}
.vtop {
    vertical-align: top;
}
.vcenter {
    vertical-align: middle;
}
.vbottom {
    vertical-align: bottom;
}
.vspacing {
    width: 0;
    height: 100%;
}



/*** Columns without Gutter
Removes side padding from columns. Add .no-gutter to either .row or .container, depending on scope of gutter removal.
***/
.no-gutter .col-xs-1, .no-gutter .col-sm-1, .no-gutter .col-md-1, .no-gutter .col-lg-1, .no-gutter .col-xl-1, .no-gutter .col-xs-2, .no-gutter .col-sm-2, .no-gutter .col-md-2, .no-gutter .col-lg-2, .no-gutter .col-xl-2, .no-gutter .col-xs-3, .no-gutter .col-sm-3, .no-gutter .col-md-3, .no-gutter .col-lg-3, .no-gutter .col-xl-3, .no-gutter .col-xs-4, .no-gutter .col-sm-4, .no-gutter .col-md-4, .no-gutter .col-lg-4, .no-gutter .col-xl-4, .no-gutter .col-xs-5, .no-gutter .col-sm-5, .no-gutter .col-md-5, .no-gutter .col-lg-5, .no-gutter .col-xl-5, .no-gutter .col-xs-6, .no-gutter .col-sm-6, .no-gutter .col-md-6, .no-gutter .col-lg-6, .no-gutter .col-xl-6, .no-gutter .col-xs-7, .no-gutter .col-sm-7, .no-gutter .col-md-7, .no-gutter .col-lg-7, .no-gutter .col-xl-7, .no-gutter .col-xs-8, .no-gutter .col-sm-8, .no-gutter .col-md-8, .no-gutter .col-lg-8, .no-gutter .col-xl-8, .no-gutter .col-xs-9, .no-gutter .col-sm-9, .no-gutter .col-md-9, .no-gutter .col-lg-9, .no-gutter .col-xl-9, .no-gutter .col-xs-10, .no-gutter .col-sm-10, .no-gutter .col-md-10, .no-gutter .col-lg-10, .no-gutter .col-xl-10, .no-gutter .col-xs-11, .no-gutter .col-sm-11, .no-gutter .col-md-11, .no-gutter .col-lg-11, .no-gutter .col-xl-11, .no-gutter .col-xs-12, .no-gutter .col-sm-12, .no-gutter .col-md-12, .no-gutter .col-lg-12, .no-gutter .col-xl-12 {
	padding-left: 0;
	padding-right: 0;
}

/* Justified Header */
.navbar-justified {
    text-align: justify;
}
.navbar-justified > .container, .navbar-justified > .container-fluid {
    margin: -1.3rem auto;
}
.navbar-justified > .container::before, .navbar-justified > .container::after, .navbar-justified > .container-fluid::before, .navbar-justified > .container-fluid::after {
    content: '';
    display: inline-block;
    width: 100%;
    height: 0;
    font-size: 0;
    line-height: 0;
    overflow: hidden;
}
.navbar-brand, .navbar-content {
    display: inline-block;
    vertical-align: middle;
}
.navbar-brand {
    float: none;
    text-align: left;
}
.navbar-content {
    text-align: right;
}


/* Mobile Navigation */
.sub-menu {
    display: none;
}
.navbar-toggler:hover, .navbar-toggler:focus, .navbar-toggler:active {
    outline: none;
}
.wrapper-site {
    position: relative;
    overflow: hidden;
    -webkit-transition: -webkit-transform 0.5s ease;
    -ms-transition: -ms-transform 0.5s ease;
    transition: transform 0.5s ease;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}
.wrapper-site.mobile-nav-open  {
    -webkit-transform: translate(-300px, 0);
    -ms-transform: translate(-300px, 0);
    transform: translate(-300px, 0);
    -webkit-transform: translate3d(-300px, 0, 0);
    transform: translate3d(-300px, 0, 0);
}
.mobile-menu {
    position: fixed;
    z-index: 5000;
    top: 0;
    right: 0;
    bottom: 0;
    width: 300px;
    background: #e8eaeb;
    -webkit-transform: translate(100%, 0);
    -ms-transform: translate(100%, 0);
    transform: translate(100%, 0);
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    -webkit-transition: -webkit-transform 0.5s;
    -ms-transition: -ms-transform 0.5s;
    transition: transform 0.5s;
}
.mobile-menu.open {
    -webkit-transform: translate(0%, 0);
    -ms-transform: translate(0%, 0);
    transform: translate(0%, 0);
    -webkit-transform: translate3d(0%, 0, 0);
    transform: translate3d(0%, 0, 0);
}
.mobile-title {
    padding: 20px 25px;
    color: #fff;
    font-size: 18px;
    letter-spacing: 1px;
}
.mobile-menu .fa {
    float: right;
    margin: 6px 0;
}
.mobile-menu-nav, .mobile-menu-nav .sub-menu {
    margin: 0;
    padding: 0;
    list-style-type: none;
}
.mobile-menu-nav li {
    border-top: 2px solid #e2e4e5;
}
.mobile-menu-nav li:first-child {
    border-top: none;
}
.mobile-menu-nav li a {
    display: block;
    padding: 16px 25px;
    color: #575757;
    font-size: 18px;
}
.mobile-menu-nav li a:hover {
    color: #fff;
    text-decoration: none;
}
.mobile-menu-nav .sub-menu {
    display: block;
    position: absolute;
    z-index: 5000;
    top: 0px;
    right: 0;
    bottom: 0;
    z-index: 10;
    width: 300px;
    margin-top: 67px;
    background: #e8eaeb;
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-transform: translate(100%, 0);
    -ms-transform: translate(100%, 0);
    transform: translate(100%, 0);
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    -webkit-transition: -webkit-transform 0.5s;
    -ms-transition: -ms-transform 0.5s;
    transition: transform 0.5s;
}
.mobile-menu-nav .sub-menu.open {
    -webkit-transform: translate(0%, 0);
    -ms-transform: translate(0%, 0);
    transform: translate(0%, 0);
    -webkit-transform: translate3d(0%, 0, 0);
    transform: translate3d(0%, 0, 0);
}
.mobile-menu-nav .sub-menu .sub-menu {
    margin-top: 0;
}
.mobile-menu-nav .mobile-nav-back a {
    color: #e8eaeb;
    background: #9e9e9e;
}


/**
 * 2.0 Layout/Banner Styles
 * -----------------------------------------------------------------------------
 */
.wrapper {
	position: relative;
	padding: 20px 0;
}
.wrapper.wrapper-header {
	padding: 0 !important;
}
.wrapper.wrapper-banner {
	padding: 50px 0;
	color: #fff;
	background: #999;
	overflow: hidden;
}

/*** Static Banner
This banner style is for simple, static banners. While not as robust as the
flexible top banners, this could allow for greater control in positioning images
and text if done correctly.

By default, opt for Top Banners code (below).
***/
.bg-img-wrap {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
}
.bg-img-wrap .container {
	height: 100%;
	padding-left: 0;
	padding-right: 0;
}
.bg-img {
	display: inline-block;
    height: auto;
}
.bg-img-absolute {
	position: absolute;
	left: 0;
	top: 0;
	width: auto;
	height: auto;
	min-height: 100%;
	min-width: 100%;
	max-width: none;
}
.wrapper.wrapper-banner-top .bg-img-absolute {
	max-height: 100%;
}
.bg-img-absolute.bg-right {
	left: auto;
	right: 0;
}
.bg-img-absolute.bg-bottom {
	top: auto;
	bottom: 0;
}
@media (max-width: 319px) {
	.bg-img {
		min-width: 100%;
		height: 100%;
	}
}
@media (min-width: 320px) and (max-width: 479px) {
	.bg-img-wrap .container {
		width: 358px;
	}
    .wrapper.wrapper-banner-xs .bg-img-wrap .container {
		width: 100%;
	}
	.bg-img {
		width: 480px;
		margin-left: -60px;
	}
    .wrapper.wrapper-banner-xs .bg-img-wrap, .wrapper.wrapper-banner-xs .bg-img {
		width: 100%;
		height: auto;
		margin-top: 0;
		margin-left: 0;
	}
}
@media (min-width: 480px) and (max-width: 767px) {
	.bg-img-wrap .container {
		width: 526px;
	}
    .wrapper.wrapper-banner-xs .bg-img-wrap .container {
		width: 100%;
	}
	.bg-img {
		width: 768px;
		margin-left: -121px;
	}
    .wrapper.wrapper-banner-xs .bg-img-wrap, .wrapper.wrapper-banner-xs .bg-img {
		width: 100%;
		height: auto;
		margin-top: 0;
		margin-left: 0;
	}
}
@media (max-width: 767px) {
    .wrapper.wrapper-banner-xs {
		padding: 0;
	}
    .wrapper.wrapper-banner-xs .bg-img-wrap {
		position: relative;
	}
}
@media (min-width: 768px) {
    .wrapper {
		padding: 40px 0;
	}
    .wrapper.wrapper-lg {
		padding: 100px 0;
	}
    .wrapper.wrapper-banner {
		padding: 100px 0;
	}
    .wrapper.wrapper-banner h1, .wrapper.wrapper-banner .h1 {
		font-size: 62px;
	}
    .wrapper.wrapper-banner p, .wrapper.wrapper-banner .p {
		font-size: 28px;
		font-weight: 300;
		line-height: 1.1;
	}
    .wrapper.wrapper-banner-top .bg-img-absolute {
		max-height: none;
	}
	.bg-img {
		width: 992px;
		margin-left: -121px;
	}
}
@media (min-width: 992px) {
    .wrapper.wrapper-banner-top {
		min-height: 600px;
	}
    .wrapper.wrapper-banner h1, .wrapper.wrapper-banner .h1 {
		font-size: 68px;
	}
    .wrapper.wrapper-banner p, .wrapper.wrapper-banner .p {
		font-size: 33px;
	}
	.bg-img {
		width: 1200px;
		margin-left: -115px;
	}
}
@media (min-width: 1200px) {
    .wrapper.wrapper-banner h1, .wrapper.wrapper-banner .h1 {
		font-size: 73px;
	}
    .wrapper.wrapper-banner p, .wrapper.wrapper-banner .p {
		font-size: 38px;
	}
	.bg-img {
		width: 1400px;
	}
}
@media (min-width: 1400px) {
	.bg-img-wrap .container {
		width: auto;
	}
	.bg-img {
		width: 100%;
		margin-left: 0;
	}
}

/*** Background Image (or optional Banner style)
This replicates "background-size: cover;" but uses divs and an img.
To use as a page background image, simply nest .img-background-->.bg-wrapper-->img and place at the top of the page.
To use as a banner, do not use .img-background and place at top position in nested parent.
***/
.img-background {
	display: inline-block;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: auto;
	height: auto;
	min-width: 100%;
	min-height: 100%;
    overflow: hidden;
}
.bg-wrapper {
	position: absolute;
    z-index: 1;
	top: -50%;
	left: -50%;
	width: 200%;
	height: 200%;
}
.bg-wrapper img {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
    width: auto;
	min-width: 50%;
	min-height: 50%;
    max-height: 50%;
}

@media (min-width: 768px) {
    .bg-wrapper img {
        max-height: none;
    }
}


/*** Top Banner
This creates a flexible, mobile responsive banner system.
NOTE: Due to issues with white space and display:inline-block, Use comments to remove space between .bg-text and .fill, e.g:
<div class="bg-text"><!--
--><div class="fill">
***/
.wrapper-bg-banner {
    padding: 0;
    margin: 0 -1px; /* Necessary for 1px Chrome glitch */
    overflow: hidden;
    background: center no-repeat;
    background-size: cover;
}
.wrapper-bg-banner > .bg-text, .wrapper-bg-banner > .bg-text.middle:before, .wrapper-bg-banner > .bg-text.bottom:before {
    min-height: 379px;
}
.wrapper-bg-banner.wrapper-bg-banner-lg > .bg-text, .wrapper-bg-banner.wrapper-bg-banner-lg > .bg-text.middle:before, .wrapper-bg-banner.wrapper-bg-banner-lg > .bg-text.bottom:before {
    min-height: 459px;
}
.wrapper-bg-banner > .bg-text {
    position: relative;
    z-index: 3;
}
.wrapper-bg-banner > .bg-text.middle:before, .wrapper-bg-banner > .bg-text.bottom:before {
    content: '';
    display: inline-block;
    height: 100%;
    vertical-align: middle;
}
.wrapper-bg-banner > .bg-text.middle > .fill, .wrapper-bg-banner > .bg-text.bottom > .fill {
    display: inline-block;
    width: 100%;
    vertical-align: middle;
}
.wrapper-bg-banner > .bg-text.bottom:before {
    vertical-align: bottom;
}
.wrapper-bg-banner > .bg-text.bottom > .fill {
    vertical-align: bottom;
}
@media (min-width: 768px) {
    .wrapper-bg-banner {
        padding: 40px 0;
    }
    .wrapper-bg-banner.wrapper-bg-banner-lg > .bg-text, .wrapper-bg-banner.wrapper-bg-banner-lg > .bg-text.middle:before, .wrapper-bg-banner.wrapper-bg-banner-lg > .bg-text.bottom:before {
        min-height: 550px;
    }
}
/* Banner Overlay
Add a .bg-overlay div between .bg-wrapper and .bg-text to add a tinting overlay to the image. Default setting darkens the image for better readability. */
.bg-overlay {
    position: absolute;
    z-index: 2;
    width: 100%;
    height: 100%;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: rgba(0, 0, 0, 0.3);
}

/*** Flex Grid
This is used for layouts such as galleries, where column heights are not consistent and rows are not established. This will clear the next "row" below uneven column heights. This assumes a 2-up, 3-up, or 4-up layout with even column widths.
Note: For flex grid, all column widths must be establashied (e.g. col-xs-12 col-sm-4 col-md-4 col-lg-4 instead of just col-xs-12 col-sm-4)
***/
@media (max-width: 767px) {
    .flex-grid .col-xs-3:nth-child(4n+1), .flex-grid .col-xs-4:nth-child(3n+1), .flex-grid .col-xs-6:nth-child(odd) {
        clear: left;
    }
}
@media (min-width: 768px) and (max-width: 991px) {
    .flex-grid .col-sm-3:nth-child(4n+1), .flex-grid .col-sm-4:nth-child(3n+1), .flex-grid .col-sm-6:nth-child(odd) {
        clear: left;
    }
}
@media (min-width: 992px) and (max-width: 1199px) {
    .flex-grid .col-md-3:nth-child(4n+1), .flex-grid .col-md-4:nth-child(3n+1), .flex-grid .col-md-6:nth-child(odd) {
        clear: left;
    }
}
@media (min-width: 1200px) {
    .flex-grid .col-lg-3:nth-child(4n+1), .flex-grid .col-lg-4:nth-child(3n+1), .flex-grid .col-lg-6:nth-child(odd) {
        clear: left;
    }
}

/**
 * 3.0 Media Styles
 * -----------------------------------------------------------------------------
 */
.img-inline, .img-responsive.img-inline {
	display: inline-block;
}
.map-canvas {
	width: 100%;
	height: 200px;
}
.tiled-gallery {
    max-width: 100%;
}
.size-auto,
.size-full,
.size-large,
.size-medium,
.size-thumbnail {
    max-width: 100%;
    height: auto;
}
@media (min-width: 768px) {
	.map-canvas {
		height: 400px;
	}
}



/**
 * 4.0 Form Styles
 * -----------------------------------------------------------------------------
 */
#ninja_forms_required_items {
	display: none;
}
.ninja-forms-form .ninja-forms-req-symbol {
	color: #a94442;
	font-size: 12px;
}
.ninja-forms-response-msg.ninja-forms-success-msg > div, .ninja-forms-response-msg.ninja-forms-error-msg > div, .ninja-forms-field-error {
	padding: 8px 15px;
	color: #FFF;
	background: #A30000;
}
.ninja-forms-field-error {
	display: inline-block;
	margin-top: 5px;
	margin-bottom: 15px;
}
.ninja-forms-response-msg.ninja-forms-error-msg > div, .ninja-forms-field-error {
	background: #A30000;
}
.ninja-forms-response-msg.ninja-forms-success-msg > div {
	background: #035A03;
}
.ninja-forms-field-error {
	display: none;
}
.ninja-forms-field-error > p {
	margin: 0;
}
.ninja-forms-response-msg > div {
	display: none;
	padding: 15px;
	margin: 0 20px 25px;
	border: 1px solid transparent;
}
.ninja-forms-response-msg.ninja-forms-error-msg > div, .ninja-forms-response-msg.ninja-forms-success-msg > div {
	display: block;
}
.ninja-forms-response-msg p {
	margin: 0;
	color: #fff;
}
.textarea-wrap textarea.input-message {
	height: 241px;
	resize: none;
}
.submit-wrap {
	text-align: right;
}

@media (min-width: 768px) {
	.standard-split .field-wrap.text-wrap, .standard-split .input-message-wrap, .standard-split .submit-wrap {
		width: 50%;
		padding: 0 20px;
	}
	.standard-split .field-wrap.text-wrap {
		float: left;
		clear: left;
	}
	.standard-split .input-message-wrap, .standard-split .submit-wrap {
		float: right;
	}
	.standard-split .submit-wrap {
		width: 100%;
		text-align: right;
	}
	.standard-split .ninja-forms-field.btn {
		display: inline-block;
	}
}



/**
 * 4.0 Single Post Blog Styles
 * -----------------------------------------------------------------------------
 */
.post-content .entry-meta p {
    font-size: 13px;
}
.post-content .entry-meta .author {
    color: #000;
    font-weight: 500;
}
.post-content .entry-meta .date {
    color: #888;
    font-style: italic;
}
.post-content .share {
    padding: 10px 0;
    margin: 20px 0 25px;
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
}
.post-content .share .sm {
    display: inline-block;
    padding: 3px 10px 7px;
    color: #fff;
    font-size: 13px;
    border-radius: 100px;
    margin-right: 10px;
}
.post-content .share .sm span {
    display: none;
}
.post-content .share .sm .fa {
    position: relative;
    top: 3px;
    margin-right: 5px;
    font-size: 22px;
}
.mobile .post-content .share .sm .fa {
    top: -4px;
}
.post-content .share .sm.fb {
    background: #3b5998;
}
.post-content .share .sm.twitter {
    background: #55acee;
}
.post-content .share .sm.rss {
    float: right;
    background: #f60;
    padding: 4px 8px 6px;
    border-radius: 5px;
    margin-top: 2px;
    margin-right: 0;
}
.post-content .share .sm.rss .fa {
    margin-right: 0;
}
.post-content .share .sm:hover {
    text-decoration: none;
}
.post-content .post-thumbnail {
    margin-bottom: 20px;
    text-align: center;
}
.post-content .map {
    width: 100%;
    height: 300px;
}
.entry-content blockquote {
    position: relative;
    padding: 25px 15px 25px 48px;
    border-left: none;
    background: #f5f5f5;
}
.entry-content blockquote:before {
    content: "\f10d";
    position: absolute;
    top: 11px;
    left: 12px;
    z-index: 1;
    font-family: FontAwesome;
    font-size: 30px;
    color: #e3e3e3;
}

@media (min-width: 768px) {
    .post-content article {
        padding-right: 30px;
    }
    .post-content .share .sm {
        display: inline-block;
        padding: 3px 17px 7px;
    }
    .entry-content blockquote {
        padding: 25px 48px;
    }
    .post-content .share .sm span {
        display: inline;
    }
}



/**
 * 5.0 Additional Content (ACF Flexible Content) Styles
 * -----------------------------------------------------------------------------
 */
.additional-content {
    overflow: hidden;
}
.wrapper .content-text h1, .wrapper .content-text h2, .wrapper .content-text h3, .wrapper .content-text h4, .wrapper .content-text .h1, .wrapper .content-text .h2, .wrapper .content-text .h3, .wrapper .content-text .h4 {
    margin-top: .8rem;
}
.wrapper.has-additional-content {
    padding-bottom: 0;
}
.will-animate {
    opacity: 0;
}
.ie9 .will-animate {
    opacity: 1;
}
.animated {
    opacity: 1;
}
.additional-content.padding-none .wrapper{
    padding: 0;
}
.additional-content.padding-sm .wrapper {
    padding: 20px 0;
}
.additional-content.padding-md .wrapper {
    padding: 40px 0;
}
.additional-content.padding-lg .wrapper {
    padding: 50px 0;
}
@media (min-width: 768px) {
    .additional-content.padding-none .wrapper{
        padding: 0;
    }
    .additional-content.padding-sm .wrapper {
        padding: 40px 0;
    }
    .additional-content.padding-md .wrapper {
        padding: 80px 0;
    }
    .additional-content.padding-lg .wrapper {
        padding: 100px 0;
    }
}
.wrapper.content-banner {
    color: #fff;
}
.wrapper.content-banner .content-text > h1:first-child:last-child, .wrapper.content-banner .content-text > h2:first-child:last-child, .wrapper.content-banner .content-text > h3:first-child:last-child, .wrapper.content-banner .content-text > h4:first-child:last-child, .wrapper.content-banner .content-text > h5:first-child:last-child, .wrapper.content-banner .content-text > h6:first-child:last-child {
    margin-bottom: 0;
}
.icon-list {
    padding: 30px 15px;
}
.icon-list .content-list-item {
    margin: 15px 0;
}
.icon-list .icon-list-image {
    float: left;
    margin-right: 20px;
}
.icon-list .icon-list-text {
    position: relative;
    overflow: hidden;
}
.gallery a.hiddenGallery {
    display: none;
}
.gallery-item {
    margin-top: 15px;
    margin-bottom: 15px;
}
.gallery-item a {
    display: block;
}
.gallery-item img {
    margin-left: auto;
    margin-right: auto;
}
.gallery-item p {
    color: #696969;
    font-size: 14px;
    font-weight: 300;
    font-style: italic;
    text-align: center;
    margin-top: 2px;
}
