/*
 Theme Name:   Divi - Child Theme
 Description:  A child theme for Divi 3.0.66+
 Author:       John Monahan
 Author URI:   https://webcore.me
 Template:     Divi
 Version:      1.2
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
*/

html, body {
    max-width: 100%;
    overflow-x: hidden;
}


::selection {
background: #D81D1D; /* Safari */
color: #fff;
}
::-moz-selection {
background: #D81D1D; /* Firefox */
color: #fff;
}

a:hover {
	text-decoration: underline;
  -o-transition:color .5s ease-out;
  -ms-transition:color .5s ease-out;
  -moz-transition:color .5s ease-out;
  -webkit-transition:color .5s ease-out !important;
  transition:color .5s ease-out !important;
  color: #e2717a;
}

.mega-disable-link a.mega-menu-link:hover {
	text-decoration: none;
}


/* #mega-menu-wrap-new-menu #mega-menu-new-menu > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link:hover, */




a,
#mega-menu-wrap-new-menu #mega-menu-new-menu > li.mega-menu-item > a.mega-menu-link:hover {
/*   color:blue; */
  -o-transition:color .5s ease-out;
  -ms-transition:color .5s ease-out;
  -moz-transition:color .5s ease-out;
  -webkit-transition:color .5s ease-out !important;
  transition:color .5s ease-out !important;
}
#mega-menu-wrap-new-menu #mega-menu-new-menu > li.mega-menu-item.mega-toggle-on > a.mega-menu-link, #mega-menu-wrap-new-menu #mega-menu-new-menu > li.mega-menu-item > a.mega-menu-link:hover, #mega-menu-wrap-new-menu #mega-menu-new-menu > li.mega-menu-item > a.mega-menu-link:focus {
  -o-transition:background-color .5s ease-out;
  -ms-transition:background-color .5s ease-out;
  -moz-transition:background-color .5s ease-out;
  -webkit-transition:background-color .5s ease-out !important;
  transition:background-color .5s ease-out !important;
	
}


h2 { 
	margin: 30px 0;
}
h3 {
	margin: 20px 0;
}


/* Footer */
#footer-info {
	float: none;
	padding: 0px;
  text-align: center !important;
  margin-left: 42px;
}
#footer-info span {
	margin-right: 12px;
	line-height: 1.8em;
}

#footer-bottom {
	padding: 12px 0;
}

#footer_main .et_pb_main_blurb_image {
	margin-bottom: 10px !important;
}

#footer-bottom .et-social-icons {
	margin-bottom: -28px;
	float: none;
	text-align: center;
	padding: 0px 21px 31px 0;
}




/* Header */

/*
body.admin-bar.et_non_fixed_nav.et_transparent_nav.et_secondary_nav_enabled #main-header {
	top: 60px;
}
*/
#top-header .container {
	padding: .45em 0;
}



.container:before { background-color:transparent !important; }
.et_pb_widget_area_right { border-left:0 !important; }
.et_pb_widget_area_left { border-right:0 !important; }

.error404 #sidebar {
    float: left;
    width: 30%;
}

.error404 #left-area {
    width: 70%;
    padding-bottom: 23px;
}



/* Hide comments */
.et_pb_post .post-meta { 
	color: #6660 !important;
}
.et_pb_post .post-meta .published {
	color: #666666 !important;
	font-weight: bold;
}


#header_main {
	position: absolute;
	width: 100%;

}
#container_jcm {
	width: 80%;
	max-width: 1080px;
	top: 85px;
	position: relative;
	text-align: left;
	margin: auto;
	z-index: 99;
}

.container.et_menu_container {
	z-index: 99;
}

#logo_main {
	float: left;	
	margin-bottom: 20px;
	width: 70%;
	max-width: 600px;
	height: auto;
} 




#top_search {
	float: right;
	padding: 0px 0 0 0;
	width: 25%;
	min-width: 150px;
}

#ajaxsearchlite1 .probox, div.asl_w .probox {
  padding: 3px !important;
	margin-bottom: 5px;
}

#phone-info {
  float: right;
}

#weather {
	float: right;
	color: #fff;
	font-weight: bold;
	margin-right: 5px;
}
#weather p {
  text-shadow: 1px 1px 1px #333;
}




/* Main menu */
#mega-menu-wrap-new-menu {
	z-index: 99;
}
#megamenu1 .et_pb_row_0 {
	padding: 0 0;
}
#megamenu1 .et_pb_text_inner p {
	padding: 0;
}
#mega-menu-wrap-new-menu #mega-menu-new-menu {
    padding: 0px 0px 0px 5px;
}




/* Main menu mobile */

#mega-menu-wrap-new-menu .mega-menu-toggle .mega-toggle-block-1 .mega-search-wrap, #mega-menu-wrap-new-menu .mega-menu-toggle #mega-toggle-block-1 .mega-search-wrap {
    margin-top: 7px !important;
}



/* Breadcrumbs / margin  */
.woocommerce .woocommerce-breadcrumb {
    font-size: .7em;
    color:#a1a1a1;
}
.woocommerce .woocommerce-breadcrumb a {
    color: #EBAB03;
}

div#breadcrumb_section.et_pb_section {
	padding: 0 0;
}
div#breadcrumb_section.et_pb_section .et_pb_row {
	padding: 10px 0 0 0;
}
#breadcrumb_section {
	font-size: .85em;
}



#welcome_main a {
	color: #ffffff;
	font-weight: bold;
}
#welcome_main a:hover {
	text-decoration: underline;
}

/* Content */

#contact_blurb .et_pb_blurb_content {
	max-width: 100%;
}
.et_pb_gutters3 .et_pb_column_2_3 .et_pb_module, .et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_module, .et_section_specialty .et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_module, .et_section_specialty .et_pb_row .et_pb_column_2_3 .et_pb_gutters3.et_pb_row_inner .et_pb_module {
  margin-bottom: 7%;
}

.fa, .fas {
  color: #D81D1D !important;
}
#footer-info .fa, #footer-info .fas {
  color: #fff !important;
}



#left-area ul, .comment-content ul, .entry-content ul, body.et-pb-preview #main-content .container ul {
    padding-right: 2em;
    list-style-position: inside;
}

/* Bottom padding */
/*
.et_pb_section_4 {
	padding-bottom: 100px !important;
}
*/
/*
.et_pb_section_3 {
		padding-bottom: 100px !important;
}
*/

.entry-content #htmlsitemap_blurb ul {
	padding: 0;
}

.entry-content ul.children {
    margin-left: 25px;
}


.entry-content img {
	border: 1px solid #aaa;
}
.entry-content img:hover {
	border: 1px solid #D81D1D;
}
.entry-content img.noborder {
	border: 0;
}

#htmlsitemap_blurb li {
	list-style: none;
}
#htmlsitemap_blurb li:before {
  content: '\f0a9';
  font-family: 'FontAwesome';
  float: left;
  margin-left: -1.5em;
  color: #D81D1D;
}

/*
.et_pb_column_2_3 .et_pb_row_inner {
	padding: 120px 0;
}
*/
.keep_em_separated {
	margin: 0;
}




/* Footer */

.et_pb_row_inner_0 {
	padding-bottom: 65px !important;
}

/* footer padding */
.et_pb_section_4 {
  padding-bottom: 50px;
}

.footer1 a {
	color: #fff !important;
/* 	font-weight: bold !important; */
}
/*
.footer1 img {
	border: 1px solid #000;
}
*/


/* remove sidebar line */
.et_pb_widget_area_left {
    padding-right: 0;
    border-right: 0;
}



.et_pb_section {
    position: relative;
    background-color: rgba(255, 255, 255, .9);
}


#page_h1 p {
	padding: 0;
}














/*******************Advent Calendar 2017 - 7 & 13********************/
/*******Custom Single Post Layout & Styling for Archive Pages********/
/***************************By Divi Soup*****************************/


/***Post Content***/


/*Add margin below the featured image on single posts*/

.single .et_pb_post .et_post_meta_wrapper img {
    margin-bottom: 20px;
}


/*Reduce the post meta font size on archive pages*/

.archive .post-meta,
.blog .post-meta,
.search .post-meta {
    font-size: 12px !important;
    padding-bottom: 5px !important;
}


/*Add margin to the post meta elements and prevent breaking*/

.single .author,
.archive .author,
.blog .author,
.search .author,
.single .published,
.archive .published,
.blog .published,
.search .published,
.single .post-meta a[rel~="category"],
.archive .post-meta a[rel~="category"],
.search .post-meta a[rel~="category"],
.blog .post-meta a[rel~="category"],
.single .comments-number,
.archive .comments-number,
.search .comments-number,
.blog .comments-number {
    display: inline-block;
    margin: 0 15px 0 20px;
}


/*Style the post meta icons*/

.single .author a:before,
.archive .author a:before,
.search .author a:before,
.blog .author a:before,
.single .published:before,
.archive .published:before,
.search .published:before,
.blog .published:before,
.single .post-meta a[rel~="category"]:before,
.archive .post-meta a[rel~="category"]:before,
.search .post-meta a[rel~="category"]:before,
.blog .post-meta a[rel~="category"]:before,
.single .comments-number a:before,
.archive .comments-number a:before,
.search .comments-number a:before,
.blog .comments-number a:before {
    font-family: 'ETModules';
    color: #D81D1D;
    margin-right: 5px;
    margin-left: -20px;
}


/*Add the post meta icons*/

.single .author a:before,
.archive .author a:before,
.search .author a:before,
.blog .author a:before {
    content: '\e08a';
}

.single .published:before,
.archive .published:before,
.search .published:before,
.blog .published:before {
    content: '\e023';
}

.single .post-meta a[rel~="category"]:before,
.archive .post-meta a[rel~="category"]:before,
.blog .post-meta a[rel~="category"]:before,
.search .post-meta a[rel~="category"]:before {
    content: '\e07c';
}

.single .comments-number a:before,
.archive .comments-number a:before,
.blog .comments-number a:before,
.search .comments-number a:before {
    content: '\77';
}



.archive .et_pb_post, .blog .et_pb_post, .search .et_pb_post {
    margin-left: 0;
    margin-right: 15px !important;
}


/*Make the first letter a drop cap*/

.single .et_pb_post .entry-content:first-letter {
    color: #D81D1D;
    float: left;
    font-size: 3.75em;
    margin: .2em .05em 0 -.06em;
}


/***Sidebar***/

#ai1ec_agenda_widget-2 {
	margin-bottom: 15px;
}


/*Style the sidebar links*/


/*
#sidebar .et_pb_widget a {
    color: #333;
    font-weight: 300;
    border-left: 5px solid #f5f5f5;
    padding-left: 10px;
    display: block;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
}
*/



/*Style the sidebar links on hover*/


/*
#sidebar .et_pb_widget a:hover {
    border-color: #D81D1D;
    background: #f5f5f5;
    margin-left: 10px;
}
*/



/*Style the search box*/

/*
#sidebar .widget_search input#s,
#sidebar .widget_search input#searchsubmit {
    border-radius: 0;
}

#sidebar .widget_search input#s {
    border: 5px solid #f5f5f5;
}
*/


/*Hide the search button*/

/*
#sidebar .widget_search input#searchsubmit {
    background: transparent;
    color: transparent;
    border: none;
    z-index: 1;
}
*/


/*Add the magnifying glass icon*/

/*
#sidebar .widget_search #searchform:after {
    content: '\55';
    font-family: 'ETModules';
    position: absolute;
    display: block;
    font-size: 20px;
    font-weight: bold;
    color: #D81D1D;
    right: 10px;
    top: 10px;
}
*/


/***Author Box***/


/*Set the border and spacing*/

.single .ds-author-bio-section {
    border: 5px solid #f5f5f5;
    padding: 15px;
    margin-top: 20px;
}


/*Style the author name*/

.single .ds-author-name {
    font-size: 16px;
    text-transform: uppercase;
    font-weight: bold;
    color: #333;
}


/*Add padding for the author description*/

.single p.ds-author-details {
    padding-bottom: 1.2em;
}


/*Position the author avatar*/

.single .ds-author-details img {
    float: left;
    margin: 7px 10px 10px 0;
}


/*Style the links*/

.single .ds-author-links a {
    color: #D81D1D;
    text-transform: uppercase;
    font-weight: bold;
    font-size: 12px;
}


/***Single Post navigation***/


/*Next/previous post nav*/


/*Navigation sizing*/

.single #ds-single-post-nav {
    margin: 40px 0;
    display: inline-block;
    width: 100%;
}


/*Post title styling*/

.single #ds-single-post-nav h2 {
    margin-top: 20px;
    text-transform: uppercase;
    font-size: 18px;
    line-height: 1.2em;
}


/*Align the prev post nav*/

.single span.ds-single-nav-previous {
    width: 47.5%;
    margin-right: 5%;
    float: left;
}


/*Align the next post nav*/

.single span.ds-single-nav-next {
    display: block;
    text-align: right;
}


/*Prev/next post nav button styling*/

.single span.ds-single-nav-previous a[rel~="prev"],
.single span.ds-single-nav-next a[rel~="next"] {
    color: #fff;
    background: #D81D1D;
    font-weight: bold;
    text-transform: uppercase;
    font-size: 14px;
    padding: .7em 1em !important;
    border: 2px solid #D81D1D;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
}


/*Prev/next post nav button hover styling*/

.single span.ds-single-nav-previous a[rel~="prev"]:hover,
.single span.ds-single-nav-next a[rel~="next"]:hover {
    color: #D81D1D;
    background: #fff;
}


/*Prev/next arrows size*/

.single .ds-meta-nav {
    font-size: 18px;
}


/*Reduce post nav button size on mobile*/

@media all and (max-width: 479px) {
    .single span.ds-single-nav-previous a[rel~="prev"],
    .single span.ds-single-nav-next a[rel~="next"] {
        font-size: 10px;
        padding: .7em .75em !important;
    }
}



/* Default FP menu stuff */
	
.home #mega-menu-wrap-subpage_menu {
	display: none;	
}
#fp_wrap_submenu {
	display: none;
}

/* On FP hide FP menu on slide up, show sub-menu */
.display_none {
	display: none;
}
.display_block {
  display: block !important;
}






/* Theme sub-menu when it gets shown on FP */

#fp_wrap_submenu {
	padding: 0 !important;
	background: #D81D1D !important;
	width: 100%;
	height: 46px;
	margin: auto !important;
	position: relative;
	border-bottom: 6px solid #EBAB03;
	z-index: 9400;
}
.home #mega-menu-wrap-subpage_menu {
	width: 99%;
	max-width: 1080px;
	margin: auto !important;
}

.home #mega-menu-wrap-subpage_menu #mega-menu-item-251 {
    width:242px !important;
}
.home #mega-menu-wrap-subpage_menu li#mega-menu-item-251 > a.mega-menu-link {
/*     background: #D81D1D; */
    background: -webkit-gradient(linear, left top, left bottom, from(#ebab03), to(#D81D1D)) !important;
    background: -moz-linear-gradient(top, #ebab03, #D81D1D) !important;
    background: -ms-linear-gradient(top, #ebab03, #D81D1D) !important;
    background: -o-linear-gradient(top, #ebab03, #D81D1D) !important;
    background: linear-gradient(to bottom, #ebab03, #D81D1D) !important;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFEBAB03', endColorstr='#FFE87906') !important;
}









/***Related posts***/


/*Hide the default title and meta*/

.single .ds-related-posts .post-meta,
.single .ds-related-posts .entry-title {
    display: none;
}


/*Set the display and margin*/

.single .ds-related-posts {
    display: inline-block;
    margin-top: 30px;
}


/*Remove padding*/

.single #left-area .ds-related-posts ul {
    padding-left: 0;
}


/*Style the post title*/

.single .ds-related-content h4 {
    line-height: 1.2em;
    text-transform: uppercase;
    font-size: 18px;
}


/*Set post width and margin*/

.single .ds-related-list {
    list-style-type: none;
    width: 30%;
    float: left;
    margin-right: 5%;
}


/*Remove margin from last post*/

.single .ds-related-list:last-child {
    margin-right: 0;
}

@media all and (max-width: 600px) {
    .single .ds-related-list {
        width: 100%;
    }
    .single .ds-related-content h4 {
        margin-bottom: 20px;
    }
}


/***Comments***/


/*Add the comment border*/

.single .comment-body {
    border: 5px solid #f5f5f5;
}


/*Position the text*/

.single .comment-body {
    position: relative;
    padding: 20px;
    margin-bottom: 30px;
}


/*Position the avatar container*/

.single .comment_avatar {
    position: relative;
    top: 0;
}


/*Position the avatar image*/

.single .comment_avatar img {
    display: inline-block;
    float: left;
    margin-right: 20px;
    height: auto;
}


/*Adjust the indent for replies*/

.single .comment .children {
    margin-left: 30px;
}


/*Style the comment form input text*/

.single #commentform textarea,
.single #commentform input:not(.et_pb_button) {
    font-family: "Open Sans", Arial, sans-serif;
    background-color: transparent;
    font-size: 14px;
    margin-bottom: 20px;
    color: #333;
    border: 5px solid #f5f5f5;
}


/*Style the reply and submit buttons*/

.single a.comment-reply-link.et_pb_button,
.single .form-submit .et_pb_button {
    border-radius: 0;
    color: #fff;
    background: #D81D1D;
    font-weight: bold;
    text-transform: uppercase;
    border: 2px solid #D81D1D;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
}


/*Styling for the reply link button only*/

.single a.comment-reply-link.et_pb_button {
    font-size: 14px;
    margin-right: 20px;
    top: 20px;
    padding: .1em .5em;
}


/*Move the submit button to the left*/

.single #commentform .form-submit {
    float: left;
}


/*Style the reply and submit buttons on hover*/

.single a.comment-reply-link.et_pb_button:hover,
.single .form-submit .et_pb_button:hover {
    background: transparent;
    color: #D81D1D;
    font-weight: bold;
}


/*Hide the reply link button arrow*/

.single a.comment-reply-link.et_pb_button:hover:after {
    display: none;
}


/*Style the edit comment link*/

.single .comment-edit-link {
    color: #D81D1D;
}


/*Comment Form*/


/*Style the logged in as link*/

.single p.logged-in-as a {
    color: #D81D1D;
    text-transform: uppercase;
    font-size: 12px;
}


/*Remove excess padding from the form fields*/

.single p.comment-form-author,
.single p.comment-form-comment,
.single p.comment-form-email,
.single p.comment-form-url {
    padding-bottom: 0;
}


/*Align the form fields on larger screens*/

@media all and (min-width: 768px) {
    .single #commentform input#author {
        width: 48.5%;
        float: left;
    }
    .single #commentform input#email {
        width: 48.5%;
        float: right;
    }
    .single #commentform input#url {
        width: 100%;
    }
}


/*Purple bars*/


/*Style the titles*/

.single h4.ds-related-posts-header,
.single #respond h3,
.single h1#comments,
#sidebar h4.widgettitle {
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    z-index: 1;
    position: relative;
    overflow: hidden;
    margin-bottom: 10px;
}


/*Add the left and right bars*/

.single h4.ds-related-posts-header:before,
.single h4.ds-related-posts-header:after,
.single #respond h3 span:before,
.single #respond h3 span:after,
.single h1#comments:before,
.single h1#comments:after,
#sidebar h4.widgettitle:before,
#sidebar h4.widgettitle:after {
    position: absolute;
    top: 30%;
    overflow: hidden;
    width: 50%;
    height: 5px;
    content: '\a0';
    background-color: #D81D1D;
}

.single h4.ds-related-posts-header:before,
.single #respond h3 span:before,
.single h1#comments:before,
#sidebar h4.widgettitle:before {
    margin-left: -52%;
}

.single h4.ds-related-posts-header:after,
.single #respond h3 span:after,
.single h1#comments:after,
#sidebar h4.widgettitle:after {
    margin-left: 2%;
}


/***Archive pages***/


/***Two columns for posts***/


/*Set the post width and margin for two columns and add the border*/

.archive .et_pb_post,
.blog .et_pb_post,
.search .et_pb_post {
    width: 47.5%;
    float: left;
    margin-right: 5%;
    border: 5px solid #f5f5f5;
}


/*Remove margin from every second post*/

.archive .et_pb_post:nth-child(2n),
.blog .et_pb_post:nth-child(2n),
.search .et_pb_post:nth-child(2n) {
    margin-right: 0;
}


/*Set to a single column on smaller screens*/

@media all and (max-width: 767px) {
    .archive .et_pb_post,
    .blog .et_pb_post,
    .search .et_pb_post {
        width: 100%;
        margin-right: 0;
    }
}


/*Add padding to the posts*/

.archive .et_pb_post,
.blog .et_pb_post,
.search .et_pb_post {
    padding-left: 15px;
    padding-right: 15px;
}


/*Remove padding on featured image with negative margin*/

.archive .et_pb_post .ds-archive-featured,
.blog .et_pb_post .ds-archive-featured,
.search .et_pb_post .ds-archive-featured {
    margin: 0 -15px 15px -15px;
}


/*Style the read more link and post nav*/

.archive a.more-link,
.blog a.more-link,
.search a.more-link {
    display: block;
    width: 7.2em;
}

.archive a.more-link,
.search a.more-link,
.blog a.more-link,
.archive .pagination a,
.blog .pagination a,
.search .pagination a {
    color: #fff;
    background: #D81D1D;
    font-weight: bold;
    text-transform: uppercase;
    font-size: 14px;
    margin-top: 10px;
    margin-bottom: 15px;
    padding: .3em .5em !important;
    border: 2px solid #D81D1D;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
}

.archive a.more-link:hover,
.search a.more-link:hover,
.blog a.more-link:hover,
.archive .pagination a:hover,
.blog .pagination a:hover,
.search .pagination a:hover {
    color: #D81D1D;
    background: #fff;
}


/*Add bottom margin to the pagination*/

.archive .pagination,
.blog .pagination,
.search .pagination {
    margin-bottom: 40px;
}


/*Add padding to the post title on mobile*/

@media all and (max-width: 479px) {
    .archive .et_pb_post .entry-title,
    .blog .et_pb_post .entry-title,
    .search .et_pb_post .entry-title {
        padding-bottom: 10px;
    }
}

.et_pb_post a img {
    max-width:100% !important;
    vertical-align:bottom !important;
}


/*******************Advent Calendar 2017 - 7 & 13********************/
/****End - Custom Single Post Layout & Styling for Archive Pages*****/
/***************************By Divi Soup*****************************/










/* CSS Cleanup - blog and Divi Soup */
/***************/
.wp_rp_content {
    margin-top: 35px;
}
 footer.ds-author-bio-section {
	display: none !important;
}
#comment-wrap {
	padding-top: 0;
}



/* Media Queries */

@media all and (max-width: 980px) {
	.et_header_style_left #logo, .et_header_style_split #logo {
	    max-width: 60%;
	}
}

@media all and (max-width: 899px) {
	
	#mega-menu-wrap-new-menu #mega-menu-new-menu > li.mega-menu-item > a.mega-menu-link {
	  padding: 0px 6px 0px 6px;
	  font-size: 13px;
	}

}

@media all and (max-width: 600px) {
	#logo_main {
	    width: 150% !important;
	}
	
	#top-header {
		font-size: 11px !important;
	}

	#top_search {
		display: none;
	}

}


@media all and (max-width: 400px) {


	
	#top_util {
		clear: both;
		display: block;
	}

}



/* Footer media queries - break up from 1 long line */
@media (max-width: 715px) {
	.footer-copy, .footer-coffee, .footer-webcore {
		display: block;
	}
	
}

