body {
	min-width: 320px;
}

.outage {
	padding: 30px;
}

select.selectmenu {
	background: rgba(0, 0, 0, 0.3) none repeat scroll 0 0;
	border: 1px solid rgba(255, 255, 255, 0.3);
	border-radius: 4px;
	padding: 9px 0 10px;
	text-indent: 0.5em;
	width: 100%;
	height: 39px;
	font-size: 14px;
}

.ui-selectmenu-button {
	/* over-rides set width from js */
	width: 100%!important;
}

.ui-selectmenu-button span.ui-selectmenu-text {
	line-height: 1.7;
	padding: 0.45em 40px 0.5em 1em;
}

body.home .ui-selectmenu-menu,
body.calculators .ui-selectmenu-menu,
form input[type="text"],
form input[type="number"] {
	font-size: 14px;
	letter-spacing: normal;
}

body.home #addForm {
	margin-top: 0;
	padding: 0;
}

/* Home page hero */
.home .hero-container.home .inner-wrapper {
	position: relative;
	margin-bottom: 50px;
}

.home .hero-container .inner-wrapper ul {
	top: auto;
	bottom: 0;
}

.home .hero-container .inner-wrapper ul li {
	float: none;
}

.home .hero .btn {
	top: 20px;
}

/* Preventing a “Flash of Unstyled Text” (FOUT) fontdeck.com */
.modal.show {
	display: block;
}

.modal.show .modal-content {
	opacity: 1;
}

form .field {
	margin-bottom: 20px;
}

form .message {
	margin-top: 5px;
}

form .message.bad {
	color: #FF624C;
}

.btn {
	width: auto;
	min-width: 100px;
	line-height: 18px;
}

.btn.primary {
	/* add border to match .btn.seconary height/size */
	border: 1px solid #40c8a6;
}

.btn.primary:hover {
	border: 1px solid #36b393;
}

.btn.disable {
	cursor: auto;
	opacity: 0.5;
}

.btn.primary.disable:hover {
	background: #40C8A6;
}

.btn.secondary.disable:hover {
	background: none;
	border-color: #fff;
}

.action-sm {
	padding-left: 35px;
	color: rgba(63, 197, 165, 0.7);
	font-size: 14px;
}

.action-sm:hover {
	color: rgba(63, 197, 165, 1);
}

.tooltip.question {
	cursor: help;
}

.home #Form_AddForm {
	max-width: 100%;
}

.ui-tabs .ui-tabs-nav {
	display: block;
	padding: 0;
}

.ui-tabs {
	padding: 0;
}

/* Simple tabs */

[data-role="panel"] {
	display: none;
}

.active[data-role="panel"] {
	display: block;
}

/* END Simple tabs */

/* About */

.fast-50-banner {
	margin-bottom: 50px;
}

/* END About */

/* Public Site Calculators */

#calculator-tabs.static-tabs > ul {
	padding: 0 7%;
	border-bottom: 1px solid rgba(255, 255, 255, 0.3);
	margin: 0;
}

#calculator-tabs.static-tabs > ul li {
	display: inline-block;
	border: 1px solid rgba(255, 255, 255, 0.3);
	border-bottom: none;
	border-radius: 4px 4px 0 0;
	-webkit-border-radius: 4px 4px 0 0;
	-moz-border-radius: 4px 4px 0 0;
	list-style: none;
}

#calculator-tabs.static-tabs > ul li a {
	display: block;
	color: #3fc6a5;
	font-weight: bold;
	text-decoration: none;
	border-bottom: none;
	line-height: 30px;
}

#calculator-tabs.static-tabs > ul li:not(.active) a:hover {
	text-decoration: underline;
}

#calculator-tabs.static-tabs > ul li.active {
	margin-bottom: -1px;
	padding-bottom: 1px;
	background: #191d22;
}

#calculator-tabs.static-tabs > ul li.active a {
	color: #fff;
}

#calculator-tabs li a {
	padding: 10px 30px;
	font-size: 16px;
	text-transform: uppercase;
}

.calculators .calculator-container .calculator.wrapper {
	margin: 0;
	width: 100%;
}

body.calculators .calculator-panel {
	padding: 15px 0;
	position: relative; /* for loading overlay */
}

.summary-actions {
	display: block;
	margin: 25px auto 0;
	padding: 30px 7%;
	border-top: 1px solid rgba(255, 255, 255, 0.3);
}

.summary-actions a,
.summary-actions button {
	display: block;
	margin: 0 0 10px 0;
	box-sizing: border-box;
	float: left;
	min-width: 120px;
}

.summary-actions button {
	width: 100%;
}

.summary-actions .print-results,
.summary-actions .email-results {
	width: 49%;
}

.summary-actions .print-results {
	margin-right: 2%;
}

.summary-actions #loginToConfirm {
	width: 100%;
	margin: 0;
}

.calculator .form-item.checkbox-input {
	text-align: left;
}

body.calculators #taxDatesSelection .summary-row {
	padding: 0 7%;
}

#taxDatesSelection .form-item-spacer {
	padding-top: 20px;
	white-space: nowrap;
}

#taxDatesSelection form a:hover {
	color: #ffffff;
	background: #36B393;
	border: 1px solid #36B393 !important;
}

#taxDatesSelection .ui-selectmenu-button {
	display: block;
}

#taxDatesSelection .btn {
    min-width: 100px;
}

#taxDatesSelection .summary-row {
	padding: 0;
}

#taxDatesSelection label {
	color: #fff;
}

.confirm-prompt {
	display: block;
	margin: 25px 0 0;
}

.confirm-prompt p {
	text-transform: uppercase;
	text-align: center;
	font-size: 18px;
	font-weight: bold;
	margin: 0;
}

.mobile-cta {
	width: 100%;
	display: block;
	margin: 20px 0;
	text-align: center;
}

.mobile-cta a {
	display: block;
}

.mobile-cta p {
	text-transform: uppercase;
	font-weight: 700;
	color: #fff;
}

.summary-table .summary-row {
	padding: 30px 7%;
	border-top: 1px solid rgba(255, 255, 255, 0.3);
	display: block;
	width: auto;
}

.summary-table .summary-row:first-of-type {
	border-top: none;
}

.summary-table .summary-row.subtotals {
	padding: 30px 7% 0;
	border-top: 1px solid rgba(255, 255, 255, 0.3);
}

.summary-table .summary-row .col {
	display: block;
	margin-bottom: 0;
	padding: 5px;
}

.summary-table .summary-row .col.visible-md-block {
	display: none;
}

.summary-table .summary-row .col.collapse {
	padding: 0;
}

.summary-table .summary-labels {
	display: table-row;
	font-size: 14px;
	width: 50%;
}

.summary-row .form-item.btn-item a:hover {
	border: 0;
}

.summary-table .summary-header {
	display: none;
}

.summary-table .summary-row .form-item {
	width: 50%;
	float: left;
	font-size: 14px;
}

.summary-table .summary-row .col label, .totals-title-label {
	text-transform: uppercase;
	width: 50%;
	float: left;
	padding-right: 10px;
	box-sizing: border-box;
	color: #fff;
}

#buy #request .summary-row .col label {
	color: #b9b9b9;
}

#taxDatesSelection .summary-row .col label,
#taxDatesSelection .summary-row .form-item,
#addForm .summary-row .col label,
#addForm .summary-row .form-item {
	float: none;
	width: 100%;
	max-width: 420px;
}

#buy #request .summary-row .col > label {
	margin-top: 7px;
}

.row-extras {
	margin-bottom: 10px;
}

.row-extras .card-delete,
.row-extras .card-number {
	width: 50%;
	float: left;
}

.card-number .item-number {
	background: rgba(0, 0, 0, 0) url("../img/form-number.png") no-repeat scroll 0 0;
	font-size: 13px;
	height: 36px;
	text-align: center;
	vertical-align: middle;
	width: 32px;
	padding-top: 4px;
	margin-left: 5px;
	color: #fff;
}

.card-delete .form-action-delete:after {
	content: "Remove";
	display: block;
	position: absolute;
	padding-left: 25px;
	color: rgba(63, 197, 165, 0.7);
	border: none;
	top: -3px;
}

.card-delete .form-action-delete:hover:after {
	color: rgba(63, 197, 165, 1);
}

#details .summary-row .form-action-delete,
#request .summary-row .form-action-delete {
	position: relative;
	top: 6px;
	margin-top: 0;
}

.form-action-delete:hover {
	border: none!important;
}

body.calculators .summary-table .summary-table-wrapper #addForm {
	padding: 0 7%;
}

#addForm .form-action-delete,
#request .form-action-delete {
	margin-top: 0px;
}

#addForm form .action.btn.primary {
	display: block;
}

.request-cta {
	padding: 0 7%;
	margin: 20px 0 0;
}

.summary-table .table {
	display: table;
	width: 100%;
}

#buy .summary-table form button.btn.primary.right {
	margin: 25px 30px;
}

#details .summary-row .col.form-item.btn-item {
	display: none;
}

.summary-table .summary-row.subtotals {
	font-weight: normal;
}

.summary-table .summary-row.subtotals .col:first-child {
	font-weight: bold;
}

.summary-table .summary-row.no-border,
.summary-table .summary-row.no-border .col,
.summary-table .summary-row .col.form-item-wrapper {
	border-top: none;
}

.summary-table .summary-row .btn-item {
	text-align: right;
	vertical-align: top;
}

.summary-table .summary-labels {
	display: table-row;
}

#addForm form .btn-close {
	display: block;
	position: absolute;
	float: none;
	height: 20px;
	width: 20px;
	padding: 0;
	right: 10px;
	bottom: 15px;
}

#addForm .form-row .form-item-wrapper.btn-item {
	position: relative;
}

#addForm label {
	color: #fff;
}

#addForm {
	padding: 0;
}

#addForm .summary-row {
	padding: 0;
}

#addForm .label-blank {
	display: none;
}

.js-hidden {
}

.js-visible {
	display: none;
}

.unavailable {
	display: none;
}

.border {
	border: 1px solid rgba(255, 255, 255, 0.3);
}

button {
	border: none;
	background: none;
	cursor: pointer;
}

form input.holder-bad {
	color: #FF624C;
	border-color: #FF624C !important;
}

form .form-item label {
	color: #fff;
}

.summary-table .summary-functions {
	padding: 0;
	margin: 20px 0 0 0;
	border-bottom: none;
}

.summary-functions .estimate-actions {
	display: block;
	padding: 30px 7%;
	margin: 0;
	background: #131619 none repeat scroll 0 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.3);
}

.estimate-actions .add,
.estimate-actions .edit {
	box-sizing: border-box;
	display: inline-block;
	margin-bottom: 10px;
	min-width: inherit;
}

.estimate-actions .add {
	width: 49%;
	margin-right: 2%;
}

.estimate-actions .add.js-visible {
	display: none;
}

.estimate-actions .edit {
	width: 100%;
}

.estimate-actions .add + .edit {
	/* This solved inline block display issue caused by line break in html code styling */
	margin-left: -4px;
	margin-right: -4px;	/* end */
	width: 49%;
}

.estimate-actions .remove {
	display: block;
}

.summary-functions .estimate-actions.js-visible {
	display: none;
}

.message-container-wrap {
	display: none;
	margin-top: 20px;
	border-top: 1px solid rgba(255, 255, 255, 0.3);
	border-bottom: 1px solid rgba(255, 255, 255, 0.3);
}

.message-container-wrap.active {
	display: block;
}

.message-container {
	font-size: 14px;
	padding: 10px 7%;
}

.message-container p {
	max-width: 400px;
	margin-bottom: 1em;
}

/* Payment Section */

#paymentSection {
	border-bottom: none;
	margin: 20px 0 0;
}

#paymentTab {
	border-right: none;
	padding: 30px 7%;
}

#payPlannerPanels {
	position: relative;
	border-right: none;
	padding: 0;
}

#paymentTab,
#payPlannerPanels {
	border-top: none;
}

#paymentTabs,
#paymentDescripton {
	float: none;
	width: 100%;
	box-sizing: border-box;
}

.span-title {
	font-size: 14px;
	letter-spacing: 1px;
	font-weight: 600;
	text-transform: uppercase;
	color: #fff;
}

#paymentTabs .form-item {
	min-height: 0;
	text-align: left;
}

#paymentTabs .payment-plan-container {
	margin-bottom: 20px;
	color: #fff;
}

#paymentTabs .payment-plan-container .form-item {
	max-width: 250px;
}

#paymentTabs .payment-plan-container hr.thin {
	margin-top: 22px;
}

#paymentTabs .btn-item .btn {
	margin-top: 20px;
	min-width: 0;
	display: block;
	width: 100%;
}

#paymentTabs .btn-item a.btn {
	width: auto;
}

#paymentTabs .btn.js-hidden {
	margin-top: 20px;
}

#paymentTabs form .form-item .ui-datepicker-trigger {
	right: 10px;
}

#payPlannerForms {
	padding: 30px 7%;
}

.payment-panel {
	display: none;
}

.payment-panel.active {
	display: block;
}

#paymentFixedAmount .payment-row .payment-item,
#paymentFixedNumber .payment-row .payment-item {
	float: none;
	margin-bottom: 10px;
}

#paymentFixedAmount .payment-row .payment-item .payment-label,
#paymentFixedNumber .payment-row .payment-item .payment-label {
	width: 50%;
	float: left;
	margin: 6px 0 0;
}

#paymentFixedAmount .payment-row .payment-item .form-item,
#paymentFixedNumber .payment-row .payment-item .form-item {
	width: 50%;
	float: left;
}

#paymentFixedNumber .payment-row .payment-item .form-item.sm-input {
	width: 50%;
}

#paymentTabs ul {
	padding: 0 0 0 7%;
	border-bottom: 1px solid #5e6165;
}

#paymentSection form {
	display: block;
}

#paymentSection form .form-item-wrapper {
    display: block;
}

#paymentSection .ui-selectmenu-text {
	font-size: 14px;
	letter-spacing: normal;
}

#paymentSection label {
	text-transform: uppercase;
	font-weight: 600;
}

#paymentSection .payment-due-label,
#paymentSection .payment-due-date {
	vertical-align: top;
	font-weight: 600;
	font-size: 14px;
	display: inline;
	letter-spacing: 1px;
}

#paymentSection .payment-due-label {
	text-transform: uppercase;
	float: left;
	margin-right: 0;
}

#paymentSection .payment-due-date {
	color: #b9b9b9;
	float: right;
}

#paymentTab .message-container {
	max-width: 340px;
	min-height: 45px;
	font-size: 14px;
	letter-spacing: normal;
	position: relative;
	padding: 0;
	margin: 0;
}

#paymentTab .message-container p {
	padding: 0;
	margin: 0;
}

#paymentTab .choose-another-date {
	background: rgba(0, 0, 0, 0) url("../img/icon_calendar-small-green.png") no-repeat scroll 0 3px;
	display: inline-block;
	color: rgba(63, 197, 165, 0.7);
	font-size: 14px;
	font-weight: normal;
	letter-spacing: 1px;
	padding: 0 0 0 25px;
	width: auto;
	margin-top: 15px;
	border: none;
}

#paymentTab .choose-another-date:hover {
	color: #40c8a6;
}

.payPlanner-prompt {
	font-size: 14px;
}

.payPlanner-prompt hr.thin {
	margin: 25px 0;
}

.payPlanner-prompt span {
	margin-left: 25px;
}

#paymentTab a {
	display: block;
	margin-top: 10px;
}

#paymentTabSummary a {
	margin-top: 0;
}

#paymentTabSummary .summary-table .summary-row {
	padding: 0;
	border-top: none;
}

.payment-label {
	display: block;
	color: #b9b9b9;
	font-size: 14px;
	margin-bottom: 10px;
	letter-spacing: 1px;
}

.payment-label.white {
	color: #fff;
}

.payment-item .payment-label {
	margin-bottom: 0;
}

.planner-title .payment-label {
	font-weight: 600;
	text-transform: uppercase;
	text-align: left;
	margin-bottom: 10px;
}

#paymentTabForm .form-item {
	width: 50%;
}

#paymentSingle .payment-row .payment-item .form-item {
	width: 50%;
}

#customSummaryAmount {
	color: rgba(63, 197, 165, 1);
	font-weight: 600;
	font-size: 14px;
}

#customSummaryAmount.warning {
	color: #ff4953;
}

#paymentCustom form .rows {
	margin-bottom: 10px;
}

#paymentCustom form .rows .payment-row .payment-item {
	margin-bottom: 10px;
	margin-right: 0;
	float: none;
}

#paymentCustom form .rows .payment-row .payment-item:last-child {
	margin-bottom: 0;
	margin-right: 0;
}

#paymentCustom form .rows .payment-row .payment-item .payment-label {
	float: left;
	width: 50%;
	margin: 6px 0 0;
}

#paymentCustom form .rows .payment-row .payment-item.remove-wrapper {
	margin: 0;
}

#paymentCustom form .rows .payment-row .payment-item .form-item {
	float: left;
	width: 50%;
}

#paymentCustom .payment-item a.remove {
	border: 1px solid #ffffff;
	display: block;
}

#paymentCustom .payment-item a.remove:hover {
	border: 1px solid #36b393!important;
}

#paymentCustom .summary-add .add {
	display: block;
	box-sizing: border-box;
	width: 100%;
	margin-top: 20px;
}

#paymentCustom .payment-row {
	padding: 15px 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.3);
}

#paymentCustom .foot {
	border-bottom: none;
	padding-bottom: 10px;
}

#paymentCustom .foot .summary-add {
	float: none;
}

#paymentCustom .foot .summary-remaining {
	float: none;
	text-transform: uppercase;
	font-weight: 600;
	color: #999a9a;
	font-size: 14px;
}

#paymentPayAsYouGo .payment-label {
	font-weight: 600;
	margin-bottom: 10px;
	text-transform: uppercase;
}

#paymentPayAsYouGo p {
	max-width: 400px;
	letter-spacing: normal;
	margin: 0;
}

#payPlannerResults {
	padding: 30px 0;
}

#payPlannerResults .table {
	display: table;
	width: 100%;
}

#payPlannerResults .chosen-plan {
	margin: 0 0 30px;
	padding: 0 7%;
	font-size: 14px;
}

#payPlannerResults .payment-row {
	padding: 0 7%;
}

#payPlannerResults .chosen-plan span {
	text-transform: uppercase;
	display: block;
}

#payPlannerResults .chosen-plan span.plan-label {
	color: #fff;
	font-weight: 600;
}

#payPlannerResults .summary-row {
	padding: 30px 7%;
	border-top: 1px solid rgba(255, 255, 255, 0.3);
}

#payPlannerResults .summary-row:last-of-type {
	border-bottom: 1px solid rgba(255, 255, 255, 0.3);
}

#payPlannerResults .summary-row .col {
	padding: 5px 0;
}

#payPlannerResults .summary-row .col label {
	white-space: normal;
	font-weight: normal;
	color: #fff;
}

#payPlannerResults .foot {
	padding: 10px 7% 0;
}

#payPlannerResults .estimate-actions {
	float: none;
}

.estimate-complete {
	padding: 0;
}

#payPlannerResults .estimate-complete {
	padding: 0 7%;
}

#payPlannerResults a.btn,
#paymentTabSummary a.btn {
	display: block;
	margin-top: 20px;
	width: auto;
}

#payPlannerResults .estimate-actions .edit {
	border: 1px solid #ffffff;
	display: block;
	margin: 20px 0;
}

#payPlannerResults .estimate-actions .edit:hover {
	border: 1px solid #36b393 !important;
}

#payPlannerResults p {
	font-size: 13px;
}

.payment-summary {
	display: none;
}

.payment-summary.active {
	display: block;
}

#summaryPayAsYouGo {
	padding: 0 7%;
}

#summaryPayAsYouGo p {
	max-width: none;
	margin-bottom: 12px;
}

#paymentDescription {
	padding: 30px 7%;
	margin: 0;
	font-size: 14px;
	letter-spacing: normal;
	border-top: 1px solid #5e6165;
}

#paymentDescription span.span-title {
	font-size: 14px;
	letter-spacing: 1px;
	font-weight: 600;
	text-transform: uppercase;
}

#paymentDescription span.missed-out {
	display: block;
	margin-top: 32px;
}

#paymentDescription p {
	margin: 4px 0 16px;
	color: #b9b9b9;
}

#paymentDescription .btn {
	margin: 5px 0 0 0;
	padding: 10px 0;
	display: block;
}

hr.thin {
	border-color: rgba(255, 255, 255, 0.2);
	border-width: 1px;
	width: 100%;
	margin: 15px 0;
}

/* Payment Section Ends */

#payPlannerForms form > .error,
#paymentTabForm form > .error {
	display: block;
	font-style: normal;
	margin-bottom: 10px;
	color: #FF624C;
}

.static-label label {
	float: none;
}

.error {
	color: #ef8a79;
	display: block;
	font-size: 14px;
	font-style: italic;
	text-decoration: none;
	text-transform: none;
	text-align: left;
	letter-spacing: normal;
}

/* other */

.ghost {
	opacity: 0.4;
	cursor: default;
}

input[type="text"]:disabled {
	color: #666;
}

#finance #addForm input[name="DepositDate"], #finance #addForm input[name="TaxPeriod"] {
	/* Make the 'Tax Finance Date' input appear normal, while disabled. */
	/*color: #bababa;*/
}

.selectmenu-overflow {
	max-height: 350px;
	position: relative;
}

/* Datepicker disabled dates */
.ui-datepicker-unselectable,
.ui-state-disabled {
	color: #666;
}

/* Calculator loading state SVG and animation */
.ajax-form-overlay {
	position: fixed;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background: #191d22;
	opacity: 0.3;
	z-index: 30;
}

#loadingAnimation {
	width: 27px;
	height: 100%;
	position: fixed;
	left: 50%;
	margin: -13px 0 0 -13px;
	z-index: 31;
	transform: translateY(50%);
	filter: initial;
}

.spinner {
	background: url('../img/icon-loading-clock.png') no-repeat;
	display: inline-block;
	width: 27px;
	height: 27px;
}

.btn-spinner {
	display: inline-block;
	position: relative;
	margin-left: 10px;
	top: 2px;
	left: 0;
	width: 13px;
	height: 13px;
	z-index: 20;
}

.btn-spinner.white {
	background: url('../img/icon-loading-clock-white-sm.png') no-repeat;
}

.btn-spinner.green {
	background: url('../img/icon-loading-clock-sm.png') no-repeat;
}

/* Calculator loading state ends */

.btn-close {
	background: url('../img/form-remove.png') no-repeat;
	padding-left: 20px;
	font-size: 14px;
	color: rgba(63, 197, 165, 0.7);
}

.btn-close:hover {
	color: rgba(63, 197, 165, 1);
}

.text-input.amount input {
	text-indent: 20px;
}

/* Calculator loading state SVG and animation */

.btn-spinner {
	display: inline-block;
	position: relative;
	margin-left: 10px;
	top: 2px;
	left: 0;
	width: 13px;
	height: 13px;
	z-index: 20;
}

.btn-spinner.white {
	background: url('../img/icon-loading-clock-white-sm.png') no-repeat;
}

.btn-spinner.green {
	background: url('../img/icon-loading-clock-sm.png') no-repeat;
}

/* Calculator loading state ends */

#Form_PaymentOptionMultipleForm_PaymentOptionMultiple-button {
	min-width: 50%;
	max-width: 50%;
}

/* public -  sell page */
body.sellcontactpage .form-item-wrapper.col.col-1 {
	/* public Sell page .col hotfix */
	width: auto;
}

body.sellcontactpage form .col {
	margin-bottom: 5px;
}

body.sellcontactpage .remove-col {
	padding-bottom: 8px;
}

body.sellcontactpage button {
	color: rgba(63, 197, 165, 0.7);
	padding: 0;
}

body.sellcontactpage button:hover {
	color: rgba(63, 197, 165, 1);
}

body.sellcontactpage .remove {
	background: rgba(0, 0, 0, 0) url("../img/form-trash.png") no-repeat scroll 0 0;
	padding-left: 25px;
}

body.sellcontactpage .action.add {
	background: rgba(0, 0, 0, 0) url("../img/form-add.png") no-repeat scroll 0 5px;
	padding-left: 25px;

}

/* Security Form */

#feeGuard {
	margin: 25px 7% 0;
	padding: 15px;
	border-radius: 4px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px ;
}

#feeGuard .security-cta {
	width: auto;
	float: left;
	margin: 0;
	padding: 0;
}

#feeGuard .security-label, #feeGuard .security-terms  {
	float: left;
	color: #fff;
	line-height: 16px;
}

#feeGuard .security-label {
	width: 50%;
	margin: 12px 0 0 10px;
	text-transform: uppercase;
}

#feeGuard .security-terms {
	width: 100%;
	margin: 10px 0 0;
}

#feeGuard .security-terms p {
	margin: 0;
	color: #b9b9b9;
	white-space: normal;
	font-size: 14px;
}

#feeGuard .security-terms span {
	color: #fff;
}

#feeGuard input.large[type="checkbox"] + label span {
	position: static;
}

#feeGuard .security-cta a {
	width: auto;
	min-width: auto;
	display: block;
	padding: 12px 12px;
}

#feeGuard .form-item.checkbox-input {
	height: auto;
	/* overwrite main.css style */
}

#feeGuard .btn.primary[type="submit"] {
	margin-top: 20px;
	float: left;
}

/* Confirmation box */
.confirmation-box {
	display: none;
	margin: 20px 0 0;
	border-top: 1px solid rgba(255, 255, 255, 0.3);
	border-bottom: 1px solid rgba(255, 255, 255, 0.3);
}

.confirmation-box.active {
	display: block;
}

.confirmation-box .right {
	float: none;
}

.confirmation-box input.large[type="checkbox"] + label span {
	position: static;
}

.confirmation-box form {
	width: auto;
	padding: 20px 7%;
}


.confirmation-box input.large[type="checkbox"] + label span {
	position: static;
	float: left;
}

.confirmation-box form {
	padding: 20px 7%;
	margin-left: 10px;
}

.confirmation-box form .form-item, #TransferFunds .form-item {
	text-align: left;
}

.confirmation-box label p {
	color: #fff;
	text-transform: none;
	margin: 0;
	font-size: 13px;
	line-height: inherit;
}

.confirmation-box .field {
	padding: 0;
}

.confirmation-box .field label {
	color: #fff;
	display: block;
	line-height: inherit;
	margin: 0;
}

.confirmation-box #Confirm .form-item label.right > span {
	float: left;
	margin: 5px 15px 0 0;
}

.confirmation-box #Confirm .confirm-label {
	display: inline-block;
	font-size: 13px;
}

.confirmation-box #Confirm  .confirm-label strong {
	text-transform: uppercase;
	display: block;
	line-height: 1;
	padding-top: 4px;
}

.confirmation-box #Confirm .description {
	display: block;
}

.confirmation-box #Confirm .description p {
	margin: 1em 0;
	color: #b9b9b9;
	font-size: 14px;
}

.confirmation-box #Confirm .description p.span-title {
	color: #fff;
	margin-top: 0;
	margin-bottom: 0.5em;
}

.confirmation-box #Confirm .description p.span-title + p {
	margin-top: 0.5em;
}

.confirmation-box #ReassessmentDate {
	margin-top: 10px;
}

.confirmation-box #ReassessmentDate .form-item {
	width: 160px;
}

.confirmation-box input.datepicker {
	max-width: 160px;
}

input[type="checkbox"] ~ label p.label + span,
.ttsradio input[type="radio"] ~ label p.label + span {
	margin-left: 12px;
}

input[type="checkbox"] ~ label span + p.label,
.ttsradio input[type="radio"] ~ label span + p.label {
	margin: 0 0 0 12px;
}

input[type="checkbox"] ~ label span,
.ttsradio input[type="radio"] ~ label span {
	display: inline-block;
	width: 24px;
	height: 24px;
	border-width: 1px;
	border-style: solid;
	border-color: #5e6064;
	margin: 0;
	vertical-align: middle;
	cursor: pointer;
	border-radius: 3px;
	background-color: rgba(0,0,0,0.3);
}

input[type="checkbox"]:checked ~ label span,
.ttsradio input[type="radio"]:checked ~ label span {
	border-color: #fff;
	background-image: url("../img/icon-check.svg");
	background-repeat: no-repeat;
	background-position: 3px 3px;
	background-size: 18px 18px;
}

input[type="checkbox"]:disabled ~ label span,
.ttsradio input[type="radio"]:disabled ~ label span {
	cursor: default;
	opacity: 0.3;
}

input[type="checkbox"] ~ label p.label,
.ttsradio input[type="radio"] ~ label p.label {
	display: inline-block;
	position: relative;
	top: 13px;
	color: #fff;
	line-height: 1.4;
	transform: translateY(-50%);
}

input[type="checkbox"].small ~ label,
.ttsradio input[type="radio"].small ~ label {
	min-height: 22px;
	min-width: 20px;
}

input[type="checkbox"].small ~ label span,
.ttsradio input[type="radio"].small ~ label span {
	width: 20px;
	height: 20px;
	margin: 0 4px 0 0;
}

input[type="checkbox"].small:checked ~ label span,
.ttsradio input[type="radio"].small:checked ~ label span {
	background-position: 2px 2px;
	background-size: 17px 17px;
}

input[type="checkbox"].small ~ label p.label,
.ttsradio input[type="radio"].small ~ label p.label {
	top: 10px;
}

input[type="checkbox"].large ~ label,
.ttsradio input[type="radio"].large ~ label {
	min-height: 39px;
	min-width: 37px;
}

input[type="checkbox"].large ~ label span,
.ttsradio input[type="radio"].large ~ label span {
	width: 37px;
	height: 37px;
	margin: 0 4px 0 0;
}

input[type="checkbox"].large:checked ~ label span,
.ttsradio  input[type="radio"].large:checked ~ label span {
	background-position: 6px 6px;
	background-size: 25px 25px;
}

input[type="checkbox"].large ~ label p.label,
.ttsradio input[type="radio"].large ~ label p.label {
	top: 15px;
}

input[type="checkbox"].light ~ label, .checkboxset.light input[type="checkbox"] ~ label,
.ttsradio  input[type="radio"].light ~ label, .radioset.light input[type="radio"] ~ label {
	display: inline-block;
}

input[type="checkbox"].light ~ label span, .checkboxset.light input[type="checkbox"] ~ label span,
.ttsradio input[type="radio"].light ~ label span, .ttsradio .radioset.light input[type="radio"] ~ label span {
	background-color: #e8e8e8;
	border-color: #5e6064;
}

input[type="checkbox"].light:checked ~ label span, .checkboxset.light input[type="checkbox"]:checked ~ label span,
.ttsradio input[type="radio"].light:checked ~ label span, .ttsradio .radioset.light input[type="radio"]:checked ~ label span {
	background-color: #f6f6f6;
}

input[type="checkbox"].light ~ label p.label,
.ttsradio input[type="radio"].light ~ label p.label {
	color: #191d22;
}

.ttsradio ul.optionset {
	padding: 0;
	list-style: none;
	text-align: left;
}

.ttsradio ul.optionset.inline li{
	display: inline-block;
}
.ttsradio ul.optionset li label span {
	margin: 0px 5px 2px 0
}

/* contact page link styling */
body.contact .phone_b a,
body.contact .email_b a {
	border-bottom: none;
}

/* Terms & Conditions */
#termsConditions td {
	color: #777;
	padding-bottom: 10px;
}

#termsConditions ul {
	margin: 0;
}

#termsConditions li {
	list-style-type: none;
}

#termsConditions td {
	vertical-align: top;
}

/* 'perfect-scrollbar' plugin over-writes */

.ps-container > .ps-scrollbar-y-rail > .ps-scrollbar-y {
	background-color: #fff;
	width: 4px;
	border-radius: 2px;
}

.ps-container > .ps-scrollbar-y-rail {
	width: 4px;
}

.ps-container.ps-active-y > .ps-scrollbar-y-rail {
	opacity: 0.3;
	background-color: #000;
}

.ps-container.ps-in-scrolling.ps-y > .ps-scrollbar-y-rail {
      background-color: #000;
}

.ps-container:hover.ps-in-scrolling.ps-y > .ps-scrollbar-y-rail {
      background-color: #000;
}

.ps-container:hover > .ps-scrollbar-y-rail:hover {
    background-color: #000;
}

/* 'perfect-scrollbar' plugin over-writes ends */

.visible-xs-inline {
	display: inline;
}

.visible-md-inline {
	display: none;
}

.visible-lg-inline {
	display: none;
}

.visible-xs-inline-block {
	display: inline-block;
}

.visible-md-inline-block {
	display: none;
}

.visible-lg-inline-block {
	display: none;
}

.visible-xs-block {
	display: block;
}

.visible-md-block {
	display: none;
}

.visible-lg-block {
	display: none;
}

.bold {
	font-weight: bold;
}

/* Responsive Breakpoints - Media Queries */
@media only screen and (min-width:769px) {
	.visible-xs-inline {
		display: none;
	}

	.visible-md-inline {
		display: inline;
	}

	.visible-lg-inline {
		display: none;
	}

	.visible-xs-inline-block {
		display: none;
	}

	.visible-md-inline-block {
		display: inline-block;
	}

	.visible-lg-inline-block {
		display: none;
	}

	.visible-xs-block {
		display: none;
	}

	.visible-md-block {
		display: block;
	}

	.visible-lg-block {
		display: none;
	}

	#calculator-tabs.static-tabs > ul {
		padding: 0 0 0 0.2em;
	}

	.calculators .calculator-container .calculator.wrapper {
		margin: 0 5%;
		width: 90%;
	}

	#addForm {
		padding: 0 0;
	}

	.confirm-prompt {
		display: none;
	}

	.header-container .mobile-only {
		/* main-menu anchor button */
		display: block;
	}

	.home h1 .small,
	.home h1 .big,
	p.pseudo-h1 {
		font-size: 30px;
		/*text-transform: uppercase;*/
	}

	/*public Sell page .col hotfix*/
	body.sellcontactpage .form-item-wrapper.col.col-1 {
		width: 7%;
	}

	/* Public Site Calculators */
	.summary-row .form-item-wrapper:first-of-type {
		padding-top: 0;
	}

	.summary-row .form-item-wrapper:last-of-type {
		padding-bottom: 0;
		border-bottom: none;
	}

	.clear-summary {
		float: right;
	}

	.summary-actions a,
	.summary-actions button {
		display: inline;
		margin: 0 10px;
	}

	.summary-table .summary-labels {
		display: none;
	}

	/* Table Layout Columns */
	.summary-table .summary-row {
		display: table-row;
		border-top: none;
		padding: 30px 0;
		width: 100%;
	}

	.summary-table .summary-row.subtotals {
		border-top: none;
	}

	.summary-table .summary-row .col {
		display: table-cell;
		padding: 15px 10px;
		border-top: 1px solid rgba(255, 255, 255, 0.3);
		vertical-align: top;
	}

	.summary-table .summary-row .col.visible-md-block {
		display: table-cell;
	}

	/* Table Layout Cont. */
	.summary-table .summary-row .col label {
		width: auto;
		float: none;
		white-space: nowrap;
	}

	.summary-table .summary-row .form-item {
		width: auto;
		float: none;
	}

	#buy #request .summary-row .col label {
		margin-top: 0;
	}

	.summary-table .summary-row .form-item .datepicker {
		min-width: 120px; /*prevent the datepicker input from smushing between breakpoints*/
	}

	#details .summary-row .col.form-item.btn-item {
		display: table-cell;
	}

	.summary-table .summary-row.subtotals {
		font-weight: bold;
	}

	.summary-table .summary-header {
		display: table-row;
	}

	.summary-table .summary-functions {
		padding: 20px 0;
		margin: 0 0 0 10px;
	}

	.summary-functions .estimate-actions {
		padding: 0;
		margin: 0;
	}

	.request-cta {
		padding: 0 0;
		margin: 10px 0 0 10px;
	}

	#finance .summary-table .summary-table-wrapper #addForm {
		padding: 0;
	}

	#buy .summary-table .summary-table-wrapper #addForm {
		padding: 0;
	}

	.summary-actions {
		display: table;
		margin: 25px auto 0;
		padding: 0;
		border-top: none;
	}

	.summary-actions a,
	.summary-actions button {
		display: block;
		margin: 0 0 10px 0;
		box-sizing: border-box;
		float: left;
	}

	.summary-actions button {
		width: 100%;
	}

	.summary-actions .print-results,
	.summary-actions .email-results,
	.summary-actions #loginToConfirm {
		width: auto;
		margin-right: 10px;
	}

	.summary-actions .btn.primary {
		width: auto;
	}

	.message-container-wrap {
		margin: 20px 0 0;
	}

	.message-container {
		padding: 0;
	}

	#paymentTabs ul {
		padding: 0 0 0 0.2em;
	}

	#paymentSection {
		border-bottom: 1px solid #5e6165;
	}

	#payPlannerForms {
	    padding: 0;
	}

	#paymentTab {
		padding: 25px 75px 25px 10px;
		border-right: 1px solid #5e6165;
	}

	#payPlannerPanels {
		padding: 25px 30px 25px 10px;
		border-right: 1px solid #5e6165;
	}

	#paymentTabs {
		float: left;
		width: 60%;
		box-sizing: border-box;
	}

	#paymentTabs .btn-item .btn {
		display: inline;
		width: auto;
		margin-right: 10px;
	}

	#paymentTabSummary a {
		margin-top: 0;
	}

	#paymentTabSummary .col {
		border-top: none;
	}

	#paymentTab a {
		display: inline-block;
		margin-top: 25px;
	}

	#paymentTab .actions a:first-of-type {
		margin-right: 10px;
	}

	#paymentTabSummary .col {
		border-top: none;
	}

	#paymentTab a {
		display: inline-block;
		min-height: 20px;
		margin-top: 0;
	}

	#paymentTab .change-payment-date img {
		margin-left: 10px;
	}

	#paymentSection .payment-due-label {
		float: left;
		margin-right: 30%;
	}

	#paymentSection .payment-due-date {
		float: left;
	}

	#paymentTabForm .form-item {
		width: 160px;
	}

	#paymentTabSummary .summary-table .summary-row .col:first-of-type {
		padding: 0 75px 15px 0;
	}

	#paymentTabSummary .summary-table .summary-row .col {
		padding: 0 0 15px 0;
	}

	#paymentSingle .payment-row .payment-item .form-item {
		width: 160px;
	}

	#paymentFixedAmount .payment-row .payment-item,
	#paymentFixedNumber .payment-row .payment-item {
		float: left;
		width: 180px;
	}

	#paymentFixedAmount .payment-row .payment-item .payment-label,
	#paymentFixedNumber .payment-row .payment-item .payment-label {
		width: auto;
		float: none;
		margin: 0;
	}

	#paymentFixedAmount .payment-row .payment-item .form-item,
	#paymentFixedNumber .payment-row .payment-item .form-item {
		width: 160px;
		float: none;
	}

	#paymentFixedNumber .payment-row .payment-item .form-item.sm-input {
		width: 4em;
	}

	#paymentCustom .foot .summary-add {
		float: right;
	}

	#paymentCustom .foot .summary-remaining {
		float: left;
	}

	#paymentCustom form .rows .payment-row .payment-item {
		margin-bottom: 0;
		margin-right: 15px;
		float: left;
		width: auto;
	}

	#paymentCustom form .rows .payment-row .payment-item:last-child {
		margin-bottom: 0;
		margin-right: 0;
	}

	#paymentCustom form .rows .payment-row .payment-item .payment-label {
		float: none;
		width: auto;
		margin: 0;
	}

	#paymentCustom form .rows .payment-row .payment-item .form-item {
		float: none;
		width: auto;
	}

	#paymentCustom form .rows .payment-row .payment-item.remove-wrapper {
		margin: 30px 0 0;
	}

	#paymentCustom .payment-item a.remove {
		display: inline-block;
		border: none;
		color: rgba(63, 197, 165, 0.7);
		background: rgba(0, 0, 0, 0) url("../img/form-remove.png") no-repeat scroll 0 0;
		padding: 0 0 0 25px;
		font-size: 14px;
		float: none;
		min-width: 0;
		border-radius: 0;
		font-weight: normal;
		text-align: left;
		text-transform: capitalize;
	}

	#paymentCustom .payment-item a.remove:hover {
		color: rgba(63, 197, 165, 1);
		border: none!important;
	}

	#paymentCustom .summary-add .add {
		border: 0 none;
	    color: rgba(63, 197, 165, 0.7);
	    display: inline-block;
	    font-size: 14px;
	    font-weight: normal;
	    margin: 0 10px 0 0;
	    padding: 0 0 3px 25px;
	    text-align: left;
	    text-transform: none;
	    width: auto;
	    background: rgba(0, 0, 0, 0) url("../img/form-add.png") no-repeat scroll 0 0;
	    line-height: 16px;
	    margin-top: 0;
	}

	#paymentCustom .summary-add .add:hover {
		color: rgba(63, 197, 165, 1);
	}

	#paymentCustom .foot {
		border-bottom: 1px solid rgba(255, 255, 255, 0.3);
	}

	#payPlannerResults {
		padding: 0;
	}

	#payPlannerResults .chosen-plan {
		padding: 0;
	}

	#payPlannerResults .payment-row {
		padding: 0;
	}

	#payPlannerResults .summary-row {
		padding: 0;
		border-top: none;
	}

	#payPlannerResults .summary-row:last-of-type {
		border-bottom: none;
	}

	#payPlannerResults .summary-row .col {
		padding: 5px 10px;
	}

	#payPlannerResults .foot {
		border-top: 1px solid rgba(255, 255, 255, 0.3);
		padding: 10px;
	}

	#payPlannerResults .estimate-actions {
		padding-bottom: 25px;
	}

	#payPlannerResults .custom-summary + .estimate-actions {
		float: right;
	}

	#payPlannerResults .estimate-actions .edit {
		background: rgba(0, 0, 0, 0) url("../img/form-edit.png") no-repeat scroll 0 0;
		border: medium none;
		border-radius: 0;
		color: rgba(63, 197, 165, 0.7);
		display: inline-block;
		float: none;
		font-size: 14px;
		font-weight: normal;
		min-width: 0;
		padding: 0 0 0 25px;
		text-align: left;
		text-transform: capitalize;
		margin: 0;
	}

	#payPlannerResults .estimate-complete .btn {
		display: inline;
	}

	#payPlannerResults .estimate-actions .edit:hover {
		border: medium none !important;
		color: rgba(63, 197, 165, 1);
	}

	.estimate-complete {
		padding: 0;
	}

	#payPlannerResults .estimate-complete {
		padding: 0;
	}

	#payPlannerResults a.btn,
	#paymentTabSummary a.btn {
		display: inline;
	}

	#summaryPayAsYouGo {
		padding: 0;
	}

	#summaryPayAsYouGo p {
		max-width: 380px;
	}

	#paymentDescription {
		float: left;
		width: 40%;
		padding: 25px 30px;
		margin: 54px 0 0 -1px;
		border-top: 1px solid #5e6165;
		border-left: 1px solid #5e6165;
		box-sizing: border-box;
	}

	#paymentDescription .btn {
		display: block;
		min-width: 0;
		max-width: 130px;
	}

	#details .summary-row .col label {
		display: none;
	}

	#details .summary-row .col.totals-title label {
		display: block;
	}

	.row-extras {
		display: none;
	}

	.summary-table .summary-table-wrapper #request .summary-row .form-action-delete {
		position: relative;
		top: 34px;
		margin-top: 0;
	}

	.summary-table .summary-table-wrapper #details .summary-row .form-action-delete {
		position: relative;
		top: 2px;
		margin-top: 0;
	}

	#addForm button[name="action_AddToSummary"] {
		overflow: hidden;
		text-indent: -9999px;
		min-width: auto;
		padding: 9px 20px 10px;
		background: #40c8a6 url("../img/form-plus.png") no-repeat 50% 50%;
	}

	#addForm button[name="action_AddToSummary"]:hover {
		background: #36b393 url("../img/form-plus.png") no-repeat 50% 50%;
	}

	.calculators #buy #addForm .form-item-wrapper input.datepicker {
		min-width: 130px;
	}

	#addForm form .btn-close {
		top: 50%;
		right: auto;
		left: 75%;
	}

	#addForm .label-blank {
		display: block;
	}

	.summary-functions .estimate-actions {
		background: none;
		border-bottom: none;
		margin-left: -20px;
	}

	.estimate-actions a,
	.estimate-actions button {
		font-size: 14px;
	}

	.estimate-actions .remove,
	.estimate-actions .add,
	.estimate-actions .edit {
		display: inline-block;
		border: 0;
		padding: 0 0 3px 25px;
		margin: 0;
		width: auto;
		text-transform: none;
		color: rgba(63, 197, 165, 0.7);
		font-size: 14px;
		font-weight: normal;
		text-align: left;
		margin-left: 20px;
	}

	.estimate-actions .add:hover,
	.estimate-actions .edit:hover,
	.estimate-actions .remove:hover {
		color: rgba(63, 197, 165, 1);
	}

	.estimate-actions .add.ghost:hover {
		color: rgba(63, 197, 165, 0.7);
	}

	.estimate-actions .add + .edit {
		margin-left: 20px;
		margin-right: 0;
		width: auto;
	}

	.estimate-actions .remove {
		background: url('../img/form-remove.png') no-repeat;
	}

	.estimate-actions .add {
		background: url('../img/form-add.png') no-repeat;
	}

	.estimate-actions .edit {
		background: url('../img/form-edit.png') no-repeat;
	}

	.request-actions .action-sm {
		padding-left: 23px;
		margin-left: 12px;
	}

	.calculator form .form-item {
		text-align: right;
	}

	.calculator form .form-item.ttscheckbox{
		text-align: left;
	}

	#feeGuard {
		margin: 0;
	}

	#feeGuard .security-label {
		width: 80%;
		margin: 3px 0 2px 10px;
		text-transform: uppercase;
	}

	#feeGuard .security-terms {
		width: 80%;
		margin: 0 0 0 10px;
	}

	#feeGuard .btn.primary[type="submit"] {
		margin-top: 0;
		float: right;
	}

	.confirmation-box form {
		padding: 20px 10px 20px 0;
	}
}

@media only screen and (min-width:1025px) {
	.visible-xs-inline {
		display: none;
	}

	.visible-md-inline {
		display: inline;
	}

	.visible-lg-inline {
		display: inline;
	}

	.visible-xs-inline-block {
		display: none;
	}

	.visible-md-inline-block {
		display: inline-block;
	}

	.visible-lg-inline-block {
		display: inline-block;
	}

	.visible-xs-block {
		display: none;
	}

	.visible-md-block {
		display: block;
	}

	.visible-lg-block {
		display: block;
	}

	/*.header-container .mobile-only {*/
	/*	!* main-menu anchor button *!*/
	/*	display: none;*/
	/*}*/

	.header-container .no-desktop {
		/* user-menu anchor button */
		display: block;
	}

	.home .hero-container .inner-wrapper {
		padding-bottom: 0;
	}

	.home .hero-container .inner-wrapper ul li {
		float: left;
	}

	.home h1 .small,
	.home h1 .big,
	p.pseudo-h1 {
		font-size: 40px;
	}

	.home .hero .btn {
		top: auto;
	}

	#addForm button[name="action_AddToSummary"] {
		background: #40c8a6 none no-repeat 50% 50%;
		text-indent: 0px;
	}

	#addForm button[name="action_AddToSummary"]:hover {
		background: #36b393 none no-repeat 50% 50%;
	}

	#payPlannerPanels {
		padding: 25px 75px 25px 10px;
	}

	#paymentCustom form .rows .payment-row .payment-item {
		width: 160px;
	}

	#paymentCustom form .rows .payment-row .payment-item.remove-wrapper {
		width: auto;
	}
}

@media only screen and (min-width:1170px) {
	.calculators .calculator-container .calculator.wrapper {
		margin: 0 auto;
		width: 1140px;
	}

	/*.header-container .no-desktop {*/
	/*	!* user-menu anchor button *!*/
	/*	display: none;*/
	/*}*/
}
