@charset "utf-8";

.displayNone{display:none !important;}
.brTable{display:table;width:100%;}
.brTableRow{display:table-row;}
.brTableCell{display:table-cell;}

#content-parent p,#content-parent label{padding:0;color:#333;}
#content-parent p,#content-parent label,
#content-parent .calcLeft a,
#content-parent .calcRight a,
.toolLeftCol,
.toolRightCol{line-height:140%;font-size:12px;}

.form-row{clear:both;margin-bottom:20px;}
.brlabel{display:inline-block;vertical-align:middle;}
.brhelp{position:relative;top:2px;width:16px;height:16px;margin:0;padding:0;border:0;cursor:pointer;text-align:center;vertical-align:top;

background:#fff url("../img/svg/help-info-icon.svg") no-repeat 0 0;
z-index:2;
}

/*  input  */
.input-skin{display:inline-block;position:relative;width:100%;margin:10px 0 0;vertical-align:middle;
}
.input-skin .brdisplay,
.input-skin input{display:block;text-align:right;padding:5px 2%;width:96%;margin:0;
font-size:12px;font-family:inherit;font-style:inherit;font-weight:inherit;line-height:15px;}

.input-skin .brdisplay{position:relative;white-space:nowrap;overflow:hidden;}

.input-skin input{padding-top:2px;outline:0 none;position:absolute;top:0;left:0;background:transparent;
-webkit-appearance:none;
}

.input-skin.focus,
.input-skin.focus.error{
	border:1px solid #69f;
	border-radius: 3px;
}
.input-skin input[type=number]::-webkit-inner-spin-button,
.input-skin input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0;}

.brdisplay{
-webkit-user-select:none;
-moz-user-select:none;
-o-user-select:none;
-ms-user-select:none;
user-select:none;}

/*  select  */
.select-skin,
.select-skin select,
.select-skin .brdisplay{display:block;position:relative;width:100%;margin:0;padding:0;font-size:12px;cursor:pointer;
-ms-text-overflow:ellipsis;
text-overflow:ellipsis;
}

.select-skin{display:inline-block;position:relative;padding:0;margin:10px 0 0;vertical-align:middle;overflow:hidden;
}

html body div #content-parent .select-skin.focus,
html body .select-skin.focus{border:1px solid blue !important;}

.select-skin select{position:absolute;left:0;top:0;width:100%;height:26px;
font-size:100%;
border:0 solid #000;
opacity:0.01;
}

.select-skin select option{padding:5px;font-size:12px;}
.select-skin .brdisplay{left:0;top:0;width:94%;padding:5px 5% 5px 1%;overflow:hidden;white-space:nowrap;line-height:130%;}
.select-skin span.select-arrow{position:absolute;right:8px;top:0;width:5%;height:100%;
background: #fff url("../img/svg/green-dropdown-down-icon.svg") no-repeat center center;
}

/********************************* specific ****************************************/

#toolResultChartCon{margin-top:20px;}
#toolResultChart{width:100%;height:240px;margin-left:-10px;}

#yAxisTitle{text-align:right;width:50px;}

html,body{
	font-size: 16px;
	line-height: 24px;
}

body #content-parent .toolLeftCol h2,
body #content-parent .toolRightCol h2,
#content-parent h2{
	/*color: #262d36;*/
	color: #333;
	font-family: Montserrat, Verdana, Arial, Helvetica, sans-serif;
	font-size: 24px;
	font-style: normal;
	font-weight: 700;
	line-height: 32px;
}

#content-parent label{
	color: #333;
	font-family: Montserrat, Verdana, Arial, Helvetica, sans-serif;
	font-size: 14px;
	font-style: normal;
	font-weight: 700;
	line-height: 21px;
	text-align: left;
}

#content-parent .input-skin input.brinput {
	text-align: left;
	border: 1px solid #ced4d5;
	border-radius: 3px;
	padding: 3px 2% 0;
	/*padding: 8px 10px 5px;*/
	/*height: 40px;*/
}

#content-parent .input-skin.focus .brdisplay{
	text-align: left;
}

#content-parent .input-skin.disabled .brdisplay{
	background-color: #eee !important;
	height: 28px;
	width: 96.25%;
	opacity: 1;
	zoom: 1;
}

#content-parent div.input-wrap{
	display: block;
	clear: both;
	/*height: 30px;*/
}

#content-parent .input-skin {
	/*height: 35px;*/
	height: 40px;
	margin-top: 2px;
	width:99.66666666666666%
}

#content-parent .input-skin input.brinput {
	padding: 0 2%;
	/*padding: 0 10px;*/
	/*height: 35px;*/
	height: 40px;
}

#content-parent .input-skin.focus input.brinput {
	/*margin-top:-1px;*/
	/*margin-left: 1ex;*/
}

#content-parent .form-row {
	margin-bottom: 20px;
}

#content-parent .input-skin.focus input.brinput {
	position:absolute;
	top:0;
	left:0;
}

.input-skin .brdisplay,
.input-skin input,
#content-parent div.input-wrap{
	text-align: left;
	font-size: 16px;
	line-height: 24px;
	/*height: 40px;*/
	height: 45px;
}

#content-parent .select-skin{
	border: 1px solid #ced4d5;
	border-radius: 3px;
	font-size: 16px;
	line-height: 24px;
	height: 40px;
	padding: 0 0 0 1%;
	width: 98.75%;
}

#content-parent .select-skin .brdisplay,
#content-parent .select-skin select,
#content-parent .select-skin select option{
	text-align: left;
	font-size: 16px;
	line-height: 24px;
	border-radius: 0 !important;
}

#content-parent div.select-wrap{
	display: block;
	clear: both;
	text-align: left;
	font-size: 16px;
	line-height: 24px;
	height: 40px;
}

#content-parent .input-skin.focus input.brinput{
	background-color: #fff;
	text-align: left;
	border: 0;
	border-radius: 3px;
}

#content-parent .input-skin .brdisplay{
	background-color: #fff;
	text-align: left;
	/*height: 17px;*/
	border: 0;
	border-radius: 3px;
	padding: 8px 2% 5px;
	/*padding: 8px 10px 5px;*/
	height: 19px;
}

#content-parent .input-skin.focus{
	text-align: left;
	border: 1px solid #69f;
	border-radius: 3px;
}

#content-parent .input-skin.focus.error{
	border: 1px solid red;
	border-radius: 3px;
	text-align: left;
}

a.select-section-arrow,
a.input-section-arrow{
	display: block;
	float: right;
	text-align: center;
	position: relative;
	top: -2em;
	left: 0px;
	width:  24px;
	height: 24px;
}

#content-parent .form-row.form-row-last{
	margin-bottom:0;
}

html body div .input-skin.focus{
	border:1px solid blue !important;
	height:41px;
}

/*********************************************************/
/* qTip2 tooltips */
/* https://github.com/qTip2/qTip2 */
.qTip2 {
	max-width: 20em;
	background-color: #fff;
	color: #333;
	border: 1px solid #d2d2d2 !important;
	border-radius: 6px;
	box-shadow: 3px 2px 15px 6px rgb(0 0 0 / 10%);
	padding: 0px 10px 15px;
	font-size: 12px;
	line-height: 1.4;
}
/*********************************************************/

.radio-container .radio-glider {
    /*width: 31.9% !important;*/
	width: calc((100% / 2) - 8px) !important;
}

:root {
	--white: #fff;
	--midGreen: #c6e0d5;
	--darkGreen: #5dc598;
	--duskGreen: #42a87d;
	--midnightGreen: linear-gradient(180deg, #00512e 0%, #1d875a 100%);
}

/*********************************************************/
/* Resize fonts for mobile; necessary for tooltips       */
/*********************************************************/
div.results .button-name, div.results .results-bold-center-green-14 {
	font-size: 14px;
}

/*********************************************************/

#amortizationTable {
	color: #434345;
	font-family: Montserrat;
	font-size: 12px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
}

.brAmortizationHeader {
	background:rgb(29, 135, 90);
	color:#fff;
	font-weight: 700;
}

.brAmortizationHeader > div {
	padding: 1rem;
}

#amortizationTable .brTableRow {
	background: #f9f9f9;
}
#amortizationTable .brAmortizationHeader {
	background:rgb(29, 135, 90);
	color:#fff;
	font-weight: 700;
}

#amortizationTable .brTableRow > div {
	text-align: right;
	border-bottom: 1px solid #ced4d5;
}

#amortizationTable .brTableRow > div:first-child {
	text-align: center;
}

.brAmortizationCell {
	padding: 2px 16px;
}

.radio-tabs {
	max-width: 500px;
	width: 78%;
}

.radio-tab {
	max-width: 160px;
	width: 100%;
}

.radio-container .radio-glider {
	width: 47.9%;
}

/* ****************************************************************************** */
/* Mortgage Comparison CSS */
div.mortgageHeader h3 {
	font-size: 18px;
	font-weight: 700;
	line-height: 22px;
}

div.mortgageCompare {
	display: flex;
	justify-content: center;
	/* align-items: flex-start; */
	margin: 0 10px;
}

.toolLeftCol {
	width: calc(32vw - 30px);
	padding: 0 15px;
}

div.calcRight {
	float: none;
	width: 100%;
}

div.resultsBorder {
	/* width: 97.6%; */
	/* width: 95.7vw; */
	width: 100%;
}

div.results .results2 {
	background: #fff;
	border-radius: 0px;
	border: 1px solid #ced4d5;
	width: 100%;
	position: relative;
	overflow: hidden;
}

div.results .results2.resultsLeft {
	border-top-left-radius: 10px;
}

div.results .results2.resultsRight {
	border-top-right-radius: 10px;
}

.radio-tabs {
	max-width: 336px;
}

div.amortizationSelections,
#amortizationSelections{
	display:flex;
	justify-content:center;
	gap:25px;
	margin:0 auto 30px;
}

.amMortgageBox {
	height: 20px;
	width: 20px;
	background-color: #fff;
	border: 1px #ccc solid;
	border-radius: 6px;
	float:left;
}

.amMortgageName {
	color: #434345;
	font-family: Montserrat, Verdana, Arial, Helvetica, sans-serif;
	font-size: 11px;
	font-style: normal;
	font-weight: 600;
	line-height: 20px; /*13.41px;*/
	text-align: left;
	padding-left: 4px;
}

.bgWhite {
	background: #fff !important;
}

.bgMidGreen {
	background: #c6e0d5 !important;
}

.bgDarkGreen {
	background: #5dc598 !important;
}

.bgMidnightGreen {
	background: linear-gradient(180deg, #00512e 0%, #1d875a 100%) !important;
}

.results-bold-center-white-16{
	color: #fff;
	text-align: center;
	font: 700 16px/21px "Montserrat", sans-serif;
	position: relative;
}

.results-bold-center-white-11{
	color: #fff;
	text-align: center;
	font: 700 14px/13.41px "Montserrat", sans-serif;
	position: relative;
	height:2em;
}

.mortgageResults {
	display:grid;
	grid-template-columns:auto auto;
	text-align:left;
}

.results-bold-center-white-36 {
	padding: 2px 0 10px 0;
}

#xAxisTitle {
	margin-left: 54px;
	padding-bottom: 15px;
}

div.results .button.btnBookAppointment {
	border-radius: 10px;
	box-shadow: 2px 2px 2px #333;
	padding: 12px 14px;
	position: relative;
	top: 4px;
	display: inline-flex;
	justify-content: center;
}

/* ****************************************************************************** */
/* Amortization Comparison Custom checkbox */
	/*div#content-parent */
	label.amortizationLabel {
		display: block;
		position: relative;
		/*padding-left: 35px;*/
		padding: 0;
		margin: 0 0 12px 0;
		/*width:10ex;*/
		/* margin-bottom: 12px; */
		cursor: pointer;
		font-size: 22px;
		-webkit-user-select: none;
		-moz-user-select: none;
		-ms-user-select: none;
		user-select: none;
	}

	/* Hide the browser's default checkbox */
	.amortizationLabel input {
		position: absolute;
		opacity: 0;
		cursor: pointer;
		height: 0;
		width: 0;
	}

	/* Create a custom checkbox */
	.amcheckmark {
		position: absolute;
		top: 0;
		left: 0;
		height: 20px;
		width: 20px;
		background-color: #fff;
		border: 1px #ccc solid;
		border-radius: 6px;
	}

	/* On mouse-over, add a grey background color */
	.amortizationLabel:hover input ~ .amcheckmark {
		background-color: #ccc;
	}

	/* When the checkbox is noy checked, add a background */
	.amortizationLabel input ~ .amcheckmark.bgWhite {
		background-color: #fff !important;
	}

	.amortizationLabel input ~ .amcheckmark.bgMidGreen {
		background-color: #c6e0d5 !important;
	}

	.amortizationLabel input ~ .amcheckmark.bgDarkGreen {
		background-color: #5dc598 !important;
	}

	.amortizationLabel input ~ .amcheckmark.bgMignightGreen {
		background-color: linear-gradient(180deg, #00512e 0%, #1d875a 100%);
	}

	/* When the checkbox is checked, add a background */
	.amortizationLabel input:checked ~ .amcheckmark.bgWhite {
		background-color: #fff !important;
	}

	.amortizationLabel input:checked ~ .amcheckmark.bgMidGreen {
		background-color: #c6e0d5 !important;
	}

	.amortizationLabel input:checked ~ .amcheckmark.bgDarkGreen {
		background-color: #5dc598 !important;
	}

	.amortizationLabel input:checked ~ .amcheckmark.bgMignightGreen {
		background-color: linear-gradient(180deg, #00512e 0%, #1d875a 100%);
	}

	/* Create the checkmark/indicator (hidden when not checked) */
	.amcheckmark:after {
		content: "";
		position: absolute;
		display: none;
	}

	/* Show the checkmark when checked */
	.amortizationLabel input:checked ~ .amcheckmark:after {
		display: block;
	}

	/* Style the checkmark/indicator */
	.amortizationLabel .amcheckmark:after {
		left: 6px;
		top: 3px;
		width: 5px;
		height: 8px;
		border: solid black;
		border-width: 0 2px 2px 0;
		-webkit-transform: rotate(35deg);
		-ms-transform: rotate(35deg);
		transform: rotate(35deg);
	}

	.amCheckboxName {
		padding-left: 20px;
	}

/* ****************************************************************************** */


	#amMortgage3, div.amMortgageBox3 {
		display: block;
	}

	.highcharts-series-group g.highcharts-tracker:nth-child(5) {
		display: block;
	}

	div.results .results2.resultsMiddle {
		border-top-right-radius: 0px;
	}

	.mortgageResults {
		display:grid;
		grid-template-columns:auto;
		text-align:center;
		margin: 0 auto;
	}

	.summaryTitle {
		padding: 20px 10px 0;
	}

	.summaryValue {
		padding: 5px 10px 20px;
	}

	.mobile-grid-line {
		border-bottom: 1px solid #ccc;
	}

	div[data-mortgage='2'] {
		display: table-row;
	}

	div[data-checkbox='2'] {
		display: block;
	}

/* =================== MEDIA QUERIES (MEDIUM DEVICES) ======================== */
@media screen and (max-width: 1024px) {
	.radio-tabs {
		width: 88%;
	}
}

/* =================== MEDIA QUERIES (MED-SMALL DEVICES) ======================== */
@media screen and (max-width: 709px) {
	#amMortgage3, div.amMortgageBox3 {
		display: none;
	}

	.highcharts-series-group g.highcharts-tracker:nth-child(5) {
		display: none;
	}

	div.results .results2.resultsMiddle {
		border-top-right-radius: 10px;
	}

	.summaryTitle {
		padding: 20px 20% 0;
	}

	.summaryValue {
		padding: 5px 20% 20px;
	}

	div[data-mortgage='2'],
	div[data-checkbox='2'] {
		display: none;
	}

	.toolLeftCol {
		width: calc(49vw - 30px);
	}

	.results-bold-center-white-11{
		height:2em;
	}

	div.resultsBorder {
		width: 100%;
		/* width:97vw; */
	}
}

/* =================== MEDIA QUERIES (SMALL DEVICES) ======================== */
@media screen and (max-width: 600px) {
	div.results .mortgage-details {
		padding: 5px;
		padding-top: 24px;
	}

	.brAmortizationHeader > div {
		padding: 0.4rem;
	}

	.brAmortizationCell {
		padding: 2px 8px;
	}
}

#amortizationOptions div.amortizationOptionsDataRow {
	margin:0 auto;
	display:block;
	text-align:center;
}

#amortizationOptions div.amortizationOptionsDataRow span {
	margin:0 auto;
	display:block;
	/*
		text-align:right;
		width:12ex;
	*/
}

