@charset "utf-8";

:root {
	--white: #fff;
	--midGreen: #c6e0d5;
	--darkGreen: #5dc598;
	--duskGreen: #42a87d;
	--midnightGreen: linear-gradient(180deg, #00512e 0%, #1d875a 100%);
}

html,body{
	font-size: 16px;
	line-height: 24px;
}

strong{font-weight:700;}

#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;}

#content-parent .toolLeftCol  h2,
#content-parent .toolRightCol h2{margin:2px 0 13px;font-size:16px;color:#333;}

.form-row{clear:both;margin-bottom:20px;}
.brlabel{display:inline-block;vertical-align:middle;}
.withHelpIcon .brlabel{max-width:89%;vertical-align:middle;margin-right:5px;}
.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;}

.withHelpIcon .select-skin,
.withHelpIcon .input-skin{margin:9px 0 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.focus{border:1px solid #69f;}
.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 ****************************************/

body #content-parent .toolLeftCol h2,
body #content-parent .toolRightCol h2,
#content-parent h2{
	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
}

#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;
}

#content-parent .input-skin {
	height: 40px;
	margin-top: 2px;
	width:99.66666666666666%
}

#content-parent .input-skin input.brinput {
	padding: 0 2%;
	height: 40px;
}

#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: 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 .focus a.input-section-arrow{
	top: -22px;
	left: -9px;
}

#content-parent a.input-section-arrow{
	top: -21px;
	left: -8px;
}

#content-parent .calcInnerBody .input-skin .brdisplay{
	height:27px;
}

#content-parent .jsToggleOpened .topInput .input-skin {
	margin-top: 0;
	border-top: 2px solid #fff;
}

#content-parent .topInput.jsToggleOpened .input-skin .brdisplay{
	height: 28px;
	border-right:  1px solid #ced4d5;
	border-bottom: 1px solid #ced4d5;
}

#content-parent .jsToggleOpened .input-skin .brdisplay {
	height: 28px;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #ced4d5;
}

#content-parent .jsToggleOpened a.input-section-arrow {
	top: -32px;
}

#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;
	border: 0;
	border-radius: 3px;
	padding: 8px 2% 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;
}
a.input-section-arrow{
	/* SVG supported in IE9+ */
	background: #fff url("../img/svg/green-dropdown-down-icon.svg") 0 0 no-repeat;
}

div.calcInnerBody {
	display:block;
	background-color: #f9f9f9;
	margin:0 15px;
	padding-bottom:16px;
}

body.js div.calcInnerBody{display:none;}

.calcLeft {
	height: 75em;
}

#content-parent .form-row.form-row-first{
	margin-top:0;
}

#content-parent .form-row.form-row-last{
	margin-bottom:0;
}

div.jsToggleOpened{
	background-color: #f9f9f9;
}

#content-parent div.jsToggleOpened div.topInput span.brlabel-wrap
{
	display:block;
	background-color: #fff;
	width: 100%;
}

#content-parent div.jsToggleOpened div.topInput .brdisplay{
	background-color: #ced4d5;
}

div.jsToggleOpened a.input-section-arrow{
	/* SVG supported in IE9+ */
	background: #ced4d5 url("../img/svg/green-dropdown-up-icon.svg") 0 0 no-repeat;
}

div.overlay{
	background-color: #333;
	background-color: rgba(51, 51, 51, 0.95);
}

div.sectionHeader.jsToggleOpened{
	margin-bottom:16px;
}

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;
}
/*********************************************************/

.modal__title.mm-h5 {
	line-height: 24px;
}

div.calcPage{float:left;display:block;width:96%;clear:both;text-align:left;margin:0 auto;padding:10px;}

/* @see https://stackoverflow.com/questions/3387489/make-floating-child-visible-outside-an-overflowhidden-parent */
.clearfix:before,
.clearfix:after{content:".";display:block;height:0;overflow:hidden;}
.clearfix:after{clear:both;}
.clearfix{zoom:1;}

div.results .affordability-max-purchase-price {
	border-radius: 10px 10px 0 0;
}

#debtWrapper.jsWrapper.jsToggleOpened {
	max-height: unset;
	height: 100%;
}

.modal__close-btn {
	cursor: pointer;
}

div.retChartSelections,
#retChartSelections{
	display:flex;
	justify-content:center;
	gap:25px;
	margin:0 auto;
	width: 25em;
}

.retChartSelection{
	display:flex;
	justify-content:center;
	align-items: center;
	gap:3px;
	margin:0 auto 30px;
}

.retDetailBox {
	height: 20px;
	width: 20px;
	background-color: #fff;
	border: 1px #ccc solid;
	border-radius: 6px;
	float:left;
}

.retDetailName {
	color: #434345;
	font-family: Montserrat, Verdana, Arial, Helvetica, sans-serif;
	font-size: 11px;
	font-style: normal;
	font-weight: 600;
	line-height: 13.41px;
	text-align: left;
	padding-left: 4px;
}

.bgMidGreen {
	background: #c6e0d5 !important;
}

.bgMidnightGreen {
	background: linear-gradient(180deg, #00512e 0%, #1d875a 100%) !important;
}

.retChartFooter {
	text-align: center;
	margin: 0 auto;
	font-size: 11px;
	font-weight: 400;
	line-height: 13.41px;
	max-width: 290px;
	width: 100%;
}

#content-parent div.results div.retChartFooter a.change {
	font-size: 11px;
	line-height: 13.41px;
	font-weight: 400;
}

.retChartFooterSubtitle {
	color: #434345;
	font-size: 11px;
	line-height: 13.41px;
	font-weight: 700;
}

@media screen and (min-width: 280px) {
	.modal__top-container, .modal__bottom-container {
		padding: 20px 32px 0;
	}
}

/* 767px */
/* (max-width: 700px) */
@media screen and (min-width: 767px){
	div.calcLeft{float:left;display:block;width:40%;min-width:287px;}
	div.calcRight{float:right;display:block;width:58%;}
}