:root{
	--clr-primary: #5c0017;/* Red */
	--clr-primary-rgb: 92, 0, 23;
	--clr-highlight: #871026;/* Lighter Red */
	--clr-highlight-rgb: 135, 16, 38;

	--header-clr-primary: var(--clr-primary);
	--header-clr-primary-rgb: var(--clr-primary-rgb);
	--header-clr-highlight: var(--clr-highlight);
	--header-clr-highlight-rgb: var(--clr-highlight-rgb);
	--header-clr-bg: #ffffff;
	--header-clr-bg-rgb: 255, 255, 255;
	--header-clr-bg-highlight: #eeeeee;
	--header-clr-bg-highlight-rgb: 238, 238, 238;

	--header-btn-color: var(--header-clr-primary);
	--header-btn-color-rgb: var(--header-clr-primary-rgb);
	--header-btn-color-active: var(--header-clr-highlight);
	--header-btn-color-active-rgb: var(--header-clr-highlight-rgb);

	--clr-light: #ffffff;
	--clr-dark: #000000;
	--clr-inner: #eeeeee;
	--clr-outer: var(--clr-light);

	--inner-width: 90%;
	--inner-v-padding: 15px;
	--inner-h-padding: 25px;

	--header-height: var(--menu-size, 50px);/* #cssmenu size if it's included, otherwise fallback to the specified height. */
	
	--sectionAptPaddingTop: 12vw;
	--sectionAptPaddingBottom: 12.75vw;
	--sectionHoursPadding: 12.75vw;
}
html{
	margin: 0;
	padding: 0;
}
body{
	background: var(--clr-outer);
	margin: 0;
	padding: 0;
    font-family: "acumin-pro", arial, helvetica, sans-serif;
    font-size: 16px;
}

::-moz-selection {
  color: no-change;
  background: rgba(var(--clr-highlight-rgb), 0.35);
}

::selection {
  color: no-change;
  background: rgba(var(--clr-highlight-rgb), 0.35);
}

/* Fonts */
/*

"acumin-pro"
light (300)
semibold (600)
bold (700)


"acumin-pro-condensed"
medium (500)
semibold (600)
  > Italic
    bold (700)

"hotel-solid"
bold (400)

*/

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


.section{
	background-size: cover;
	background-position: center center;
}

.inner{
    position: relative;
    z-index: 1;
	width: var(--inner-width);
	max-width: 1200px;
    margin: 0 auto;
    box-sizing: border-box;
	padding: var(--inner-v-padding) var(--inner-h-padding);
}
.fullwidth{
	position: relative;
	max-width: 100%;
	width: 100%;
}

a,
a:hover {
	color: var(--clr-primary);
	outline: none;
	border: none;
	text-decoration: none;
}
p a {
    text-decoration: underline;
}
a:hover,
a:focus-visible{
	color: var(--clr-highlight);
}
img{
	max-width: 100%;
}
h1, h2, h3, h4, h5{
	font-family: "hotel-solid", sans-serif;
}
h2{
	margin-bottom: 0.5em;
	line-height: 1.3em;
}
hr{
	border: none;
	border-bottom: 3px solid var(--clr-highlight);
}
hr.narrow{
	width: 75%;
	max-width: 50em;
}
p {
    font-size: 1.1em;
}
ul{
	font-weight: 600;
    padding-left: 1.75em;
    font-size: 1.15em;
}
li{
	list-style: none;
}
ul.ulBlocks{
	padding-left: 0;
}
h2 + ul.ulBlocks{
	margin-top: 0;
}
ul.ulBlocks li{
	display: inline-block;
	vertical-align: middle;
	box-sizing: border-box;
	width: 50%;
	padding-left: 1em;
}
li:before{
    content: '\2022';
    display: inline-block;
    color: var(--clr-highlight);
    font-weight: 700;
    width: 0.65em;
    margin-left: -0.65em;
}
#header ul{
	font-size: 1em;
}
#header li:before{
	display: none;
}

:focus-visible,
a:focus-visible{
	outline: 2px dashed var(--clr-highlight);
	outline-offset: 2px;
}


:disabled{
	cursor: not-allowed !important;
    color: #616161 !important;
    background-color: #cecece !important;
    border-color: #616161 !important;
    box-shadow: none !important;
}

::placeholder{
	opacity: 0.75;
}
:hover::placeholder{
	opacity: 0.5;
}
:focus-visible::placeholder{
	opacity: 0.25;
}
:disabled::placeholder{
	opacity: 0.75 !important;
}

.btn,
a.btn,
button{
	appearance: none;
	display: inline-block;
	vertical-align: middle;
	padding: 0.6em 1em;
    line-height: 1em;
	color: #ffffff;
	background: var(--clr-highlight);
    font-size: 1em;
	font-weight: 700;
	text-transform: uppercase;
	user-select: none;
	border: none;
}
.btn:hover,
.btn:focus-visible,
a.btn:hover,
a.btn:focus-visible,
button:hover,
button:focus-visible{
	background: var(--clr-primary);
}
.btn.btn-decorated,
a.btn.btn-decorated,
button.btn-decorated{
	background: linear-gradient(to bottom, var(--clr-highlight), var(--clr-primary));
	border: 2px solid #000000;
}
.btn.btn-decorated:hover,
.btn.btn-decorated:focus-visible,
a.btn.btn-decorated:hover,
a.btn.btn-decorated:focus-visible,
button.btn-decorated:hover,
button.btn-decorated:focus-visible{
	background: var(--clr-highlight);
}
.btn.btn-decorated.btn-gray,
a.btn.btn-decorated.btn-gray,
button.btn-decorated.btn-gray{
	color: var(--clr-highlight);
	background: linear-gradient(to bottom, #c3c4c5, #8b8e91);
}
.btn.btn-decorated.btn-gray:hover,
.btn.btn-decorated.btn-gray:focus-visible,
a.btn.btn-decorated.btn-gray:hover,
a.btn.btn-decorated.btn-gray:focus-visible,
button.btn-decorated.btn-gray:hover,
button.btn-decorated.btn-gray:focus-visible{
	background: #c3c4c5;
}
.btn:disabled,
a.btn:disabled,
button:disabled{
    color: #616161 !important;
    background: #cecece !important;
    border-color: #616161 !important;
}
.fancyBtnContainer{
	text-align: center;
	margin: 2.5em auto;
}
.btn-fancy{
	position: relative;
}
.btn-fancy:after,
.btn-fancy:before{
    content: '';
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    position: absolute;
    top: 50%;
    bottom: auto;
    right: auto;
    left: auto;
    width: 9em;
    height: 2.5em;
    pointer-events: none;
}
.btn-fancy:before{
	background-image: url('/images/feather-2-left.png');
    right: 100%;
    transform: translate(-1.25em, -50%);
}
.btn-fancy:after{
	background-image: url('/images/feather-2-right.png');
    left: 100%;
    transform: translate(1.25em, -50%);
}


/* Inputs and Forms */
form{
    background: rgba(255,255,255,0.75);
    border: 3px solid var(--clr-highlight);
    padding: 0.5em;
    margin: 1em auto;
}
form h3{
	margin: 0 auto;
}
.formSide{
	display: inline-block;
	vertical-align: top;
	box-sizing: border-box;
	padding: 1em;
	width: 50%;
}
.formBlock{
	padding-top: 1em;
}
input,
textarea,
select{
	display: inline-block;
	box-sizing: border-box;
	width: 100%;
	font-size: 1em;
	line-height: 1.25em;
	font-family: inherit;
	padding: 0.5em;
    border: 1px solid var(--clr-primary);
    box-shadow: none;
	margin-bottom: 0.5em;
	background: #ffffff;
}
input:hover,
input:focus-visible,
textarea:hover,
textarea:focus-visible,
select:hover,
select:focus-visible{
	border-color: var(--clr-highlight);
	outline: 0;
	box-shadow: inset 0px 0px 2px var(--clr-highlight);
}
input:nth-last-child(1),
textarea:nth-last-child(1),
select:nth-last-child(1){
	margin-bottom: 0;
}
textarea{
	resize: vertical;
    min-height: 5em;
	max-height: 15em;
}
select,
.inputImage,
.date{
	appearance: none;
	background-image: url(/images/chevron-red-arrow.png);
	background-position: center right 0.5em;
	background-repeat: no-repeat;
	background-size: 1em auto;
}
select:hover,
select:focus-visible{
	background-image: url(/images/chevron-red-arrow-highlight.png);
}
select:disabled,
.inputImage:disabled{
	background-image: url(/images/chevron-red-arrow-gray.png);
}
.date{
	background-image: url(/images/calendar.png);
    background-size: 1.25em auto;
    cursor: default;
}
.date:hover,
.date:focus-visible{
	background-image: url(/images/calendar-highlight.png);
}
.date:disabled{
	background-image: url(/images/calendar-gray.png);
}
button[type='submit']{
	border: 1px solid transparent;
    padding: 0.5em 1.5em;
}

.halfWidth{
	display: inline-block;
	vertical-align: top;
	width: 50%;
	box-sizing: border-box;
	padding: 0 calc(var(--inner-h-padding) * 0.5) 0 0;
}
.halfWidth + .halfWidth{
	padding: 0 0 0 calc(var(--inner-h-padding) * 0.5);
}
.titleImageBlocks{
    appearance: none;
	color: var(--clr-highlight);
	text-align: center;
	font-weight: 600;
    line-height: 1em;
    padding: 0 !important;
    font-size: 1em !important;
}
.titleImageBlocks > li{
	appearance: none;
	list-style: none;
	display: inline-block;
	vertical-align: top;
	box-sizing: border-box;
	padding: 1em 0em;
	width: 25%;
	max-width: 8.5em;
	min-width: 6.15em;
}
.titleImageBlocks > li:before,
.titleImageBlocks > li:after{
	display: none !important;
}
.titleImageBlocks img{
    width: 5em;
    height: 5em;
    object-fit: scale-down;
    user-select: none;
    pointer-events: none;
}
.titleImageBlocks span{
	display: block;
    margin-top: 0.5em;
}

.image-spread{
	
}
.image-spread > *{
    display: inline-block;
    vertical-align: middle;
    box-sizing: border-box;
    margin: 1.5%;
    padding: 0;
    width: 22.75%;
    padding-bottom: 15%;
    height: 0;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: 0.65em;
}
.image-spread > *:nth-child(1){
	margin-left: 0;
}
.image-spread > *:nth-last-child(1){
	margin-right: 0;
}
.centeredLink{
	text-align: center;
}
.centeredLink a{
	display: inline-block;
	padding: 0.5em 1em;
}
.centeredLink a:hover{
	text-decoration: underline;
}

.gallery a{
	position: relative;
	display: inline-block;
	vertical-align: middle;
	box-sizing: border-box;
	width: 25%;
	padding: 3px;
	transition: padding 0.25s ease-in-out;
}
.gallery a:hover,
.gallery a:focus-visible{
	padding: 0;
}
.gallery a:after{
	content: '';
	position: absolute;
	top: 3px;
	right: 3px;
	bottom: 3px;
	left: 3px;
	background: #000000;
	opacity: 0;
	transition: opacity 0.25s ease-in-out;
}
.gallery:has(a:is(:hover, :focus-visible)) a:not(:hover):not(:focus-visible):after{
	opacity: 0.25;
}
.gallery img{
	vertical-align: middle;
	width: 100%;
	height: auto;
}

/* Calendar (jQuery UI) */
.ui-datepicker{
	display: none;/* Hide it initially */
	cursor: pointer;
	background: #fff;
	margin-top: 4px;
	border: 2px solid var(--clr-primary);
	border-radius: 4px;
	box-shadow: 2px 4px 40px #000;
}
.ui-datepicker-header{
	position: relative;
	padding: 10px 10px 0px 10px;
}
.ui-datepicker-prev,
.ui-datepicker-next{
	position: absolute;
	top: 50%;
	bottom: auto;
	right: auto;
	left: auto;
	transform: translate(0, -50%);
	font-size: 14px;
	margin-bottom: -4px;
	color: #999 !important;
	padding: 10px;
}
.ui-datepicker-prev:hover,
.ui-datepicker-next:hover{
	color: var(--clr-highlight) !important;
	font-weight: bold;
}
.ui-datepicker-prev{
	left: 10px;
}
.ui-datepicker-next{
	right: 10px;
}
.ui-datepicker-prev:before{
	content: '<';
}
.ui-datepicker-next:after{
	content: '>';
}
.ui-datepicker-prev > span,
.ui-datepicker-next > span{
	display: none;
}
.ui-datepicker-title{
	background: #fff;
	border-bottom: 2px solid #000;
	padding: 0px 4px 6px 4px;
	font-weight: bold;
	font-size: 17px;
	text-align: center;
	color: var(--clr-primary);
}
table.ui-datepicker-calendar{
/* 	border-collapse: collapse; */
	padding: 0px 10px 10px 10px;
}
table.ui-datepicker-calendar th{
}
.ui-datepicker-calendar td{
	background: rgba(var(--clr-primary-rgb), 0.05);
	padding: 5px 10px;
	text-align: center;
}
.ui-datepicker-calendar td span{
}
table.ui-datepicker-calendar a{
	font-weight: bold;
	color: var(--clr-primary);
}
table.ui-datepicker-calendar td:hover{
	background: #f9fbff;
	box-shadow: 0px 0px 0px 1px inset rgba(var(--clr-highlight-rgb), 0.15);
}
table.ui-datepicker-calendar td:hover a{
	color: var(--clr-highlight);
}
td.ui-datepicker-unselectable{
	box-shadow: none !important;
	background: #eee !important;
	color: #999 !important;
}
td.ui-datepicker-other-month{
	box-shadow: none !important;
	background: #f9f9f9 !important;
	color: #fff !important;
}

/* Header */
#header{
	position: fixed;
	left: 0;
	right: 0;
	z-index: 1000;
	height: auto;
	background: var(--header-clr-bg);
	box-shadow: 0px 7px 15px -7px #000000;
    border-bottom: 5px solid #6d6d6d;
}
#header .inner{
	padding: 0;
}
#header-prelinks{
	text-align: right;
	margin-bottom: 0.5em;
}
#header-prelinks a{
	display: inline-block;
	vertical-align: middle;
}
a#h-pl-contact:hover,
a#h-pl-contact:focus-visible{
	box-shadow: 0 0 0.3em #000000;
}
a#h-pl-address{
	color: #000000;
	font-weight: 300;
	padding: 0.25em 1em;
}
a#h-pl-address:hover,
a#h-pl-address:focus-visible{
	color: var(--clr-highlight);
}

/* Page */
#page{
	padding-top:  var(--header-height);
}

#section-opening{
    padding: 6.5vw 0 10vw 0;
	text-align: center;
	color: #ffffff;
	background-image: url('/images/bg-1.jpg');
	background-image: -webkit-image-set(
		url('/images/bg-1.webp') type("image/webp"),
		url('/images/bg-1.jpg') type("image/jpg")
	);
	background-image: image-set(
		url('/images/bg-1.webp') type("image/webp"),
		url('/images/bg-1.jpg') type("image/jpg")
	);
	position: relative;
	z-index: 1;
}
#index #section-opening{
	padding: 18vw 0 14.5vw 0;
}
#section-opening .inner{
	filter: drop-shadow(0px 0px 15px #000000);
}
#section-opening h1{
	font-size: 3em;
}
#section-opening h2{
	font-size: 1.75em;
	font-weight: 600;
	font-family: inherit;
	margin-bottom: 0.83em;
}
#index #section-opening h2{
	text-transform: uppercase;
}
#section-opening hr{
	width: 40em;
	max-width: 75%;
}
.chevronDivider{
    /* position: absolute; */
    /* top: auto; */
    /* bottom: -11.5vw; */
    /* right: 0; */
    /* left: 0; */
    position: relative;
    background: url('/images/chevron-divider.png') center center;
	background-image: -webkit-image-set(
		url('/images/chevron-divider.webp') type("image/webp"),
		url('/images/chevron-divider.png') type("image/png")
	);
	background-image: image-set(
		url('/images/chevron-divider.webp') type("image/webp"),
		url('/images/chevron-divider.png') type("image/png")
	);
    background-size: cover;
	height: 37.5vw;
	margin-top: -22.55vw;
    z-index: 1;
    pointer-events: none;
}
.chevronDivider + .section{
	padding-top: 11.5vw !important;
	margin-top: -15vw !important;
}
.chevronDividerThin{
    /* position: absolute; */
    /* top: auto; */
    /* bottom: -8vw; */
    /* right: 0; */
    /* left: 0; */
    background: none;
    background-image: url('/images/chevron-divider-thin.png');
	background-image: -webkit-image-set(
		url('/images/chevron-divider-thin.webp') type("image/webp"),
		url('/images/chevron-divider-thin.png') type("image/png")
	);
	background-image: image-set(
		url('/images/chevron-divider-thin.webp') type("image/webp"),
		url('/images/chevron-divider-thin.png') type("image/png")
	);
	background-position: top center;
    background-size: cover;
    height: 24.5vw;
    margin-top: -17vw;
    position: relative;
    z-index: 1;
    pointer-events: none;
}
.chevronDividerThin.chevronDividerThinTop{
    background-image: url('/images/chevron-divider-thin-opaqueBottom.png');
	background-image: -webkit-image-set(
		url('/images/chevron-divider-thin-opaqueBottom.webp') type("image/webp"),
		url('/images/chevron-divider-thin-opaqueBottom.png') type("image/png")
	);
	background-image: image-set(
		url('/images/chevron-divider-thin-opaqueBottom.webp') type("image/webp"),
		url('/images/chevron-divider-thin-opaqueBottom.png') type("image/png")
	);
}
.chevronDividerThin.chevronDividerThinBottom{
    background-image: url('/images/chevron-divider-thin-opaqueTop.png');
	background-image: -webkit-image-set(
		url('/images/chevron-divider-thin-opaqueTop.webp') type("image/webp"),
		url('/images/chevron-divider-thin-opaqueTop.png') type("image/png")
	);
	background-image: image-set(
		url('/images/chevron-divider-thin-opaqueTop.webp') type("image/webp"),
		url('/images/chevron-divider-thin-opaqueTop.png') type("image/png")
	);
}
.chevronDividerThin.chevronDividerThinBottom + .section{
	margin-top: -15.5vw !important;
    padding-top: 14.5vw !important;
}

.imageAsideText{
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    gap: 1.5em;
}
.imageAsideText p,
.imageAsideText img{
	flex: 1;
	display: inline-block;
	vertical-align: middle;
	margin: 0 auto;
}
.imageAsideText p{
	width: 65%;
	flex: .65;
}
.imageAsideText img{
	width: 35%;
	flex: .35;
    height: auto;
    object-fit: contain;
    object-position: center center;
}
.imageAsideText:nth-of-type(odd){
	flex-direction: row-reverse;
}
.imageAsideText + .imageAsideText{
	margin-top: 1.5em;
}

#section-services{
	padding: 0;
	background-image: url('/images/bg-2.jpg');
	background-image: -webkit-image-set(
		url('/images/bg-2.webp') type("image/webp"),
		url('/images/bg-2.jpg') type("image/jpg")
	);
	background-image: image-set(
		url('/images/bg-2.webp') type("image/webp"),
		url('/images/bg-2.jpg') type("image/jpg")
	);
    background-attachment: fixed;
}
#section-services .info-block{
	width: calc(25% - 1.5em);
}
#section-services .inner{
	max-width: 1400px;
}
#section-services h2{
	color: var(--clr-primary);
	font-size: 2em;
	margin: 0 auto 1.5em 0;
	text-transform: uppercase;
}
.info-blocks{
/* 
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: stretch;
    gap: 2em;
 */
	text-align: center;
}
.info-block{
	text-align: left;
/*     flex: 1; */
	display: inline-block;
	vertical-align: top;
	width: calc(33.333% - 1.34em);
	margin: 0 1em;
}
.info-block:nth-of-type(1){
	margin-left: 0;
}
.info-block:nth-last-of-type(1){
	margin-right: 0;
}
.info-block img{
	border-radius: 0.75em;
	user-select: none;
	pointer-events: none;
}
#page .info-block h3{
	font-size: 1.5em;
/* 	text-transform: uppercase; */
    margin-bottom: 0.3em;
}
.info-block hr{
    max-width: 85%;
    margin: 0 auto 0 0;
}
.info-block p{
    margin: 0.75em auto;
}
.info-block span{
	display: block;
	color: #a4a6a8;
	font-style: italic;
    margin: 0.75em auto;
}
.info-block a{
	font-weight: 300;
}
#services-badges{
    margin: 5em auto 2.5em auto;
    width: 95%;
    max-width: calc(1200px - 5em - var(--inner-h-padding));
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: space-around;
    gap: 2%;
}
#services-badges img{
	flex: 1;
	vertical-align: middle;
	height: auto;
	width: auto;
	pointer-events: none;
	user-select: none;
	max-width: 100%;
}
#services-badges img:nth-of-type(1){
	width: 25%;
}
#services-badges img:nth-of-type(2){
	flex: 0.65;
	width: 18%;
}
#services-badges img:nth-of-type(3){
	flex: 0.65;
	width: 19.5%;
}
#services-badges img:nth-of-type(4){
	flex: 0.3;
	width: 10%;
}
#services-badges img:nth-of-type(5){
	flex: 0.65;
	width: 19.5%;
}

#section-guarantee{
	background-image: url('/images/bg-diamond-plate.jpg');
	background-image: -webkit-image-set(
		url('/images/bg-diamond-plate.webp') type("image/webp"),
		url('/images/bg-diamond-plate.jpg') type("image/jpg")
	);
	background-image: image-set(
		url('/images/bg-diamond-plate.webp') type("image/webp"),
		url('/images/bg-diamond-plate.jpg') type("image/jpg")
	);
	border-top: 3px solid var(--clr-highlight);
}
#customerServiceCard{
	position: relative;
	z-index: 2;
	background: url('/images/customer-service-bg.jpg') center center;
	background-image: -webkit-image-set(
		url('/images/customer-service-bg.webp') type("image/webp"),
		url('/images/customer-service-bg.jpg') type("image/jpg")
	);
	background-image: image-set(
		url('/images/customer-service-bg.webp') type("image/webp"),
		url('/images/customer-service-bg.jpg') type("image/jpg")
	);
	background-size: cover;
	border-radius: 0.75em;
	color: #ffffff;
    padding: 2em 2.5em;
    box-sizing: border-box;
    margin: 5em auto 2.5em auto;
    width: 95%;
}
#customerServiceCard > h2{
    position: absolute;
    bottom: 0.75em;
    left: 0.75em;
    margin: 0;
    line-height: 1.3em;
    font-size: 3em;
    font-family: "acumin-pro-condensed", arial, helvetica, sans-serif;
    text-shadow: 0.1em 0.2em 0.3em #000000;
}
.csc-item{
	margin: 0 0 0 auto;
	width: 25em;
	max-width: 55%;
}
.csc-item h2, .csc-item p{
	margin: 0 auto;
}
.csc-item + .csc-item h2{
	margin-top: 0.5em;
}
#chevronRedDivider{
    /* position: absolute; */
    /* top: 100%;
    bottom: auto;
    right: 0;
    left: 0; */
    background: url('/images/chevron-red-divider.png') top center;
    background-size: cover;
    height: var(--sectionAptPaddingTop);
    margin-top: calc(var(--sectionAptPaddingTop) * -1);
    pointer-events: none;
    position: relative;
    z-index: 0;
}

#section-apt{
	text-align: center;
	background: #700c1e;
}
.APT{
	display: inline-block;
	vertical-align: middle;
	box-sizing: border-box;
	width: 30%;
	padding: 0 2.5%;
	height: auto;
	user-select: none;
	pointer-events: none;
}
a.schedule-service{
	font-size: 1.25em;
    margin-bottom: 0.25em;
    padding: 0.5em 1em;
}
a.schedule-service span{
	display: inline-block;
	vertical-align: middle;
	margin-left: 0.5em;
}
a.schedule-service img{
	vertical-align: middle;
	height: 1.5em;
	width: auto;
	margin-right: 0.25em;
	margin-left: 0.25em;
}
a.schedule-service:hover img,
a.schedule-service:focus-visible img{
	margin-right: 0em;
	margin-left: 0.5em;
}

#section-reviews{
	text-align: center;
	background: #fefefe;
	padding-bottom: var(--sectionHoursPadding);
}
#chevronRedDividerAbove{
    /* position: absolute; */
    /* top: auto;
    bottom: 100%;
    right: 0;
    left: 0; */
    background: url('/images/chevron-red-divider.png') bottom center;
    background-size: cover;
    height: var(--sectionAptPaddingBottom);
    /* margin-bottom: -12vw; */
    pointer-events: none;
    position: relative;
    z-index: 1;
}
#chevronRedDividerAbove + .section{
	margin-top: calc((var(--sectionAptPaddingBottom) * -1) + 1px);
}
#reviews{
	
}
#reviews-5-star{
	display: block;
	margin: 7.5vw auto 2.5em auto;
	width: 30em;
    max-width: 50%;
    user-select: none;
    pointer-events: none;
}
.review{
	display: inline-block;
	vertical-align: middle;
	background: #ffffff;
	border: 1px solid #b9bbbd;
	box-sizing: border-box;
	width: 25%;
	border-radius: 0.5em;
	margin: 0 1%;
	padding: 1em;
}
.review:nth-of-type(2){
	width: 30%;
}
.review p{
	color: var(--clr-highlight);
	margin: 0 auto;
}
#reviews-google{
	display: block;
	margin: 3em 8% 0 auto;
	width: 12.5em;
	height: auto;
}
#reviews-google img{
	width: 100%;
	user-select: none;
	pointer-events: none;
}



/* Contact Page */
#contactPage #section-services{
	padding-bottom: var(--sectionHoursPadding);
}
#schedule-appointment{
	position: relative;
	top: -150px;
}
#scheduleApptLocation,
#scheduleApptForm{
	display: inline-block;
	vertical-align: top;
	box-sizing: border-box;
	position: sticky;
	top: 150px;
}
#scheduleApptLocation{
	width: 17em;
    background: rgba(255,255,255,0.5);
    border: 3px solid rgba(var(--clr-highlight-rgb), 0.5);
    padding: 1.5em 1em;
    margin: 1em auto 1em 1em;
}
#scheduleApptLocation a{
	display: block;
	margin: 0.5em auto;
	font-size: 1.25em;
	font-weight: 600;
	line-height: 1.25em;
}
#scheduleApptLocation a span{
	display: inline-block;
}
#scheduleApptLocation h3,
#scheduleApptForm h3{
	font-family: inherit;
    line-height: 1em;
}
#scheduleApptLocation h3{
	margin: 0 auto 0.75em auto;
}
#scheduleApptLocation table{
	border-collapse: collapse;
    font-size: 1.05em;
    margin: 0 auto 0 0;
}
#scheduleApptLocation td{
	padding: 0 0.5em;
}
#scheduleApptLocation td:nth-of-type(1){
	padding-left: 0;
}
#scheduleApptLocation td:nth-of-type(2){
	padding-right: 0;
}
#scheduleApptForm{
	width: calc(100% - 19em);
	margin: 1em 1em 1em auto;
}
#scheduleApptForm input[name="Year"]{
	width: calc(25% - 0.25em);
	margin-right: 0.25em;
}
#scheduleApptForm input[name="Make"]{
	width: calc(75% - 0.25em);
	margin-left: 0.25em;
}
#scheduleApptForm .date{
	width: calc(65% - 0.25em);
	margin-right: 0.25em;
}
#scheduleApptForm select{
	width: calc(35% - 0.25em);
	margin-left: 0.25em;
}



/* Repair pages */
.repairPage p{
    margin: 0.5em auto;
}
.repairPage p + p{
    margin-top: 1em;
}
.repairPage h3{
    margin: 1em auto 0.5em auto;
}
.repairPage h3 img{
	width: 15em;
	height: auto;
	max-width: 100%;
	vertical-align: middle;
}
.repairPage h3 + ul{
	margin-top: -0.5em;
}
#section-servicePageFirst p{
    text-align: justify;
}
#section-servicePageFirst h2{
	font-family: inherit;
}
#section-servicePageFirst .inner:nth-of-type(1) .halfWidth:nth-of-type(1) h2:nth-of-type(1){
	margin-top: 0;
}
#section-servicePageFirst h3{
	font-family: inherit;
	color: var(--clr-highlight);
	font-weight: 600;
	text-transform: uppercase;
}
#section-servicePageLast{
	padding-top: 2.5em;
}
.repairPage .titleImageBlocks > li[data-displaypage]{
	display: none;
}
#autoRepairPage .titleImageBlocks > li[data-displayPage*="ar"],
#truckRepairPage .titleImageBlocks > li[data-displayPage*="tr"],
#emergencyRepairPage .titleImageBlocks > li[data-displayPage*="tr"]{
	display: inline-block;
}
#section-hero{
	background-attachment: fixed;
	border-top: 3px solid var(--clr-primary);
	padding: 10vw 0 20vw 0;
}
.heroCard{
	--clr-1: var(--clr-primary);
	position: relative;
	background: #ffffff;
	box-sizing: border-box;
	padding: 3em 2.5em;
	border: 2px solid var(--clr-1);
	box-shadow: 0.15em 0.3em 1em -0.1em #000000;
    width: 60em;
    max-width: 95%;
	margin: 0 auto;
}
.hero-alignment{
	--clr-1: #470670;
}
.hero-performance{
	--clr-1: #efc559;
}
.heroCard + .heroCard{
	margin-top: 7.5em;
}
.heroCard .heroBadge{
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 45%;
    filter: drop-shadow(0px 0px 0.3em #000000);
    padding: 0 !important;
}
.heroCard p,
.heroCard img:not(.heroBadge){
	margin-top: 1.25em;
	display: inline-block;
	vertical-align: middle;
	box-sizing: border-box;
	width: 50%;
}
.heroCard p{
	padding-right: 1em;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 0;
}
.heroCard img{
	padding-left: 1em;
	pointer-events: none;
	user-select: none;
}
.heroCard a{
	text-decoration: underline;
}
#section-hero{
	background-image: url('/images/bg-truck-repair-faded.jpg');
}



/* Auto Repair Page */
#autoRepairPage #section-opening{
    background-image: url('/images/bg-auto-repair.jpg');
	background-image: -webkit-image-set(
		url('/images/bg-auto-repair.webp') type("image/webp"),
		url('/images/bg-auto-repair.jpg') type("image/jpg")
	);
	background-image: image-set(
		url('/images/bg-auto-repair.webp') type("image/webp"),
		url('/images/bg-auto-repair.jpg') type("image/jpg")
	);
}
#autoRepairPage .heroCard p{
	width: 65%;
}
#autoRepairPage .heroCard img{
	width: 35%;
}
#autoRepairPage #section-hero{
	background-image: url('/images/bg-auto-repair-faded.jpg');
	background-image: -webkit-image-set(
		url('/images/bg-auto-repair-faded.webp') type("image/webp"),
		url('/images/bg-auto-repair-faded.jpg') type("image/jpg")
	);
	background-image: image-set(
		url('/images/bg-auto-repair-faded.webp') type("image/webp"),
		url('/images/bg-auto-repair-faded.jpg') type("image/jpg")
	);
}



/* Truck Repair Page */
#truckRepairPage #section-opening{
    background-image: url('/images/bg-truck-repair.jpg');
	background-image: -webkit-image-set(
		url('/images/bg-truck-repair.webp') type("image/webp"),
		url('/images/bg-truck-repair.jpg') type("image/jpg")
	);
	background-image: image-set(
		url('/images/bg-truck-repair.webp') type("image/webp"),
		url('/images/bg-truck-repair.jpg') type("image/jpg")
	);
}



/* Fleet Maintenance Page */
#fleetMaintenancePage #section-opening{
    background-image: url('/images/bg-fleet-maintenance.jpg');
	background-image: -webkit-image-set(
		url('/images/bg-fleet-maintenance.webp') type("image/webp"),
		url('/images/bg-fleet-maintenance.jpg') type("image/jpg")
	);
	background-image: image-set(
		url('/images/bg-fleet-maintenance.webp') type("image/webp"),
		url('/images/bg-fleet-maintenance.jpg') type("image/jpg")
	);
}
#fleetMaintenancePage #section-servicePageFirst > .inner > .halfWidth{
	padding-right: 2.5em;
}
#fleetMaintenancePage #section-servicePageFirst > .inner > .halfWidth + .halfWidth{
	padding-left: 2.5em;
	padding-right: 0;
}



/* 24 Hour Emergency Repair Page */
#emergencyRepairPage #section-opening{
    background-image: url('/images/bg-24h-roadside.jpg');
	background-image: -webkit-image-set(
		url('/images/bg-24h-roadside.webp') type("image/webp"),
		url('/images/bg-24h-roadside.jpg') type("image/jpg")
	);
	background-image: image-set(
		url('/images/bg-24h-roadside.webp') type("image/webp"),
		url('/images/bg-24h-roadside.jpg') type("image/jpg")
	);
}
h2.emergencyRepair{
	margin-bottom: 0;
	margin-top: 2.5em;
}
h2.emergencyRepair + ul.ulBlocks{
	margin-bottom: 2.5em;
}
#emergencyRepairPage hr.narrow{
	margin: 2em auto;
}
.emergencyBlurb{
	width: calc(100% - 3em);
	margin: 0 0 0 auto;
}
.emergency-badge{
	display: block;
	margin: 2.5em auto 1.5em auto;
    text-align: center;
}
.emergencyBlurb img{
	display: block;
    margin: 0 auto;
}
.emergencyBlurb > a + img{
	border-radius: 1em;
}
.areasWeServe{
	margin: 1.5em 0;
}
.emergencyBlurb .areasWeServe{
	padding: 0 1.5em;
}
.areasWeServe h2{
	margin-top: 0;
}
.areasWeServe p{
	margin-bottom: 0;
}
#emergencyRepairPage #section-servicePageLast{
	padding-top: 0;
}
#emergencyRepairPage #section-servicePageLast{
	padding-bottom: 15vw;
}
#emergencyRepairPage #section-servicePageLast .fancyBtnContainer{
	margin-top: 0;
	margin-bottom: 3.5em;
}



/* About Us Page */
#aboutUsPage #section-opening{
    background-image: url('/images/bg-about-us.jpg');
	background-image: -webkit-image-set(
		url('/images/bg-about-us.webp') type("image/webp"),
		url('/images/bg-about-us.jpg') type("image/jpg")
	);
	background-image: image-set(
		url('/images/bg-about-us.webp') type("image/webp"),
		url('/images/bg-about-us.jpg') type("image/jpg")
	);
}
#section-about{
	padding-bottom: 2.5em;
}
#section-about .inner{
    padding-top: 0;
    padding-bottom: 0;
}
#section-about h2{
    font-family: inherit;
    margin-top: 0;
}



/* Gallery Page */
#galleryPage #section-opening{
    background-image: url('/images/bg-gallery.jpg');
	background-image: -webkit-image-set(
		url('/images/bg-gallery.webp') type("image/webp"),
		url('/images/bg-gallery.jpg') type("image/jpg")
	);
	background-image: image-set(
		url('/images/bg-gallery.webp') type("image/webp"),
		url('/images/bg-gallery.jpg') type("image/jpg")
	);
}
#section-gallery{
	padding-bottom: 15vw;
}
#section-gallery h2{
	margin-top: 0;
	font-family: inherit;
}




/* Footer */
#footer{
	
}

#section-hours-spacer{
    /* position: absolute; */
    background: url('/images/bg-chevron.png') top center;
    background-size: cover;
    height: var(--sectionHoursPadding);
    margin-top: calc(var(--sectionHoursPadding) * -1);
/*     margin-top: -12.5em; */
    pointer-events: none;
    position: relative;
    z-index: 0;
}
#section-hours{
/*     background-image: url('/images/bg-chevron.jpg'); */
/*     margin-top: -12.5vw; */
/*     background-position: top center; */
    background: linear-gradient(to bottom, #d7d7d7, #ffffff);
	text-align: center;
}
#section-hours h2{
	font-size: 2.25em;
/* 	margin-top: 4em; */
    margin-top: -3vw;
    margin-bottom: 0.83em;
	font-style: italic;
	font-family: cursive;
}
#section-hours h2 img{
    height: 1.25em;
    margin-right: -0.25em;
    margin-left: 0.25em;
	width: auto;
	pointer-events: none;
}
#section-hours h2 img,
#section-hours h2 a{
	display: inline-block;
	vertical-align: middle;
}
#section-hours h2 a{
	position: relative;
    margin-left: 0.25em;
    margin-right: 0.25em;
	color: var(--clr-highlight);
	font-weight: 700;
	font-family: "hotel-solid", sans-serif;
	font-style: normal;
	text-shadow: 0px 0px 1px #b6b8ba, 0px 0px 1px #b6b8ba, 0px 0px 1px #ffffff, 0px 0px 1px #ffffff, 0px 0.07em 0.12em #444444, 0px 0.07em 0.125em #444444;
}
#section-hours h2 a:after,
#section-hours h2 a:after{
	content: '';
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translate(-50%, 0);
	height: 0.075em;
	box-shadow: 0.075em 0.075em 0.15em -0.02em #444444;
    border: 1px solid transparent;
	width: 0;
	background: var(--clr-highlight);
	background: linear-gradient(to right, rgba(var(--clr-highlight-rgb), 0) 0%, var(--clr-highlight) 17.5%, var(--clr-highlight) 82.5%, rgba(var(--clr-highlight-rgb), 0) 100%);
    transition: width 0.25s cubic-bezier(0.6, 0, 0.45, 1), border 0s, opacity 0s;
	transition-delay: 0s, 0.25s, 0.25s;
	opacity: 0;
}
#section-hours h2 a:hover:after,
#section-hours h2 a:focus-visible:after{
    border-color: #b6b8ba;
    transition: width 0.25s cubic-bezier(0.6, 0, 0.45, 1.5), border 0s, opacity 0s;
	transition-delay: 0s, 0s, 0s;
	width: 85%;
	opacity: 1;
}
#hours{
	margin-bottom: 2.5em;
}
.day{
	display: inline-block;
	vertical-align: top;
    padding: 0 1em;
    font-size: 1.25em;
}
.day > div:nth-of-type(1){
	font-weight: 600;
}
.day + .day{
	border-left: 2px solid #7d7e7e;
}
.day:nth-last-of-type(2){
	border-right: 2px solid #7d7e7e;
}
.day:nth-last-of-type(1){
	border: none;
}

#section-mapEmbed{
	background: #e4e4e4;
}
#section-mapEmbed iframe{
	width: 100%;
	height: 35em;
	vertical-align: middle;
}

#section-footer{
	background-image: linear-gradient(to bottom, rgba(255,255,255,0.78), rgba(255,255,255,0.78)), url('/images/bg-diamond-plate.jpg');
    background-attachment: fixed;
}
#section-footer .inner{
	background: #ffffff;
    max-width: 750px;
    padding: 0.5em 2em 1.5em 2em;
    text-align: center;
}
.footer-side{
    position: relative;
	z-index: 1;
	display: inline-block;
	vertical-align: top;
	box-sizing: border-box;
	padding: 1em 1em 1em 2.5em;
	width: 50%;
    text-align: left;
    font-family: "acumin-pro-condensed", arial, helvetica, sans-serif;
}
.footer-side:nth-of-type(2){
	border-left: 2px solid #979797;
    margin-top: 2.5em;
}
#footerLogo{
	display: block;
	margin-top: -1.5em;
	margin-left: -1.5em;
	width: 10em;
	padding: 0 !important;
}
.footer-side h2{
    position: absolute;
    width: auto;
    top: -1.25em;
	margin: 0;
	font-size: 2em;
	color: #6d6d6d;
	font-weight: 300;
	font-family: cursive;
	font-style: italic;
}
.footer-side h2 img{
    vertical-align: middle;
	height: 1em;
	width: auto;
	pointer-events: none;
}
.footer-side a{
	display: block;
	color: #000000;
	font-size: 1.75em;
	padding: 0.25em 0;
	font-weight: 600;
}
.footer-side a:hover,
.footer-side a:focus-visible{
	color: var(--clr-highlight);
    text-shadow: 0px 0px 0.33em #cccccc;
}
.footer-side:nth-of-type(1) a{
	padding: 0.15em 0;
}
.footer-side:nth-of-type(2) a:nth-of-type(1) > span{
	font-size: 1.15em;
}
.footer-side:nth-of-type(2) a:nth-of-type(2) > span{
	font-size: 0.65em;
	font-weight: 500;
}
.footer-side:nth-of-type(2) a:nth-of-type(3) > span{
	font-weight: 500;
	font-size: 0.825em;
	line-height: 1em;
}
.footer-side:nth-of-type(2) a:nth-of-type(4) > span{
	font-size: 0.8em;
	font-weight: 700;
	font-style: italic;
}
.footer-side:nth-of-type(2) a:nth-of-type(5) > span{
	font-size: 0.825em;
}
.footer-side:nth-of-type(2) a > img,
.footer-side:nth-of-type(2) a > span{
	display: inline-block;
	vertical-align: middle;
}
.footer-side:nth-of-type(2) a > img{
    width: 1.35em;
    height: 1.25em;
    object-fit: contain;
    object-position: center center;
    margin-right: 0.5em;
}
.footer-side:nth-of-type(2) a > span > span{
	color: #737373;
}

#section-footer .inner:before,
#section-footer .inner:after{
	content: '';
	background-size: contain;
	background-repeat: no-repeat;
	background-position: bottom center;
	position: absolute;
	top: auto;
	bottom: 0;
	right: auto;
	left: auto;
	width: 10em;
	height: 8em;
}
#section-footer .inner:before{
	background-image: url('/images/feather-left.png');
	right: 100%;
	transform: translate(2.5em, 0);
}
#section-footer .inner:after{
	background-image: url('/images/feather-right.png');
	left: 100%;
	transform: translate(-2.5em, 0);
}

/* Copyright  */
#copyright{
	margin: 0 auto;
	font-size: 12px;
}
#copyright .fullwidth{
	background: #000000;
}
#copyright .inner{
	padding: 6px var(--inner-h-padding);
	overflow: auto;
	text-align: center;
	font-weight: 300;
	color: var(--clr-light);
	opacity: 0.6;
}
#copyright span{
	display: inline-block;
}
#copyrightLeft,
#copyrightRight{
	display: inline-block;
	vertical-align: middle;
	box-sizing: border-box;
	padding: 0;
	width: 50%;
}
#copyrightLeft{
	text-align: left;
    width: calc(100% - 13em);
}
#copyrightRight{
	text-align: right;
    width: 13em;
}
#copyrightRight a{
	display: inline-block;
	color: inherit;
}
#copyrightRight img{
	vertical-align: middle;
    max-width: 7em;
    padding-left: 0.3em;
}

/* ************************* BEGIN iOS CSS ************************* */
/* CSS specific to iOS devices */
@supports (-webkit-touch-callout: none) {
#section-services,
#section-hero,
#section-footer{
	background-attachment: scroll !important;
}
}

/* CSS for other than iOS devices */
@supports not (-webkit-touch-callout: none) {

}
/* ************************** END iOS CSS ************************** */
