@media all and (max-width: 1300px),
only screen and (-webkit-min-device-pixel-ratio: 2) and (max-width: 1300px),
only screen and (min--moz-device-pixel-ratio: 2) and (max-width: 1300px),
only screen and (-o-min-device-pixel-ratio: 2/1) and (max-width: 1300px),
only screen and (min-device-pixel-ratio: 2) and (max-width: 1300px),
only screen and (min-resolution: 192dpi) and (max-width: 1300px),
only screen and (min-resolution: 2dppx) and (max-width: 1300px) {

:root{
	--inner-width: 95%;
}

.g-recaptcha{
	transform: scale(0.9);
	transform-origin: left center;
}

/* Footer */
#footer{

}

}/* ******************* END 1300px ******************* */

@media all and (min-width: 701px) and (max-width: 1024px),
only screen and (-webkit-min-device-pixel-ratio: 2) and (min-width: 701px) and (max-width: 1024px),
only screen and (min--moz-device-pixel-ratio: 2) and (min-width: 701px) and (max-width: 1024px),
only screen and (-o-min-device-pixel-ratio: 2/1) and (min-width: 701px) and (max-width: 1024px),
only screen and (min-device-pixel-ratio: 2) and (min-width: 701px) and (max-width: 1024px),
only screen and (min-resolution: 192dpi) and (min-width: 701px) and (max-width: 1024px),
only screen and (min-resolution: 2dppx) and (min-width: 701px) and (max-width: 1024px) {
	.noTablet,
	.desktopOnly,
	.mobileOnly{
		display: none !important;
	}
}

@media all and (max-width: 1024px),
only screen and (-webkit-min-device-pixel-ratio: 2) and (max-width: 1024px),
only screen and (min--moz-device-pixel-ratio: 2) and (max-width: 1024px),
only screen and (-o-min-device-pixel-ratio: 2/1) and (max-width: 1024px),
only screen and (min-device-pixel-ratio: 2) and (max-width: 1024px),
only screen and (min-resolution: 192dpi) and (max-width: 1024px),
only screen and (min-resolution: 2dppx) and (max-width: 1024px) {

:root{
	--inner-width: 100%;
}

button[type='submit']{
	padding: 0.5em 1.75em;
}

.halfWidth{
	width: 100%;
	padding: 0 !important;
}

.btn-fancy:after,
.btn-fancy:before{
    width: 16vw;
    height: 5vw;
}
.btn-fancy:before {
    transform: translate(-2.5vw, -50%);
}
.btn-fancy:after {
    transform: translate(2.5vw, -50%);
}

.titleImageBlocks {
    font-size: 0.95em;
}

.imageAsideText p{
	flex: 0.6;
	width: 60%;
}
.imageAsideText img{
	flex: 0.4;
	width: 40%;
}

.gallery a{
	width: 33.3%;
}

#chevronDividerSpacer{
	height: 15vw;
}
#customerServiceCard{
	padding: 1em 1.5em;
	background-position: 25% center;
	margin-top: 1.5em;
}
#customerServiceCard > h2 {
    bottom: 1em;
    left: 1em;
    font-size: 2em;
}
.info-blocks{
/* 	gap: 1em; */
}
#section-services .info-block{
	margin: 1em;
	width: calc(50% - 1em)
}
#section-services .info-block:nth-of-type(odd){
	margin-left: 0;
}
#section-services .info-block:nth-of-type(even){
	margin-right: 0;
}
.info-block h3 {
	font-size: 2.5vw;
}
.info-block hr {
	max-width: 80%;
}
.APT{
	width: 33.3%;
	padding: 0 1.5%;
}
#section-apt a {
	margin-bottom: 1.5em;
}
#reviews-5-star{
	margin: 7.5vw auto;
    width: 20em;
    max-width: 60%;
}
.review {
    display: block;
    width: 25em;
    max-width: 75%;
    margin: 0 auto;
}
.review + .review{
	margin-top: 1.5em;
}
.review:nth-of-type(2){
    width: 30em;
	max-width: 85%;
}
#reviews-google {
    width: 10em;
    margin-top: 3.5em;
    margin-bottom: 1.5em;
}



/* Contact Page */
#contactPage #section-services h2{
	margin-bottom: 0.5em;
}
#scheduleApptLocation,
#scheduleApptForm{
	display: block;
	position: static;
	width: 100%;
	margin: 1em auto;
}
#scheduleApptLocation{
    position: relative;
    top: 0;
    height: 14.5em;
    width: 33em;
	max-width: 100%;
    padding: 2em 1.5em;
}
#scheduleApptLocation h3,
#scheduleApptForm h3{
    font-size: 1.5em;
}
#scheduleApptLocation table{
    position: absolute;
    top: 1.5em;
    right: 1.5em;
    margin: 0 auto;
	text-align: left;
}



/* Repair Pages */
#section-servicePageFirst p{
    text-align: left;
}
.heroCard{
    padding: 1.5em;
}
.heroCard .heroBadge{
	max-width: 22.5em;
	width: 50%;
}
.emergencyBlurb{
	width: 100%;
}
.emergencyBlurb .areasWeServe{
	padding: 0;
}


/* Footer */

.day{
	font-size: calc(1vw + 0.75em);
	padding: 0 1em;
}
.day:nth-of-type(1){
	padding-left: 0;
}
.day:nth-last-of-type(1){
	padding-right: 0;
}
#section-footer .inner{
	background: none;
	padding: 0.5em 1.5em 1em 1.5em;
}
#section-footer .inner:before,
#section-footer .inner:after{
	transform: none;
	opacity: 0.25
}
#section-footer .inner:before{
	left: auto;
	right: 0;
}
#section-footer .inner:after{
	left: 0;
	right: auto;
}
#section-footer .inner:before,
#section-footer .inner:after {
    width: 5em;
    height: 4em;
    opacity: 1;
}
.footer-side {
	text-shadow: 0px 0px 2px #ffffff;
}
#footerLogo {
	width: 8em;
    margin-top: -1.25em;
}
.footer-side:nth-of-type(2){
	padding-right: 0;
}

#copyright{
	font-size: 11px;
}
#copyright .inner{
	padding-top: 0.25em;
	padding-bottom: 0.25em;
}

}/* ******************* END 1024px ******************* */

@media all and (max-width: 700px),
only screen and (-webkit-min-device-pixel-ratio: 2) and (max-width: 700px),
only screen and (min--moz-device-pixel-ratio: 2) and (max-width: 700px),
only screen and (-o-min-device-pixel-ratio: 2/1) and (max-width: 700px),
only screen and (min-device-pixel-ratio: 2) and (max-width: 700px),
only screen and (min-resolution: 192dpi) and (max-width: 700px),
only screen and (min-resolution: 2dppx) and (max-width: 700px) {

:root{
	--inner-v-padding: 10px;
	--inner-h-padding: 12px;
}

.noMobile,
.tabletOnly,
.desktopOnly{
	display: none !important;
}

.btn{
    font-size: calc(2.5vw + 0.25em);
}

.formSide{
	display: block;
	width: 100%;
    padding: 0.75em 0 0 0;
}
form h3 {
    text-align: center;
}
button[type='submit']{
    display: block;
    margin: 0 auto;
    width: 8em;
    margin-bottom: 0.75em;
    padding: 0.75em 2em;
}
.btn-fancy:before,
.btn-fancy:after{
	width: calc(25vw - 3.25em);
}

.titleImageBlocks > li{
	font-size: 0.95em;
}
.titleImageBlocks img{
	width: 3.75em;
	height: 3.75em;
}

.image-spread > *{
	width: 100%;
	margin: 1em auto;
    padding-bottom: 65%;
}

.imageAsideText{
    flex-direction: column !important;
}
.imageAsideText + .imageAsideText{
	margin-top: 5em;
}
.imageAsideText p,
.imageAsideText img{
	flex: 1;
	width: 100%;
}

.gallery a{
	width: 50%;
}

.g-recaptcha{
    transform: none;
	max-width: 100%;
	width: 100%;
}
.g-recaptcha div{
	max-width: 100%;
    width: 100% !important;
}
.g-recaptcha iframe{
	transform: scale(0.9) translate(-50%, 0);
	/* transform-origin: left center; */
	margin-left: -14px;
	position: relative;
	left: 50%;
}

#header-prelinks{
	display: none;
}
#headerContactLink{
	display: inline-block !important;
	vertical-align: middle;
	padding: 0.4em 1em !important;
    margin-top: 0.75em !important;
	color: #ffffff;
	background: var(--clr-highlight);
	font-weight: 700;
/* 	text-transform: uppercase; */
	user-select: none;
	font-size: 1.25em;
}

#chevronDivider + .section{
    padding-top: 17.5vw;
}

#index #section-opening {
    padding: 35vw 0;
}
#index #section-services h2{
	margin-top: 1em;
}
#section-opening h1{
	font-size: 7vw;
}
#section-opening hr {
    width: 70vw;
    max-width: 85%;
}
#section-opening h2{
	font-size: 4.5vw;
}
#section-opening a{
    margin-top: 3.5vw;
}
#index #section-services {
    padding-bottom: 15vw;
}
#section-services h2{
	font-size: calc(5vw + 0.5em);
	text-align: center;
}
.info-blocks {
/* 
    flex-direction: column;
    gap: 3em;
 */
}
.info-block {
	width: auto !important;
	margin: 3.5em 0 !important;
    display: block;
    text-align: center;
}
.info-block p {
	text-align: left;
    font-size: calc(2.5vw + 0.5em);
}
.info-block img {
    width: 100%;
}
.info-block h3 {
	font-size: calc(4vw + 0.5em);
}
.info-block hr{
	width: 100%;
	margin: 0 auto;
}
#services-badges {
    flex-direction: column;
    gap: 2.5em;
}
#services-badges img:nth-of-type(1){
	width: 70%;
}
#services-badges img:nth-of-type(2){
	width: 40%;
}
#services-badges img:nth-of-type(3){
	width: 50%;
}
#services-badges img:nth-of-type(4){
	width: 30%;
}
#services-badges img:nth-of-type(5){
	width: 50%;
}
#customerServiceCard{
	background-position: center center;
    margin: 0 auto;
    width: 100%;
    padding: 1em 1.5em 1.5em 1.5em;
}
#customerServiceCard > h2{
	position: static;
    font-size: calc(5vw + 1em);
}
#customerServiceCard > h2 br:nth-of-type(2){
	display: none;
}
.csc-item{
	width: 100%;
	max-width: none;
}
.csc-item h2{
	margin-top: 1em !important;
}
.APT{
	width: 33.3%;
	padding: 1.5em 0;
}
a.schedule-service{
	padding-top: 0.75em;
	padding-bottom: 0.75em;
}
#reviews-google{
	margin: 3.5em auto 1.5em auto;
}



/* Contact Page */
#scheduleApptLocation{
	padding: 1em;
	width: 25em;
	height: auto;
	text-align: center;
}
#scheduleApptLocation a br{
	display: none;
}
#scheduleApptLocation table{
	position: static;
	text-align: left;
}



/* Repair Pages */
.heroCard{
    display: flex;
    flex-direction: column-reverse;
    align-items: center;
    padding: 2.5em 1.5em;
}
.heroCard p,
.heroCard img{
	padding: 0;
}
.heroCard p{
	width: 100% !important;
}
.heroCard img {
    width: auto !important;
    max-width: 85% !important;
    display: block !important;
    margin-right: auto;
    margin-left: auto;
}
.heroCard .heroBadge{
    max-width: 75% !important;
}


/* Footer */
#section-hours {
    background-position: 35% top;
}
#section-hours h2 {
    margin-top: 0;
}
#section-footer .inner {
    padding: 0.5em;
}
#section-footer .inner:before,
#section-footer .inner:after {
    width: 20vw;
    height: 16vw;
}
#footerLogo {
    width: 100%;
	max-width: 100%;
    margin: -4vw auto 0 auto;
}
.footer-side{
	display: block;
	width: 100%;
	border: none !important;
    padding: 0.5em !important;
    width: 18.5em;
    max-width: 100%;
    margin-right: auto;
    margin-left: auto;
}
.footer-side:nth-of-type(1){
    position: static;
    padding-top: 0 !important;
    text-align: center;
}
.footer-side:nth-of-type(2){
    margin-top: calc(4em + 2.5vw);
    padding-bottom: calc(2em + 5vw) !important;
}
.footer-side h2 {
	text-align: center;
    top: -1.75em;
}
.footer-side h2 img {
    height: 1.25em;
}

#copyright{
    font-size: 9px;
}
#copyright .inner {
    padding-top: 0.5em;
    padding-bottom: 0.5em;
}

}/* ******************* END 700px ******************* */


@media all and (max-width: 400px),
only screen and (-webkit-min-device-pixel-ratio: 2) and (max-width: 400px),
only screen and (min--moz-device-pixel-ratio: 2) and (max-width: 400px),
only screen and (-o-min-device-pixel-ratio: 2/1) and (max-width: 400px),
only screen and (min-device-pixel-ratio: 2) and (max-width: 400px),
only screen and (min-resolution: 192dpi) and (max-width: 400px),
only screen and (min-resolution: 2dppx) and (max-width: 400px) {
.btn-fancy:before,
.btn-fancy:after{
	display: none;
}

}/* ******************* END 400px ******************* */