@import url('https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&display=swap');
body {
	/*font-family: 'Lato', Tahoma, Verdana, Arial, Helvetica, sans-serif;*/
	font-family: 'Lato', sans-serif;
	font-size: 16px;
}

/* Wider container to match homepage layout across all pages */
@media (min-width: 1200px) {
	.container { max-width: 1400px; }
}
@media (min-width: 1600px) {
	.container { max-width: 1600px; }
}

.logo {
	padding: 15px 0;
	height: 90px;
}

.calculatorsearch {
	padding: 20px 0;
}

.calculatorbox {
	padding: 20px;
	border: 2px solid #28a745;
	border-radius: 4px;
}

#chartcanvas {
	width: 450px;
}

#doughnut-chart {
	width: 400px;
	height: 4300px;
}

.fakechart {
	width: 100%;
	text-align: center;
	font-family: "Lato";
	font-size: 120px;
	color: #FF6384;
}

.deductions {
	width: 100%;
	text-align: center;
	font-family: "Lato";
	font-size: 60px;
	color: #FF6384;
	margin-top: 30px;
}

.comparison {
	display: none;
}

.ui-widget {
	font-size: 12px;
}

.multiplier {
	position: absolute;
	top: 15px;
	right: 20px;
}

nav {
	z-index: 2;
}

.nav-link {
	font-weight: bold;
	letter-spacing: 1px;
	font-size: 16px;
}

.navbar-nav>li {
	margin-left: 4px;
	margin-right: 4px;
}

.navbar-dark .navbar-nav .nav-link {
	color: #ffffff;
	padding: 7px 10px;
	font-size: 15px;
}

.navbar-dark .navbar-nav .nav-link:focus,
.navbar-dark .navbar-nav .nav-link:hover,
.navbar-dark .navbar-nav .nav-link.current {
	color: #000;
	background: #fff
}

/* backgrounds */
.bgblack {
	background: #000;
}

.bgdarkgray {
	background: #333333;
	height: 54px;
}

.bglightgray {
	background: #e2e2e2;
}

.bgblue {
	background: #3e95cd;
}

.bgred {
	background: #c45850;
}

.bgviolet {
	background: #8e5ea2;
}

.bggreen {
	background: #3cba9f;
}

/* font size */
.font11 {
	font-size: 11px;
}

.font12 {
	font-size: 12px;
}

.font14 {
	font-size: 14px;
}

.font18 {
	font-size: 18px;
}

.font30 {
	font-size: 30px;
}

.font36 {
	font-size: 36px;
}

.font40 {
	font-size: 40px;
}

.font70 {
	font-size: 70px;
}

/* font color */
.fontwhite {
	color: #ffffff;
}

.fontred {
	color: #c45850;
}

.fontblue {
	color: #428bca;
}

.fontgreen {
	color: #5cb85c;
}

.fontlightblue {
	color: #5bc0de;
}

/* font style */
.fontbold {
	font-weight: bold;
}

.fontlato {
	font-family: "Lato";
}

.txtuline {
	text-decoration: underline;
}

/* border */
.bordercircleblue {
	border-radius: 50%;
	border: 10px solid #428bca;
	width: 200px;
	margin: 0 auto;
	position: relative;
}

.bordercirclered {
	border-radius: 50%;
	border: 10px solid #c45850;
	width: 350px;
	margin: 0 auto;
	position: relative;
}

.bordercirclegreen {
	border-radius: 50%;
	border: 10px solid #5cb85c;
	width: 350px;
	margin: 0 auto;
	position: relative;
}

.borderleftblack {
	border-left: 1px solid #000000;
}

/* padding */
.padtop10px {
	padding-top: 10px;
}

.padtop30px {
	padding-top: 30px;
}

.padbot30px {
	padding-bottom: 30px;
}

.padleftright20px {
	padding-left: 20px;
	padding-right: 20px;
}

/* margin */
.marauto {
	margin: 20px auto;
}

.marcenter {
	margin: 0 auto;
}

.martop40px {
	margin-top: 40px;
}

.marbot10px {
	margin-bottom: 10px;
}

.martopn32px {
	margin-top: -32px;
}

.textright {
	text-align: right;
}

.txtabsolutebot {
	position: absolute;
	bottom: 20px;
	width: 70%;
	text-align: center;
	margin: 0 15%;
	text-decoration: underline;
}

.pagetitle {
	font-family: 'Montserrat', "Open Sans", Helvetica, Arial, sans-serif;
	font-weight: 900;
	font-size: 40px;
	text-align: center;
	letter-spacing: -1px;
	padding: 0;
}

.hidedesktop {
	display: none;
}

hr.division {
	margin-bottom: 2px;
	margin-top: 2px;
	width: 50%;
	border-top: 1px solid #000000;
}

p {
	margin-top: 5px;
	margin-bottom: 5px;
}

@media only screen and (max-width: 1130px) {
	.bgdarkgray {
		height: auto;
	}
	.calculatorsearch {
		padding: 0 0 20px;
	}

	.pagetitle {
		font-size: 28px;
		line-height: normal;
	}

	#chartcanvas {
		width: 100%;
	}

	#doughnut-chart {
		width: 90%;
		height: 400px;
		margin-left: 0;
	}

	.font12mobile {
		font-size: 12px;
	}

	.font10mobile {
		font-size: 10px;
	}

	.hidemobile {
		display: none;
	}

	.hidedesktop {
		display: block;
	}

	.table td,
	.table th {
		padding-left: 1px;
		padding-right: 1px;
	}

	.fakechart span {
		font-size: 40px !important;
	}

	.textright {
		text-align: left;
	}

	.mobb-2 {
		margin-bottom: 15px;
	}

	.borderleftblack {
		border: 0;
	}
}

.dropdown-toggle::after{
	width: 0px !important;
	height: 0px !important;
}

/* Learning Centre sponsor line */
.learning-centre-sponsor {
	font-size: 14px;
	color: #666666;
	text-align: center;
	margin-bottom: 6px;
	font-family: "Lato", sans-serif;
}

.learning-centre-sponsor a {
	color: #428bca;
	text-decoration: none;
	font-weight: 600;
}

.learning-centre-sponsor a:hover {
	text-decoration: underline;
}

/* Learning Center Menu Fixes */
.navbar-dark .navbar-nav .nav-link {
    padding: 7px 8px;  /* Reduced from 10px to 8px */
    font-size: 14px;   /* Reduced from 15px to 14px */
    white-space: nowrap; /* Prevents text wrapping to two lines */
}

.navbar-nav>li {
    margin-left: 3px;  /* Reduced from 4px */
    margin-right: 3px; /* Reduced from 4px */
}

/* Ensure navbar expands properly */
.navbar-nav {
    flex-direction: row;
    flex-wrap: nowrap;
}

/* For smaller screens, allow wrapping */
@media only screen and (max-width: 1200px) {
    .navbar-dark .navbar-nav .nav-link {
        font-size: 13px;
        padding: 7px 6px;
    }
    
    .navbar-nav>li {
        margin-left: 2px;
        margin-right: 2px;
    }
}

@media only screen and (max-width: 1130px) {
    .navbar-nav {
        flex-wrap: wrap; /* Allow wrapping on mobile */
    }
}

/* Main Navigation Menu Fixes - Prevent Text Wrapping */
.navbar-dark .navbar-nav .nav-link {
    white-space: nowrap; /* Prevents "Learning Center" and "About Us" from wrapping */
    padding: 7px 8px;    /* Reduced from 10px to fit more items */
    font-size: 14px;     /* Slightly smaller for better fit */
}

.navbar-nav > li {
    margin-left: 2px;    /* Reduced spacing between items */
    margin-right: 2px;
}

/* Ensure navbar stays on one line */
.navbar-nav {
    flex-direction: row;
    flex-wrap: nowrap;
}

/* Dropdown toggle arrows shouldn't add extra width */
.dropdown-toggle::after {
    margin-left: 3px;    /* Minimal spacing for dropdown arrow */
}

/* For medium screens, make text even more compact */
@media only screen and (max-width: 1300px) {
    .navbar-dark .navbar-nav .nav-link {
        font-size: 13px;
        padding: 7px 6px;
    }
    
    .navbar-nav > li {
        margin-left: 1px;
        margin-right: 1px;
    }
}

/* Mobile - allow wrapping */
@media only screen and (max-width: 1130px) {
    .navbar-nav {
        flex-wrap: wrap;
    }
    
    .navbar-dark .navbar-nav .nav-link {
        white-space: normal; /* Allow wrapping on mobile */
    }
}