/*MODULES*/

.module_container {
	padding-top: 24px;
}
.module_container h2 {
	margin-top: 0px;
}
.module_header {
    font-family: 'Source Sans Pro', sans-serif;
	font-weight: normal;
	font-size: 10px;
	text-transform: uppercase;
	letter-spacing: 1px;
	color: #222;
	margin: 0 0 16px 0;
	padding: 0;
}
.module_title {
	padding: 10px 0 12px 0;
    font-family: 'Abel', serif;
	font-size: 28px;
	font-weight: bold;
	text-transform: uppercase;
	color: #003e7e;
	line-height: 1.1;  
}

.module_title a:link, .module_title a:visited, .module_title a:active {
	color: #003e7e;
	text-decoration: none;
}

.module_title a:hover {
	color: #999;
	text-decoration: none;
}
.module_body, .module_body p, #location_info p {
	margin-top: 0px;
    font-family: 'Source Sans Pro', sans-serif;
	color: #333;
	font-size: 15px;
}
.module_author {
	font-family: 'Source Sans Pro', sans-serif;
	font-size: 12px;
	text-transform: uppercase;
	padding-bottom: 20px;
}
.module_date {
    display: table;
    font-family: 'Source Sans Pro', sans-serif;
    font-size: 11px;
    font-weight: 400;
    letter-spacing: 1px;
    color: #FFF;
    padding: 3px 7px;
    margin-bottom: 16px;
    background-color: #222;
}
.module_button {
	margin-top: 22px;
    padding-top: 22px;
    text-align: right;
    border-top: 1px solid #CCC;
}
.module_button a {
    font-family: 'Raleway', serif;
	font-weight: 200;
    font-style: italic;
	font-size: 15px;
    padding: 4px 7px 4px 6px;
}
.module_button a:hover {
    color: #FFF;
    background: #222;
}


/*SPECIFIC MODULE TYPES (must come before home module versions) */



.module_type_testimonials .module_comment {
    font-family: 'Source Sans Pro', sans-serif;
	padding-top: 15px;
	font-size: 11px;
	font-weight: normal;
	color: #999;
}
.module_type_multimedia_list ul,
.module_type_links ul {
	padding: 0;
	margin: 0;
}
.module_type_multimedia_list ul li,
.module_type_links ul li {
	padding: 4px 0 2px 0;
	margin: 0;
	list-style: none;
    background: url('../images/dotted_line_lg.png') repeat-x;
    background-size: 7px;
    overflow: hidden;
}
.module_type_multimedia_list ul li a:link,
.module_type_multimedia_list ul li a:visited,
.module_type_multimedia_list ul li a:active,
.module_type_links a:link,
.module_type_links a:visited,
.module_type_links a:active {
	display: block;
	font-family: 'Source Sans Pro', sans-serif;
	font-weight: 400;
	font-size: 10px;
    text-transform: uppercase;
	color: #222;
    letter-spacing: 1px;
    padding: 0;
    background-size: 13px;
    white-space: nowrap;
}
/* When a list-y module doesn't have a date with padding to fatten the <li> */
.module_container a.module_list_padding {
    padding: 12px 7px 12px 9px;
}
.module_type_multimedia_list ul li a:hover {
    color: #999;
}
.module_type_multimedia_list .module_date,
.module_type_calendar_items .module_date {
    font-family: 'Source Sans Pro', sans-serif;
    font-weight: bold;
    color: #444;
    display: inline-block;
    padding: 12px 7px 12px 9px;
    margin: 0 5px 0 0;
    background: none;
}
.module_type_multimedia_list ul li a:hover .module_date,
.module_type_calendar_items ul li a:hover .module_date {
    color: #FFF;
    background: #222;
}
.module_type_calendar_items ul {
    margin: 0;
    padding: 0;
}
.module_type_calendar_items ul li {
    margin: 0 0 6px 0;
    list-style-type: none;
    padding: 0;
    border-right: 10px solid #F4F4F4;
    background: #F4F4F4;
    overflow: hidden;
}
.module_type_calendar_items .module_calendar_title a {
	display: block;
    font-family: 'Source Sans Pro', sans-serif;
    font-weight: 400;
    font-size: 10px;
    text-transform: uppercase;
    color: #444;
    letter-spacing: 1px;
    white-space: nowrap;
}
.module_type_calendar_items .module_calendar_title a:hover {
	color: #999;
}

@media (min-width:1100px) {
    .module_type_multimedia_list ul li a:link,
    .module_type_multimedia_list ul li a:visited,
    .module_type_multimedia_list ul li a:active,
    .module_type_links a:link,
    .module_type_links a:visited,
    .module_type_links a:active {
        padding-right: 20px;
        /*background: url('../images/double_arrow_grey.png') no-repeat 95% center;
        background-size: 13px;*/
    }
}


/* Featured Content Module */


.module_type_featured_content .featured_content_container {
    position: relative;
}
.module_type_featured_content .featured_content_container .image_container {
    float: left;
    width: 52%;
    margin: 0 18px 12px 0;
}
.module_type_featured_content .featured_content_container .image_container img {
    width: 100%;
}
.module_type_featured_content .module_date.date_position {
    position: absolute;
    top: 10px;
    margin-left: -6px;
}


/* Image Button Module */


.image_container a {
    background: #222;
    display: block;
}
.image_area {
    -webkit-transition: all .2s ease-out;
    transition: all .2s ease-out;
    opacity: 1;
}
.image_title_container {
    margin-top: 16px;
}
.image_title {
    font-family: 'Source Sans Pro', sans-serif;
	font-size: 10px;
	font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 1px;
	color: #666;
}
.button_text {
    float: right;
    margin-left: 30px;
}
.button_text .module_button {
    margin: -2px 0 0 0;
    padding: 0;
    border: none;
}
.button_text .module_button a {
    font-family: 'Source Sans Pro', sans-serif;
    font-style: normal;
    font-weight: 400;
    font-size: 12px;
}

/* Blog Module */

.module_type_blog_list .date_anchor {
    position: relative;
}
.module_type_blog_list .module_date.date_position {
    -webkit-transition: width .1s ease-out, opacity .1s ease-out, font .2s ease-out;
    -moz-transition: width .2s ease-out, opacity .2s ease-out, font .2s ease-out;
    -ms-transition: width .2s ease-out, opacity .2s ease-out, font .2s ease-out;
    -o-transition: width .2s ease-out, opacity .2s ease-out, font .2s ease-out;
    transition: width .2s ease-out, opacity .2s ease-out, font .2s ease-out;
    position: absolute;
    top: 10px;
    z-index: 100;
    margin-left: -4px;
}
.module_type_blog_list .date_anchor:hover .module_date.date_position {
    font-size: 1px;
    width: 1px;
    opacity: 0;
}
.module_type_blog_list .blog_image {
    margin-bottom: 10px;
}
.module_type_blog_list .blog_img img {
    transition: opacity .2s ease-out;
    -webkit-transition: opacity .2s ease-out;
    transition-delay: .1s;
    opacity: 1;
    width: 100%;
}
.module_type_blog_list .blog_image:hover img {
    opacity: .9;
}


/*HOME PAGE MODULES */



#home_slideshow .module_container {
	padding: 0px;
	border: 0px;
	margin: 0 -1px;
}

#home_module_container .module_container,
#bottom_modules .blog_body_container  {
    float: left;
    padding: 0;
    border: none;
    max-height: 600px;
    overflow: visible;
}


#home_slideshow .module_container {
	padding: 0px;
	border: 0px;
	margin: 0px;
}
#home_module_container .module_area .module_container {
 width: 50%;
}
#home_module_container .module_area_halves .module_container,
#bottom_modules .module_area_halves .blog_body_container {
 width: 48.5%;
 margin-left: 3%;
}
#home_module_container .module_area_halves .module_container:first-child,
#bottom_modules .module_area_halves .blog_body_container:first-child  {
 margin-left: 0;
}
#home_module_container .module_area_thirds .module_container,
#bottom_modules .module_area_thirds .blog_body_container  {
 width: 32%;
 margin-left: 2%;
}
#home_module_container .module_area_thirds .module_container:first-child,
#bottom_modules .module_area_thirds .blog_body_container:first-child {
 margin-left: 0;
}
#home_module_container .module_area_quarters .module_container,
#bottom_modules .module_area_quarters .blog_body_container {
 width: 23.5%;
 margin-left: 2%;
}
#home_module_container .module_area_quarters .module_container:first-child,
#bottom_modules .module_area_quarters .blog_body_container:first-child  {
 margin-left: 0;
}

@media (max-width: 767px){
    #home_module_container .module_container,
    #bottom_modules .blog_body_container {
        float: none;
        width: 100% !important;
        padding-top: 30px;
        margin: 0 auto !important;
        max-width: 600px;
        text-align: center;
    }
    #home_module_container .module_container:first-child,
    #bottom_modules .module_container:first-child {
        padding-top: 0;
    }
    #home_module_container .module_container {
    	padding-top: 0;
    }
    #home_module_container .module_container .module_type_featured_content {
    	padding: 10px 0 50px 0;
    }
}

#bottom_modules .module_container {
	padding-top: 0;
}
#bottom_modules .module_type_blog_list .module_title {
	margin: 0;
	padding: 0 0 6px 0;
	font-weight: bold;
	font-size: 19px;
}
#bottom_modules .module_type_blog_list .blog_img {
	float: left;
	margin-right: 4%;
	width: 38%;
	background: #222;
}
#bottom_modules .module_type_blog_list .blog_img a:hover {
	opacity: .8;
}
#bottom_modules .module_type_blog_list .module_body,
#bottom_modules .module_type_blog_list .module_body p {
	font-size: 15px;
}

#footer_bg .module_container {
	padding: 0;
}
#footer_bg .module_title {
	color: #FFF;
	font-size: 14px;
	font-family: 'Source Sans Pro', sans-serif;
	font-weight: bold;
}
#footer_bg .module_type_links a {
	color: #FFF;
	text-transform: none;
	letter-spacing: normal;
	font-size: 14px;
	line-height: 1.7;
}
#footer_bg .module_type_links a:hover {
	/*color: #FFD204;*/
    color: #ffd200;
}
#footer_bg #footer_mid_column .module_body {
	margin: 0 auto;
	max-width: 220px;
	color: #FFF;
	font-size: 14px;
	font-family: 'Source Sans Pro', sans-serif;
	font-weight: bold;
	text-transform: uppercase;
	line-height: 1.1;
}
#footer_bg #footer_info .module_body p {
	font-size: 13px;
	color: #FFF;
	text-align: right;
}
@media (max-width:768px) {
	#footer_bg #footer_info .module_body p {
		text-align: center;
	}
	#bottom_modules .module_type_blog_list .blog_img {
		float: none;
		margin: 0 0 30px 0;
		width: 100%;
	}
}


/* Home Slideshow Controls */
._rotator {
    text-align: left !important;
    min-height: 350px;
    max-height: 650px;
}
#home_slideshow.height_unlimited ._rotator {
    max-height: none;
}
._rotator .ui {
    position: absolute !important;
    left: 30px;
    bottom: 20px;
    width: 100%;
}
#home_slideshow.ui_gradient {
    position: absolute;
    left: 0;
    top: 0;
    z-index: 12;
    height: 265px;
    width: 100%;
    background: url('../images/header_gradient.png') repeat-x;
}
._rotator .controls {
    max-width: 1130px;
    margin: 0 auto !important;
}
._rotator .graphic.handle {
    width: 16px !important;
    height: 16px !important;
    margin-right: 7px;
    background: #000;
    opacity: .6 !important;
}
._rotator .graphic.handle:hover,
._rotator .graphic.handle.active {
    background: #FFF;
    opacity: 1 !important;
}
._rotator .numbers.handle {
    color: #999;
    font-family: "Source Sans Pro", sans-serif;
    font-size: 11px;
    padding: 6px 10px;
    margin-right: 4px;
    background: rgba(20,20,20,.6);
}
._rotator .numbers.handle.active {
    color: #FFF;
    background: rgba(170,170,170,.8);
    opacity: 1 !important;
}
._rotator .numbers.handle:hover {
    color: #222;
    background: #FFF;
    opacity: 1 !important;
}
._rotator .current.position {
    display: table;
    color: #CCC;
    font-family: "Source Sans Pro", sans-serif;
    font-size: 11px;
    padding: 6px 10px;
    background: rgba(0,0,0,.8);
}
._rotator .current.position .separator {
    color: #777;
    padding: 0 5px !important;
}
._rotator .nav.prev {
    left: 60px !important;
}
._rotator .nav.next {
    right: 60px !important;
}
@media (min-width:768px) and (max-width: 959px) {
    ._rotator {
        min-height: 250px;
    }
    ._rotator .nav.prev {
        left: 40px !important;
    }
    ._rotator .nav.next {
        right: 40px !important;
    }
}
@media (max-width: 767px) {
    ._rotator {
        min-height: inherit;
    }
    ._rotator .nav.prev,
    ._rotator .nav.next {
        visibility: hidden !important;
    }
}
@media (max-width: 600px) {
    .ui_gradient {
        background: none;
    }
}





/*SIDEBAR MODULES*/


#sidebar .module_container {
    padding-top: 24px;
    margin-top: 24px;
    border-top: 4px solid #DDD;
}
#sidebar .module_container:first-child {
    padding-top: 24px;
    margin-top: 0;
    border-top: none;
}
.module_location_sidebar {
	font-size: 12px;
}
.module_location_sidebar .module_type_featured_content .featured_content_container .image_container {
    float: none;
    width: inherit;
    margin: 0 0 12px 0;
}
.module_location_sidebar .module_type_news_list .rotator_item {
	width: 200px !important;
	overflow: hidden;
	
}
#sidebar .module_type_multimedia_list ul li a,
#sidebar .module_type_links a,
#sidebar .module_type_calendar_items a {
    letter-spacing: normal;
    background-image: none;
}

/*PAGES MODULES*/

.module_location_pages {
	margin-bottom: 25px;
}
.module_location_pages .module_body {
    font-size: 12px;
	margin-bottom: 25px;
}
.module_location_pages .module_type_news_list .rotator_item {
	width: 200px !important;	
}
.module_container.location_pages.image_button_container a:hover .image_area {
	opacity: .9;
}

/* LANDING PAGE MODULES */

#shell_landing {
	margin: 0 -1.5%;
	text-align: left;
}
#shell_landing .page_title {
	margin: 0 1.5% 35px 1.5%;
}
#shell_landing .content_heading {
	margin: 0 1.5%;
}
#shell_landing .image_button_container {
	display: inline-block;
	width: 30%;
	padding: 0;
	margin: 0 1.5% 60px 1.5%; 
	text-align: center;
}
#shell_landing .image_button_container .module_title {
	margin-top: 6px;
}
#shell_landing .image_button_container .btn {
	margin: 4px auto;
}
@media (max-width:768px) {
	#shell_landing .image_button_container {
		display: block;
		width: 100%;
		padding: 0;
		margin: 0 0 50px 0; 
	}
}


/* PRODUCT DETAILS PAGE */

.ct_about_profiles_details h2.special_module_title {
	text-align: center;
	margin: 50px 0 0 0;
}
.ct_about_profiles_details h2.special_module_title::after {
	content: "Additional Products";
}
.ct_about_profiles_details .additional_modules {
	margin: 0 -1%;
}
.ct_about_profiles_details .additional_modules .module_container {
	width: 23%;
	margin: 0 1%;
	float: left;
	text-align: center;
}
.ct_about_profiles_details .additional_modules .module_container .btn {
	margin: 0 auto;
}
.ct_about_profiles_details .additional_modules .module_container .image_area {
	margin-bottom: 10px;
}

@media (max-width:768px) {
	.ct_about_profiles_details .additional_modules .module_container {
        width: 100%;
        margin: 0 auto 40px auto;
        float: none;
    }
}

/* Module Lists(Top Mail Column) */
.module_list:first-child {
    padding-bottom: 10px;
}
.module_list .module_type_featured_content .image_container {
    margin-right: 8%;
}
.module_list .module_type_featured_content .module_title {
    margin: 0 0 12px 0;
    padding: 12px 0 0 0;
    font-family: 'Abel', sans-serif;
    color: #00458C;
    font-weight: normal;
    font-size: 30px;
    line-height: 1.4;
    border-top: 1px solid #00458C;
}
.module_list .module_type_featured_content .module_body {
    margin: 0;
    font-family: 'Source Sans Pro', sans-serif;
    font-size: 16px;
}
.module_list .module_type_featured_content .module_button {
    margin: 0;
    border: none;
}

@media (max-width:768px) {
    .module_list .module_type_featured_content .image_container {
        margin-right: 0;
    }
    .module_list .module_type_featured_content .image_container img {
        width: 100%;
    }
    .module_list .module_type_featured_content .module_title {
        margin-top: 30px;
    }
}
