@import url('https://fonts.googleapis.com/css2?family=Overpass:ital,wght@0,100;0,200;0,300;0,400;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,600;1,700;1,800;1,900&display=swap');
body, html{
	margin:0;
	padding:0;
	font-family: 'Overpass', sans-serif;
}
*{
	box-sizing: border-box;
}
:root{
	--blue:#007bff;
	--blue_hover:#0069d9;
	--color:#18214D;
	--gray:#e0e3eb;
	--indigo: #6610f2;
	--purple: #6f42c1;
	--pink: #e83e8c;
	--red: #dc3545;
	--orange: #fd7e14;
	--yellow: #ffc107;
	--green: #28a745;
	--teal: #20c997;
	--cyan: #17a2b8;
	--white: #fff;
	--gray-dark: #343a40;
	--primary: #007bff;
	--secondary: #6c757d;
	--success: #28a745;
	--info: #17a2b8;
	--warning: #ffc107;
	--danger: #dc3545;
	--light: #f8f9fa;
	--dark: #343a40;
	--breakpoint-xs: 0;
	--breakpoint-sm: 576px;
	--breakpoint-md: 768px;
	--breakpoint-lg: 992px;
	--breakpoint-xl: 1200px;
}
body{
	color:var(--color);
}

header{
	height:60px;
	padding:8px 32px;
	display:flex;
	border-bottom:1px solid var(--gray);
}
header .logo{
	height:100%;
	width:auto;
}
header .logo img{
	max-width: 100%;
	max-height: 100%;
}
header nav{
	margin-left:16px;
}
header nav ul{
	display:flex;
	list-style: none;
	padding:0;
	margin:0;
	height:100%;

}
header nav ul li{
	height:100%;
}
header nav ul li a{
	padding:0 32px;
	display:block;
	line-height:44px;
	text-decoration: none;
	color:var(--color);
	transition:.3s color;
}
header nav ul li a:hover{
	color:var(--blue);
}


.err404{
	width:100%;
	height:80vh;
	display:flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}
.err404 h2{
	font-size:12vmax;
	line-height: 1em;
	margin:0;
}
.err404 p{
	margin:0 0 32px 0;
}
.err404 a{
	border: 1px solid #e0e3eb;
	display: inline-flex;
	justify-content: center;
	align-items:center;
	padding: 11px 30px 8px;
	color: #4a4a4a;
	border-radius:4px;
	transition: .3s;
	text-decoration: none;
}
.err404 a:hover{
	color:white;
	background: var(--blue);
	border-color:var(--blue);
}


.hero{
	width:100%;
	height:150px;
	color:white;
	background: var(--blue);
	display:flex;
}
.hero h1{
	margin:auto 64px;
}

.single, .homepage, .faqs{
	display:flex;
	flex-wrap:wrap;
	padding:16px 64px;
	justify-content: center;
}
.single .chart-container{
	flex-grow:1;
	margin-right:32px;
	min-width: 500px;
	text-align:center;
}
.single .table-container{
	width:400px;
	text-align:center;
	display:flex;
	flex-direction: column;
	justify-content: center;
}

table{
	width:100%;
	border-collapse:collapse;
}
table th{
	background: var(--blue);
	color:white;
	padding:16px 0;
	font-size:1.2em;
}
table th:first-child{
	border-top-left-radius: 4px;
}
table th:last-child{
	border-top-right-radius: 4px;
}
table td{
	border:1px solid var(--gray);
	padding:16px 8px;
}
#chart-render{
	width:100%;
	height:400px;
	max-height: 90vh;
}

#chart-render:not(.rendered){
	
	background: var(--gray);
}


.homepage .top-ten{
	display:flex;
	flex-direction: column;
	width:50%;
	min-width: 400px;
}
.homepage h2{
	text-align:center;
}

.homepage .top-ten .top-container{
	width:300px;
	margin:0 auto;
	display:flex;
	flex-direction: column;
	justify-content: space-between;
}
.homepage .top-ten .single-bz{
	display:flex;
	width:100%;
	height:100px;
	margin:6px auto;
	padding-right:16px;

	align-items: center;
	justify-content: flex-start;
	text-decoration: none;
	color:var(--color);
	border:1px solid var(--gray);
	border-radius:8px;
}

.homepage .top-ten .single-bz img{
	height:100%;
	border-radius:8px 0 0 8px;
	margin-right:16px;
}
.homepage .last-splits{
	width:50%;
	min-width: 400px;
}
.homepage table a{
	color:var(--blue);
}

.faqs > h3{
	width:100%;
	text-align:center;
	margin:32px 0;
	font-size: 2em;
}
.faqs .row{
	width:40%;
	min-width:500px;
	flex-grow:1;
	margin:0 15px;
}

.faqs .row .single-faq{
	margin:16px 0;
	background: #f5f5f5;
	padding:0 16px 16px 16px;
	border-radius:4px;
}
.faqs .row .single-faq h3{
	padding-top:16px;
	cursor:pointer;
	position: relative;
}
.faqs .row .single-faq h3:after,
.faqs .row .single-faq h3:before{
	content: "";
	position: absolute;
	width:4px;
	height:16px;
	background: var(--color);
	right:0;
	top:16px;
	transition:.3s transform;
	border-radius:8px;
}
.faqs .row .single-faq h3:after{
	right:16px;
	transform: rotate(135deg);
}
.faqs .row .single-faq h3:before{
	right:8px;
	transform: rotate(45deg);
}

.faqs .row .single-faq.active h3:after{
	transform: rotate(45deg);
}
.faqs .row .single-faq.active h3:before{
	transform: rotate(135deg);
}


.faqs .row .single-faq p{
	display:block;
	overflow: hidden;
	height:0;
	transition:.3s height;
	margin:0;
}
.faqs .row .single-faq.active p{
	height:auto;
}

.search{
	background: var(--blue);
	padding:40px 16px;
}
.search #presearch-container{
	width:50%;
	margin:auto;
	position: relative;
}
#presearch-input{
	width:100%;
	margin:0 10px;
	box-sizing: border-box;
	font-size:20px;
	font-weight: normal;
	padding:19px 18px 17px 18px;
	height:64px;
	border:1px solid darkgray;
	border-radius:3px;
	outline:none;
	font-family: 'Overpass', sans-serif;
}
#presearch-input:focus,
#presearch-input:active{
	border-color:var(--blue);
}

#presearch-results{
	position: absolute;
	top:65px;
	width:100%;
	left:10px;
	background: white;
	border:1px solid #ccc;
	border-radius:3px;
	padding:16px 0;
	flex-direction: column;
	box-shadow: 0 1px 3px rgba(0,0,0,.3);
	max-height: 400px;
	overflow-y:auto;
	display:flex;
	visibility: hidden;
	transition:.1s visibility;
}
#presearch-container:focus-within #presearch-results{
	visibility: visible;
}
#presearch-results p{
	margin:0;
	padding:0;
	text-align: center;
	font-size:1.2em;
	opacity:.65;
}
#presearch-results div{
	padding:8px 16px;
	box-sizing: border-box;
	width:100%;
	cursor:pointer;
}
#presearch-results div:hover{
	background: #fbfbfb;
}
#presearch-results div h5{
	font-size: 1.5em;
	font-weight: normal;
	margin: 0;
}
#presearch-results div h5 small{
	opacity: .7;
	font-size:.75em;
}
#presearch-results div h5 span{
	color:var(--blue);
}


@media (min-width:1400px){
	.single, .homepage, .faqs{
		padding-left:128px;
		padding-right:128px;
	}
	.hero h1{
		margin-left:128px;
	}
}

@media (min-width:1600px){
	.single, .homepage, .faqs{
		padding-left:256px;
		padding-right:256px;
	}
	.hero h1{
		margin-left:256px;
	}
}