@font-face {
	font-family: 'AvertaforTBWABold';
	src: url('../fonts/AvertaforTBWABold.woff2') format('woff2'), url('../fonts/AvertaforTBWABold.woff') format('woff');
	font-weight: normal;
	font-style: normal;
}
@font-face {
	font-family: 'AvertaforTBWALight';
	src: url('../fonts/AvertaforTBWALight.woff2') format('woff2'), url('../fonts/AvertaforTBWALight.woff') format('woff');
	font-weight: normal;
	font-style: normal;
}

html {
	font-size: 13px;
	color: #4f4f4f;
}
body {
	font-family: AvertaforTBWABold, sans-serif;
	overflow-x: hidden;
}

h1, h2, h3, h4, h5 {
	text-transform: uppercase;
}
h2 {
	text-align: center;
	background: #ffffff;
	border-bottom: 4px solid #4f4f4f;
	font-size: 1.6rem;
	line-height: 2.4;
	margin: 0;
}
h3 {
	font-size: 1rem;
	line-height: 2;
	padding: 0 4px;
	border-bottom: 1px solid #4f4f4f;
}

/* ---------- grid ---------- */
.row {
	margin-right: -8px;
	margin-left: -8px;
}
.row > .col, .row > [class*="col-"] {
	padding-right: 8px;
	padding-left: 8px;
}

.grid-box {
	padding: 10px;
}

.row-hline > [class^=col] {
	border-right: 1px solid #4f4f4f;
}
.row-hline > [class^=col]:last-of-type {
	border: 0;
}


/* ---------- forms ---------- */
option {
	text-transform: capitalize;
}
.col-form-label {
	padding-top: 0;
	text-transform: uppercase;
	line-height: 1;
}
.form-group {
	margin-bottom: 0;
}
.form-control {
	border-radius: 0;
	border-color: #4f4f4f;
}
.input-group-text {
	border-radius: 0;
	border-color: #4f4f4f;
}

.switch {
	position: relative;
	text-align: center;
}
.switch input {
	position: absolute;
	top: -33px;
	left: 0;
	visibility: hidden;
}

.switch label {
	width: 49%;
	margin: 0;
	text-align: left;
}
.switch label:last-of-type {
	text-align: right;
}
.switch label:nth-of-type(2) {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 50px;
	height: 23px;
	background: #4f4f4f;
	border: 1px solid #07070f;
	border-radius: 11px;
}
.switch label:nth-of-type(2):after {
	content: '';
	display: block;
	width: 21px;
	height: 100%;
	border-radius: 50%;
	background: #ffffff;
	position: absolute;
	left: 0;
	top: 0;
	transition: .5s;
}
.switch input:checked + label + label:after {
	left: 100%;
	transform: translateX(-100%);
}


/* ---------- tables ---------- */
.table {
	margin-bottom: 0;
}
.table-white {
	background: #ffffff;
	border: 1px solid #4f4f4f;
}
.table-bordered td, .table-bordered th {
	border-color: #4f4f4f;
}
.table thead th {
	text-transform: uppercase;
}
.table .thead-dark th {
	background-color: #4f4f4f;
}
.table td, .table th {
	line-height: 1;
	padding: .3rem;
}

/* ---------- top bar ---------- */
#top-bar {
	line-height: 4rem;
	background: #ffffff;
}

#logo {
	width: 181px;
	text-align: center;
	padding: 0 20px;
	float: left;
}
#logo img {
	display: inline-block;
	max-width: 100%;
	max-height: 48px;
}

h1 {
	float: left;
	line-height: inherit;
	margin: 0;
}

#nav-control {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

#top-bar label {
	font-size: 2rem;
	line-height: inherit;
	float: right;
	margin: 0 20px;
}
#nav-close {
	color: #ffffff;
}

nav {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,.97);
	transform: translateY(-100%);
	transition: .5s;
	z-index: 9;
}
#nav-control:checked + #nav-open + nav {
	transform: translateY(0);
}

nav ul {
	list-style: none;
	text-align: center;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	margin: 0;
	padding: 0;
}

nav li {
	margin: 0;
	padding: 1rem 0;
	position: relative;
	line-height: 1.3;
}

nav a {
	font-size: 1rem;
	color: #ffffff;
	text-shadow: 2px 4px 3px rgba(0,0,0,.2);
	text-transform: uppercase;
	-webkit-transition: all .25s ease;
	transition: all .25s ease;
	display: inline-block;
	border-bottom: 1px solid #f1c92c;
}

nav a:hover {
	color: #f1c92c;
	text-decoration: none;
}

nav .active a {
	color: #f1c92c;
}

section {
	padding: 8px;
	border-bottom: 4px solid #4f4f4f;
	background: #b9b9b9 linear-gradient(to bottom, #e1e1e1, #b9b9b9);
}

.filters {
	padding-top: 6px;
}

.types-list {
	list-style: none;
	margin: 20px 0 0;
	padding: 8px 0 0;
	text-align: center;
	border-top: 1px solid #4f4f4f;
}
.types-list li {
	display: inline-block;
	margin: 0 25px;
	text-transform: uppercase;
	color: #ffffff;
}
.type-square,
.types-list span {
	display: inline-block;
	width: 15px;
	height: 15px;
	border: 1px solid #ffffff;
	margin: 0 7px -2px 0;
}

/*---------- charts components -------------*/
.labelled-doughnut {
	position: relative;
	padding: 20px;
}
.labelled-doughnut span {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	max-width: 50%;
	text-align: center;
	text-transform: uppercase;
}
.labelled-doughnut:hover span {
	opacity: .1;
}

.hbars-with-icons {
	position: relative;
	padding-left: 2vw;
}
.hbars-with-icons .icon {
	position: absolute;
	left: .3vw;
	transform: translateY(-50%);
	font-size: 1.8vw;
}
.hbars-with-icons .icon:nth-of-type(1) {
	top: 67.5%;
}
.hbars-with-icons .icon:nth-of-type(2) {
	top: 41%;
}
.hbars-with-icons .icon:nth-of-type(3) {
	top: 13%;
}
