
/*
-------------------------------------
BASE CLASSES
-------------------------------------
*/

*, *:before, *:after {
	box-sizing: border-box;
}

html {
	font-family: 'Montserrat', Arial, Helvetica, sans-serif;
	font-size:14px;
	font-weight:400;
	color: #3d3e43;
	height:100%;
	min-height: 100%;
}

body {
	margin: 0;
	padding: 0;
	min-width: 300px;
	width:100%;
	min-height: 100%;
	height: 100%;
	-webkit-font-smoothing: antialiased;
	outline: none;
	background: #fff;
	overflow-x: hidden;
	padding-top: 86px;
}

html, body {
	/*overflow-x: hidden;*/
}

img, video {
	display: block;
	border: 0;
	width: 100%;
	max-width: 100%;
}

section, article, header, footer, nav, aside, hgroup {
	display: block;
}

.expander {
	clear: both;
}

button::-moz-focus-inner {
	border: 0;
}

/*
-------------------------------------
TYPOGRAPHY
-------------------------------------
*/

h1, h2, h3, h4, h5, h6, p, li, a, td, th {
	font-family: 'Montserrat', Arial, Helvetica, sans-serif;
	font-style: normal;
	margin: 0px;
	padding: 0px;
	color: #3d3e43;
	cursor: default;
	line-height: 100%;
}

h1, .bold {
	font-weight: 500;
}

h2 {
	font-size:18px;
}

h3, h4 {
	font-weight: 300;
}

h5, h6 {
	font-weight: 400;
}

p, li, a {
	font-weight: 400;
}

strong {
	font-weight:500;
}

a {
	text-decoration: none;
	outline: none;
	-o-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-webkit-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
	cursor: pointer;
}

ul {
	margin: 0;
	padding: 0;	
}

ul li {
	list-style: none;
}

input, select {
	outline: none;
	border: none;
}

/*
-------------------------------------
CENTRE HOVER
-------------------------------------
*/

.cenrel {
	position: relative;
}

.cenabs {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 500;
}

.centab {
	display: table;
	width: 100%;
	height: 100%;

}

.cencell {
	display: table-cell;
	vertical-align: middle;
}

.cencontent {
	margin: 0 auto;
}

/*
-------------------------------------
LAYOUT PANELS
-------------------------------------
*/

.panel.left {
	float:left;
	width:55%;
	padding-right:50px;
}

.panel.right {
	position:absolute;
	width:45%;
	height:100%;
	right:0;
	top:0;
	overflow-y: auto;
}

/*
-------------------------------------
CONTENT BOX
-------------------------------------
*/

.content-box {
	border: 1px solid #e0e4e7;
	padding: 28px;
	position: relative;
}

.content-box h2 {
	width:50%;
}
.content-box h3 {
	margin: 30px 0;
}
.content-box .btn.add {
	position: absolute;
	top:28px;
	right:28px;
}
.content-box .btn.add.bottom {
	top:auto;
	bottom:28px;
}

.content-box .inner {
	padding:28px;
}

/*
-------------------------------------
GRIDS
-------------------------------------
*/

.col-2 {
	width: 50%;
}

.col-3 {
	width: 33.333%;	
}

.col-4 {
	width: 25%;	
}

.col-5 {
	width: 20%;
}

.col-6 {
	width: 66.666%;
}

.col-2.gutter {
	width: 45%;
	margin-left: 10%;
}

.col-2.gutter:first-child {
	margin-left: 0;
}

.col-3.gutter {
	width: 30%;
	margin-left: 5%;
}

.col-3.gutter:first-child {
	margin-left: 0;
}

.col-4.gutter {
	width: 22%;
	margin-left: 4%;
}

.col-4.gutter:first-child {
	margin-left: 0;
}

/*
-------------------------------------
FLOATING ELEMENTS
-------------------------------------
*/

.fl {
	float: left;
}

.fr {
	float: right;
}

.expander {
	clear: both;
}

/*
-------------------------------------
POSITION ELEMENTS
-------------------------------------
*/

.posrel {
	position: relative;
}

.posabs {
	position: absolute;
}

/*
-------------------------------------
WIDTH & HEIGHT ELEMENTS
-------------------------------------
*/

.width-100 {
	width: 100%;
}

.height-100 {
	height: 100vh;
}

/*
-------------------------------------
BACKGROUND & BACKGROUND FILTERS
-------------------------------------
*/

.cover-bg {
	background-size: cover !important;
	-moz-background-size: cover !important;
	-webkit-background-size: cover !important;
	background-repeat: no-repeat;
	background-position: center center;
}

.filter {
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, .1);
	position: absolute;
	top: 0;
	z-index: 200;
}

/*
-------------------------------------
SLICK
-------------------------------------
*/

.slick-arrow {
	border: none;
	outline: none;
	margin: 0;
	position: absolute;
	top: 55%;
	left: 0;
	color: #fff;
	font-size: 40px;
	z-index: 100;
	margin-top: -55px;
	background: #00dce4;
	padding: 5px 25px;
}

.slick-next {
	left: auto;
	right: 0;
}


/*
-------------------------------------
BUTTONS
-------------------------------------
*/

.btn {
	background-color: #00dce4;
	border:none;
	outline: none;
	-webkit-border-radius:0;
	-moz-border-radius:0;
	border-radius:0;
	padding:20px;
	display:inline-block;
	margin:0;
	color:#fff;
	font-weight:500;
	font-size: 16px;
	line-height:16px;
	position:relative;
	width:100%;
	cursor: pointer;
	text-align: left;
	font-family:"Montserrat", Arial, Helvetica sans-serif;
}

.btn i {
	position: absolute;
	top: 20px;
	right:20px;
}

.btn.drop-down {
	background-color: #fff;
	color:#3d3e43;
}

.btn.clear {
	background-color: transparent;
	color: #27d0ef;
	width:auto;
	padding: 0 30px 0 0;
}
.btn.clear i {
	top:0;
	right:0;
}

.btn.icon {
	width:auto;
	height:auto;
	padding: 4px;
	color: #3d3e43;
	font-size:14px;
	line-height:14px;
	text-transform: uppercase;
}
.btn.icon i {
	position: relative;
	right:auto;
}

.btn.delete, .btn.remove {
	color: #ff7877;
}

.btn.primary.active {
	color:#00d8c0;
}


/*
-------------------------------------
TABLES
-------------------------------------
*/

table {
	border-spacing:0;
	width:100%;
	max-width: 100%;
	overflow-y: scroll;
	font-size:14px;
}

td, th, th.row {
	border: solid #e1e4e6;
	border-width: 0 0 1px 0;
	padding: 15px 30px 15px 15px;
	text-align: left;
}

th {
	padding:20px 30px 20px 15px;
	border:0;
}
th, th a {
	font-weight: 500;
}

td a {
	color: #10b4b6;
}

tr td:first-child, tr th:first-child {
	padding-left: 0;
}

table .align-right {
	text-align: right;
	padding-right:0;
}

/* freeze table header */
.tablescroll-wrapper {
	position: relative;
	padding-top: 58px;
	margin: 0 25px 25px 25px;
}

.tablescroll-wrapper::before {
	content: '';
	height:1px;
	width:100%;
	background-color: #e1e4e6;
	position: absolute;
	top: 58px;
	left:0;
}

.tablescroll-wrapper .tablescroll {
	height: 500px;
	overflow-y: scroll;
}

.tablescroll-wrapper table {
	margin-top:-58px;
}

.tablescroll-wrapper th {
	visibility: hidden;
	color: transparent;
	height: 0;
}

div.th-label {
	position:absolute;
	top: 1px;
	background-color: #fff;
	visibility: visible;
	color: #111;
	height: 37px;
	padding: 20px 15px 0 0;
}

thead td {
	padding-left: 0;
}


.order-by.order-up::after {
	font-family: 'Font Awesome 5 Pro';
	content:'\f357';
	padding-left:10px;
	font-weight: 300;
}
.order-by.order-down::after {
	font-family: 'Font Awesome 5 Pro';
	content:'\f354';
	padding-left:10px;
	font-weight:300;
}
