@charset "utf-8";

:root {
	--white: #fff;
	--midGreen: #c6e0d5;
	--darkGreen: #5dc598;
	--duskGreen: #42a87d;
	--midnightGreen: linear-gradient(180deg, #00512e 0%, #1d875a 100%);
}

/*********************************************************/
/* Resize fonts for mobile; necessary for tooltips       */
/*********************************************************/
#content-parent label {
	/* font-size: 11px; */
}

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 .brAmortizationHeader > div {
	padding: 1rem;
} */

#amortizationTable .brTableRow > div {
	text-align: right;
	border-bottom: 1px solid #ced4d5;
}

#amortizationTable .brTableRow > div:first-child {
	text-align: center;
}

.brAmortizationCell {
	padding: 2px 16px;
}

#amortizationOptions {
	display: flex;
	justify-content: space-between;
	flex-wrap: nowrap;
	gap: 5px;
	color: #333;
	font-family: Montserrat;
	font-size: 14px;
	font-style: normal;
	font-weight: 400;
	line-height: 21px;
	overflow: visible;
}

#amortizationOptions > div {
	flex: 1 1 0px;
}

.amortizationOptionsTitle {
	color: #333;
	text-align: center;
	font-family: Montserrat;
	font-size: 16px;
	font-style: normal;
	font-weight: 700;
	line-height: 24px;
	padding-bottom: 16px;
}

.amortizationOptionsSubTitle {
	color: #333;
	font-family: Montserrat;
	font-size: 14px;
	font-style: normal;
	font-weight: 700;
	line-height: 21px;
	text-align: center;
}

#amortizationOptions > div > div {
	padding: 16px 0;
	border-bottom: 1px solid #CED4D5;
}

#amortizationOptions > div:first-child > div:first-child,
#amortizationOptions > div:last-child > div:first-child {
	padding: 0;
	border-bottom: 0px;
}

#amortizationOptions > div:last-child > div:last-child {
	padding: 16px 0;
	border-bottom: 0px;
}

/* Amortization Custom select */
.amortizationOptionsSelect {
	position: relative;
	color: #434345;
	font-family: Montserrat;
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: 24px;
	border: 1px solid #ced4d5;
}

.select-skin .amortizationOptionsDisplay {
	padding-top: 8px;
}

.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.calcLeft {
	float: none;
	width: 100%;
}

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;
}

.radio-container .radio-glider {
	width: 47.9% !important;
}

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-14{
	color: #fff;
	text-align: center;
	font: 700 14px/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;
	}

/* ****************************************************************************** */


/* ****************************************************************************** */
/* Amortization Custom Select */
.amortizationOptionsSelect select {
	display: none; /*hide original SELECT element: */
}

.select-selected, .select-selected-disabled {
	/* background-color: DodgerBlue; */
	background-color: #fff;
}

/* Style the arrow inside the select element: */
.select-selected:after {
	position: absolute;
	content: url("../img/svg/green-dropdown-down-icon.svg");
	/* top: 28px; */
	top: 18px;
	right: 10px;
	/* width: 0;
	height: 0;
	border: 6px solid transparent; */
	/* border-color: #fff transparent transparent transparent; */
	/* border-color: #434345 transparent transparent transparent; */
}

.select-selected-disabled:after {
	position: absolute;
	content: url("../img/svg/grey-dropdown-down-icon.svg");
	/* top: 28px; */
	top: 18px;
	right: 10px;
	/* width: 0;
	height: 0;
	border: 6px solid transparent; */
	/* border-color: #fff transparent transparent transparent; */
	/* border-color: #434345 transparent transparent transparent; */
}

/* Point the arrow upwards when the select box is open (active): */
.select-selected.select-arrow-active:after {
	/* border-color: transparent transparent #fff transparent; */
	/* transform: rotate(90deg);
	top: 12px;
	right: 14px; */
	transform: rotate(180deg);
	top: 9px;
}

/* style the items (options), including the selected item: */
.select-items div,.select-selected,.select-selected-disabled {
	/* color: #ffffff; */
	color: #434345;
	padding: 16px 16px;
	border: 1px solid transparent;
	border-color: transparent transparent rgba(0, 0, 0, 0.1) transparent;
	cursor: pointer;
}

/* Style items (options): */
.select-items {
	position: absolute;
	/* background-color: DodgerBlue; */
	background-color: #fff;
	top: -200%; /*  vertical position of the custom dropdown */
	left: 0;
	right: 0;
	z-index: 99;
}

/* Hide the items when the select box is closed: */
.select-hide {
	/* display: none; */
	top: -1000px !important;
}

.select-items div {
	position: relative;
	padding-left: 36px;
	border: 1px 1px 0 1px;
	border-style: solid;
	border-color: #ced4d5;
}

/* .select-items div:hover, .same-as-selected { */
.select-items div:hover, .tabbed {
	background-color: rgba(0, 0, 0, 0.1);
}

.same-as-selected:before {
	position: absolute;
	content: url("../img/svg/green-dropdown-check-icon.svg");
	/* top: 28px; */
	top: 16px;
	left: 10px;
}

	/* ****************************************************************************** */

	#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;
	*/
}