body
{
	overflow-x: hidden;
}

[ng\:cloak], [ng-cloak], [data-ng-cloak], [x-ng-cloak], .ng-cloak, .x-ng-cloak {
	display: none !important;
}

h1.dimmed {
	font-size: 1.5em;
}

.pure-button-toggle-on,
.pure-button-toggle-on:hover,
.pure-button-toggle-on:active
{
	transition: all 0.25s cubic-bezier(.55,.06,.68,.19);
	background: #079;
	color: #fff;
}

.pure-button-toggle-on .fa,
.pure-button-toggle-on:hover .fa,
.pure-button-toggle-on:active .fa,
.pure-button-toggle-on .fas,
.pure-button-toggle-on:hover .fas,
.pure-button-toggle-on:active .fas,
.pure-button-toggle-on .fal,
.pure-button-toggle-on:hover .fal,
.pure-button-toggle-on:active .fal,
.pure-button-toggle-on .fab,
.pure-button-toggle-on:hover .fab,
.pure-button-toggle-on:active .fab,
.pure-button-toggle-on .far,
.pure-button-toggle-on:hover .far,
.pure-button-toggle-on:active .far
{
	transition: all 0.25s cubic-bezier(.55,.06,.68,.19);
	color: #fff;
}

.pure-button-toggle-on:hover,
.pure-button-toggle-on:active
{
	transition: all 0.25s cubic-bezier(.55,.06,.68,.19);
}

.pure-form input.toggle_value
{
	width: 1px !important;
	height: 1px !important;
	padding: 0;
	margin: 0;
	border: none;
	background: #fff;
	color: #fff;
	/*position: absolute;*/
	/*bottom: 0;*/
}

/*.pure-form input[type='number'][max='99'],
.pure-form input[type='number'][maxlength='2']
{
	width: 50px;
}

.pure-form input[type='number'][max='9999'],
.pure-form input[type='number'][maxlength='4']
{
	width: 75px;
}

.pure-form input[type='number'][max='10000'],
.pure-form input[type='number'][maxlength='6']
{
	width: 100px;
}*/

.quote-total
{
	font-size: 3em;
	color: green;
}

.pure-form-aligned .pure-control-group
{
	position: relative;
}

.nv-panels
{
	position: relative;
	z-index: 10;
	width: 100%;
	/*height: 1500px;*/
}

.nv-panel
{
	transition: all 0.5s cubic-bezier(.79,.14,.15,.86);
	position: relative;
	display: block;
	width: 100%;
	/*height: 1500px;*/
	/*top: 0;*/
}

.nv-panel.ng-enter
{
	/*position: absolute;*/
	display: block;
	left:200%;
}

.nv-panel.ng-leave.ng-leave-active
{
	display: none;
	/*position: absolute;*/
	/*left:-125%;*/
}

.nv-panel.ng-leave,
.nv-panel.ng-enter.ng-enter-active
{
	/*position: absolute;*/
	display: block;
	left:0;
}

.speedometer-module
{
	position: relative;
}

.windshield
{
	position: absolute;
	z-index: 2;
	top: 0;
	left: 0;
	width: 100%;
	max-width: 1920px;
	height: auto;
	/*padding-bottom: 100%;*/ min-height: 700px;
	background: #000 url(/images/speedometer/windshield-2.jpg) no-repeat;
	background-size: cover;
	background-position: center;
}

.dashboard
{
	/*position: absolute;
	top: 0;
	left: 0;
	width: 100%;*/
	position: relative;
	z-index: 3;
	width: 100%;
	height: 0;
	padding-top: 37%; /*715px;*/
	background: url(/images/speedometer/dashboard.png) no-repeat top;
	background-size: 100%;
}

.speedometer-oil
{
	top: 45%;
	left: 8%;
}

.speedometer-gas
{
	top: 25%;
	left: 22%;
}

.speedometer-kmh
{
	top: 18%;
	left: 37.5%;
}

.speedometer-temp
{
	top: 25%;
	right: 22%;
}

.speedometer-battery
{
	top: 45%;
	right: 8%;
}

/**
 * It works because margin/padding-top/bottom, when specified as a percentage, is determined according to the width of the containing element. Essentially, you have a situation where "vertical" properties can be sized with respect to a "horizontal" property. This isn't an exploit or a hack, because this is how the CSS specification is defined.
 */
.speedometer-height
{
	padding-top: 100%;
}

.speedometer-s
{
	position: absolute;
	z-index: 2;
	width: 266px;
	max-width: 15%;
	margin: 0 auto;
}

.speedometer-s-bk
{
	position: absolute;
	z-index: 2;
	width: 100%;
	height: 100%;
	background: url(/images/speedometer/small-dial-bkg.png) center center no-repeat;
	background-size: 100% 100%;
}

.speedometer-s-gas
{
	position: absolute;
	z-index: 3;
	width: 100%;
	height: 100%;
	background: url(/images/speedometer/small-dial-fuel.png) center center no-repeat;
	background-size: 100% 100%;
}

.speedometer-s-temp
{
	position: absolute;
	z-index: 3;
	width: 100%;
	height: 100%;
	background: url(/images/speedometer/small-dial-temp.png) center center no-repeat;
	background-size: 100% 100%;
}

.speedometer-s-oil
{
	position: absolute;
	z-index: 3;
	width: 100%;
	height: 100%;
	background: url(/images/speedometer/small-dial-oil.png) center center no-repeat;
	background-size: 100% 100%;
}

.speedometer-s-battery
{
	position: absolute;
	z-index: 3;
	width: 100%;
	height: 100%;
	background: url(/images/speedometer/small-dial-battery.png) center center no-repeat;
	background-size: 100% 100%;
}

.speedometer-s-center
{
	position: absolute;
	z-index: 5;
	width: 100%;
	height: 100%;
	background: url(/images/speedometer/small-dial-center.png) center center no-repeat;
	background-size: 100% 100%;
}

.speedometer-s-needle
{
	position: absolute;
	z-index: 4;
	width: 100%;
	height: 100%;
	background: url(/images/speedometer/small-needle.png) center 28% no-repeat;
	background-size: 7.5% 35.3%;
}

.speedometer-s-glare
{
	position: absolute;
	z-index: 6;
	width: 100%;
	height: 100%;
	background: url(/images/speedometer/small-dial-glass.png) center center no-repeat;
	background-size: 100% 100%;
}

.speedometer-l
{
	position: absolute;
	z-index: 2;
	width: 467px;
	max-width: 25%;
	margin: 0 auto;
}

.speedometer-l-bk
{
	position: absolute;
	z-index: 2;
	width: 100%;
	height: 100%;
	background: url(/images/speedometer/large-dial-bkg.png) center center no-repeat;
	background-size: 100% 100%;
}

.speedometer-l-kmh
{
	position: absolute;
	z-index: 3;
	width: 100%;
	height: 100%;
	background: url(/images/speedometer/large-dial-kmh.png) center center no-repeat;
	background-size: 100% 100%;
}

.speedometer-l-center
{
	position: absolute;
	z-index: 5;
	width: 100%;
	height: 100%;
	background: url(/images/speedometer/large-dial-center.png) center center no-repeat;
	background-size: 100% 100%;
}

.speedometer-l-needle
{
	position: absolute;
	z-index: 4;
	width: 100%;
	height: 100%;
	background: url(/images/speedometer/large-needle.png) center 21.5% no-repeat;
	background-size: 4.3% 38.5%;
	transform:rotate(-139deg);
	transition: transform 0.5s cubic-bezier(.55,.06,.68,.19);
}

.speedometer-l-glare
{
	position: absolute;
	z-index: 6;
	width: 100%;
	height: 100%;
	background: url(/images/speedometer/large-dial-glass.png) center center no-repeat;
	background-size: 100% 100%;
}

.speedometer-l-odometer
{
	position: absolute;
	z-index: 4;
	bottom: 19%;
	right: 38%;
	letter-spacing: 5.5px;
	text-align: right;
	color: #000;
	font-family: "Roboto Mono";
}

/*.speedometer-l-odometer::first-letter
{
	position: absolute;
	bottom: 18%;
	left: 40%;
}*/

.speedometer-l-refnum
{
	position: absolute;
	z-index: 4;
	left: 0;
	bottom: 12%;
	width: 100%;
	text-align: center;
	color: #000;
	font-family: "Roboto Mono";
}

.pure-form .question
{
	padding: 5px;
}

.pure-form .question label,
.pure-form .question input:not(.toggle_value),
.pure-form .question textarea,
.pure-form .question select,
.pure-form .question > div
{
	display: block;
	text-align: center;
	margin: 5px auto;
}

.pure-button-add
{
	width: 100%;
	height: 100px;
	max-height: 100%;
}

.pure-form .pure-input-1
{
	max-width: 500px;
}

.pure-form .padbottoms > div
{
	margin-bottom: 10px;
}

.pure-button-action
{
	width: 95%;
	margin: 0 auto .5em;
	overflow: hidden;
	text-align: center;
	background: #0099bb;
	color: #fff;
	font-weight: 500;
}

.pure-button.pure-button-action,
.pure-button.pure-button-action .fa,
.pure-button.pure-button-action:hover,
.pure-button.pure-button-action:hover .fa
{
	color: #fff;
}

@keyframes jitter50
{
	0% 		{ transform:rotate(0deg); }
	25% 	{ transform:rotate(-20deg); }
	50% 	{ transform:rotate(-10deg); }
	75% 	{ transform:rotate(-15deg); }
	100% 	{ transform:rotate(0deg); }
}

@keyframes jitter80
{
	0% 		{ transform:rotate(75deg); }
	25% 	{ transform:rotate(80deg); }
	50% 	{ transform:rotate(60deg); }
	75% 	{ transform:rotate(70deg); }
	100% 	{ transform:rotate(70deg); }
}

@keyframes gas
{
	0% 		{ transform:rotate(105deg); }
	100% 	{ transform:rotate(-105deg); }
}

@keyframes fulltemp
{
	0% 		{ transform:rotate(-105deg); }
	100% 	{ transform:rotate(105deg); }
}

.speedometer-needle-temp
{
	/*animation:gas 1s linear forwards;*/
	transform:rotate(-105deg);
}

.speedometer-needle-temp-full
{
	/*animation:fulltemp 0.25s linear forwards;*/
	transform:rotate(105deg);
}

.speedometer-needle-jitter-50
{
	/*animation:jitter50 30s linear infinite;*/
	transform:rotate(0deg);
}

.speedometer-needle-jitter-80
{
	/*animation:jitter80 30s linear infinite;*/
	transform:rotate(70deg);
}

.speedometer-needle-gas
{
	/*animation:gas 300s linear forwards;*/
	transform:rotate(105deg);
}

.no-animate
{
	-webkit-transition: none !important;
	transition: none !important;
}

#spinner {
	display: none;
	opacity: 1;
	transition: all 1s ease-out;
	background: #fff;
	position: fixed;
	z-index: 500000;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
	padding-top: 20%;
	box-sizing: border-box;
	text-align: center;
	opacity: 0.75;
}
.spinner {
	text-align: center;
}
.spinner > div {
	width: 30px;
	height: 30px;
	background-color: #0099bb;
	border-radius: 100%;
	display: inline-block;
	opacity: 1;
	-webkit-animation: sk-bouncedelay 1.6s infinite ease-in-out both;
	animation: sk-bouncedelay 1.6s infinite ease-in-out both;
}
.spinner .bounce1 {
	-webkit-animation-delay: -0.48s;
	animation-delay: -0.48s;
}
.spinner .bounce2 {
	-webkit-animation-delay: -0.24s;
	animation-delay: -0.24s;
}

.question [class*="hint--"]
{
	display: block;
}

.question.validate-inline [class*="hint--"]
{
	display: inline-block;
}

.hint--top-left:before
{
	border-top-color: #0099bb;
}

.hint--top-right:before
{
	border-top-color: #0099bb;
}

.hint--top:before
{
	border-top-color: #0099bb;
}

.hint--bottom-left:before
{
	border-bottom-color: #0099bb;
}

.hint--bottom-right:before
{
	border-bottom-color: #0099bb;
}

.hint--bottom:before
{
	border-bottom-color: #0099bb;
}

.hint--left:before
{
	border-left-color: #0099bb;
}

.hint--right:before
{
	border-right-color: #0099bb;
}

[class*="hint--"]::after
{
	background: #0099bb;
	text-shadow: none;
}

.countbox
{
	float: left;
	width: 35px;
	/*height: 35px;*/
	line-height: 25px;
	text-align: center;
	margin: 0 10px;
}

.countbox-red
{
	background: linear-gradient(#ff0000 50%, green 45%);
}

.countbox-yellow
{
	background: linear-gradient(#ffe680 50%, lightgreen 50%);
}

.countbox-red a
{
	/*background: #ff0000;*/
	color: #fff;
	display: block;
}

.countbox-yellow a
{
	/*background: #ffe680;*/
	color: #000;
	display: block;
}

.vertical
{
	transform: rotate(-90deg);
	transform-origin: center;
	font-size: 0.75em;
	font-weight: bold;
	white-space: nowrap;
	margin-top: 80px;
	text-align: center;
	display: block;
}

.dashboard-headers
{

}

.dashboard-odd
{
	background: #f9f9f9;
	margin-bottom: 10px;
}

.dashboard-even
{
	background: #f2f2f2;
	margin-bottom: 10px;
}

.dashboard-highlight
{
	background: lightpink;
	margin-bottom: 10px;
}

.dashboard-odd .bigtotal a,
.dashboard-even .bigtotal a,
.dashboard-highlight .bigtotal a
{
	font-size: 2em;
	text-align: center;
	padding: 15px 0;
	display: block;
}

.dashboard-odd .bigtotal a,
.dashboard-even .bigtotal a,
.dashboard-highlight .bigtotal a,
.dashboard-odd .bigtotal a em,
.dashboard-even .bigtotal a em,
.dashboard-highlight .bigtotal a em
{
	color: #cccccc;
}

.dashboard-odd .bigtotal,
.dashboard-even .bigtotal,
.dashboard-highlight .bigtotal
{
	height: 140px;
	/*padding-top: 30px;*/
	/*display: block;*/
	text-align: center;
	background: #ececec;
}

.dashboard-odd .bigtotal,
.dashboard-even .bigtotal,
.dashboard-highlight .bigtotal
{
}

.nv-tabs.nv-tabs-dashboard .nv-tabs-nav ul
{
	margin: 10px 0;
	display: block;
	text-align: center;
}

.nv-tab-list #spinner
{
	display: block;
}

/*.dashboard-odd.dashboard-single .bigtotal,
.dashboard-even.dashboard-single .bigtotal
{
	padding-top: 50px;
}*/

.nv-tab-dashboard ul,
.nv-tab-dashboard li
{
	margin: 0;
	padding: 0;
	list-style: none;
}

.nv-tab-dashboard li
{
	padding-left: 60px;
	font-size: 0.75em;
}

.nv-tab-dashboard li::before
{
	font-family: "Font Awesome 5 Free";
	content: "\f105";
	font-weight: 900;
	margin-right: 10px;
}

.nv-tab-dashboard .fa-2x
{
	float: left;
	margin-right: 10px;
	padding: 15px 10px;
	border: 2px solid #0099bb;
	border-radius: 100px;
}

.nv-tabs.nv-tabs-progress {
  clear: both;
  text-align: center;
}
.nv-tabs.nv-tabs-progress .nv-tabs-nav
{
	margin-bottom: 25px;
}
.nv-tabs.nv-tabs-progress .nv-tabs-nav ul {
  margin: 0 auto;
  padding: 0;
  list-style: none;
  display: block;
  height: auto;
  position: relative;
}
.nv-tabs.nv-tabs-progress .nv-tabs-nav ul:first-child li {
  display: inline-block;
  margin: 0;
  padding: 0;
  list-style: none;
  position: relative;
}

.nv-tabs.nv-tabs-progress .nv-tabs-nav ul li,
.nv-tabs.nv-tabs-progress .nv-tabs-nav ul li.nv-tab-current
{
  background: none;
  z-index: 1;
}
.nv-tabs.nv-tabs-progress .nv-tabs-nav ul:first-child li::after
{
	position: absolute;
	background: #e9e9e9;
	height: 10px;
	left: 50%;
	width: 100%;
	top: 25px;
	content: ' ';
	z-index: 1;
	box-shadow: inset 0px 5px 10px -5px rgba(50, 50, 50, 0.75);
}

.nv-tabs.nv-tabs-progress .nv-tabs-nav ul:first-child li.first::after
{
}

.nv-tabs.nv-tabs-progress .nv-tabs-nav ul:first-child li.last::after
{
	display: none;
}

.nv-tabs.nv-tabs-progress .nv-tabs-nav ul li > span {
  padding: .8em 10px 0;
  text-transform: uppercase;
  text-decoration: none;
  display: block;
  text-align: center;
  position: relative;
  z-index: 2;
}
.nv-tabs.nv-tabs-progress .nv-tabs-nav ul li > span,
.nv-tabs.nv-tabs-progress .nv-tabs-nav ul li .fa,
.nv-tabs.nv-tabs-progress .nv-tabs-nav ul li .far,
.nv-tabs.nv-tabs-progress .nv-tabs-nav ul li .fas,
.nv-tabs.nv-tabs-progress .nv-tabs-nav ul li .fal,
.nv-tabs.nv-tabs-progress .nv-tabs-nav ul li .fab {
  color: #fff;
}
.nv-tabs.nv-tabs-progress .nv-tabs-nav ul li.nv-tab-current > span,
.nv-tabs.nv-tabs-progress .nv-tabs-nav ul li.nv-tab-current .fa,
.nv-tabs.nv-tabs-progress .nv-tabs-nav ul li.nv-tab-current .far,
.nv-tabs.nv-tabs-progress .nv-tabs-nav ul li.nv-tab-current .fas,
.nv-tabs.nv-tabs-progress .nv-tabs-nav ul li.nv-tab-current .fal,
.nv-tabs.nv-tabs-progress .nv-tabs-nav ul li.nv-tab-current .fab {
  color: #e9e9e9;
}
.nv-tab {
  width: auto;
  position: relative;
}
.nv-tab-content {
  display: none;
  text-align: left;
}
.nv-tab-content.nv-tab1 {
  display: block;
}

.nv-step-icon
{
	display: inline-block;
	width: 35px;
	height: 35px;
	line-height: 35px;
	border-radius: 35px;
	background: #e9e9e9;
	color: #919191;
	text-align: center;
	margin: 0 auto;
	box-shadow: inset 0px 5px 10px -5px rgba(50, 50, 50, 0.75);
}

.nv-step-icon > span
{
	display: inline-block;
	width: 25px;
	height: 25px;
	line-height: 25px;
	border-radius: 25px;
	color: #919191;
	text-align: center;
}

.nv-step-text
{
	display: block;
	text-align: center;
	color: #919191;
}

.nv-tab-current .nv-step-icon > span,
.nv-tab-current .nv-step-text
{
	color: #000;
}

.nv-tab-current .nv-step-icon > span
{
	background: #fff;
	box-shadow: 0 2px 3px -2px rgba(50, 50, 50, 0.75);
}

.nv-step-icon.nv-step-done > span
{
	background: #2d3c4c;
	box-shadow: 0 2px 3px -2px rgba(50, 50, 50, 0.75);
}

.nv-tabs-nav .hint--bottom::before
{
	border: none;
}
.nv-tabs-nav .hint--bottom::after
{
	background: none;
	box-shadow: none;
	font: inherit;
	color: #000;
	padding-top: 0;
}

#cc_exp_month,
#cc_exp_year,
#cc_cvd
{
	width: 100px;
}

@-webkit-keyframes sk-bouncedelay {
	0%, 80%, 100% { -webkit-transform: scale(0) }
	40% { -webkit-transform: scale(1.0) }
}
@keyframes sk-bouncedelay {
	0%, 80%, 100% {
	-webkit-transform: scale(0);
	transform: scale(0);
	} 40% {
	-webkit-transform: scale(1.0);
	transform: scale(1.0);
	}
}


@media(max-width: 1024px)
{
	.speedometer-oil,
	.speedometer-battery
	{
		display: none;
	}

	.speedometer-gas
	{
		top: 33%;
		left: 15%;
		max-width: 20%;
	}

	/*.speedometer-kmh
	{
		top: 18%;
		left: 37.5%;
	}*/

	.speedometer-temp
	{
		top: 33%;
		right: 15%;
		max-width: 20%;
	}
}
