/* Responsive Pages - Branch specific styles */

.full-width-layout {
	padding-top: 0;
}


.fullwidth-callout-container img {
	width: 300px;
}

.full-width-layout .col-100percent.maincol > .panel.panel-plain:first-child .content-wCallout-hr-top {
display:none;}

/* ===================================== 
   Home pages styles
======================================== */

/* Adjusts site title */
.title {
    padding-top: 1.5%;
    width: 45%;
    max-width: 430px;
    font-size: 1.7em;
}
h1, h2, h3, h4, h5, p, a{
	letter-spacing: .01em;
}
.panel-variation-4 {
	border-radius: 0;
}
.intro {
	padding: 20px 30px;
    background-color: #e5e9ef;
    border: none;
    display: block;
    margin-top: -10px;
}
.intro h2, .panel-variation-4 p{
	margin: 0;
}
.panel-body h2 {
	color:#1a3e68;
	font-weight: 600;
}

.col-33percent.sidebar .panel-variation-4 h2 {
  color:#002855;
  font-weight: 600;
  margin-top: 0;
}

/* ===================================== 
   Wide marquee styles
======================================== */

/*#topbanner {
	margin-bottom: 35px;
}*/
.panel-plain > .panel-heading h2 {
	color: #bc8d00;
}
/* home page single marquee */
.wide-marquee {
	display:block;
	position: relative;
}
.wide-marquee img {
	width:100%;
}
.marquee-overlay {
	position: relative;
	background-color: #335379;
	padding:10px 20px;
}
.marquee-overlay h1 {
	font-size:1.5em;
	line-height:1.3em;
	letter-spacing: .01em;
	font-weight:400;
	margin:0;
	color: #ffffff;
}
.marquee-overlay h1:hover a {
	text-decoration: underline;
}
.marquee-overlay h2 {
	font-size:1.2em;
	line-height:1.3em;
	font-weight:400;
	color:#FCB604;
	margin: 6px 0;
}
@media (min-width:768px) {
	.marquee-overlay {
		color:#ffffff;
		background-color:rgba(0,38,86,.85);
		left:0;
		position:absolute;
		display:block;
		top:30%;
		padding:20px;
		width:60%;
	}
	.marquee-overlay h1 a {
		color:#ffffff;
	}	
}
@media (min-width:860px) {
	.marquee-overlay {
		padding:30px;
		width:50%;
	}	
}
@media (min-width:1024px) {
	.marquee-overlay h1 {
		font-size:1.5em;
	}
}
@media (min-width:1152px) {
	.marquee-overlay h1 {
		font-size:1.7em;
	}
	.marquee-overlay h2 {
		font-size:1.5em;
		line-height: 1.3em;
	}	
}
@media (min-width:1280px) {
	.marquee-overlay h1 {
		font-size:1.9em;
	}
	.marquee-overlay {
		top:30%;
	}	
}
@media (min-width:1376px) {	
	.marquee-overlay {
		width:50%;
	}		
	.marquee-overlay h1 {
		font-size:2em;
		line-height:1.3em;
	}
}


/* ===================================== 
   Category card styles
======================================== */

.category-cards {
	margin-top:-15px;
}
.category-cards .row {
	margin-left:-10px;
	margin-right:-10px;
}

.category-cards .col-50percent-sm {
	padding-left:10px;
	padding-right:10px;
}
.category-card-link {
	display: block;
	width: 100%;
	height: 100%;
}
.category-card-link:hover {
	color:#ffffff;
	text-decoration: none;
	text-decoration-skip-ink: unset;
}
.category-card-label {
	padding: 10px 15px;
}
.category-card-label h3 {
	font-size:1.3em;
	color:#ffffff;
	font-weight:600;
	line-height: 1.4em;
	margin: 0;
}
.category-card-label h3:hover {
	text-decoration: underline;
	text-decoration-skip-ink: unset;
}
.category-card-label span {
	font-size:1em;
	color:#ffffff;
	font-weight:400;
	margin: 0 0 2px 0;
}
.category-card h3 a {
	color:#ffffff;
}
.category-card img.img-responsive {
	width:100%;
}
.card-wrapper {
	z-index: 10;
	padding: 2px;
	margin-top:-2px;
	transition: all 0.6s ease 0s;
}

.poppy-orange { background-color:#ED8B00 }
.rec-pool-blue { background-color:#008EAA }
.sunny-grass-green { background-color:#78BE20 }
.mu-brick { background-color:#C26E60 }
.wintersky-blue { background-color: #5B7F95 }

.card-wrapper:hover,
.card-wrapper:focus {
	-webkit-box-shadow: 0 2px 15px 0 #ccc;
	box-shadow: 0 2px 15px 0 #ccc;
	cursor: pointer;
}
.card-wrapper.poppy-orange-hover:hover { background-color: #ED8B00 }
.card-wrapper.rec-pool-blue-hover:hover { background-color: #008EAA }
.card-wrapper.sunny-grass-green-hover:hover { background-color: #78BE20 }
.card-wrapper.mu-brick-hover-hover:hover { background-color: #C26E60 }
.card-wrapper.wintersky-blue-hover:hover { background-color: #5B7F95 }

@media (min-width:768px) {
	.category-cards #row1 {
		margin-bottom:30px;
	}
}
/* ===================================== 
   Callout styles
======================================== */
/* Full width span box */
.callout-container {
	padding: 25px;
	background-color:#e5e9ef;
	margin-top: -10px;
	transition: all 0.6s ease 0s;
}
.callout-container.callout-list{
	margin-top: -0;

}
@media (max-width:767px) {
	.callout-container {
		margin-top: -30px;
	}
}
.callout-container:hover {
	background-color:#CCD4E0;
	text-decoration: none;
	cursor: pointer;
}
.callout-link {
	display: block;
	width: 100%;
	height: 100%;
}
.callout-link:hover {
	text-decoration: none;
}
.callout-text-link{
	display: block;
    color: #00829b;
    margin-top: 15px;
}

.callout-grid {
	display:grid;
	display: -ms-grid;
	grid-template-rows: 1fr;
	grid-template-columns: 1fr 3fr;
	-ms-grid-rows: auto 1fr;
	-ms-grid-column: 1fr 3fr;
}
.callout-image {
	width: 250px;
	height: 140px;
	grid-row: 1 / 2;	
	grid-column: 1 / 2;
	-ms-grid-row: 1;
	-ms-grid-row-span: 1;
	-ms-grid-column: 1;
	-ms-grid-column-span: 1;
}
.callout-image img {
	width: 100%
}
.callout-grid .video-thumbnail .overlay {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 30%;
    left: 33%;
}
.callout-description {
	padding-left: 25px;
	grid-row: 1 / 2;	
	grid-column: 2 / 3;
	-ms-grid-row: 1;
	-ms-grid-row-span: 1;
	-ms-grid-column: 2;
	-ms-grid-column-span: 1;	
}
.callout-description h2 {
	margin-top: 10px;
}
@media (max-width:768px) {
	.callout-grid {
		display:grid;
		grid-template-rows: auto 1fr;
		grid-template-columns: 1fr;
		display: -ms-grid;
		-ms-grid-rows: auto 1fr;
		-ms-grid-column: 1fr;
	}
	.callout-image {
		width: 100%;
		height: 100%;
		margin: 0 auto;
		grid-row: 1 / 2;
		grid-column: 1 / 2;
		-ms-grid-row: 1;
		-ms-grid-row-span: 1;
		-ms-grid-column: 1;
		-ms-grid-column-span: 1;	
	}
	.callout-description {
		margin-top: 10px;
		padding: 0;
		grid-row: 2 / 3;	
		grid-column: 1 / 2;
		-ms-grid-row: 2;
		-ms-grid-row-span: 1;
		-ms-grid-column: 1;
		-ms-grid-column-span: 1;	
	}
	.callout-grid .video-thumbnail .overlay {
	    width: 100%;
	    height: 100%;
	    position: absolute;
	    top: 35%;
	    left: 40%;
	}
}


/* ===================================== 
   Badges row styles
======================================== */

/* Full width span box */

.box-span-width {
	padding: 20px 40px;
	background-color:#e5e9ef;
	display:block;
	margin-top: -10px;
	text-align:center;
}
.box-span-width .col-50percent-sm {
	padding: 0;
}
.box-span-width .col-50percent-sm.badges img {
	max-width: 35%;
	margin:0 10px;
}
.box-span-width img {
	transition: all 0.3s ease 0s;
}
.box-span-width img:hover {
	margin-top:-6px; 
	margin-bottom:6px;
}
.badges-description h2 {
	margin-top: 5px;
}
.box-span-width .btn {
	border-radius:0;
}
.box-span-width .btn-info {
	font-size:1.1em;
	letter-spacing: .02em;
	background-color: #667D9D;
	color: #ffffff;
	font-weight: 300; 
	margin-top: 5px;
}
.box-span-width .btn-lg {
    padding: 7px 25px;
}
.box-span-width .btn-info:hover,.box-span-width .btn-info:focus, .box-span-width .btn-info:active {
	background-color: #335379;
}
.badges a {
	transition: all 0.6s ease 0s;
}
.badges a:hover {
	opacity: .7;
	transition: all 0.6s ease 0s;
}
.callout-btn-container {
	display: block;
	margin: 25px 0 15px;
}
.callout-btn {
	color: #1a3e68;
	text-align: center;
	font-size: 16px;
	font-weight: 600;
	letter-spacing: .1rem;
	text-decoration: none;
	border: 2px solid #1a3e68;
	cursor: pointer;
	padding: 8px 10px;
	transition: all 0.6s ease 0s;
}
.callout-btn:hover {
	color: #ffffff;
	text-decoration: none;
	background-color: #4D688C;
	border: 2px solid #4D688C;
}

@media (min-width:768px) {
	.box-span-width {
		text-align:left;
	}	
	.box-span-width .col-50percent.badges img {
		float:left;
	}	
	.badges-description {
		margin-left: -35px;
	}
}

@media (min-width:992px) {
	.box-span-width {
		padding-left: 30px;
		padding-right: 30px;
		margin-left: 0;
		margin-right: 0;
	}
}

/* ===================================== 
   Landing pages styles
======================================== */
.landingpage.wide {
	padding-top: 25px;
}
.page-header { 
	color: #1a3e68; 
}
.page-header h1 { 
	margin-bottom: 0;
	font-weight: 600;
}



/* ===================================== 
   Service list styles
======================================== */

.service-list-divider-first.poppy-orange {
	border-top: 2px solid #F7CC9D;
	margin: 0 0 30px 0;
}
.service-list-divider.poppy-orange {
	border-top: 2px solid #F7CC9D;
	margin: -40px 0 30px 0;
}
.service-list-divider-first.rec-pool-blue {
	border-top: 2px solid #A8C6D5;
	margin: 0 0 30px 0;
}
.service-list-divider.rec-pool-blue {
	border-top: 2px solid #A8C6D5;
	margin: -40px 0 30px 0;
}
.service-list-divider-first.sunny-grass-green {
	border-top: 2px solid #C7E0AD;
	margin: 0 0 30px 0;
}
.service-list-divider.sunny-grass-green {
	border-top: 2px solid #C7E0AD;
	margin: -40px 0 30px 0;
}
.service-list-divider-first.mu-brick {
	border-top: 2px solid #E2BCB0;
	margin: 0 0 30px 0;
}
.service-list-divider.mu-brick {
	border-top: 2px solid #E2BCB0;
	margin: -40px 0 30px 0;
}
.service-list-divider-first.wintersky-blue {
	border-top: 2px solid #B4BFCA;
	margin: 0 0 30px 0;
}
.service-list-divider.wintersky-blue {
	border-top: 2px solid #B4BFCA;
	margin: -40px 0 30px 0;
}
.service-list-container-link:hover {
	background-color:#f7f7f7;
	text-decoration: none;
}
.service-list-link {
	display: block;
	width: 100%;
	height: 100%;
}
.service-list-link:hover {
	text-decoration: none;
	color: #002855 !important;
}

.service-list-grid {
	display:grid;
	display: -ms-grid;
	grid-template-rows: 1fr;
	grid-template-columns: 1fr 3fr;
	-ms-grid-rows: auto 1fr;
	-ms-grid-column: 1fr 3fr;
	margin: 0 15px;
}
.service-list-image {
	width: 200px;
	grid-row: 1 / 2;	
	grid-column: 1 / 2;
	-ms-grid-row: 1;
	-ms-grid-row-span: 1;
	-ms-grid-column: 1;
	-ms-grid-column-span: 1;
}
.service-list-image a{
	display: block;
	width: 100%;
	height: 100%;
}
.service-list-image img{
	width: 100%;
}
.service-list-image .service-list-badges{
	width: 65%;
	margin-left: 35px;
}
@media (max-width:768px) {
	.service-list-image .service-list-badges{
		margin-left: 120px;
	}
}
@media (max-width:560px) {
	.service-list-image .service-list-badges{
		margin-left: 55px;
	}
}
.service-list-grid .video-thumbnail .overlay {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 30%;
    left: 33%;
}
.service-list-description {
	padding-left: 30px;
	margin-bottom: 25px;
	grid-row: 1 / 2;	
	grid-column: 2 / 3;
	-ms-grid-row: 1;
	-ms-grid-row-span: 1;
	-ms-grid-column: 2;
	-ms-grid-column-span: 1;	
}
.service-list-description h2 {
	margin-top: 0;
}
.service-list-description li {
	margin: 10px 0;
}
.service-list-description p:hover {
	color: #002855 !important;
}
.glyphicon-chevron-right {
    color: #F99f00;
    padding-left: 3px;
    vertical-align: bottom;
    padding-bottom: 4px;
}
@media (max-width:768px) {
	.service-list-grid {
		display:grid;
		grid-template-rows: auto 1fr;
		grid-template-columns: 1fr;
		display: -ms-grid;
		-ms-grid-rows: auto 1fr;
		-ms-grid-column: 1fr;
	}
	.service-list-image {
		width: 100%;
		height: 100%;
		margin: 0 auto;
		grid-row: 1 / 2;
		grid-column: 1 / 2;
		-ms-grid-row: 1;
		-ms-grid-row-span: 1;
		-ms-grid-column: 1;
		-ms-grid-column-span: 1;	
	}
	.service-list-description {
		margin-top: 10px;
		padding: 0;
		grid-row: 2 / 3;	
		grid-column: 1 / 2;
		-ms-grid-row: 2;
		-ms-grid-row-span: 1;
		-ms-grid-column: 1;
		-ms-grid-column-span: 1;	
	}
	.service-list-grid .video-thumbnail .overlay {
	    width: 100%;
	    height: 100%;
	    position: absolute;
	    top: 35%;
	    left: 40%;
	}
}

/* ===================================== 
   Sidebar panel styles
======================================== */
/* panel mods */
.panel-body {
    padding: 20px;
}
.panel-heading {
	padding-left:20px;
}

/* sidebar panel styles */
.sidebar .panel-title {
    font-weight: 700;
}
.sidebar .panel {
    border-radius: 0
}
.sidebar .panel-heading {
    padding-top: 9px;
	padding-bottom:8px;
	border-radius: 0;
}
.sidebar .panel.panel-default .panel-body p { 
    margin-bottom:.938em;
}
.sidebar .panel.panel-default .panel-body p:first-child { 
    margin-top:8px;
}
.sidebar .panel.panel-default, #sidebar-content .panel.panel-default {
    border-color: #ccd4e0;
	background-color: #f7f7f7;
}
.sidebar .panel-default > .panel-heading {
    color: #1a3e68;
    background-color: #ccd4e0;
    border-color: #ccd4e0;
}

/* sidebar-mobile panel styles */
#sidebar-wrapper-mobile .panel-title {
    font-weight: 700;
}
#sidebar-wrapper-mobile .panel {
    border-radius: 0
}
#sidebar-wrapper-mobile .panel-heading {
    padding-top: 9px;
	padding-bottom:8px;
	border-radius: 0;
}
#sidebar-wrapper-mobile .panel.panel-default .panel-body p { 
    margin-bottom:.938em;
}
#sidebar-wrapper-mobile.panel.panel-default .panel-body p:first-child { 
    margin-top:8px;
}
#sidebar-wrapper-mobile .panel.panel-default, #sidebar-content .panel.panel-default {
    border-color: #ccd4e0;
	background-color: #f7f7f7;
}
#sidebar-wrapper-mobile .panel-default > .panel-heading {
    color: #1a3e68;
    background-color: #ccd4e0;
    border-color: #ccd4e0;
}
.sidebar .panel-body p.read-more-links a { color:#00829B }

@media (min-width: 992px) {.maincol.col-66percent {
	    padding-left: 20px;
	}
}