html,body,
h1,h2,h3,h4,h5,h6,
ul,ol,p,figure,
form,fieldset,input,textarea{
	margin:0;
	padding:0;
}

*{
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
}
.cl:before,
.cl:after {
  display: table;
  content: " ";
}
.cl:after{
	clear:both;
}

/* ----- */

html,body{
	width:100%;
	height:100%;
}

nav ul{list-style:none;}
a img,fieldset{border:0;}

.logo img,
.img img,
figure img{
	display:block;
	max-width:100%;
}

p + p{margin-top:16px;}

button,
input[type=button],
input[type=submit]{
	cursor:pointer;
	outline:none;
}

/* ----- */

body{
	background-color:#f5f5f5;
	
	color:#383838;
	font-family: 'Roboto', sans-serif;	
	line-height:normal;
}

a{color:#3e8bc5;}
.text a{text-decoration:underline;}
a:hover{text-decoration:none;}


/* ---------- header ---------- */
header{
	background: #6ea439;
	background: -moz-linear-gradient(top, #6ea439 0%, #5a862f 100%);
	background: -webkit-linear-gradient(top, #6ea439 0%,#5a862f 100%);
	background: linear-gradient(to bottom, #6ea439 0%,#5a862f 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#6ea439', endColorstr='#5a862f',GradientType=0 );
	
	position:relative;
	z-index:10;
}
header > div{
	max-width:980px;
	height:87px;
	margin:0 auto;
    display:flex;
    align-items:center;
    justify-content:space-between;
}
header .logo-container {
    display:flex;
    align-items:center;    
}

header .logo-container .logo-text {
    color:#fff;
    font-size:20px;
}

header .logo img{
	display:block;
	height:80px;
    margin-right:20px;
}


header .login > a,
header .login > a:focus,
header .user a,
header .user a:focus{
	display:block;
	color:#fff;
}
header .login > a,
header .login > a:focus{
	font-size:14px;
	line-height:20px;
}
header .login a .fa,
header .user a .fa{
	font-size:15px;
	margin-right:5px;
}


header .dropdown-menu{
	border:2px solid #467a12;
	border-radius:6px;
	box-shadow: 0 4px 7px 0 rgba(0, 0, 0, 0.44);
	padding:3px 0;
	margin:0;
	
	left:auto;
	right:0;
}
header .dropdown-menu:before,
header .dropdown-menu:after{	
	content:"";
	position:absolute;
}
header .dropdown-menu:before{
	border-right:8px solid transparent;
	border-left:8px solid transparent;
	border-bottom:11px solid #467a12;
	
	top:-11px;	
	right:6px;
}
header .dropdown-menu:after{
	border-right:6px solid transparent;
	border-left:6px solid transparent;
	border-bottom:9px solid #fff;
	
	top:-9px;	
	right:8px;    
}


/* login */
header .login{
	position:relative;
}

header .login a,
header .login a:focus{
	text-decoration:underline;
	margin-top:10px;
}
header .login a:hover{
	text-decoration:none;
}

header .login .dropdown-menu{
	width:250px;
	padding:17px 20px 12px;
	margin-top:10px;
    position:absolute !important;
}
header .login .dropdown-menu .btn{
	margin:4px 0 11px;
}

header .logedin > *,
header .notification li{
	display:inline-block;
	vertical-align:middle;
}

/* user */
header .user{
	min-width:160px;
	position:relative;
}
header .user a,
header .user a:focus{
	border:2px solid rgba(255,255,255,0.5);
	border-radius:6px;
	padding:6px 12px 6px;
	position:relative;
	
    font-size:13px;
	line-height:14px;
	text-decoration:none;
}
header .user > a > *{
    display:inline-block;
    vertical-align:middle;
}
header .user > a > span > span{
    display:table-cell;
    height:28px;
    text-align:right;
    vertical-align:middle;
}
header .user > a > span span > *{
    display:block;
}
header .user > a b{
    text-transform:uppercase;
}

header .user a .fa-user{
	margin-right:10px;
}
header .user .fa-angle-down{
	margin:0 0 0 9px !important;
}
header .user.open .fa-angle-down{
	-webkit-transform:rotate(-90deg);
	transform:rotate(-90deg);
}


header .user .dropdown-menu{
	width:154px;
	padding:3px 5px;
}
header .user .dropdown-menu ul{
	list-style:none;
}
header .user .dropdown-menu li{
	margin:4px -5px;
}
header .user .dropdown-menu ul + ul{
	border-top:1px solid #c7c7c7;
}

header .user li a,
header .user li a:hover,
header .user li a:focus{
	display:block;
	border:0;
	border-radius:0;
	padding:3px 0 3px 11px;
	
	color:#7a7a7a;
}
header .user li a:hover,
header .user li a.active{
	background-color:#0c6bb3;
	color:#fff;
}
header .user li .fa{
	font-size:14px;
}


/* notification */
header .notification{
	list-style:none;
}
header .notification li{
	margin-right:21px;
	position:relative;
}
header .notification li > a{
	display:block;
	width:22px;
	height:19px;
	background:url(../images/icons/icons.png) no-repeat;
	background-size:44px auto;
	
	position:relative;
}
header .notification li:not(.open) a:hover{
	opacity:0.8;
}
header .notification .mail > a{
	background-position:0 0;
}
header .notification .mail.open > a{
	background-position:0 -19px;
}
header .notification .tasks > a{
	background-position:-22px 0;
}
header .notification .tasks.open > a{
	background-position:-22px -19px;
}
header .notification li > a span{
	display:block;
	width:17px;
	height:17px;
	background-color:#eb252e;
	border-radius:100%;
	
	position:absolute;
	top:-8px;
	right:-8px;
	
	color:#fff;
	font-size:11px;
	line-height:17px;
	text-align:center;
    
}

header .notification .dropdown-menu{
	width:404px;
	max-width:404px;
	padding:0;
	
	top:32px;
	right:-5px;
}

header .messages.list .msg-head,
header .tasks.list .task-head{
	margin:0 5px;
}

header .messages.list .item.new:before,
header .tasks.list .item.new:before{
	right:-5px;
	left:-5px;
}

header .messages.list .item,
header .tasks.list .fep-table{
	margin:0 5px;
}

header .tasks .dropdown-menu{
    width:484px;
    max-width:484px;
}
header .tasks .fep-table > div > div{
    width:134px;
}
header .tasks .fep-table > div > div:first-child{
    width:104px;
}
.tasks .fep-table > div > div:last-child{
    width:98px;
}

header .notification .fep-scroll{
	max-height:329px;
}
header .notification .mCSB_inside>.mCSB_container{
	margin-right:0 !important;
}
header .notification .mCSB_scrollTools{
	width:5px !important;
}
header .mCSB_scrollTools .mCSB_draggerRail{
	background-color:transparent !important;
}
header .mCS-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{
	background-color:rgba(0,0,0,0.5) !important;
}

.hamburger{
	display:none;
}
/* ---------- /header ---------- */


/* ---------- nav ---------- */
nav{
	width:100%;
	height:45px;
	background-color:#3e8bc5;
	box-shadow: 0 3px 5px 0 rgba(0, 0, 0, 0.16) inset;
	position:relative;
    z-index:5;
}
nav ul{
	max-width:980px;
	margin:0 auto;
	
	text-align:center;
}
nav li{
	display:inline-block;
	vertical-align:middle;
	margin-left:-4px;
}
nav li a,
nav li a:hover,
nav li a:visited,
nav li a:focus{
	color:#fff;
	font-size:16px;
	font-weight:bold;
	line-height:45px;
	text-decoration:none;
	text-transform:uppercase;
	text-shadow: 0 2px 2px rgba(23, 23, 23, 0.25);
	
	display:block;
	padding:0 20px;
}
nav li a:hover,
nav li a.active{
	opacity:0.8;
	text-shadow:none;
}
nav li a.active{
	cursor:default;
}
nav li:last-child a{
	padding-right:0;
}
/* ---------- /nav ---------- */

@media (max-width: 1040px){
	header,
	nav{
		padding:0 15px;
	}
}
@media (max-width: 992px){
	header{
		text-align:center;
	}
    header > div{
        justify-content:center;
    }
	header .logo{
		float:none;
		display:inline-block;
	}
	header > div > .login {		
		position:absolute !important;
		top:87px;
		right:10px;		
		float: none;
		padding:0;
		text-align:left;
	}
	
	header .login a,
	header .login a:focus{
		margin:0;
		line-height:45px;
	}
	header .login .dropdown-menu{
		margin-top:0;
	}
	
	header .logedin{
		left:10px;
		padding:13px 0 0 45px;
	}
	header .notification .dropdown-menu{
		width:100%;
		max-width: inherit;
		top:43px;
		right:auto;
		left:0;
	}
	header .notification .dropdown-menu:before,
	header .notification .dropdown-menu:after{
		right:auto;
	}
	header .mail .dropdown-menu:before{
		left:45px;
	}
	header .mail .dropdown-menu:after{
		left:47px;
	}
	header .tasks .dropdown-menu:before{
		left:86px;
	}
	header .tasks .dropdown-menu:after{
		left:88px;
	}
	
	header .user{
		position:absolute;
		bottom: 0;
        right: 12px;
		
		min-width:inherit;
	}
	header .user a,
	header .user a:focus{
		border:0;
        padding: 9px 0 8px;
	}
	header .user .fa{
		display:none;
	}
	
	header .notification li {
		position:inherit;
    	margin-right: 15px;
	}
	
	
	.hamburger,
	.hamburger span{
		display:block;
	}
	.hamburger{
		width:45px;
		height:45px;
		padding:14px 0 0 0px;
		cursor:pointer;
	}
	.hamburger > span{
		position:relative;
		width:21px;
		height:17px;
	}
	.hamburger span span{
		position:absolute;
		display:block;
		width:100%;
		height:3px;
		background:#e6e6e8;
		opacity: 1;
		
		-webkit-transform: rotate(0deg);
		-moz-transform: rotate(0deg);
		-o-transform: rotate(0deg);
		transform: rotate(0deg);
		
		-webkit-transform-origin: left center;
		-moz-transform-origin: left center;
		-o-transform-origin: left center;
		transform-origin: left center;
		
		-webkit-transition: .25s ease-in-out;
		-moz-transition: .25s ease-in-out;
		-o-transition: .25s ease-in-out;
		transition: .25s ease-in-out;
	}
	
	.hamburger span span:nth-child(1) {
		top: 0;
	}
	.hamburger span span:nth-child(2) {
		top: 7px;
	}
	.hamburger span span:nth-child(3) {
		top: 14px;
	}

	.hamburger[data-close] span span:nth-child(1) {
		-webkit-transform: rotate(45deg);
		-moz-transform: rotate(45deg);
		-o-transform: rotate(45deg);
		transform: rotate(45deg);
		
		top: 0;
		left: 1px;
	}	
	.hamburger[data-close] span span:nth-child(2) {
		width: 0%;
		opacity: 0;
	}
	.hamburger[data-close] span span:nth-child(3) {
		-webkit-transform: rotate(-45deg);
		-moz-transform: rotate(-45deg);
		-o-transform: rotate(-45deg);
		transform: rotate(-45deg);
		
		top: 15px;
		left: 0;
	}
	
	nav ul{
		position:absolute;
		top:44px;
		left:0;
		width:100%;
		background-color:#3e8bc5;
		padding:15px 0;
		display:none;
	}
	nav ul::before{
		content:"";
		position:absolute;
		top:0;
		left:10px;
		right:10px;
		
		height:2px;
		background-color:#2f6a97;
		border-bottom:1px solid #4d94ca;
	}
	nav li{
		display:block;
		margin:0;
	}
	nav li a,
	nav li a:hover,
	nav li a:visited,
	nav li a:focus{
		padding:0 10px !important;
		line-height:40px;
	}
}

@media (max-width: 768px){
	header .user > a b{
		display:none !important;
	}
}
@media only screen and (min-device-width : 768px) and (max-device-width : 1024px)  {
	header .user > a b{
		display:block !important;
	}
}
@media (max-width: 610px) {
    header > div {
        height:60px;
    }
    header > div > .login{
        top:62px;
    }
    header .logo img{
        /*height:48px;*/
        height:29px;
    }
}

/* ---------- footer ---------- */
footer{
	width:100%;
	background-color:#fff;
	/*padding:43px 15px 0px;*/
    padding:49px 15px 0px;
	text-align:center;
}
footer ul{
	list-style:none;
	margin-bottom:29px;
}
footer li{
	display:inline-block;
	vertical-align:middle;
	margin:0 20px;
}
footer li a,
footer li a:hover {
    display: block;	
    color: #6d6d6c;
    font-size: 16px;
    font-weight: 300;
	line-height:20px;
    text-decoration: none;
}
footer li a:hover{
	text-decoration:underline;
}
footer p {
    color: #a8a8a8;
    font-size: 12px;
}
footer .disclaimer {
	display: table;
	max-width: 650px;
	margin: 0 auto;
	text-align: justify;
}


footer .logo-container{
    background: #6ea439;
	background: -moz-linear-gradient(top, #6ea439 0%, #5a862f 100%);
	background: -webkit-linear-gradient(top, #6ea439 0%,#5a862f 100%);
	background: linear-gradient(to bottom, #6ea439 0%,#5a862f 100%);
    margin:20px -15px 0px;
    padding:20px 20px;
}
footer .logo {
    display:inline-block;
    vertical-align:middle;
    margin: 0 10px;
}
footer .logo img{
    display:block;
    height:80px;
}
@media (max-width: 992px){
	footer{
		padding-top:30px;
	}
	footer li{
		display:block;
	}
	footer li a,
	footer li a:hover{
		line-height:30px;
	}    

    footer .logo {
        display:block;
    }
    footer .logo img {
        margin:0 auto;
    }
    footer .logo + .logo{
        margin-top:20px;
    }
}
/* ---------- /footer ---------- */


/* --------- notifications ---------- */
.messages.list .msg-head,
.messages.list .msg-foo,
.tasks.list .task-head,
.tasks.list .task-foo{
	height:33px;
	
	font-size:14px;
	line-height:21px;
	text-align:center;
}
.messages.list .msg-head,
.tasks.list .task-head{
    border-bottom: 1px solid #c7c7c7;
	padding-top:6px;
}
.messages.list .msg-head,
.tasks.list .task-head,
.messages.list .msg-head a,
.tasks.list .task-head a{
	color:#595959;
}
.messages.list .msg-foo,
.tasks.list .task-foo{
	background-color:#467a12;
	padding-top:7px;
}
.messages.list .msg-foo,
.messages.list .msg-foo a,
.tasks.list .task-foo,
.tasks.list .task-foo a{
	color:#fff;
}

.messages.list .item,
.tasks.list .item{
	border-bottom:1px solid #c7c7c7;
    position:relative;
	z-index:0;
}
.messages.list .item:last-child,
.tasks.list .item:last-child{
    border-bottom:0;
}
.messages.list .item.new:before,
.tasks.list .item.new:before{
	display:block;
	height:100%;
    background-color:#f2f2f2;
	
	content:"";
	position:absolute;
	top:0;
	z-index:-1;
}

/* messages */
.messages.list .item{
	padding:9px 0 0 3px;
}
.messages.list .item > .left{
	float:left;
	width:75px;
}
.messages.list .item .avatar{
	display:block;
	width:67px;
	height:67px;
	background-color:#c0c0c0;
	margin-bottom:6px;
	
	overflow:hidden;
}
.messages.list .item .avatar img{
	display:block;
	width:100%;
}
.messages.list .item > .left p{
	color:#727272;
	font-size:10px;
	font-weight:bold;
	line-height:18px;
	letter-spacing: -1px;
}

.messages.list .item > .right{
	float:none !important;
	width:100%;
	padding:0 7px 5px 80px;
	margin:0;
	position:relative;
}

.messages.list .item .date{
	position:absolute;
	top:0;
	right:0;
	
	color:#6d6d6d;
	font-size:10px;
}
.messages.list .item .msg-title{
	color:#2c2c2c;
	font-size:14px;
	font-weight:bold;
}
.messages.list .item .msg-text{
	min-height:54px;
	border-bottom:1px solid #ddd;
	padding:5px 0;
	
	color:#2c2c2c;
	font-size:12px;
	line-height: 14px;
}
.messages.list .item .msg-links{
	padding:4px 0;
	text-align:right;
}
.messages.list .item .msg-links a{
	display:inline-block;
	color:#7a7a7a;
	font-size:11px;
	font-weight:bold;
	line-height:18px;
	vertical-align:middle;
	
	margin:0 13px 0 7px;
}

/* tasks */
.tasks .fep-table > div{
    display:table;
    width:100%;
}
.tasks .fep-table > div > div{
    display:table-cell;
    vertical-align:middle;
    padding:5px 0;

    text-align:center;
}
.tasks .fep-table > div > div:first-child{
    text-align:left !important;
}
.tasks .fep-table > div > div:last-child{
    text-align:right !important;
}

.tasks .fep-table-head{
    color:#444;
    font-size:10px;
    font-weight:bold;
    text-transform:uppercase;
}

.tasks .fep-table .item > div{
    padding:8px 0;

    color:#2c2c2c;
    font-size:11px;
    line-height:16px;
    text-align:center;
}
.tasks .fep-table .item > div:first-child{
    color:#6d6d6d;
    font-size:10px;
}
.tasks .fep-table .item a{
    color:#7a7a7a;
    font-weight:bold;
}

@media (max-width: 992px){
	.messages.list .item .date{
		display:block;
		position:relative;
	}
	.tasks .fep-table .item > div{
		font-size:10px;
	}
	.messages.list .item .msg-links a{
		margin: 0 8px 0 0px;
	}
}
/* --------- notifications ---------- */


/* ==================== content ==================== */

main{
	display:block;
    min-height:calc(100vh - 87px - 45px - 322px)
}
.breadcrumbs  + main{
	display:block;
    min-height:calc(100vh - 87px - 45px - 354px)
}

@media (min-width: 992px){
	.container {
        width:100%;
		max-width: 916px !important;
	}
}


/* btn */
.btn.fep{
	width:206px;
	padding:4px 0 3px;
	
	font-size:18px;
	font-weight:500;
}

.btn-success{
	background-color:#6ba432;
	border-color:#467a12;
}
.btn-success:hover{
	background-color:#449d44;
}

.btn.fep.btn-sm{
	width:140px;
	border-radius:4px;
	font-size:13px;
	line-height:25px;
}
.btn.fep.btn-sm.btn-block{
    width:100%;
}
.btn.fep.btn-lg{
	width:282px;
	padding:14px 0;
	font-size:25px;
}

.btn-group.fep{
	width:100%;
	margin:0 auto 31px;
}

@media (max-width: 992px){
    .btn.fep[data-print]{
        display:none;
    }
}

/* ---------- form ---------- */
.form .row,
.form .form-group{
	display:block;
}

.form .row.custom{
	margin:0 -2px;
}
.form .row.custom > *{
	padding:0 2px;
}

.form .row.custom fieldset{
	min-height:412px;
}

.form fieldset{
	border:2px solid #83bf37;
	border-radius:8px;
	padding:0 19px 20px;
	margin-bottom:33px;
}
.form fieldset legend{
	width:auto;
	border:0;
	padding:0 6px;
	margin:0 0 20px 14px;
	
	color:#83bf37;
	font-size:15px;
	font-weight:bold;
	text-transform:uppercase;
}

label{
	color:#7a7a7a;
	font-size:14px;
	font-weight:normal;
	margin-bottom:3px;
}

.form-group{
	margin-bottom:11px;
}

.form .form-group{
	display:block;
	margin-bottom:7px;
	position:relative;
}

.form .form-group .radio,
.form .form-group .checkbox{
	margin:9px 0 8px;
}
.form .form-group label + .radio,
.form .form-group label + .checkbox{
	margin:7px 0 8px;
}

.form .radio label,
.form .checkbox label{
	color:#363636;
	font-size:13px;
	line-height:14px;
	padding:3px 0 3px 20px;
}
.form input[type=checkbox],
.form input[type=radio] {
    margin-top:0;
}

.form fieldset .radio label,
.form fieldset .checkbox label{
	font-size:12px;
	padding-left:18px;
	margin:0;
}
.form fieldset .radio label + label,
.form fieldset .checkbox label + label{
	margin-left:5px;
}
.form fieldset input[type=checkbox],
.form fieldset input[type=radio] {
    margin:0 0 0 -18px;
}

.form .form-group.checkbox{
	padding-right:34px;
}
.form .form-group.checkbox > label{
	padding:0;
}
.form .form-group.checkbox > input[type=checkbox]{
	margin:0;
	top:33px;
	right:15px;
}

.form .form-control.cal{
	background-image:url(../../images/icons/cal.jpg);
	background-position:8px center;
	background-repeat:no-repeat;
	padding-left:34px;
}
.form select.form-control.cal{
	padding-left:30px;
}

.textbox{
    display:inline-block;
    position:relative;
}
.textbox a{
    position:absolute;
    top:7px;
    right:4px;
}
.textbox .form-control{
    padding-right:18px;
}

.form-group .txt{
	color:#9c9c9c;
	font-size:11px;
}

.error .form-control{
	border-color:#eb252e;
}
.error .txt{
	color:#eb252e;
}

@media (max-width: 768px){
	.form input[type=checkbox],
	.form input[type=radio] {
		margin-top: 0;
	}
}
@media only screen and (min-device-width : 768px) and (max-device-width : 1024px)  {
	.form input[type=checkbox],
	.form input[type=radio] {
		margin-top: -2px;
	}
}
/* ---------- /form ---------- */


/* ---------- no-messages ---------- */
.no-messages{
    display:block;
    background:url(../images/no_message.png) center 0 no-repeat;
    padding-top:110px;
    margin:80px 0;

    color:#595959;
    font-size:20px;
    text-align:center;
}
/* ---------- /no-messages ---------- */


/* ---------- 404 ---------- */
.page404{
    width:100%;
    max-width:417px;
    padding:37px 0;
    margin:0 auto;

    text-align:center;
}
.page404 > *{
    display:block;
    margin-bottom:40px;
}
.page404 h4{
	color:#565656;
	font-size:30px;
	font-weight:bold;
	line-height:30px;
	text-align:center;	
}
.page404 p{
    font-size:18px;
}
/* ---------- /404 ---------- */


/* ---------- breadcrumbs ---------- */
.breadcrumbs{
    width:100%;
    max-width:980px;
    margin:0 auto;
    padding-top:12px;
}
.breadcrumbs ul{
    list-style:none;
}
.breadcrumbs li,
.breadcrumbs li *,
.breadcrumbs li::before {
    display:inline-block;
    vertical-align:middle;
}
.breadcrumbs li +  li::before{
    content:">";
}

.breadcrumbs li *,
.breadcrumbs li::before{
    font-size:14px;
    font-weight:normal;
    line-height:20px;
    margin:0;
}
.breadcrumbs li a,
.breadcrumbs li:before{
    color:#83bf37;
}
.breadcrumbs li h1{
    color:#757575;
}
/* ---------- /breadcrumbs ---------- */