
body,html{
	height: 100% !important;
	background-image:url(../images/pattern-bg.gif);
	font-family: 'Lato', sans-serif; /* 300,400,700 */
	font-size:16px;
	min-width: 320px;
}

body.fixed{
	position: relative;
}

ul, ul > li, ul ul{padding: 0; margin: 0; list-style: none;}

h1,h2,h3,h4,h5,h6{
	font-family: 'Lato', sans-serif; /* 300,400,700 */
	line-height: 1.1;
}

h1{ font-weight: 400; }
h3{ font-weight: 300; }

.standard-padding{
	padding-top:100px !important;
	padding-bottom: 100px !important;
}

.icon-large{ font-size: 55px; }
.icon-medium{ font-size: 35px; }

.text-align-right{
	text-align: right;
}
.text-align-center{
	text-align: center;
}

/*****************
	Basic
*****************/

.grid-y{
	height: 100%;
}

.loading{
	background-position: center;
	background-repeat: no-repeat;
}

.loading span{
	display: none;
}

.loading.sized{
	width: 42px;
	height: 42px;
	background-size: cover;
}

.loading.off{
	display: none;
}

.loading.black{
	background-image: url("../images/loading-white.svg");
}

.loading.white{
	background-image: url("../images/loading-black.svg");
}

.alert-box{
	padding: 10px 10px 10px 5px;
	background-color: #FFFFE0;
	cursor: default;
	color: #F00;
	font-weight: 400;
	font-size:14px;
}

.alert-box .cell{
	padding-left: 10px;
	padding-right: 0;
}

.transition{
	-webkit-transition:	all .2s ease-out;
	-moz-transition: all .2s ease-out;
	-o-transition: all .2s ease-out;
	transition: all .2s ease-out;
	}

.valign{
	display: table;
	width: 100%;
	height: 100%;
}

.valign > li{
	display: table-cell;
	vertical-align: middle;
	padding: 20px;
}

.valign.padding-0 > li{
	padding: 0;
}

.callout{
	font-weight: 400;
	cursor: default;
}

.callout-hidden{
	display: none;
}

.callout p:last-of-type{
	margin-bottom: 0;
}

.callout.center{
	text-align: center;	
}

.callout.margin-0{
	margin: 0;
}

.callout [class^="icon-"], .callout [class*=" icon-"]{
	margin-right: 10px;
}

iframe{
	width: 100%;
	height: 100%;
	border: none;
	overflow: hidden;
}

/*****************
	Structure
*****************/
	
main{
	height:100%;
	}

menu{
	margin: 0;
	padding: 0;
}
	
aside,
nav,
aside hr{
	height:100%;
	position:relative;
	z-index:1;
	}
	
aside{
	display:table-cell;
	width:110px;
	}

aside hr{
	width:10px;
	float: left;
	top:0;
	margin:0;
	padding:0;
	border:none;
	background-color: rgba(255,255,255,.7);
	clear: none;
	z-index: 0;
	}
	
nav{
	width:100px;
	float:left;
	background-color: rgba(0,0,0,.9);
	display:table;
	}
	
.icon-logo-simbolo{
	position:absolute;
	width:100%;
	height:50px;
	text-align:center;
	font-size:45px;
	top:0;
	padding:40px 0;
	left:0;
	display:table;
	}
	
.icon-logo-simbolo:before{
	color:#FFF;
	}
	
/*****************
	Overflow
*****************/
	
.overflow-black,
.overflow-gray{
	overflow-y:scroll;
	overflow-x:hidden;
	position:relative;
	padding: 20px;
	}
	
.overflow-black::-webkit-scrollbar,
.overflow-gray::-webkit-scrollbar {
    width: 5px;
}
 
.overflow-black::-webkit-scrollbar-track {
	background-color:#1a1c1f; 
}
 
.overflow-black::-webkit-scrollbar-thumb {
	background-color:#676360;
}
 
.overflow-gray::-webkit-scrollbar-track {
	background-color:#f0f0f0; 
}
 
.overflow-gray::-webkit-scrollbar-thumb {
	background-color:#95969a;
}

.overflow{
	width: 100%;
	position: relative;
	}

/*****************
	Tables
*****************/

.table{
	width: 100%;
	display:table;
	}

.table > li{
	display:table-row;
	}

.table > li > div{
	display:table-cell;
	border-bottom:1px solid #5b5e60;
	padding:10px;
	font-weight:300;
	}

.table > li > div.center{
	text-align: center;
	}

.table > li > div.more{
	position: relative;
	}

.table > li > div.more:hover{
	background-color: #EFEFEF;
	}

.table > li > div.more .list-opt{
	display: none;
	position: absolute;
	right: 100%;
	top: 0;
	z-index: 1;
	padding: 10px;
	background-color: #EFEFEF;
	}

.table > li> div.more .list-opt .button{
	margin: 0;
	}

.table > li > div.more:hover .list-opt{
	display: block;
	}

.table > li > div > a{
	display: block;
	color:#000;
	font-weight: 400;
	}
	
.table > li > div > a > span{
	margin-right: 5px;
	}
	
.black-list > li > div > a{
	color:#dbdbdb;
	}
	
.black-list > li:hover,
.black-list > li.on,
.black-list > li > div.more:hover{
	background-color: rgba(0,0,0,.2);
	}

.black-list > li > div.more .list-opt{
	background-color: #17191b;
	}

.table > li > div.nohover:hover{
	background-color: transparent;
	}

.options > li{
	padding-bottom: 0;
}

.options .button{
	margin: 0;
}

.table .button{
	padding: 0.78em 1em;
}
	
/*****************
	Content
*****************/
	
section{
	display:table-cell;
	vertical-align:top;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
	padding:20px;
	}

section.site{
	display:block;
}	

section.site.padding-0{
	padding: 0;
}

section.site .grid-container,
section.site > .grid-padding-x > .cell{
	padding-left: 40px;
	padding-right: 40px;
	}
	
section.loading{
	background-image:url(../images/loader-black.svg);
	background-repeat:no-repeat;
	background-position:center center;
	}

menu{
	color: #FFF;
}

.background-fixed{
	background-attachment: fixed;
	background-repeat: no-repeat;
}

.background-postop{
	background-position: center top;
}

/*******************
	Form Blocks
*******************/

.form .grid-x .cell{
	border-bottom: 1px solid #3b4144;
}

.form.light{
	padding: 20px;
}

.form.light .grid-x .cell{
	border: none;
}

.form.light label{
	font-size: 14px;
	color: #999;
}

.form input,
.form select,
.form textarea{
	margin: 0;
	border: none;
	background-color: rgba(0,0,0,.5);
	color: #FFF;
}

.form.light input,
.form.light select,
.form.light textarea{
	background-color: #E9F3F5;
	color: #000;
	margin-bottom: 10px;
}

.form input:focus{
	color: #000;
}

.form label{
	min-width: 120px;
	font-weight: 700;
	margin-top: 5px;
}

.background.black .form label{
	color: #FFF;
}
	
/*****************
	Login
*****************/

.login .icon-logo-simbolo{
	position: inherit;
	float: left;
	display: table;
	height: 100%;
}

.login .icon-logo-simbolo:before{
	display: table-cell;
	vertical-align: middle;
}

.login .form{
	max-width: 300px;
	margin: 0 auto;
	text-align: center;
}

.login .form>.cell{
	padding-top: 5px;
	padding-bottom: 5px;
	width: 100%;
}

main.login{
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

footer.login{
	background-color: rgba(0,0,0,.8);
	color: #FFF;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	font-size: 12px;
	cursor: default;
}

footer.login div:nth-child(2){
	text-align: right;
}

.login input{
	margin: 0;
	background-color: rgba(0, 0, 0, .7);
}

.login .button{
	margin: 0;
}

.login .icon-user-solid-circle{
	font-size: 55px;
	color: rgba(0, 0, 0, .7);
	margin-top: 2px;
	display: block;
}

.login .form{
	color: #FFF;
}

.login .callout{
	max-width: 300px;
	margin: 0 auto;
}

/*****************
	Menu
*****************/
	
menu,
footer{
	width:100px;
	margin:0;
	padding:0;
	position:absolute;
	left:0;
	z-index:100;
	}
	
menu.vertical{
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	}

menu > ul{
	position:relative;
	width:100px;
	height:100px;
}

menu > ul > li{
	position: relative;
}

menu > ul > li .icon{
	position:relative;
	text-align:center;
	width:100px;
	height:100px;
	float:left;
	display:table;
	font-size:30px;
	color:#FFF;
	text-decoration:none;
	}
	
menu > ul > li .icon:before{
	display:table-cell;
	vertical-align:middle;
	}

menu > ul > li > .icon{
	z-index: 102;
	}

menu > ul > li > ul{
	position: absolute;
	right: 100%;
	top: 0;
	display: table;
	margin: 0;
	z-index: 101;
}

menu > ul > li > ul > li{
	display: table-cell;
}

menu > ul > li:hover > ul{
	right: -100%;
	left: 100%;
}
	
.menu-search .search > div{
	float:left;
	width:180px;
	height:100px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
	background-color:#ff3e79;
	padding:10px 0 10px 10px;
	}
	
.menu-search .search input,
.menu-search .search form{
	height:100%;
	border:1px solid #ff6091;
	}

.menu-search .search form{
	border: none;
}

footer,
footer menu{
	bottom:0;
	}

.menu-apps .icon{ background-color:#fc9215; }	
.menu-apps .icon:hover{ background-color:#fb9f32; }
.menu-search .icon{ background-color:#ff3e79; }	
.menu-search .icon:hover{ background-color:#ff6091; }
.menu-config .icon{ background-color:#bdc3c7; color:#333; }	
.menu-config .icon:hover{ background-color:#ecf0f1; }

.menu-dashboard .icon{ background-color:#34495e; }	
.menu-dashboard .icon:hover{ background-color:#233140; }
.menu-dominio .icon{ background-color:#f39c12; }	
.menu-dominio .icon:hover{ background-color:#d88d17; }
.menu-files .icon{ background-color:#3498db; }	
.menu-files .icon:hover{ background-color:#297eb7; }
.menu-academy .icon{ background-color:#b0cd49; }	
.menu-academy .icon:hover{ background-color:#c9e36a; }

/*****************
	Welcome Card
*****************/

.welcome{
	cursor:default;
	padding:30px 0 20px 0;
	background-position:center center;
	background-size: cover;
	-webkit-box-shadow: inset 0px 0px 201px 53px rgba(0,0,0,0.75);
	-moz-box-shadow: inset 0px 0px 201px 53px rgba(0,0,0,0.75);
	box-shadow: inset 0px 0px 201px 53px rgba(0,0,0,0.75);
	color: #FFF;
	}

.welcome > .grid-padding-x{
	padding-left: 20px;
	padding-right: 20px;
}
	
.welcome-profile-photo div{
	width:140px;
	height:140px;
	border:2px solid #FFF;
	display:inline-block;
	-webkit-border-radius: 170px;
	-moz-border-radius: 170px;
	border-radius: 170px;
	overflow:hidden;
	position:relative;	
	}
	
.welcome-profile-photo div > img{
	width:auto;
	height:100%;
	}

.welcome-hello h1,
.welcome-hello h3{
	padding: 10px 20px;
	margin: 0;
	background-color: rgba(0,0,0,.5);
	}

.welcome-hello h1{
	padding-bottom: 0;
	}

.welcome-hello h3{
	padding-top: 0;
	}

.welcome-date-time{
	text-align: right;
}

.welcome-date-time h1{
	font-weight: 300;
	font-size: 5rem;
}

.welcome-date-time h3{
	font-weight: 300;
	font-size: 1.2rem;
}

/*************
	Dashboard
**************/

.dashboard{
	padding-top: 20px;
}

.dashboard > .grid-container,
.dashboard > .grid-container > .grid-x,
.dashboard > .grid-container > .grid-x > .cell{
	height: 100%;
}

.dashboard > .grid-container > .grid-x > .cell.left{
	padding-right: 10px;
}

.dashboard > .grid-container > .grid-x > .cell.right{
	padding-left: 10px;
}

.dashboard > .grid-container > .grid-x > .cell.left > .grid-y > .cell.top,
.dashboard > .grid-container > .grid-x > .cell.right > .grid-y > .cell.top{
	padding-bottom: 10px;
}

.dashboard > .grid-container > .grid-x > .cell.left > .grid-y > .cell.bottom,
.dashboard > .grid-container > .grid-x > .cell.right > .grid-y > .cell.bottom{
	padding-top: 10px;
}

.dashboard .grid-y .grid-x{
	height: 100%;
}

/*******************
	Dashboard Blocks
*******************/

.db-block{
	background-color: #FFF;
	cursor: default;
}

.db-block .center{
	text-align: center;
}

.db-block .icon span{
	font-size: 45px;
	color: #FFF;
}

.db-block > .cell{
	height: 100%;
}


.db-block .cell.on{
	background-image: url("../images/db-block-option-over.png");
	background-repeat: no-repeat;
	background-position: center right;
}

.db-block-menu > .cell{
	cursor: pointer;
}

.db-block-menu > .cell:hover .valign{
	background-color: rgba(0,0,0,.1);
}

.db-block-menu > .cell.on .valign{
	background-color: rgba(0,0,0,.2);
}

.db-block-menu span{
	margin-right: 10px;
	font-size: 22px;
}

.white{ color: #FFF; }
.orange{ color: #f39c12; }
.lightgreen{ color: #b0cd49; }
.green{ color: #2ecc71; }
.darkgreen{ color: #239e57; }
.blue,
.table > li > div > a.file.blue{ color: #007cff; }
.purple{ color: #9b59b6; }
.pink{ color: #ff3e79; }
.yellow{ color: #f1c40f; }
.red{ color: #e74c3c; }
.gray{ color: #95a5a6; }
.darkblue{ color: #2c3e50; }

.background{ color: #FFF; }

.background.white{ background-color: #FFF; color: initial; }
.background.black{ background-color: #212426; }
.background.lightgreen{ background-color: #b0cd49; }
.background.green{ background-color: #2ecc71; }
.background.orange{ background-color: #f39c12; }
.background.darkgreen{ background-color: #239e57; }
.background.blue{ background-color: #3498db; }
.background.lightblue{ background-color: #66a8cd; }
.background.purple{ background-color: #9b59b6; }
.background.darkpurple{ background-color: #77448c; }
.background.pink{ background-color: #ff3e79; }
.background.darkpink{ background-color: #b02559; }
.background.yellow{ background-color: #f1c40f; }
.background.red{ background-color: #e74c3c; }
.background.gray{ background-color: #95a5a6; }
.background.darkblue{ background-color: #2c3e50; }

.upload-label{
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	cursor: pointer;
}

.page-block{
	cursor: default;
}

.page-block > div{
	background-color: #FFF;
}

.page-block > .background{
	font-size: 25px;
	height: 100px;
}

.page-block a{
	display: table;
	width: 100%;
	height: 100%;
	float: left;
	font-size: 25px;
	padding: 0 10px;
	background-color: rgba(0,0,0,.3);
	color: #FFF;
}

.page-block a:before{
	display: table-cell;
	vertical-align: middle;
}

/**
* Site
**/

header{
	background-color: #FFF;
}

header.fixed{
	display: none;
	position: fixed;
	width: 100%;
	top: 0;
	left: 0;
	-webkit-box-shadow: 0px 5px 41px -7px rgba(0,0,0,0.51);
	-moz-box-shadow: 0px 5px 41px -7px rgba(0,0,0,0.51);
	box-shadow: 0px 5px 41px -7px rgba(0,0,0,0.51);
	z-index: 100;
}

header > .grid-x{
	padding: 20px;
}

header .logo{
	height: 60px;
}

.menu{
	float: right;
}
.menu a{
	padding-top:22px;
	padding-bottom: 22px;
	color: #666;
}

#plataforma{
	background-image:url('../images/bg3.jpg');
}

#plataforma > .grid-container{
	padding-top: 600px;
}

#map{
	height: 350px;
}

.footer a{
	margin: 0 10px;
}

/*******************
	Keepdoc
*******************/

.keepdoc-module{
	text-align: center;
	cursor: pointer;
}

.keepdoc-module-image{
	width: 100%;
	height: 300px;
	background-image: url("../images/keepdoc-module-image.jpg");
	background-size: cover;
	background-repeat: no-repeat;
}

@media only screen and (max-width: 1400px){

	#plataforma{
		background-size: 1440px auto;
	}
	
	#plataforma > .grid-container{
		padding-top: 400px;
	}


}

@media only screen and (max-height: 700px){

	.welcome{
		padding: 0;
	}

	.welcome .welcome-profile-photo .valign > li{
		padding: 10px;
	}

}