.calculator {
	width: 70%;
	margin: 0 auto;
	padding: 0 0 0 0;
	background: #fff;
	overflow: hidden;
	display: none;
	max-width: 930px;
}

noscript .js {

	width: 400px;
	margin: 10px auto;
	text-align: center;
	background: #fff;
	border-radius: 10px;
	font-weight: 300;

}

noscript .js strong {
	font-size: 22px;
	font-weight: 300;
	display: block;
	margin: 0 0 10px;
}

noscript .js img {
	display: block;
	margin: 0 auto 10px auto;
	width: auto;
}

.calculator #panel1,
.calculator #panel2,
.calculator #panel3,
.calculator #panel4 {
	min-height: 700px;
}

.calculator #panel2 {
	/*display: none; */
}

.calculator .forms > div,
.calculator .heading,
.calculator .select-your-employer {
	color: #999;
	position: relative;
}

.youPayImg {
	width: 65px;
	height: 42px;
	position: absolute;
	right: 7px;
	top: 8px;
}

.calculator .forms .sum,
.calculator #tabs-4 .forms .sum,
.calculator #tabs-1 .forms .sum {
	background: none repeat scroll 0 0 #4e6ca8;
	color: #fff;
	border-bottom: 1px solid #fff;
	border-top: 1px solid #fff;
}

.calculator .forms .sum input,
.calculator .forms .sum input.result {
	color: #fff !important;
}

.calculator div.sum label {
	color: #fff !important;
	padding: 10px 20px;
}

.calculator .one {

}

.calculator .select-your-employer {
	/*display: none;  */
}

.calculator .forms {
	padding: 0;
	clear: both;
}

.calculator .forms > .header-row img {
	position: absolute;
	top: -1px;
	right: 30px;
}

.calculator #step_4 .forms > .header-row {

}

.calculator div.employer-select {
	float: left;
	width: auto;
}

.calculator a.change-employer {
	float: none;
	top: 24px;
	margin-top: 16px;
	padding: 10px 35px 10px 0;
	cursor: pointer;
	color: #fff;
	position: relative;
}

.calculator a.change-employer:hover {
	color: #d2d2d2;
}

.calculator .loader {
	background: none repeat scroll 0 0 rgba(0, 0, 0, 0.6);
	border-radius: 10px 10px 10px 10px;
	margin: 0 auto;
	padding: 40px;
	position: absolute;
	top: 305px;
	z-index: 100;
	width: 65px;
	left: 49%;
	margin-left: -65px;
	display: none;

}

.calculator .loader img {
	position: relative;
	left: 0;
	margin: 0 auto;
	width: auto;

}

.calculator .the-loader {
	vertical-align: middle;
	box-shadow: inset 0 4px 17px rgba(0, 0, 0, .04);
	border-bottom: 2px solid #d1d1d1;
	border-radius: 5px;
	height: 50px;
	margin: 0 20px;
	color: #888;
	line-height: 50px;
	padding-left: 60px;
	font-size: 10px;
}

.calculator .the-loader img {
	display: inline-block;
	margin: 9px;
}

.calculator .header-row h3 {
	text-transform: uppercase;
	font-size: 12px;
	color: #000;
}

.calculator .select-your-employer {
	background: none #fff;
}

#tabs-4 label, #tabs-1 label {
	width: 340px;
}

.calculator .heading {
	text-align: center;
	height: 45px;
}

.calculator a {
	text-decoration: none;
	color: #000;
}

.calculator a:hover {
	color: #c15f0c;
}

:focus {
	outline: -webkit-focus-ring-color auto 0;
}

.pad {
	padding: 0 20px;
}

.result span {
	display: block;
	margin: 0 0 1px 0;
	color: #000;
	font-size: 35px;
}

.main-result {
	text-align: center;
	color: #555;
	text-transform: uppercase;
	margin: 20px 0;
}

.main-result span {
	display: block;
	margin: 0 0 1px 0;
	color: #000;
	font-size: 35px;
}

.calculator .scoreboard {
	width: 200px;
	height: auto;
	position: absolute;
	right: 50px;
	top: 20px;
	box-shadow: 0 0 10px #999;
	z-index: 10;
	background: #fff;
	color: #999;
	text-transform: uppercase;
	padding: 20px 0 0 0;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
}

.scoreboard #total-cost {
	font-size: 32px;
	color: #000;
	padding: 10px 0 0 0;
}

.scoreboard input {
	width: 100%;
	padding: 0;
	margin: 10px 0 0 0;
}

.calculator h5 {
	font-size: 18px;
	margin: 16px 0 0 0;
	color: #000;
}

.calculator h5 .number {
	width: 29px;
	height: 29px;
	color: #fff;
	line-height: 1.7;
	font-size: 18px;
	text-align: center;
	display: inline-block;
	margin-right: 10px;
}

.calculator p {
	width: 93%;
	margin-left: auto;
	margin-right: auto;
}

.calculator h1 {
	margin: 0 0 0 0;
	padding: 20px 0;
	/*background: #0069aa;*/
	border-radius: 4px 4px 0 0;
	-webkit-border-radius: 4px 4px 0 0;
	-moz-border-radius: 4px 4px 0 0;
	background: none repeat scroll 0 0 #0069aa;
}

.calculator h1 .pad {
	font-size: 27px;
	font-weight: 300;
	padding: 25px 20px 20px;
	color: #fff;
}

/* Fields */

.calculator fieldset input, .calculator fieldset select {
	width: 104px;
	margin: 0 13px 0 20px;
	color: #555;
	background-color: #fff;
	border: 1px solid #ccc;
	-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
	-moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
	box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
	-webkit-transition: border linear 0.2s, box-shadow linear 0.2s;
	-moz-transition: border linear 0.2s, box-shadow linear 0.2s;
	-o-transition: border linear 0.2s, box-shadow linear 0.2s;
	transition: border linear 0.2s, box-shadow linear 0.2s;
	line-height: 42px;
	font-size: 16px;
	padding: 0 10px;
	box-sizing: border-box;
	height: 42px;
}

.calculator h2 {
	background: transparent;
	width: 103px;
	margin-right: 0;
	color: #000;
}

.calculator h2.spanned-two {
	width: 200px;
}

.calculator h2.under {
	margin-left: 20px;
	border-bottom: 7px solid #999;
}

.plus, .less, .equals, .youpay {
	border: 1px solid #999;
	padding: 0 5px;
	margin-right: 5px;
	font-size: 12px;
	text-transform: uppercase;
	font-weight: bold;
	border-radius: 2px;
}

.plus {

	color: green;
	border-color: green;

}

.less, .youpay {

	border-color: red;

}

.calculator fieldset input {
	text-align: right;
	float: left;
}

.calculator fieldset input.percent {

}

.calculator fieldset input.number {
	background: none #fff;
}

.month {
	width: 40px;
}

.calculator h2 {
	border: 0;
	font-size: 16px;
	float: left;
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	box-shadow: none;
	margin: 10px 0 0 0;
	font-weight: bold;
}

.calculator input.calculation {
	border: 0;
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	box-shadow: none;
	font-size: 20px;
	color: #999;
	background: transparent;
}

.calculator p.bottom {
	margin-bottom: 0 !important;
	padding-bottom: 0 !important;
}

input.next {
	float: right !important;
}

input.prev {
	float: left;
}

.calculator .forms .buttons {
	padding: 0;
	width: 100% !important;
	margin: 0;
	border: 0;
}

.buttons {
	width: 100%;
	margin-top: 0 !important;
}

.calculator .success {

	background: #f6fddc;
	width: 100%;
	color: #5b800e;
	border: 0;
	border-bottom: 3px #b4d367 solid;
	display: none;

}

.calculator .success img {

	position: relative;
	top: 5px;
	left: -5px;

}

.scoreboard input.button {
	width: 100%;
	border-radius: 0 0 3px 3px;
	-moz-border-radius: 0 0 3px 3px;
	-webkit-border-radius: 0 0 3px 3px;
}

.button:hover {
	color: #8fcbf0;
	background-color: transparent !important;

}

.calculator fieldset select {
	cursor: pointer;
	float: left;
	border-width: 1px;
	height: 42px;
	background: #fff url('https://cdn3.iconfinder.com/data/icons/google-material-design-icons/48/ic_keyboard_arrow_down_48px-128.png') no-repeat;
	background-size: 20px;
	background-position: right 10px center;
	-webkit-appearance: none;
	-moz-appearance: none;
	margin: 0 13px 0 20px;
	padding: 0 30px 0 10px;
}

.help select {
	width: 145px;
}

.empid {
	min-height: 100px;

}

.calculator select option {
	padding: 3px 3px;
}

/* Slider */

#slider {
	width: 80%;
	padding: 0 20px;
	margin: 0 20px 50px 20px;
}

#slider .ui-slider-handle {
	cursor: pointer;
}

#slider .ui-slider-handle .slider-number {
	position: absolute;
	top: 20px;
	font-size: 25px;
	font-weight: bold;
	left: -68px;
	width: 140px;
	text-align: center;
	color: #000;
	border: 0;
	outline: none;
}

#slider .ui-slider-handle .slider-number .annual-contribution {
	font-size: 10px;
	color: #555;
	text-transform: uppercase;
}

/* Misc */

.clr {
	clear: both;
	border: 0;
}

hr {
	border: 1px dashed #d2d2d2;
	margin: 10px 20px 20px 20px;
}

/* Steps */
.step_1, .step_2, .step_3, .step_4 {
	display: none;
}

.active {
	display: block;
}

.inactive {
	display: none;
}

/* Help Information */

.help {
	display: none;
	width: 100%;
	height: auto;
	color: #fff;
	position: relative;
	box-shadow: 0 3px 5px rgba(0, 0, 0, 0.4) inset;
}

.help p {
	padding: 15px 20px;
	margin: 0;
	color: #fff;
}

.help img {
	position: absolute;
	top: 0;
	left: 40px;
}

.calculator .forms > div.active {
	color: #000;
}

.calculator .forms > div.active label {
	color: #000;
}

.calculator label img {
	position: absolute;
	top: 5px;
	right: -17px;
	display: block;
	cursor: pointer;
	opacity: .3;
}

.callout {
	position: absolute;
	background: #000;
	padding: 10px;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	top: -25px;
	color: #fff !important;
	box-shadow: 0 2px 2px rgba(0, 0, 0, .2);
}

.callout img {
	position: absolute;
	bottom: -10px;
	left: 60px;
}

/* Tabs */

.ui-tabs-hide {
	display: none;
}

.calculator ul.tabs {
	margin: 10px 0 10px 20px;
	padding: 0;
}

.calculator ul li {
	padding: 0;
	margin: 0;
	list-style: none;
	display: inline-block;
}

.calculator ul.ui-tabs-nav li {
	margin: 0 -2px;
}

ul.tabs li a {
	cursor: pointer;
}

.ui-tabs .ui-tabs-panel {
	padding: 0;
}

.ui-widget-content {
	border: 0;
}

.ui-tabs {
	padding: 0;
}

.ui-tabs .ui-tabs-nav {
	margin: 65px 0;
	padding: 10px;

}

.ui-widget-header {
	background: none transparent;
	border: 0;
}

.ui-tabs .ui-tabs-nav li a {
	padding: 5px 14px;
	display: block;
	text-transform: uppercase;
	font-size: 14px;
	font-weight: bold;
	color: #4e6ca8;
	border: 2px solid #4e6ca8;
}

.ui-tabs .ui-tabs-nav li:nth-child(1) a,
.ui-tabs .ui-tabs-nav li:nth-child(2) a,
.ui-tabs .ui-tabs-nav li:nth-child(3) a {
	border-right: none;
}

.ui-tabs .ui-tabs-nav li a:hover,
.ui-state-active a, .ui-state-active a:link,
.ui-state-active a:visited {
	background: #4e6ca8;
	color: #fff;
}

.ui-tabs .ui-tabs-nav li {
	border: 0;
	margin: 0;
}

.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default {
	background: none transparent;
}

.ui-state-active a {

	background-color: #000;
	color: #fff !important;

}

.ui-tabs .ui-tabs-nav li.ui-tabs-active a, .ui-tabs .ui-tabs-nav li.ui-state-disabled a, .ui-tabs .ui-tabs-nav li.ui-tabs-loading a {

	color: #fff;

}

/* Progress */

ul.progress {
	padding: 90px 0;
	width: 100%;
	margin: 0;
	position: relative;
}

ul.progress li {
	padding: 8px 0 5px;
	text-transform: uppercase;
	font-size: 16px;
	margin: 0 20px;
	cursor: pointer;
	list-style: none;
	color: #9f9f9f;
	font-weight: bold;
}

ul.progress li.here {
	padding-bottom: 30px;
	cursor: text;
	color: #747474;
	border-bottom: 2px solid #f7e841;
}

input::-ms-clear {
	display: none;
}

/* Charts */
.bar {
	width: 40%;
	background: #888;
	display: block;
	margin-left: 10px;
	position: absolute;
	bottom: 0;
	border-top: 4px solid #555;
	box-shadow: inset 0 -30px 30px rgba(0, 0, 0, .2);
}

.nhdhpa, .nhdhpm {
	background: #d5d5d5;
	border-top: 4px solid #b8b8b8;
	right: 0;
	margin-right: 10px;
}

.htmlchart {
	padding: 0 20px 0 20px;
	position: relative;
	min-height: 240px;
}

.htmlchart .text {
	position: absolute;
	top: -51px;
	font-weight: bold;
	text-align: center;
	width: 100%;
	color: #555;
	font-size: 11px;
}

.htmlchart .text .total {
	font-weight: normal;
	font-size: 19px;
}

.charttitle {
	width: 45%;
	position: absolute;
	top: 10px;
	text-align: center;
	font-size: 14px !important;
	text-transform: uppercase;
	border-bottom: 4px solid #999;

}

.monthly {
	right: 0;
}

.conclusion {
	background: #fff;
	padding: 15px;
	box-shadow: 0 2px 4px rgba(0, 0, 0, .4);
	border: 1px solid #d2d2d2;
	color: #555;
	position: relative;
	top: -100px;
	margin: 0 auto;
	border-bottom: 4px;
}

.hsaError {
	display: none;
	background: #fcf7e7;
	width: 315px;
	height: auto;
	position: absolute;
	right: 0;
	top: 0;
	color: #996443;
	padding: 10px 10px 12px 75px;
	min-height: 60px;
}

.hsaError .error-over {
	position: absolute;
	top: 0;
	left: -17px;
}

.calculator input.noteditable,
.calculator select.noteditable {
	background-color: #f8f8f8;
}

p.highlight {
	max-width: 750px;
	margin: 0 auto;
	font-size: 18px;
	font-style: italic;
	font-weight: 300;
	line-height: 140%;
}

.inner-content {
	max-width: 700px;
	margin: 0 auto;
	padding: 0;
}

.fields-wrap {
	clear: both;
}

.fields-wrap .label-wrap {
	width: 50%;
	float: left;
	text-align: left;
	margin: 10px 0;

}

.fields-wrap .label-wrap .label {
	position: relative;
}

#step_4 .fields-wrap .label-wrap,
#step_4 .header-row .label-wrap:nth-child(1) {
	width: 40%;
}

.results2 .header-row .label-wrap:nth-child(2) {
	width: 50%;
}

.fields-wrap .input-wrap {
	width: auto;
	float: right;
	margin: 10px 0;
}

.calculator .label,
.calculator label {
	position: relative;
	display: inline-block;
	padding: 5px 0;
	color: #000;
	font-weight: 300;
	text-align: left;
	font-family: "pmn_caecilia_55roman", "Open Sans", sans-serif;
	font-size: 21px;
	line-height: 130%;
}

.fields-wrap .label-wrap h4 {
	font-weight: normal;
	margin: 0;
	padding: 0;
	font-size: 16px;
	color: #58595b;
	line-height: 130%;
}

.heading,
.header-row {
	padding: 70px 0 8px;
	clear: both;
}

.heading .label-wrap h2,
.header-row .label-wrap h2,
.heading .label-wrap h3,
.header-row .label-wrap h3 {
	font-size: 14px;
	color: #bbb;
	font-weight: bold;
	font-family: "Open Sans", sans-serif;
	text-transform: uppercase;
	line-height: 100%;
	margin: 0;
}

.heading .label-wrap:nth-child(1),
.header-row .label-wrap:nth-child(1) {
	width: 60%;
	float: left;
	margin: 10px 0;
	text-align: left;
}

.heading .label-wrap:nth-child(2),
.header-row .label-wrap:nth-child(2) {
	width: auto;
	float: right;
	margin: 10px 0;
}

.calculator fieldset {
	padding: 25px 0;
	margin: 0;
	clear: both;
}

.calculator fieldset,
.calculator .header-row,
.calculator .heading {
	border-top: 1px solid #acacac;
}

.calculator .header-row.clear-border,
.calculator .heading.clear-border {
	border: none;
}

.pane {
	clear: both;
}

h5.headline {
	font-family: "pmn_caecilia_55roman", "Open Sans", sans-serif;
	font-size: 34px;
	margin-bottom: 30px;
}

.instructions {
	font-size: 18px;
	font-weight: 300;
	line-height: 160%;
}

#employer-id label {
	padding: 0 10px;
}

#employer-id input {
	margin: 10px 0;
	float: none;
	height: auto;
	width: 20px;
}

.calculator .btn-whiteborder.gray {
	color: #9f9f9f;
	border: 2px solid #9f9f9f
}

.calculator .btn-whiteborder.gray:hover {
	color: #fff;
	background-color: #9f9f9f
}

.calculator .btn-whiteborder {
	width: 50%;
	max-width: 177px;
}

#step_4 .ui-tabs {
	padding-bottom: 65px;
	border-bottom: 1px solid #acacac;
	margin-bottom: 65px;
}

.charttitle.bar-wrap {
	bottom: 0;
}

.help-tip {
	position: absolute;
	top: 5px;
	right: -35px;
	text-align: center;
	background-color: #fff;
	border-radius: 50%;
	width: 18px;
	height: 18px;
	font-size: 12px;
	line-height: 20px;
	cursor: default;
	border: 1px solid #6f88b8;
}

.help-tip:before {
	content: '?';
	font-weight: bold;
	color: #6f88b8;
	z-index: 9999;
}

.help-tip:hover p {
	display: block;
	transform-origin: 100% 0%;
	-webkit-animation: fadeIn 0.3s ease-in-out;
	animation: fadeIn 0.3s ease-in-out;
}

.help-tip p { /* The tooltip */
	display: none;
	text-align: left;
	background-color: #1e2021;
	padding: 20px;
	width: 200px;
	position: absolute;
	border-radius: 3px;
	box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.2);
	right: -4px;
	color: #fff;
	font-size: 13px;
	line-height: 1.4;
}

.help-tip p:before { /* The pointer of the tooltip */
	position: absolute;
	content: '';
	width: 0;
	height: 0;
	border: 6px solid transparent;
	border-bottom-color: #1e2021;
	right: 10px;
	top: -12px;
	z-index: 999;
}

.help-tip p:after { /* Prevents the tooltip from being hidden */
	width: 100%;
	height: 40px;
	content: '';
	position: absolute;
	top: -40px;
	left: 0;
}

/* CSS animation */

@-webkit-keyframes fadeIn {
	0% {
		opacity: 0;
		transform: scale(0.6);
	}

	100% {
		opacity: 100%;
		transform: scale(1);
	}
}

@keyframes fadeIn {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 100%;
	}
}