html{
	box-sizing: border-box;
}
*,*:before,*:after{
	box-sizing: border-box;
}
/*	editing */
.ed123{
	position:relative;
}
.edButton{
	position:absolute;
	bottom:5px;
	right:5px;
}
#mastHead .edButton{
	bottom:-25px;
	right:15px;
}
.edButton,.edButton:visited{
	padding:2px 8px;
	font-size:12px;
	background:#AC3939;
	color:#fff;
	text-decoration:none;
	border:solid 1px #333;
	border-radius:5px;
}
.edButton:hover{
	background:#fff;
	color:#111;
	border-color:#ac3939;
}
/* editor container */
#edCont{
	position:fixed;
	top:4%;
	left:4%;
	width:900px;
	height:800px;
	padding:8px;
	overflow:hidden;
	background:#fafafa;
	border:solid 1px #333;
	border-radius:0.5em;
	box-shadow:0.2em 0.2em 0.4em #111;
}
.edHeading{
	height:32px;
	line-height:32px;
	position:relative;
	background:#6A7285;
	border-radius:0.5em;
}
.edHeading h2{
	margin:0 0 0 8px;
	padding:0;
	font-size:14px;
	color:#fff;
	cursor:move;
}
.edHeading .closeButton{
	position:absolute;
	top:0;
	right:8px;
	height:16px;
	width:16px;
	line-height:32px;
	font-size:20px;
	color:#ececec;
	cursor:pointer;
	border-radius:0.5em;
}
.edHeading .closeButton:hover{
	color:#fff;
	text-shadow:0.1em 0.1em 0.1em #f00;
}
#edInner{
	margin:10px; auto;
}
#edButtons{
	margin:30px auto 0 auto;
	padding:30px 16px 0 0;
	text-align:right;
	border-top:solid 1px #aaa;
}
#edButtons *{
	vertical-align:middle;
}
#edButtons a{
	display:inline-block;
	margin-left: 1em;
	font-size:1.2em;
}
.aButton,.aButton:visited{
	padding:0.2em 0.8em;
	color:#fff;
	font-weight:500;
	text-decoration:none;
	background: #9ba2b2;
	background: -moz-linear-gradient(top, #9ba2b2 0%, #747984 100%);
	background: -webkit-linear-gradient(top, #9ba2b2 0%,#747984 100%);
	background: linear-gradient(to bottom, #9ba2b2 0%,#747984 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#9ba2b2', endColorstr='#747984',GradientType=0 );
	border:solid 1px #555;
	border-radius:0.4em;
}
.aButton:hover{
	background:#E8EAEE;
	color:#333;
}
#fileCont{
	display:inline-block;
	padding:0.2em 0.8em;
	border:solid 1px #ccc;
	border-radius:0.4em;
}
#fileCont label{
	margin-right:1em;
	font-size:0.8em;
}
body,#tinymce{
	box-sizing:border-box;
	margin:0;
	padding:0;
	font-family:Tahoma, Geneva, sans-serif;
	font-size:100%;
	color:#555;
}
.bold,#tinymce .bold{
	font-weight:600;
}
.italic,#tinymce .italic{
	font-style:italic;
}
table,#tinymce table{
	width:98%;
	border-collapse:collapse;
}
th,#tinymce th{
	background:#e1e2e7;
	text-align:center;
	font-weight:500;
	color:#111;
	border:solid 1px #ccc;
}
td,#tinymce td{
	padding:0.3rem;
	color:#555;
	background:#fafafa;
	border:solid 1px #ccc;
}
p{
	margin:0 0 1.2em 0;
	padding:0;
}
h1,h2,h3,h4{
	margin:0;
}
ul,li{
	margin:0;
	padding:0;
	list-style:none;
}
/* flex container */
.flexCont{
	display:flex;
	flex-flow:row nowrap;
	justify-content:center;
	align-items:center;
}
/* flex item */
.flexItem{
	flex: 0 1 auto;
}
/* contact */
h2.msgSent{
	font-weight:500;
	color:#707089;
}
h2.msgSent span{
	font-style:italic;
}
.flexCont.contact{
	flex-flow:column nowrap;
	align-items:flex-start;
	width:85%;
	margin:0 auto;
}
.flexCont.contact .flexItem{
	flex: 1 1 0;
	margin:1vh 0;
}
.contact label:not(.ui-checkboxradio-label){
	display:inline-block;
	width:25vw;
	margin-right:1vw;
	padding:0.3rem;
	text-align:center;
	background:#DADBE0;
	border-radius:0.4rem;
}
.contact label.ui-checkboxradio-label{
	font-size:1.3vw;
}
.contact label.missing{
	background:#FBF7BF;
}
.contact .req .icon{
	color:#ce3a3a;
}
.contact .req.ok .icon{
	color:#1F9C44;
}
.contact input,
.contact select,
.contact textarea,
#sendButton{
	display:inline-block;
	width:37vw;
	padding:1vh 1vw;
	font-family:Tahoma, Geneva, sans-serif;
	font-size:1rem;
	border:solid 1px #555;
	border-radius:0.4rem;
}
.flexItem.errMsg{
	padding-left:27vw;
	color:#CB3838;
}
.contact h3.contentHead{
	border-bottom:solid 1px #aaa;
}
.cHighlight{
	color:#C2393E;
}
.cInfo h5{
	font-size:1.1em;
	color:#777;
}
/*phone inputs*/
.contact .flexCont.phInput{
	flex-flow:row nowrap;
	display:inline-block;
	width:50%;
}
.contact .flexCont.phInput input{
	text-align:center;
}
#tPhone1,#tPhone2{
	width:15%;
}
#tPhone3{
	width:20%;
}
.contact textarea{
	height:8vh;
	vertical-align:top;
}
.contact .icon{
	margin-right:1vw;
}
.contact select#tState{
	width:39vw;
	margin-left:-0.5vw;
}
.flexItem.sendButtonCont{
	width:98%;
	margin:2vh 0;
	text-align:right;
}
#sendButton{
	line-height:3vh;
	background: #f4faff;
	background: -moz-linear-gradient(top, #f4faff 0%, #e0e3e5 100%);
	background: -webkit-linear-gradient(top, #f4faff 0%,#e0e3e5 100%);
	background: linear-gradient(to bottom, #f4faff 0%,#e0e3e5 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f4faff', endColorstr='#e0e3e5',GradientType=0 );
}
#sendButton:active{
	background:#718090;
	color:#fff;
}
.recapCont{
	width:98%;
	margin-top:2vh;
	padding-top:2vh;
	text-align:right;
	border-top:solid 1px #ccc;
}
.g-recaptcha{
	display:inline-block;
	margin:auto;
}
@media screen and (max-width: 575px){
	.g-recaptcha{
		transform:scale(0.77);
		-webkit-transform:scale(0.77);
		transform-origin:0 0;
		-webkit-transform-origin:0 0;
	}
}
#pageWrapper{
	position:relative;
}
/*masthead*/
#mastHead{
	background: #e3e5ed;
	background: -moz-linear-gradient(top,  #e3e5ed 0%, #ffffff 25%);
	background: -webkit-linear-gradient(top,  #e3e5ed 0%,#ffffff 25%);
	background: linear-gradient(to bottom,  #e3e5ed 0%,#ffffff 25%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e3e5ed', endColorstr='#ffffff',GradientType=0 );
	border-bottom:solid 2px #424A68;
	box-shadow:0 0 2vh #424A68;
}
#mastHead .flexItem.logo{
	/*width:78%;*/
	text-align:left;
}
#mastHead .flexCont.navCont{
	font-size:calc(8px + 1vw);
}
#mastHead .flexItem.nav{
	/*text-align:center;*/
	align-items:flex-start;
}
#mastHead .flexItem.nav a.navItem{
	white-space:nowrap;
}
/*@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
	#mastHead .flexCont.navCont{

	}
	#mastHead .flexItem.nav{
		white-space:normal;
		text-align:center;
	}
	#mastHead .flexItem.nav .icon{
		display:none;
	}

}
*/
.logo img{
	width:40%;
	max-width:800px;
	min-width:150px;
	margin:auto;
}
#mastHead .icon{
	transition:all 0.2s ease;
	margin-right:1vw;
}
.icon.iMyAcc,.icon.iContact,.icon.iBack{
	color:#CE3A3A;
}
.icon.iService{
	color:#3D41E9;
}
.icon.iCarParts{
	color:#FFDF49;
}
h4 a .icon{
	margin-right:0.5vw;
}
#mastHead li a.navItem:hover .icon{
	color:#D8E1F1;
	text-shadow:0.1em 0.1em 0.1em #111;
}
#mastHead li a.navItem,#mastHead li a.navItem:visited{
	transition:all 0.2s ease;
	margin:0;
	padding:1vh 2vw;
	color:#424A68;
	text-decoration:none;
	border-radius:0.3em;
}
#mastHead li:not(.logo) a.navItem:hover{
	color:#fff;
	background:#506589;
}
#mastHead li:not(.logo) a.navItem:active{
	color:#EDEEF3;
	background:#273956;
}
#pageWrapper{
	background:#fff;
}
/* heroCont */
#heroCont{
	padding: 1vh;
	font-size:1.2vw;
	background:url(/2017/img/herobg.jpg) 50% 50% no-repeat;
	background-size:cover;
}
#heroCont .flexCont{
/*	align-items:flex-start;*/
}
#heroCont .flexItem{
	margin:2vh 1vw;
}
#heroCont .imgBox.flexItem{
	width:100vw;
}
#heroCont .imgBox img{
	width:99%;
}
.heroTxt{
	color:#253041;
}
.heroTxt h2,
#tinymce h2{
	margin-bottom:2vh;
	font-size:1.5vw;
	font-weight:500;
	color:#5C78A0;
}
#tinymce h2{
	font-size:1.15em;
}
.heroTxt h2 .attr,
#tinymce h2 .attr{
	margin-left:1vw;
	font-size:0.9vw;
	font-style:italic;
	color:#8A9AB3;
}
#tinymce h2 .attr{
	font-size:0.7em;
}
/* columns */
#colCont.flexCont{
	align-items:stretch;
	border-top:solid 2px #333;
	border-bottom:solid 2px #333;
}
#colCont li.flexItem{
	flex: 1 1 0;
}
#colCont li.flexItem:nth-child(odd){
	background:#f7f7f9;

}
#colCont li.flexItem:nth-child(even){
	background:#eff0f4;
}
#colCont .imgBox img{
	width:100%;
}
.colTxt{
	margin:2vh 2vw;
	font-size:1vw;
}
.colTxt h3{
	margin-bottom:1vh;
	font-weight:500;
	color:#363D5A;
}
#colCont li a .icon{
	transition:all 0.2s ease;
	margin-right:1vw;
}
#colCont li a:hover .icon{
	color:#D8E1F1;
	text-shadow:0.1em 0.1em 0.1em #111;
}
#colCont li a.link,#colCont li a.link:visited{
	transition:all 0.2s ease;
	display:block;
	margin:1vh 0;
	padding:1vh 2vw;
	color:#424A68;
	text-decoration:none;
	border:solid 1px #ccc;
	border-radius:0.3em;
}
#colCont li a.link:hover{
	color:#fff;
	background:#506589;
}
#colCont li a.link:active{
	color:#EDEEF3;
	background:#273956;
}
#showOther,#servTxt,#col1p,#col2p,#col3p{
	display:none;
}
/* col1-3 page content */
#showOther .edContent.flexCont{
	align-items:flex-start;
}
#showOther .colPageCont .flexItem.imgCont{
	width:40%;
	margin-right:5vw;
}
.imgCont img{
	width:100%;
	border-radius:0.4em;
	box-shadow:0.2em 0.2em 0.4em #3F3F4E;
}
#showOther .colPageCont .flexItem.colPageContent{
	width:65%;
}
#showOther .colPageCont h2,
#tinymce h2{
	margin-bottom:1.5em;
	font-size:1.2em;
	font-weight:600;
	color:#445a79;
}
#showOther .colPageCont h3,
#tinymce h3{
	margin-bottom:1em;
	font-size:1.2em;
	font-weight:500;
	color:#5C78A0;
}
#showOther .colPageCont h4,
#tinymce h4{
	margin-bottom:0.75em;
	font-size:1.2em;
	font-weight:500;
	color:#5C78A0;
}
#showOther .colPageCont ul,.colPageCont ol,
#tinymce ul, #tinymce ol{
	margin:1em 0 1em 1em;
	list-style:none;
}
#showOther .colPageCont ul ul,.colPageCont ol ol,
#tinymce ul ul, #tinymce ol ol{
	margin-top:0.25em;
}
#showOther .colPageCont li,
#tinymce li{
	margin-bottom:1em;
	padding-left:0.2em;
}
#showOther .colPageCont li::before,
#tinymce li::before{
	content:"\2022";
	display:inline-block;
	width:1em;
	margin-left:-1em;
	color:#9299B1;
}
#showOther .colPageCont li ul li,
#tinymce li ul li{
	margin-bottom:0.4em;
	margin-left:1.5em;
	font-size:0.9em;
}
#showOther .colPageCont li ul li::before,
#tinymce li ul li::before{
	content:"\25AA";
	display:inline-block;
	width:1em;
	margin-left:-1em;
	/*color:#6975A5;*/
	/*color:#9299B1;*/
	color:#B88B8B;
}
/* --- 20250408 -- */
html, body{
	height:100%;
	margin:0;
	box-sizing:border-box;
}
*, *:before, *:after{
	box-sizing:inherit;
}
.drc #pageWrapper{
	box-sizing:border-box;
	min-height:100%;
	display:flex;
	flex-direction:column;
}
.drc #vendor{
	flex-grow:1;
}
.bottomSticky{
	flex-grow:0;
	flex-shrink:0;
	padding:1rem;
	text-align:right;
	background:#d2d3da;
}
/* ------- */
#pageFooter.flexCont{
	flex-flow:row wrap;
	justify-content:flex-end;
	padding:4vh 2vw 4vh 0;
	background:#9B9BAE;
	font-size:1.2vw;
	color:#fff;
	box-shadow:0 0 1.5vw #3F4D61 inset;
}
#pageFooter .flexItem.footerTxt{
	width:45%;
	align-self:flex-start;
}
#pageFooter h3{
	width:80%;
	font-weight:500;
	font-size:1.8vw;
}
#pageFooter h3 span{
	margin-left:1vw;
	font-size:1.1vw;
	font-style:italic;
}
#pageFooter .flexItem.footerLink{
	width:25%;
	margin: 0 0 4vh 0;
}
#pageFooter .footerLink a .icon{
	margin-right:1vw;
	font-size:3vw;
	color:#363D5A;
}
#pageFooter .footerLink a h4{
	font-weight:500;
	font-size:1.4vw;
}
#pageFooter .footerLink a,#pageFooter .footerLink a:visited{
	color:#fff;
	text-decoration:none;
}
#pageFooter .footerLink a:hover h4{
	text-decoration:underline;
}
#pageFooter .footerLink a:hover .icon{
	transition:all 0.2s ease;
	color:#F0D26A;
	text-shadow:0.1rem 0.1rem 0.2rem #363D5A;
}
#pageFooter .footerLink a:active{
}
/* vendor tree */
#vendor{
	margin:4vh 4vw;
}
#vendor h4 .vendorBack{
	display:inline-block;
	width:70%;
	text-align:right;
}
.vendorBack .iArrowLeft{
	margin-right:0.4em;
}
.vendCol li{
	margin:1vh 2vw;
}
#vendor a,
#vendor a:visited,
a.aLink,
a.aLink:visited{
	display:inline-block;
	width:35%;
	color:#555;
}
#vendor a:hover,
a.aLink:hover,
#vendor a:hover + .product,
#vendor a:hover + .product + .year{
	text-decoration:none;
	color:#C2393E;
}
.vendCol span{
	display:inline-block;
	margin-left:3vw;
}
.vendCol .product{
	width: 40%;
}

/* ui */
.ui-dialog{
	box-shadow:0.4em 0.4em 0.8em #111;
}

#colEditDialog{
	display:none;
}
#colEditDialog h4{
	margin-top:1em;
	color:#777;
}
#colEditDialog input{
	width:350px;
	font-size:1vw;
}
#colEditDialog textarea{
	width:350px;
	height:100px;
	font-size:1vw;;
}
.contentInner{
	position:relative;
	width:80%;
	margin:8vh auto;
	font-size:1.2em;
}

#loader{
	margin:10vw auto;
}
.loaderInside,
.loaderInside:after {
  border-radius: 50%;
  width: 10em;
  height: 10em;
}
.loaderInside {
  margin: 20vh auto;
  font-size: 0.5rem;
  position: relative;
  border-top: 2.1em solid rgba(31, 67, 214, 0.4);
  border-right: 2.1em solid rgba(31, 67, 214, 0.4);
  border-bottom: 2.1em solid rgba(31, 67, 214, 0.4);
  border-left: 2.1em solid #ffffff;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-animation: loadAnim 1.1s infinite linear;
  animation: loadAnim 1.1s infinite linear;
}
@-webkit-keyframes loadAnim {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes loadAnim {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
.login{
	margin:8vh 0;
}
.login li{
	margin:0.5em 0;
}
.login label{
	display:block;
}
.login input{
	display:inline-block;
	width:25%;
	text-align:left;
}
.login li.submitCont{
	margin-top:4vh;
	padding:2vh 0;
	border-top:solid 1px #aaa;
}
.login input[type=submit]{
	margin:auto;
	padding:2vh 2vw;
	text-align:center;
	background: #f7f7f7;
	background: -moz-linear-gradient(top, #f7f7f7 0%, #e5e5e5 99%);
	background: -webkit-linear-gradient(top, #f7f7f7 0%,#e5e5e5 99%);
	background: linear-gradient(to bottom, #f7f7f7 0%,#e5e5e5 99%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f7f7f7', endColorstr='#e5e5e5',GradientType=0 );
	cursor:pointer;
	border:solid 1px #777;
	border-radius:0.3em;
}
.login input[type=submit]:hover{
	background:#f9f9f9;
	border-color:#333;
}
/* msgBar */
#msgBar{
	display:none;
	position:fixed;
	bottom:1vh;
	right:1vw;
	min-width:12vw;
	background:#fff;
	border:solid 1px #555;
	border-radius:0.4em;
	box-shadow:2px 2px 4px #333;
}
#msgClose{
	position:absolute;
	top:0.4vh;
	right:0.3vw;
	cursor:pointer;
}
#msgClose:active{
	background:#333;
	color:#fff;
}
#msgCont{
	margin:2vh 4vw;
}
#msgIcon{
}
#msgText{
}

/* media queries */
@media screen and (max-width:1000px){
	#heroCont{
		font-size:1.8vw;
		background: #F7F7F9;
	}
	.heroTxt h2{
		font-size:2.4vw;
		color:#4e70a0;
	}
	.heroTxt h2 .attr{
		font-size:2vw;
	}
	#heroCont .imgBox{
		display:none;
	}
	.colTxt{
		font-size:1rem;
	}
	#pageFooter .footerLinkTxt{
		display:none;
	}
	#pageFooter .footerLink a h4{
		font-size:2.2vw;
	}
}
@media screen and (max-width:800px){
	.contact label.ui-checkboxradio-label{
		font-size:1.6vw;
	}
	#pageFooter .flexItem.footerTxt{
		width:42%;
	}
	#pageFooter h3{
		font-size:2.5vw;
	}
	#pageFooter .flexItem.footerLink{
		padding:1vh 1vw;
	}
	#pageFooter h3 span{
		font-size:1.5vw;
	}
}
@media screen and (max-width:640px){
	.contact input,.contact select,.contact textarea,.contact label{
		font-size:0.8rem;
	}
	.contact label.msgLabel{
		display:block !important;
	}
	.contact textarea{
		width:66vw;
		margin-top:1vh;
	}
	#confEmailMsg{
		padding-left:0 !important;
	}
	#tPhone1,#tPhone2,#tPhone3{
		padding-left:0.4vw;
		padding-right:0.4vw;
	}
	.contact label.ui-checkboxradio-label{
		font-size:1.7vw;
	}
	#heroCont{
		font-size:1rem;
	}
	#heroCont h2{
		font-size:4vw;
	}
	.heroTxt h2 .attr{
		font-size:2.6vw;
	}
	#colCont .imgBox{
		display:none;
	}
	#colCont .colTxt .edTxt{
		padding-top:0.5em;
		border-top:solid 1px #68769B;
	}
	#pageFooter{
		align-items:flex-start;
	}
	#pageFooter .flexItem.footerLink{
		margin:0;
		padding:0;
	}
	#pageFooter .footerLink a h4{
		font-size:3vw;
		text-align:center;
		text-shadow:0 1px 0 #444;
	}
	.footerTxt,.footerLinkTxt{
		display:none;
	}
	.footerLink .icon{
		display:none;
	}
}
@media screen and (max-width:420px){
	#mastHead.flexCont{
		flex-flow:column nowrap;
		justify-content:center;
	}
	#mastHead .flexItem.logo{
		width:100%;
		text-align:center;
	}
	#mastHead .flexItem.navCont{
		width:100%;
	}
	#mastHead .flexItem.navCont .flexCont{
		padding:1vh 0;
		justify-content:center;
		border-top:solid 1px #aaa;
	}
	#showOther .imgCont{
		display:none;
	}
	#showOther .colPageCont .flexItem.colPageContent{
		width:auto;
	}
	.heroTxt h2 .attr{
		font-size:3.4vw;
	}
	.colTxt .edTxt{
		font-size:0.8rem;
	}
	.contentInner{
		font-size:0.8em;
	}
	.contact label:not(.ui-button){
		width:99% !important;
		background:transparent !important;
		text-align:left !important;
	}
	.contact input,.contact select,.contact textarea{
		width: 66vw;
	}
	#tPhone1,#tPhone2{
		width:25%;
	}
	#tPhone3{
		width:27%;
	}
	.contact label.ui-checkboxradio-label{
		font-size:2.8vw;
	}
	#pageFooter{
		align-items:flex-start;
	}
	#pageFooter .footerLink a h4{
		font-size:3.2vw;
		text-shadow:1px 1px 0 #444;
	}
}
@media screen and (max-width:320px){
	#pageFooter .icon.fa{
		display:none;
	}
}
