/*
 Theme Name: Ainger Roofing
 Description: A custom theme based on WPBS by Canopy Media, Inc. 
 Author: Canopy Media
 Author URI: https://canopymedia.ca/
 Template: wp-bootstrap-starter
*/

body {
	background-color: #f2f2f2;
}

a.phone-number-click {
    white-space: nowrap;
}

@media screen and (max-width: 1024px) {
	
	.home-hero-section .wp-block-cover {
		min-height: 0!important;
	}
	
	h3,
	h3.has-medium-font-size {
		font-size: 1.17rem;
	}
	
}

@media screen and (max-width: 991px) {
	
	h1,
	h1.has-huge-font-size,
	h1.entry-title {
		font-size: 2.15rem;
	}
	
	a.wp-block-button__link {
		font-size: 1rem;
	}
	
	.main-footer .alignfull .wp-block-group__inner-container .wp-block-group__inner-container {
		padding-left: 0!important;
	}
	
	[style="font-size:32px"] {
		font-size: 1.35rem!important;
	}
	
}

@media screen and (max-width: 781px) {
	.main-footer .alignfull .wp-block-cover__inner-container, 
	.main-footer .alignfull .wp-block-group__inner-container {
		margin: 0;
		width: 100%;
	}
}

@media screen and (max-width: 719px) {
	.wp-block-cover {
		text-align: center!important;
	}
	
	.wp-block-cover .wp-block-buttons {
		justify-content: center!important;
	}
	
}



/* Adjust WP column breakpoints from 600 to 700px */
@media (min-width: 600px) and (max-width: 699px) {
	.wp-block-columns .wp-block-column {
		flex-basis: 100% !important;
	}
	.wp-block-columns .wp-block-column:nth-child(2n) {
		margin-left: 0;
	}
}
@media (min-width: 700px) and (max-width: 781px) {
	.wp-block-columns .wp-block-column:not(:only-child) {
		flex-basis: calc(50% - 1em)!important;
		flex-grow: 0;
	}
	
}

@media (min-width: 700px) and (max-width: 991px)  {
	.main-footer .wp-block-columns .wp-block-column:not(:only-child) {
		flex-basis: calc(50% - 1em)!important;
		flex-grow: 0;
	}
	
	.main-footer .wp-block-columns .wp-block-column:first-child {
		flex-basis: 100%!important;
		flex-grow: 1;
	}
	.main-footer .alignfull .wp-block-group__inner-container .wp-block-group__inner-container {
		padding-left: 0!important;
	}
	.main-footer .wp-block-columns .wp-block-column:nth-child(2n) {
		margin-left: 0;
	}
	.main-footer .alignfull .wp-block-cover__inner-container, 
	.main-footer .alignfull .wp-block-group__inner-container {
		margin: 0;
		width: 100%;
	}
	
	.main-footer .wp-block-columns {
		flex-wrap: wrap!important;
	}
	
	.seo-footer-section {
		margin-bottom: 1.5rem;
	}
	
	.seo-footer-section figure {
		max-width: 450px;
	}
}

@media (max-width: 699px) {
	.wp-block-cover.hide-cover-img-max-700 {
		background: none !important;
	}
}

/* Overlap adjacent sections */
.overlap-under {
	padding-bottom:120px !important;
}
.overlap-over {
	margin-top:-120px !important;
}

/* Hover function for image links */
.img-button {
	overflow: hidden;
}
.img-button a img {
	transition: all .3s linear;
}
.img-button a img:hover {
	transform: scale(1.1);
}

ul {
	padding-left: 1.25rem;
}

/* CF7 Google reCAPTCHA field */
.wpcf7-form-control.g-recaptcha.wpcf7-recaptcha.form-control {
	padding: 0;
	background: transparent;
	border: none;
	height: auto;
	margin-bottom:1rem;
}

.max-width-900 {
	max-width:900px;
	margin-left:auto;
	margin-right:auto;
}
.max-width-600 {
	max-width:600px;
	margin-left:auto;
	margin-right:auto;
}

.min-height-350 {
	min-height:350px;
}

/* Search - start */
#ajaxsearchlite1 .probox .proinput input, div.asl_w .probox .proinput input {
	font-size: 16px;
}

#ajaxsearchlite1 .probox, div.asl_w .probox,
div.asl_m .probox .proinput input {
	height:48px;
}

div.asl_w .probox .proloading, div.asl_w .probox .proclose, div.asl_w .probox .prosettings,
div.asl_w .probox .promagnifier,
div.asl_w .probox div.prosettings {
	height:48px;
	width:48px;
}
div.asl_m .probox .proinput input.autocomplete {
	margin-top:-48px !important;
}

/*  Search - end */

.wp-block-contact,
.wp-block-social {
	list-style: none;
	padding-left: 0;
}

.main-footer li a:before {
	margin-right: .5rem;
	display: inline-block;
	font-style: normal;
	font-variant: normal;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	font-family: "Font Awesome 5 Free"; 
	font-weight: 900; 
	font-size: 1.35rem;
	color: inherit;
}

.main-footer .wp-block-column {
	margin-top: .5rem;
}

.main-footer .navbar-nav {
	margin-bottom: 1rem;
}

figure.w-100 > img {
	width: 100%;
}

/* Dynamic Header Styles (Customizer) 
/* Header Layouts */

.main-navigation-container .nav-item a.nav-link {
	text-transform: var(--navigation-text-transform);
}

.main-menu-container {
	display: grid;
	grid-template-areas: 
		"contact contact contact"
	    "logo toggle toggle"
	    "nav nav nav";
}

.header-layout-two .main-menu-container,
.header-layout-three .main-menu-container {
	grid-template-areas: 
	"contact contact contact contact"
    "logo logo toggle toggle"
    "nav nav nav nav";
}

.main-contact-container {
	grid-area: contact;
}

.main-logo-container {
	grid-area: logo;
}

.main-toggle-container {
	grid-area: toggle;
}

.main-navigation-container {
	grid-area: nav;
}

.main-logo-container,
.main-toggle-container {
	display: flex;
	align-items: center;
	justify-content: center;
}

.main-logo-container {
	margin: .5rem 0;
}

.remove-all-links a {
	cursor: default;
}

.remove-all-links a:hover {
	text-decoration: none!important;
}

#secondary .nav.flex-column .nav-link {
	margin-left: -.75rem;
}

.slider-container {
	overflow-x: hidden;
}

.slider-container,
.slider-container .slider {
	overflow-y: visible;
}

.slider-container .slider {
	overflow-x: auto;
	overflow-y: hidden;
	width: 100%;
	display:flex;
	align-items: center;
	-webkit-overflow-scrolling: touch;
	scroll-snap-type: x mandatory;
}

.slider-container .slider::-webkit-scrollbar {
	display: none;
}

.slider-container .slider {
  -ms-overflow-style: none;  /* IE and Edge */
  scrollbar-width: none;  /* Firefox */
}

.slider-container .slide {
	min-width: 50%;
	position: relative;
	scroll-snap-align: center;
	position: relative;
	min-height: 300px;
	margin: 0 1rem;
	z-index: 1;
	transition: opacity .24s ease-in-out;
}

.slider-container .slide .inner-slide {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	transition: transform .34s ease-in-out;
	display: flex;
	align-items: center;
	transform: scale(1);
	transition: transform .34s ease-in-out, opacity .34s ease-in-out;
}

.slide img {
	display: block;
	margin: 0 auto;
}

.modal-content-page img {
	display: block;
	max-width: 280px;
	margin: 0 auto;
	height: auto;
	opacity: 1;
	transition: opacity .24s ease-in-out;
}

.image-aspect-ratio-video {
	position: relative;
	display: block;
	height: 0;
	padding-top: 56.25%;
	overflow: hidden;
	background-color: #ddd;
}

.aspect-ratio {
	position: relative;
	display: block;
	height: 0;
	overflow: hidden;
	background-color: #ddd;
}

.aspect-ratio-horizontal {
	padding-top: 69%;
}

.aspect-ratio-content {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
}

.modalToggle {
	display: inline-block;
	border: none;
	background-color: transparent;
	padding: 0;
	margin: 0;
}


.modal-dialog {
	min-width: 60%;
}

.card .text-left {
	justify-content: start!important;
}

#masthead .menu-item-object-page:last-of-type {
	align-self: start;
}

.image-aspect-ratio-video img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	width: 100%;
	height: auto;
}

.aspect-ratio {
	height: 0;
	width: 100%;
	position: relative;
	top: 0;
	left: 0;
}

.aspect-ratio-video {
	padding-top: 56.25%;
}

.aspect-ratio-gallery {
	padding-top: 85.5%;
}

.aspect-ratio-content {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
}

.card {
	border-color: rgba(0,0,0,0);
	transition: border-color .15s ease-in-out;
}

a.card {
	border-color: rgba(0,0,0,.125);
}

.card .card-title {
	font-size: 1.25rem;
	min-height: 3rem;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 700;
	margin-bottom: 0;
}

.card .card-subtitle {
	font-size: 1.25rem;
	font-weight: 700;
	margin-bottom: 1rem;
}

.card-body header {
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

h1.entry-title {
	margin-top: 0;
	margin-bottom: 2rem;
}

.single h1.entry-title {
	font-size: 2rem;
}

.single .post-thumbnail {
	margin-bottom: 2rem;
}

.single h2 {
	font-size: 1.5rem;
}

.blog h1 {
	clip: none!important;
	position: relative!important;
	height: initial!important;
	width: initial!important;
	overflow: initial!important;
	word-wrap: normal !important;
    font-size: 1.31rem!important;
    border-bottom: 1px solid #eaecef!important;
    margin-top: 3rem!important;
    margin-bottom: 3rem!important;
}

hr.has-text-color,
.wp-block-separator.has-background:not(.is-style-wide):not(.is-style-dots) {
	opacity: 1;
	height: 4px;
}

.pl-0 .wp-block-media-text__content {
	padding-left: 0!important;
}

/* Inline items in forms should display center vertically */
input.wpcf7-form-control {
	margin-bottom: .25rem;
}
.wpcf7 .d-flex.align-items-center p {
	display: flex;
	align-items: center;
}
.wpcf7 .d-flex.align-items-center label {
	margin-top: 0;
	margin-bottom: 0;
}
.wpcf7 .d-flex.align-items-center input[type="submit"] {
	border: 2px solid;
	margin-bottom: 0;
	align-self: flex-end;
}

.main-footer .navbar-nav .wp-block-latest-posts li {
	padding-top: 0;
	padding-bottom: 0;
}

/* Colours */

span.has-white-color > a {
	color: #fff;
}

a.btn-primary,
.main-contact-container,
a.wp-block-button__link.has-primary-background-color,
a.input.has-primary-background-color,
a.button.has-primary-background-color,
.nav-item.has-primary-background-color a,
.has-primary-background-color,
.btn-primary,
.main-footer input[type="submit"],
.main-footer input[type="submit"].btn-primary {
    background-color: var(--primary-color);
    color: #fff!important;
}

a.btn-primary:hover,
a.wp-block-button__link.has-primary-background-color:hover,
a.input.has-primary-background-color:hover,
a.button.has-primary-background-color:hover,
.nav-item.has-primary-background-color a:hover,
.btn-primary:hover,
a.wp-block-button__link.has-accent-one-background-color:hover,
.main-footer input[type="submit"]:hover,
.main-footer input[type="submit"].btn-primary:hover,
.main-footer .navbar-nav a:hover {
    background-color: var(--primary-color-hover);
    color: #fff!important;
}

.site-banner,
.search-form input[type="submit"].search-submit,
.search-form button[type="submit"].search-submit,
a.wp-block-button__link.has-secondary-background-color,
a.input.has-secondary-background-color,
a.button.has-secondary-background-color,
.nav-item.has-secondary-background-color a,
.has-secondary-background-color {
    background-color: var(--secondary-color);
    color: #fff!important;
}

a.wp-block-button__link.has-secondary-background-color:hover,
a.input.has-secondary-background-color:hover,
a.button.has-secondary-background-color:hover,
.nav-item.has-secondary-background-color a:hover {
    background-color: var(--secondary-color-hover);
    color: #fff!important;
}

a.wp-block-button__link.has-tertiary-background-color,
a.input.has-tertiary-background-color,
a.button.has-tertiary-background-color,
.nav-item.has-tertiary-background-color a,
.has-tertiary-background-color {
    background-color: var(--tertiary-color);
    color: #fff!important;
}

a.wp-block-button__link.has-tertiary-background-color:hover,
a.input.has-tertiary-background-color:hover,
a.button.has-tertiary-background-color:hover,
.nav-item.has-tertiary-background-color a:hover {
    background-color: var(--tertiary-color-hover);
    color: #fff!important;
}

a.wp-block-button__link.has-accent-background-color,
a.input.has-accent-background-color,
a.button.has-accent-background-color,
.nav-item.has-accent-background-color a,
.has-accent-background-color {
    background-color: var(--accent-color);
    color: #fff!important;
}

a.wp-block-button__link.has-accent-background-color:hover,
a.input.has-accent-background-color:hover,
a.button.has-accent-background-color:hover,
.nav-item.has-accent-background-color a:hover {
    background-color: var(--accent-color-hover);
    color: #fff!important;
}

a.wp-block-button__link.has-accent-two-background-color,
a.input.has-accent-two-background-color,
a.button.has-accent-two-background-color,
.nav-item.has-accent-two-background-color a,
.has-accent-two-background-color {
    background-color: var(--accent-color-two);
    color: #fff!important;
}

a.wp-block-button__link.has-accent-two-background-color:hover,
a.input.has-accent-two-background-color:hover,
a.button.has-accent-two-background-color:hover,
.nav-item.has-accent-two-background-color a:hover {
    background-color: var(--accent-color-two-hover);
    color: #fff!important;
}

a.wp-block-button__link.has-accent-three-background-color,
a.input.has-accent-three-background-color,
a.button.has-accent-three-background-color,
.nav-item.has-accent-three-background-color a,
.has-accent-three-background-color {
    background-color: var(--accent-color-three);
    color: #fff!important;
}

a.wp-block-button__link.has-accent-three-background-color:hover,
a.input.has-accent-three-background-color:hover,
a.button.has-accent-three-background-color:hover,
.nav-item.has-accent-three-background-color a:hover {
    background-color: var(--accent-color-three-hover);
    color: #fff!important;
}

.flex-section .flex-items {
    min-width: 320px;
    margin: 0 0 5px;
    padding: 5px;
    }
.bg_teaser {
    background-position: 50% 0;
    background-repeat: no-repeat;
    background-size: cover;
    color: #9a9a9a;
    overflow: hidden;
    position: relative;
	}
.ds{
	background-color: #323232;
	}
.vertical-item.hover-content {
    overflow: hidden;
	}
.bg_teaser .bg_overlay {
    bottom: 0;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
	}
.vertical-item.hover-content .bg_overlay {
    background-color: rgba(50,50,50,.5);
	}
.media-links {
    bottom: 0;
    left: 0;
    position: absolute;
    right: 0;
    text-align: center;
    top: 0;
	}
.media-links a.abs-link {
    bottom: 0;
    left: 0;
    opacity: 0;
    position: absolute;
    right: 0;
    top: 0;
    }
.media-links:before {
    background-color: rgba(38,38,38,.8);
    bottom: 0;
    content: "";
    filter: alpha(opacity=0);
    left: 0;
    opacity: 0;
    position: absolute;
    right: 0;
    top: 0;
    -webkit-transition: all .2s linear;
    transition: all .2s linear;
	}
.vertical-item.big-padding .item-content {
   	padding: 55px;
    padding-bottom: 20px;
	}
.vertical-item.hover-content .content-body>* {
    opacity: 0;
    position: relative;
    top: 20px;
    -webkit-transition: all .2s ease 0s;
    transition: all .2s ease 0s;
	}
.vertical-item.hover-content:hover .content-body>* {
    opacity: 1;
    top: 0;
	}
[class*=-item]:hover .media-links:before {
    opacity: 1;
	}	
.after-cover>*{
	z-index: 2;
	}
.vertical-item .item-content {
    position: relative;
	}
.services-section .all-service{
	color: #000;
	}
.services-section .all-service.inverse:hover{
    color: #fff;
    }
.services-section h3.regular{
	color: #fff;
	}
.services-section p {
	color: #FFF;
}

body {
	background-color: #fff;
	color: var(--text-color);
	font-family: 'Open Sans', sans-serif;
}

.is-style-outline > .wp-block-button__link.has-white-color:hover,
:root .is-style-outline > .wp-block-button__link.has-white-color:hover .has-white-color {
	background-color: #fff;
	color: var(--text-color)!important;
}

body.home .entry-content .services-section .vertical-item a.button-color,
body.page-template-template-homepage .entry-content .services-section .vertical-item a.button-color {
	color:#fff;
	border-color:#fff;
}

.wp-block-cover.has-background-dim.bg-highlights-text:before {
	background-color: transparent;
}

.wp-block-cover.has-background-dim.bg-highlights-text .wp-block-cover__inner-container {
	position: relative;
	padding: 2rem;
	display: inline-block!important;
	margin: 0;
	width: auto!important;
}

.wp-block-cover.has-background-dim.bg-highlights-text .wp-block-cover__inner-container > * {
	max-width: 600px;
}
 
.wp-block-cover.has-background-dim.bg-highlights-text .wp-block-cover__inner-container:before {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	content: '';
	background-color: #000;
	opacity: .5;
	z-index: -1;
}

.wp-block-cover.bg-highlights-text.has-background-dim-10 .wp-block-cover__inner-container:before {
	opacity: .1;
}

.wp-block-cover.bg-highlights-text.has-background-dim-20 .wp-block-cover__inner-container:before {
	opacity: .2;
}

.wp-block-cover.bg-highlights-text.has-background-dim-30 .wp-block-cover__inner-container:before {
	opacity: .3;
}

.wp-block-cover.bg-highlights-text.has-background-dim-40 .wp-block-cover__inner-container:before {
	opacity: .4;
}

.wp-block-cover.bg-highlights-text.has-background-dim-50 .wp-block-cover__inner-container:before {
	opacity: .5;
}

.wp-block-cover.bg-highlights-text.has-background-dim-60 .wp-block-cover__inner-container:before {
	opacity: .6;
}

.wp-block-cover.bg-highlights-text.has-background-dim-7 .wp-block-cover__inner-container:before {
	opacity: .7;
}

.wp-block-cover.bg-highlights-text.has-background-dim-80 .wp-block-cover__inner-container:before {
	opacity: .8;
}

.wp-block-cover.bg-highlights-text.has-background-dim-90 .wp-block-cover__inner-container:before {
	opacity: .9;
}

.wp-block-cover.bg-highlights-text.has-background-dim-100 .wp-block-cover__inner-container:before {
	opacity: 1;
}

.wp-block-cover.has-background-dim.bg-highlights-text.has-primary-background-color .wp-block-cover__inner-container:before {
	background-color: var(--primary-color);
}

.has-white-color,
.main-footer ul.has-white-color a {
	color: #fff;
}

body:not(.theme-preset-active) #masthead .navbar-nav > li > a:hover, 
body:not(.theme-preset-active) #masthead .navbar-nav > li,
body:not(.theme-preset-active) #masthead .navbar-nav > li > a,
.scrolling-nav a.nav-link {
	color: var(--text-color);
}

#masthead .main-contact-container ul.navbar-nav > li > a.nav-link,
.site-content a.wp-block-button__link {
	color: #fff;
}

.btn.btn-light {
	background-color: transparent;
}

.wpcf7 .d-flex.align-items-center input[type="submit"] {
	border-color: var(--primary-color);
}

.underline-text {
	border-bottom: .25em solid var(--primary-color);
}

/* Default button style */
.wp-block-button__link {
	background-color: #4f4f4f;
}

.wp-block-button__link:hover {
	background-color: #222222;
}

.navbar {
	overflow: visible!important;
}
 
body:not(.theme-preset-active) #masthead .main-contact-container .navbar-nav > li,
body:not(.theme-preset-active) #masthead .main-contact-container .navbar-nav > li > a {
	color: #fff;
}

.site-content a:hover {
	color: var(--secondary-color);
}

.site-content a.wp-block-button__link:hover {
	color: #fff;
}

a.has-tertiary-color,
.has-tertiary-color,
body:not(.theme-preset-active) #masthead .main-menu .navbar-nav > li > a.has-tertiary-color,
.has-tertiary-color a {
	color: var(--tertiary-color);
}

.wp-block-button a.wp-block-button__link:hover,
.wp-block-button a.wp-block-button__link.has-text-color-background-color:hover,
.wp-block-button a.wp-block-button__link.has-secondary-background-color:hover,
.wp-block-button a.wp-block-button__link.has-tertiary-background-color:hover,
.wp-block-button a.wp-block-button__link.has-accent-two-background-color:hover,
.wp-block-button a.wp-block-button__link.has-accent-three-background-color:hover,
.wpcf7-form input[type="submit"]:hover {
	border-color: var(--primary-color);
	background-color: var(--primary-color);
	color: #fff!important;
}

.has-primary-background-color .wp-block-button a.wp-block-button__link:hover,
.has-primary-background-color .wp-block-button a.wp-block-button__link.has-secondary-background-color:hover,
.has-primary-background-color .wp-block-button a.wp-block-button__link.has-accent-background-color:hover,
.has-primary-background-color .wp-block-button a.wp-block-button__link.has-accent-two-background-color:hover,
.has-primary-background-color .wp-block-button a.wp-block-button__link.has-accent-three-background-color:hover {
	background-color: var(--tertiary-color);
	color: #fff!important;
}

.has-primary-background-color .wp-block-button a.has-tertiary-background-color:hover,
.has-primary-background-color .wp-block-button a.wp-block-button__link.has-tertiary-background-color:hover,
.btn.has-tertiary-background-color:hover {
	background-color: var(--secondary-color);
	color: #fff!important;
}

.wp-block-button a.has-primary-color:hover,
.wp-block-button a.wp-block-button__link.has-primary-color:hover {
	background-color: var(--secondary-color);
	color: #fff!important;
}

.wp-block-button.is-style-outline a.wp-block-button__link:hover {
	background-color: var(--text-color);
	color: #fff!important;
	border-color: #fff!important;
}

.wp-block-button.is-style-outline a.wp-block-button__link.has-primary-color:hover {
	background-color: var(--primary-color);
	color: #fff!important;
	border-color: #fff!important;
}

.wp-block-button.is-style-outline a.wp-block-button__link.has-secondary-color:hover {
	background-color: var(--secondary-color);
	color: #fff!important;
	border-color: #fff!important;
}

.wp-block-button.is-style-outline a.wp-block-button__link.has-tertiary-color:hover {
	background-color: var(--tertiary-color);
	color: #fff!important;
	border-color: #fff!important;
}

.wp-block-button.is-style-outline a.wp-block-button__link.has-accent-color:hover {
	background-color: var(--accent-color);
	color: #fff!important;
	border-color: #fff!important;
}

.wp-block-button.is-style-outline a.wp-block-button__link.has-accent-two-color:hover {
	background-color: var(--accent-color-two);
	color: #fff!important;
	border-color: #fff!important;
}

.wp-block-button.is-style-outline a.wp-block-button__link.has-accent-three-color:hover {
	background-color: var(--accent-color-three);
	color: #fff!important;
	border-color: #fff!important;
}

.has-primary-border-color,
.btn-primary {
    border-color: var(--primary-color);
}

.has-secondary-border-color {
    border-color: var(--secondary-color);
}

.has-tertiary-border-color {
    border-color: var(--tertiary-color);
}

.has-accent-border-color {
    border-color: var(--accent-color);
}

.has-accent-two-border-color {
    border-color: var(--accent-two-color);
}

.has-accent-three-border-color {
    border-color: var(--accent-two-color);
}

a.has-primary-color,
.has-primary-color,
body:not(.theme-preset-active) #masthead .main-menu .navbar-nav > li > a.has-primary-color,
body:not(.theme-preset-active) #masthead .main-navigation-container .navbar-nav > li.current_page_item > a,
p.has-text-color a.has-primary-color,
.blog .page-title.screen-reader-text,
.blog .page-title,
a.wp-block-button__link.has-primary-color,
a.input.has-primary-color,
a.button.has-primary-color,
.nav-item.has-primary-color a,
.has-primary-color a,
.has-primary-color {
    color: var(--primary-color);
}

a.wp-block-button__link.has-secondary-color,
a.input.has-secondary-color,
a.button.has-secondary-color,
.nav-item.has-secondary-color a,
.has-secondary-color a,
.has-secondary-color {
    color: var(--secondary-color);
}

.site-content a,
a.wp-block-button__link.has-tertiary-color,
a.input.has-tertiary-color,
a.button.has-tertiary-color,
.nav-item.has-tertiary-color a,
.has-tertiary-color a {
    color: var(--tertiary-color);
}

a.wp-block-button__link.has-accent-color,
a.input.has-accent-color,
a.button.has-accent-color,
.nav-item.has-accent-color a,
.has-accent-color a,
.has-accent-color {
    color: var(--accent-color);
}

a.wp-block-button__link.has-accent-two-color,
a.input.has-accent-two-color,
a.button.has-accent-two-color,
.nav-item.has-accent-two-color a,
.has-accent-two color a,
.has-accent-two color {
    color: var(--accent-color-two);
}

a.wp-block-button__link.has-accent-three-color,
a.input.has-accent-three-color,
a.button.has-accent-three-color,
.nav-item.has-accent-three-color a,
.has-accent-three color a,
.has-accent-three color {
    color: var(--accent-color-three);
}


.nav-item.is-style-outline a.has-primary-color,
.nav-item.is-style-outline a {
    border-color: var(--primary-color);
    color: var(--primary-color)!important;
}
.is-style-outline a.has-primary-color:hover {
	 background-color: var(--primary-color);
	 color: #fff!important;   
}
.is-style-outline a.has-secondary-color:hover {
	 background-color: var(--primary-color);
	 color: #fff!important;   
}

.cta-button > a {
    border: 1px solid;
    padding: 0 6px;
    border-radius: 4px;
}

.slick-slider {
	margin-bottom: 0 !important;
}

@media (min-width: 782px) {
	.no-margin-columns .wp-block-column:not(:first-child) {
		margin-left: 0;
	}
	.wp-block-columns .wp-block-column:nth-child(2n) {
		margin-left: 2em;
	}
}

@media (max-width: 992px) {
	
	.wp-block-media-text.is-stacked-on-mobile {
    	-ms-grid-columns: 100%!important;
    	grid-template-columns: 100%!important;
	}
	
	.wp-block-media-text.is-stacked-on-mobile .wp-block-media-text__media {
    	-ms-grid-column: 1;
		grid-column: 1;
		-ms-grid-row: 1;
		grid-row: 1;
		margin-bottom: 1rem;
	}
	
	.wp-block-media-text.is-stacked-on-mobile .wp-block-media-text__content {
	    -ms-grid-column: 1;
	    grid-column: 1;
	    -ms-grid-row: 2;
	    grid-row: 2;
	}

}

@media screen and (min-width: 1200px) {

    body:not(.theme-preset-active) #masthead .navbar-nav > li > a:hover, 
	body:not(.theme-preset-active) #masthead .navbar-nav > li,
	body:not(.theme-preset-active) #masthead .navbar-nav > li.current_page_item > a,
	body:not(.theme-preset-active) #masthead .navbar-nav > li > a {
		color: var(--text-color);
	}
	
    .header-layout-three .main-contact-container {
	    background-color: transparent;
	}
}

body:not(.theme-preset-active) #masthead.header-layout-two .main-contact-container .navbar-nav > li > a {
	color: #fff;
}

header .has-background,
footer .has-background {
	color: #fff!important;
}

.site-banner {
	color: #fff;
}

a.has-white-background-color:hover {
	background-color: #ccc;
}

.has-background-dim .wp-block-quote cite {
	color: #fff;
}

#footer-widget a,
#footer-widget a:hover {
	color: #000;
}

.btn.has-white-background-color {
	display: inline-block;
	background-color: #fff;
	color: #000;
	text-align: left;
	margin-left: -.7rem;
}

.site-content a.btn.has-white-background-color:hover {
	text-decoration: none;
}


/* General Styles */

.post-thumbnail img {
	width: 100%;
}

.rpwwt-post-title {
	font-weight: 700;
}

html {
	scroll-behavior: smooth;
	scroll-padding: 100px 0 100px 0;
}

#wpadminbar {
	position: fixed;
}

html {
	font-size: 16px;
}

body.page-template-fullwidth .alignfull,
#masthead .alignfull,
.main-footer .alignfull {
	margin: 0 calc(50% - 50vw);
	max-width: 100vw;
	width: 100vw;
}

body.page-template-fullwidth .alignfull .wp-block-cover__inner-container, 
body.page-template-fullwidth .alignfull .wp-block-group__inner-container,
.main-footer .alignfull .wp-block-cover__inner-container, 
.main-footer .alignfull .wp-block-group__inner-container {
	margin: auto;
	padding-right: 15px;
	padding-left: 15px;
}

img {
	max-width: 100%;
	height: auto;
}

ul.semantic,
ol.semantic,
ul.wp-block-latest-posts,
ol.wp-block-latest-posts {
	list-style: none;
	padding-left: 0;
}

a,
header a:hover,
footer a:hover,
.entry-content a.wp-block-button__link:hover {
	text-decoration: none;
}

a {
	transition: background-color .15s ease-in-out, color .15s ease-in-out;
}

.wp-block-latest-posts__list li,
.wp-block-latest-posts li {
	padding: .25rem 0;
}

.main-menu a.nav-item:hover,
.dropdown-menu a.dropdown-item:hover,
footer a.nav-item:hover,
footer a.button,
.entry-content .wp-block-latest-posts a:hover,
body:not(.theme-preset-active) #scrolling-nav .navbar-nav > li > a:hover,
body:not(.theme-preset-active) #masthead .navbar-nav > li > a:hover {
	background-color: rgba(0,0,0,.15);
	text-decoration: none;
}

body.home.page-template-fullwidth .site-content {
	padding-top: 0!important;
}

body.page-template-fullwidth .entry-content {
	margin-top: 0;
}

.entry-content a:hover {
	text-decoration: underline;
}

.site-content .has-white-color a,
.site-content .has-white-color a:hover {
	color: #fff;
}

header#masthead {
	margin-bottom: 0;
	background-color: #fff;
	padding: 0;
	position: relative;
	z-index: 1000;
}

.site-banner a {
	color: #fff;
}

.site-banner a:hover {
	background-color: rgba(0,0,0,.2);
}

#mobile-nav-button {
	background-color: transparent;
	border: none;
}

#mobile-nav-button > span {
	padding: .5rem;
	margin-right: .75rem;
}

.navbar-brand {
	max-width: 250px;
}

.navbar-brand a {
	color: #000;
}

a.nav-link,
body:not(.theme-preset-active) #masthead .navbar-nav > li > a,
body:not(.theme-preset-active) #scrolling-nav .navbar-nav > li > a,
body:not(.theme-preset-active) #masthead .navbar-nav > li.current_page_item > a {
	text-decoration: none;
	padding: .375rem .75rem;
	white-space: nowrap;
	transition: background-color .14s ease-in-out;
}

body:not(.theme-preset-active) #scrolling-nav .navbar-nav > li {
	display: flex;
	align-items: center;
}

a.nav-link,
a.nav-link:hover {
	font-weight: 400!important;
}

.wpcf7 form button[type="submit"],
.wpcf7 form input[type="submit"] {
	margin: .75rem 0;
}

.wpcf7 form label {
	margin: .75rem 0;
}

.search-nav-toggle.dropdown-toggle::after,
.search-nav-toggle.dropdown-toggle:after {
	display: none;	
}

.search-form {
	display: flex;
}

.search-form label {
	margin-bottom: 0;
}

.search-form input[type="submit"].search-submit,
.search-form button[type="submit"].search-submit {
	display: inline-block;
	border: none!important;
	color: #fff;
	padding: .375rem .75rem;
	border-radius: 0 .25rem .25rem 0;
}

.search-form .search-field {
	margin-bottom: 0;
	border-radius: .25rem 0 0 .25rem;
}

#main-footer a.nav-link:hover,
.main-menu a.nav-link:hover,
a.dropdown-item {
	background-color: #DDD;
}

.dropdown-menu {
	margin-top: .5rem;
}

.dropdown-menu .dropdown-item {
	white-space: nowrap;
}

.main-menu {
	padding-left: 15px;
	padding-right: 15px;
}

.main-menu li:last-of-type,
.main-footer .navbar-nav a {
	border-radius: 5px;
}

.main-footer figure > a {
	display: block;
	overflow: hidden;
}

.main-footer figure > a {
	display: inline-block;
	background-color: #000;
}

.main-footer figure > a > img {
	transition: opacity .3s ease-in-out;
	opacity: 1;
}

.main-footer figure > a:hover > img {
	opacity: .75;
}

#masthead {
	color: #000!important;
}

.contact-bar .menu-item {
	display: flex;
	justify-content: center;
}

.contact-bar a.nav-link {
	display: flex;
	align-items: center;
}

.contact-bar a.nav-link i {
	margin-right: .5rem;
}

.contact-bar > div:first-child {
	flex: 1;
}

.contact-bar > div:last-child {
	flex: 1;
}

#top-left-message {
	border: 1px solid #ccc;
}

#top-left-message .widget_media_image {
	max-width: 120px;
}

#top-left-message > div {
	height: 100%;
	padding: .5rem;
}

#top-left-message > div:first-of-type {
	margin-right: auto;
}

.top-left-item {
	display: flex;
	align-items: center;
}

.main-nav {
	margin-right: 0;
	margin-left: 0;
}

.main-footer .navbar-nav a {
	display: inline-block;
	margin-left: -.75rem;
	margin-bottom: .15rem;
}

.main-footer .has-white-color .navbar-nav a {
	color: #fff;
}
 
.blocks-gallery-grid .blocks-gallery-item, 
.wp-block-gallery .blocks-gallery-image, 
.wp-block-gallery .blocks-gallery-item {
	align-self: center;
}

.dropdown-menu .nav-item {
	white-space: nowrap;
}

.dropdown-menu {
	background-color: #fff;
}

#secondary {
	padding-left: 3rem;
}

#secondary .widget {
	margin-bottom: 3rem;
}

#secondary .widget_media_image img {
	width: 100%;
}

#secondary .widget:first-child a > img {
	border: 3px solid #eee;
	transition: border-color .15s ease-in-out;
}

#secondary .widget:first-child a:hover > img {
	border-color: #ccc;
}

#secondary .widget-title {
	margin-bottom: 1rem;
}

.nav-link,
.post-thumbnail img {
	border-radius: .25rem;
}

.blog .post-thumbnail {
	max-width: 200px;
	margin-bottom: 1rem;
}

.rpwwt-post-title {
	font-size: 1rem;
}

.schema-faq-question {
	display: block;
	font-weight: bolder;
	margin-bottom: .25rem;
}

/* Hero Section */
.value-prop {
	background-color: #fff;
	transform: translateY(-80px);
	box-shadow: 0px -3px 11px 3px rgb(0 0 0 / 15%);
	overflow: hidden;
	position: relative;
	z-index: 2;
}

.value-prop h3 {
	font-size: 1.5rem;
}

.mid-page-section-title {
	min-height: 70px;
}

.large-paragraph {
	font-size: 1.25rem;
	margin-left: auto;
	margin-right: auto;
	max-width: 80%;
}

/* Angled section */
.angle-left:before,
.angle-left::before {
	content: '';	
	background: #F2F2F2;
	background-size: 150%;
	background-position: center center;
	height: 100%;
	position: absolute;
	top: 0;
	left: -27%;
	width: 60%;
	z-index: 1;
	order: 1;
}

.angle-left > * {
	position: relative;
	z-index: 5;
}

/* Featured Services Grid */
.featured-grid {
	position: relative;
	z-index: 3;
}

.featured-grid .wp-block-column {
	margin-left: 0!important;
	min-width: 200px;
	min-width: 100%;
}

.featured-grid .wp-block-cover {
	position: relative;
	height: 0;
	padding: 100% 0 0 0;
	overflow: hidden;
	min-height: 0!important;
}

.featured-grid .wp-block-cover__inner-container,
body.page-template-fullwidth .featured-grid .wp-block-cover__inner-container {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.featured-grid .wp-block-cover:not(:hover) {
	background-color: rgba(0,0,0,.5)!important;
}

.featured-grid .wp-block-cover__inner-container {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
}

.featured-grid .wp-block-group {
	overflow: hidden;
	max-height: 0;
	transition: max-height .3s ease-in-out;
}

.featured-grid .wp-block-cover:hover .wp-block-group {
	max-height: 300px;
}

.featured-grid h3 {
	font-size: 2rem;
	margin-bottom: 1rem;
}

.featured-grid h3 a,
.featured-grid h3 a:hover,
.featured-grid h3 a:visited {
	text-decoration: none;
	padding: .375rem .5rem;
	color: #fff!important;
}

.featured-grid h3 a:hover {
	background-color: rgba(0,0,0,.3);
	border-radius: 3px;
}

a.featured-team-member-photo-container {
	display: flex;
	justify-content: center;
}

.featured-team-member-photo-container img {
	margin: 0 0 1rem!important;
	float: none!important;
}

/* Icon Grid */

.icon-grid .wp-block-column {
	margin-left: 0;
}

.icon-grid:nth-of-type(odd) .wp-block-column:nth-of-type(even) {
	background-color: #eee;
}

.icon-grid:nth-of-type(even) .wp-block-column:nth-of-type(odd) {
	background-color: #eee;
}

.icon-grid i {
	font-size: 4rem;
}

.icon-grid a:hover {
	text-decoration: none;
}

.icon-grid:first-of-type .wp-block-column:nth-of-type(even) {
	background-color: #F5F5F5;
}

.icon-grid:last-of-type .wp-block-column:nth-of-type(odd) {
	background-color: #F5F5F5;
}

.icon-grid h2 {
	margin-top: 3rem;
	min-height: 90px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.icon-grid .wp-block-column,
.icon-grid .wp-block-column > a {
	display: block;
	flex: 1;
	width: 100%;
	padding: 5rem 3rem;
	transition: background-color .34s ease-in-out;
}

.icon-grid .wp-block-column > a:hover {
	background-color: rgba(0,0,0,.15);
}

.card h2 {
	padding-top: 0.3em;
}

/* Address Block */
.address-block a {
	border-radius: .25rem;
}

.address-block a:hover,
footer a.nav-link:hover {
	background-color: rgba(0,0,0,.1);
}

footer .nav-item {
	margin-left: -.75rem;
}

ul.address-block,
ol.address-block {
	padding-left: 0;
	list-style: none;
}

.address-block li {
	margin-top: .25rem;
	margin-bottom: .25rem;
	line-height: 1.25;
	transform: translateX(-.5rem);
}

.address-block li {
	text-align: left;
}

.address-block a:before,
.address-block li:before,
.address-block address.fas:before {
	font-family: 'Font Awesome 5 Free';
	margin-right: .5rem;
	font-weight: bold;
}

.address-block li:last-of-type {
	display: flex;
}

.address-block address {
	padding: .375rem .75rem;
	font-weight: normal;
	font-size: 1rem;
}

#footer-widget.bg-light {
	background-color: #D6F1FF!important;
}

#footer-widget .col-12:nth-of-type(2) {
	background-color: #EEF9FF;
}

#footer-widget .col-12:nth-of-type(4) {
	background-color: #EEF9FF;
}

.address-block li > a:hover {
	color: #444;
	text-decoration: none;
}

.address-block .fa, 
.address-block .fab, 
.address-block .fad, 
.address-block .fal, 
.address-block .far, 
.address-block .fas,
#footer-widget .address-block a {
	display: block; /* non flexbox browsers */
	display: inline-flex;
}

#footer-widget .address-block a,
.address-block .fas.fa-map-marker-alt {
	align-items: flex-start;
}

.address-block .fa:before, 
.address-block .fab:before, 
.address-block .fad:before, 
.address-block .fal:before, 
.address-block .far:before, 
.address-block .fas:before {
	margin-right: .5rem;
	
}

/* Footer Social Menu */
#menu-footer-social.flex-column {
	flex-direction: row!important;
	font-size: 2rem;
}

#menu-footer-social i {
	font-size: 2rem!important;
}

#menu-footer-social li:not(:first-child) {
	margin-left: 1rem;
}

ul#menu-footer-social {
	list-style: none;
	padding-left: 0;
	display: flex;
	flex-direction: row!important;
	padding: 1rem 0;
}

#menu-footer-social a.nav-link {
	font-size: 2rem;
	font-weight: normal;
}

#menu-footer-social .nav-item:not(:first-of-type) {
	margin-left: 0!important;
}

/* Footer Helpful Links */
ul#menu-helpful-links {
	list-style: none;
	padding-left: 0;
}

/* Utilities */
.icon-grid .square {
	position: relative;
	height: 0;
	padding: 100% 0 0;
}

.icon-grid .square-content {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
}

.icon-grid a.square-content:hover {
	background-color: #ccc;
}

.wpcf7-form-control-wrap,
.wpcf7-form-control,
.wpcf7-form-control > div {
	max-width: 100%;
}

.wpcf7-form-control.form-control {
	background-color: #f4f4f4;
}

.wpcf7-list-item.first {
	margin-left: 0;
}

.wpcf7-form input[type="submit"] {
	border-color: var(--primary-color);
	background-color: var(--primary-color);
	color: #fff;
}

.wpcf7-form input[type="submit"]:hover {
	border-color: var(--tertiary-color);
	background-color: var(--tertiary-color);
	color: #fff;
}

.g-recaptcha.form-control {
	display: inline-block;
	padding: 0;
	min-height: 78px;
	width: initial!important;
	margin-bottom: 0;
}

.g-recaptcha > div {
	overflow-x: auto;
	overflow-y: hidden;
}

#footer-widget .widget {
	font-size: 1rem!important;
}

#footer-widget .widget_text p + p a:only-child,
#footer-widget .widget_media_image a {
	border-radius: .25rem;
	transition: background .34s ease-in-out;
	display: inline-block;
}

#footer-widget .widget_text p + p a:only-child,
#footer-widget .widget_media_image a {
	margin-left: -.75rem;
}

#menu-footer-social.flex-column {
	flex-direction: row!important;
	font-size: 2rem;
}

#menu-footer-social a.nav-link {
	font-size: 2rem;
}

ul#menu-social-icons {
	flex-direction: row!important;
}

#menu-social-icons a.nav-link {
	font-size: 2rem;
}

#menu-social-icons a.nav-link:hover {
	background-color: transparent;
}

.entry-footer .post-edit-link {
	display: none;
}

#footer-widget .widget li {
	padding-bottom: 0;
	margin-bottom: 0;
}

#footer-widget .widget_media_image a {
	padding: .5rem;
}

#footer-widget .widget_media_image a:hover {
	background-color: #ddd;
}

#footer-widget .col-12 {
	padding: 2rem;
}

.scrolling-nav {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 999;
	background-color: #fff;
}

.scrolling-icon {
	max-width: 55px;
}

.scrolling-icon {
	padding-top: .5rem;
	padding-bottom: .5rem;
}

.scrolling-logo {
	max-width: 50px;
}

#scrolling-nav {
	position: absolute;
	left: 0;
	top: 0;
	width: 100vw;
	z-index: 99;
	box-shadow: 0 0.5rem 1rem rgba(0,0,0,.05), 
				inset 0 -1px 0 rgba(0,0,0,.1);
	z-index: 999;
}

.admin-showing #scrolling-nav {
	top: 46px;
}

/* Typography */
h1, h2, h3, h4, h5, h6 {
	font-family: 'Montserrat', 'Open Sans', Arial, Helvetica, sans-serif;
	font-weight: 400;
	margin-top: 1.5rem;
	margin-bottom: 1.5rem;
	padding-top: .25rem;
	padding-bottom: .25rem;
}

h1,
h1.entry-title {
	font-size: 2rem;
	font-weight: 700;
}

h2 {
	font-size: 1.75rem;
}

h3 {
	font-size: 1.5rem;
}

h4 {
	font-size: 1.25rem;
}

h5 {
	font-size: 1.15rem;
}

h6 {
	font-size: 1rem;
}

.home h1,
h1.has-huge-font-size {
	font-size: 2.5rem;
}

.modal-title {
	font-size: 1.25rem;
}

.navbar-toggler,
.navbar-light.navbar-toggler {
	border: none;
}

body, input, textarea, select,
.address-block a.fas, .address-block a.fab,
.address-block li.fas,
.address-block address.fas {
	font-family: 'Open Sans', Arial, Helvetica, sans-serif;
}

a.wp-block-button__link {
	font-family: 'Open Sans', Arial, Helvetica, sans-serif;
}

ul#menu-helpful-links a.nav-link,
.address-block a {
	font-weight: 400!important;
}

body:not(.theme-preset-active) #masthead .navbar-nav > li > a,
.nav-item button {
	font-size: 1rem;
}

.fa-star {
	color: #F2A704;
}

.wp-block-latest-posts__list li:only-child .wp-block-latest-posts__featured-image + a {
	font-size: 1.5rem;
}

/* Site Specific Components */

.google-logo {
	font-weight: bold;
}

.google-logo span:first-of-type,
.google-logo span:nth-of-type(4) {
	color: #3071E7;
}

.google-logo span:nth-of-type(2),
.google-logo span:nth-of-type(6) {
	color: #DE2F21;
}

.google-logo span:nth-of-type(3) {
	color: #F2A904;
}

.google-logo span:nth-of-type(5) {
	color: #1B9639;
}

.move-image-up {
	transform: translateY(-20%);
}

.wp-block-quote,
.wpbr-review:after {
	font-size: 2rem;
}

.wp-block-quote {
	border-left: none;
	margin-bottom: 1rem;
}

.wp-block-quote p {
	margin-bottom: 0;
}

.wp-block-quote cite {
	font-size: .89rem;
}

.wp-block-quote.has-border-left {
	border-left: .25em solid;
}

.underline-heading {
	border-bottom: 3px solid #ccc;
	font-size: 2.5rem;
	padding-bottom: 0;
}

.is-style-outline > .wp-block-button__link, 
.wp-block-button__link.is-style-outline,
.wp-block-button__link,
.main-footer .navbar-nav a {
	padding: .375rem .75rem;
}

.wp-block-button__link {
	border-radius: 5px;
	font-size: 1rem;
}

#colophon {
	background-color: #444;
	color: #fff;
}

#colophon a,
#colorphon a.nav-link {
	color: #fff;
	text-decoration: underline;
}

#colophon a:hover,
#colorphon a.nav-link:hover {
	color: #ddd;
}

.legal {
	font-size: .9rem;
}

#colophon .legal a,
#colophon .legal a.nav-link {
	text-decoration: none;
}

#colophon .legal a.nav-link {
	margin-left: 1rem;
}

.card-body {
	padding: 1rem;
}

.card-body header {
	display: block;
	padding: .5rem 1rem;
	position: relative;
	height: 0;
	padding: 56.25% 0 0;
	margin-bottom: 1rem;
	border-radius: .25rem;
	overflow: hidden;
}

.card-body header > * {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.card-body header h3 {
	height: 100%;
	text-align: center;
	font-size: 1.25rem;
}

.card-body header a {
	display: block;
	width: 100%;
	height: 100%;
	padding: 1rem;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
}

.card-body header a:hover {
	text-decoration: none;
}

.excerpt-continue-reading {
	white-space: nowrap;	
}

.wp-block-video,
.wp-block-embed {
	background-color: #000;
}

.wp-block-video {
	width: 100%;
	height: 100%;
	background-color: #000;
}

figure.wp-block-video,
figure.wp-block-embed,
figure .jetpack-video-wrapper {
	margin-bottom: 0;
	display: flex;
	align-items: center;
	justify-content: center;
}

.wp-block-video video {
	height: 100%;
}

.alternating-grid .wp-block-column:last-of-type,
.alternating-grid + .wp-block-columns .wp-block-column:last-of-type {
	padding-top: 3rem;
	padding-bottom: 3rem;
} 

.alternating-grid + .wp-block-columns .wp-block-column:last-of-type > * {
	padding-left: 2rem;
	padding-right: 2rem;
}

#share-icons i {
	font-size: 2rem;
}

#share-icons a:not(:first-child) {
	margin-left: .7rem;
}

.wp-block-column > iframe {
	min-height: 400px;
}

body.has-h1-block #content.site-content {
	padding-top:0;
}

body.has-h1-block .entry-content {
	margin-top:0;
}

.wp-block-media-text__media .size-medium {
	display: block;
	max-width: 400px;
}

.scrolling-nav .scrolling-icon {
	display: none;
}

@media screen and (max-width: 992px) {
	.main-header-container.container {
		margin: 0;
		width: 100%;
		max-width: 100%;
		padding: 0;
	}	
}

@media (min-width: 600px) and (max-width: 992px) {

	.wp-block-columns.alignfull .wp-block-column {
		flex-basis: 100%!important;
	}
	
}

@media screen and (min-width: 576px) {
	body.page-template-fullwidth .alignfull .wp-block-cover__inner-container, 
	body.page-template-fullwidth .alignfull .wp-block-group__inner-container,
	.main-footer .alignfull .wp-block-cover__inner-container, 
	.main-footer .alignfull .wp-block-group__inner-container {
		max-width: 540px;
	}
}

@media screen and (min-width: 600px) {
	
	.updated-hero .wp-block-column:first-child {
		order: 2;
	}

	.updated-hero .wp-block-column:last-child {
		order: 1;
	}
	
	.wp-block-cover-image .wp-block-cover__inner-container, 
	.wp-block-cover .wp-block-cover__inner-container {
		width: calc(100% - 70px);
	}
	
	.angle-left:before,
	.angle-left::before {
		transform: skew(10deg);
	}
}

@media screen and (min-width: 768px) {
	
	body.page-template-fullwidth .alignfull .wp-block-cover__inner-container, 
	body.page-template-fullwidth .alignfull .wp-block-group__inner-container,
	.main-footer .alignfull .wp-block-cover__inner-container, 
	.main-footer .alignfull .wp-block-group__inner-container {
		max-width: 720px;
	}
		
	.admin-showing #scrolling-nav {
		top: 32px;
	}
	.featured-grid .wp-block-column {
		min-width: 40%;
	}
}

@media screen and (min-width: 782px) {
	.wp-block-columns.featured-grid {
		flex-wrap: wrap;
	}
	
	.alternating-grid {
		padding-bottom: 0;
		background-color: #F2F2F2;
	}
	.alternating-grid .wp-block-column:first-of-type {
		order: 2;
	}
	.alternating-grid .wp-block-column:last-of-type {
		order: 1;
	}
	.alternating-grid .wp-block-column:last-of-type,
	.alternating-grid + .wp-block-columns .wp-block-column:last-of-type {
		margin-left: 0;
		display: flex;
		flex-direction: column;
		justify-content: center;
	}
	
	.alternating-grid .wp-block-column:last-of-type > *,
	.alternating-grid + .wp-block-columns .wp-block-column:last-of-type > * {
		padding-left: 2rem;
		padding-right: 2rem;
	}
}

@media screen and (min-width: 992px) {
	html {
		font-size: 18px;
	}
	
	body.page-template-fullwidth .alignfull .wp-block-cover__inner-container, 
	body.page-template-fullwidth .alignfull .wp-block-group__inner-container,
	.main-footer .alignfull .wp-block-cover__inner-container, 
	.main-footer .alignfull .wp-block-group__inner-container  {
		max-width: 960px;
	}
	
	.blog .entry-title:first-of-type {
		padding-top: 0;
		margin-top: 0;
		margin-bottom: 1rem;
	}
	
	.blog .entry-title:first-of-type {
		transform: translateY(-5px);
	}
	
	.contact-bar > div:first-child {
		flex: 2;
	}
	
	.main-contact-container {
		display: flex;
		align-items: center;
		justify-content: center;
	}
	
	/* Hero Section */
	.hero-section {
		min-height: 600px;
	}
	
	#top-left-message > div:first-of-type {
		margin-right: 0;
	}
	
	#top-left-message > div {
		border-right: 1px solid #ccc;
	}
	.angle-left:before,
	.angle-left::before {
		left: 50%;
	}
	/* CTA ROW */
	.cta-row .wp-block-group__inner-container {
		display: flex;
		justify-content: center;
	}
	
	.cta-row .wp-block-buttons {
		margin-left: 3rem;
		margin-right: 0;
	}
	.featured-grid h3 {
		font-size: 1.25rem;
	}
	.textwidget p, 
	.text-widget li, 
	footer .widget li, 
	footer .widget li > a, 
	footer 	a.nav-link {
		font-size: 16px!important;
	}
	
	.scrolling-nav .scrolling-icon {
		display: block;
	}
	
	.wp-block-media-text__media .size-medium {
		margin: 0 auto;
	}
	
}

@media screen and (min-width: 1024px) {
	
	.slider-container .slide {
		min-width: 33.33%;
	}

	body.page-template-fullwidth .alignfull .wp-block-cover__inner-container, 
	body.page-template-fullwidth .alignfull .wp-block-group__inner-container,
	.main-footer .alignfull .wp-block-cover__inner-container, 
	.main-footer .alignfull .wp-block-group__inner-container {
		max-width: 960px;
	}
	
	.icon-grid i {
		font-size: 6rem;
	}
	.featured-grid .wp-block-column {
		min-width: 20%;
	}
	
}

@media screen and (min-width: 1200px) {
	
	body.page-template-fullwidth .alignfull .wp-block-cover__inner-container, 
	body.page-template-fullwidth .alignfull .wp-block-group__inner-container,
	.main-footer .alignfull .wp-block-cover__inner-container, 
	.main-footer .alignfull .wp-block-group__inner-container {
		max-width: 1140px;
	}
	
	.main-menu-container {
		display: grid;
		grid-template-areas: 
		"logo contact contact"
	    "logo nav nav"
	    "toggle toggle toggle";
	}

	.header-layout-two .main-menu-container {
		grid-template-areas: 
		"contact contact contact contact"
	    "logo logo nav nav"
	    "toggle toggle toggle toggle";
	}
	
	.header-layout-three .main-menu-container {
		grid-template-areas: 
		"logo logo contact contact"
	    "nav nav nav nav"
	    "toggle toggle toggle toggle";
	}
	
	
	
	.main-logo-container {
		margin: 0;
	}
	
    .main-contact-container,
    .main-navigation-container {
	    padding-top: .5rem;
		padding-bottom: .5rem;
	}
	
	.header-layout-three .main-navigation-container {
		margin-top: 0;
		margin-bottom: 0;
	}

	.header-layout-two .main-logo-container,
	.header-layout-two .main-navigation-container, 
	.header-layout-three .main-logo-container,
	.header-layout-three .main-contact-container {
		width: calc(1140px / 2);
	}

	.header-layout-two .main-logo-container,
	.header-layout-three .main-logo-container {
		margin-left: auto;
		justify-content: flex-start!important;
	}

	.header-layout-two .main-navigation-container,
	.header-layout-three .main-contact-container {
		margin-right: auto;
	}
	
	.header-layout-three .justify-content-xl-end {
		justify-content: center!important;
	}

	.header-layout-two .contact-bar {
		max-width: 1140px;
		width: 100%;
		margin: 0 auto;
	}
	
	.main-menu-container {
		margin: 0 auto;
	}


	.main-menu-container .main-logo-container {
		justify-content: flex-start;
	}
	
	.main-navigation-container .navbar {
		max-width: 100%;
		overflow-x: auto;
		overflow-y: visible;
	}
	
	.header-layout-two .justify-content-xl-end,
	.main-logo-container .justify-content-xl-end {
		justify-content: flex-start;
	}
	
	.header-layout-default .main-contact-container {
		background-color: transparent;
	}
	
	body:not(.theme-preset-active) #masthead .main-contact-container .navbar-nav > li > a, 
	.main-contact-container a.nav-item {
		color: #222;
	}
	
	.header-layout-three .main-navigation-container {
		padding: .5rem 0;
		background-color: var(--primary-color);
		color: #fff;
	}
	
	body:not(.theme-preset-active) #masthead.header-layout-three .main-navigation-container .navbar-nav > li > a, 
	.header-layout-three .main-navigation-container a.nav-item {
		color: #fff!important;
	}
	
	.main-contact-container {
		justify-content: flex-end;
	}
	
	.main-menu-container {
		max-width: 1140px;
		margin: 0 auto;
	}

	.header-layout-three .main-menu-container {
		margin: 0;
		max-width: 100%;
	}
	
	.header-layout-three .main-menu-container,
	.header-layout-two .main-menu-container {
		margin: 0;
		max-width: 100%;
	}
	
	.main-menu {
		padding-right: 0;
	}
	
	#masthead.alignfull-navigation.header-layout-default {
		padding-left: 1em;
		padding-right: 1em;
	}
	
	#masthead.alignfull-navigation.header-layout-two .contact-bar {
		padding-left: 1em;
		padding-right: 1em;
	}
	
	#masthead.alignfull-navigation.header-layout-two .main-navigation-container,
	#masthead.alignfull-navigation.header-layout-two .main-logo-container,
	#masthead.alignfull-navigation.header-layout-three .main-contact-container,
	#masthead.alignfull-navigation.header-layout-three .main-logo-container {
		padding-left: 1em;
		padding-right: 1em;
	}
	
	#masthead.alignfull-navigation .contact-bar,
	#masthead.alignfull-navigation.header-layout-default .main-menu-container {
		max-width: 100%;
	}
	
	#masthead.alignfull-navigation.header-layout-default .main-navigation-container,
	#masthead.alignfull-navigation.header-layout-two .main-navigation-container,
	#masthead.alignfull-navigation.header-layout-three .main-contact-container {
	    margin-left: auto;
	    margin-right: 0;
	}
	
	#masthead.alignfull-navigation .main-logo-container {
	    margin-left: 0;
	    margin-right: auto;
	}
	
	.transparent-menu-container {
		position: relative;
	}
	
	.transparent-menu-container .main-menu-container {
		position: absolute;
		top: 0;
		left: 50%;
		transform: translateX(-50%);
	}
	
	.header-layout-three .transparent-menu-container .main-navigation-container,
	.header-layout-two .transparent-menu-container .main-contact-container {
		background-color: transparent!important;
	}
	
	body:not(.theme-preset-active) #masthead .transparent-menu-container .main-menu .navbar-nav > li > a.has-primary-color,
	body:not(.theme-preset-active) #masthead .transparent-menu-container .main-menu .navbar-nav > li.is-style-outline > a, 
	body:not(.theme-preset-active) #masthead .transparent-menu-container .main-navigation-container .navbar-nav > li.current_page_item > a,
	body:not(.theme-preset-active) #masthead .transparent-menu-container .main-contact-container .navbar-nav > li > a.nav-link,
	body:not(.theme-preset-active) #masthead .transparent-menu-container .main-contact-container .navbar-nav > li > a.has-primary-color,
	body:not(.theme-preset-active) #masthead .transparent-menu-container .main-contact-container .navbar-nav > li.is-style-outline > a,
	body:not(.theme-preset-active) #masthead .transparent-menu-container .main-contact-container .navbar-nav > li.current_page_item > a {
		color: #fff;
	}
	
	.page-template-landing-page .main-navigation-container {
    	padding-top: 0;
    	padding-bottom: 0;
	}
	
}

@media screen and (min-width: 1400px) {
	
	body.page-template-fullwidth .alignfull .wp-block-cover__inner-container, 
	body.page-template-fullwidth .alignfull .wp-block-group__inner-container,
	.main-footer .alignfull .wp-block-cover__inner-container, 
	.main-footer .alignfull .wp-block-group__inner-container {
		max-width: 1366px;
	}
	
	.container-fluid .main-menu {
		max-width: 1366px;
		margin: 0 auto;
	}
	body.page-template-fullwidth .container {
		max-width: 1366px;
	}
	.main-menu-container,
	.header-layout-two .contact-bar {
		max-width: 1366px;
	}
	.header-layout-two .main-logo-container,
	.header-layout-two .main-navigation-container, 
	.header-layout-three .main-logo-container,
	.header-layout-three .main-contact-container {
		width: calc(1366px / 2);
	}
	
	#masthead.alignfull-navigation .contact-bar,
	#masthead.alignfull-navigation.header-layout-default .main-menu-container {
		max-width: 100%;
	}
	
	#masthead.alignfull-navigation.header-layout-default .main-navigation-container,
	#masthead.alignfull-navigation.header-layout-two .main-navigation-container,
	#masthead.alignfull-navigation.header-layout-three .main-contact-container {
	    margin-left: auto;
	    margin-right: 0;
	}
	
	#masthead.alignfull-navigation .main-logo-container {
	    margin-left: 0;
	    margin-right: auto;
	}
}

@media screen and (min-width: 1600px) {
	#footer-widget > .container {
		max-width: 1300px;
	}
	#footer-widget row > .col-12:first-of-type {
		padding-left: 0;
	}
	#footer-widget row > .col-12:last-of-type {
		padding-right: 0;
	}
	#footer-widget .col-12:first-of-type > section {
		max-width: 550px;
		margin-left: auto;
	}
	
	#masthead.alignfull-navigation .contact-bar,
	#masthead.alignfull-navigation.header-layout-default .main-menu-container {
		max-width: 100%;
	}
	
	#masthead.alignfull-navigation.header-layout-default .main-navigation-container,
	#masthead.alignfull-navigation.header-layout-two .main-navigation-container,
	#masthead.alignfull-navigation.header-layout-three .main-contact-container {
	    margin-left: auto;
	    margin-right: 0;
	}
	
	#masthead.alignfull-navigation .main-logo-container {
	    margin-left: 0;
	    margin-right: auto;
	}
}

/* CUSTOM STYLES */
.object-fit-contain img{
	-o-object-fit: contain !important;
	object-fit: contain !important;
}
#content.site-content{
	padding-bottom: 0;
}

.btn-solo-center{
	margin: 8px auto !important;
}

@media screen and (max-width: 992px) {
	h2 {
    	font-size: calc(22px + 6 * ((100vw - 320px) / 680));
  	}
  	.wp-block-group.has-background,
  	body.page-template-fullwidth .alignfull .wp-block-group__inner-container {
	  	padding: .75rem;
  	}
}

/* 2023 map */

body {
	overflow-x: hidden;
}

#map-2023 {}
#map-2023 circle {}
#map-2023 [data-name] {}
#map-2023 [data-name='STATIC'] {}
#map-2023 [data-name*='ICON'] {}
#map-2023 [data-name='BARRIE'],
#map-2023 [data-name='BRACEBRIDGE'],
#map-2023 [data-name='COLLINGWOOD'],
#map-2023 [data-name='GRAVENHURST'],
#map-2023 [data-name='HUNTSVILLE'],
#map-2023 [data-name='MIDLAND'],
#map-2023 [data-name='MUSKOKA'],
#map-2023 [data-name='NEWMARKET'],
#map-2023 [data-name='OWEN SOUND'] {}
.map-label {
	display: none;
}
.map-barrie {}
.map-bracebridge {}
.map-collingwood {}
.map-gravenhurst {}
.map-huntsville {}
.map-midland {}
.map-muskoka {}
.map-newmarket {}
.map-owen-sound {}
#map-nav {
	padding: 0;
	max-width: 50%;
	margin: 0 auto;
}
#map-nav > li {
	list-style: none;
	margin-bottom: .25em;
}
#map-nav > li > a {
	display: block;
	font-size: 14px;
	font-weight: 700;
	text-align: center;
	padding: .5em 1.25em;
	text-decoration: none;
	border: 2px solid #000;
	text-transform: uppercase;
}
#map-nav > li > a:hover {
	color: #fff;
	background-color: rgba(208,32,46,1);
}
#map-nav > li > a > span {
	display: block;
	font-weight: 500;
}
