html,
body {
  height: 100%;
}

body {
  /*
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  */
  padding-top: 80px;
  padding-bottom: 40px;
  background-color: #f5f5f5;
}

/* ******************* */
/* Barre de navigation */
/* ******************* */

#content{
  padding-top:100px;
}

#topbar {
  overflow: hidden;
  position: fixed;
  width: 100%;
  padding: 0px 0px;
  top: 0;
  z-index: 99;
  border-bottom: solid 1px #b0b0b0;
  box-shadow: 0 0 5px rgba(0, 0, 0, .8);
}

#mainbar {
  overflow: hidden;
  background-color: #e8e8e8;
  border-bottom: solid 1px #e1e1e1;
  padding: 15px 10px;
  transition: 0.5s;
  width: 100%;
}

#subbar {
  overflow: hidden;
  background-color: #c3c3c3;
  border-bottom: solid 1px #b0b0b0;
  box-shadow: 0 0 5px rgba(0, 0, 0, .8);
  padding: 5px 10px;
  transition: 0.5s;
  width: 100%;
}

#mainbar #logopic {
  float: left;
  width: 50px;
  transition: 0.5s;
}
#mainbar #logoname {
  float: left;
  margin-right: 50px;
  font-size: 2em;
  line-height: 2.5em;
  font-weight: bold;
  transition: 0.5s;
}

#mainbar a {
  float: left;
  color: black;
  text-align: center;
  margin-top: 20px;
  transition: 0.5s;
  padding: 12px;
  text-decoration: none;
  font-size: 18px;
  line-height: 25px;
  border-radius: 4px;
}

#mainbar.mainbar-short {
  padding: 5px 10px;
}
#mainbar.mainbar-short #logopic {
  width: 28px;
}
#mainbar.mainbar-short #logoname {
  font-size: 1.2em;
  line-height: 2.2em;
}
#mainbar.mainbar-short a {
  margin-top: 0px;
}

/* Links on mouse-over */
#mainbar a:hover {
  background-color: #ddd;
  color: black;
}

/* Style the active/current link */
#mainbar a.active {
  background-color: dodgerblue;
  color: white;
}

#mainbar #mainmenu {
  width: 30%;
	margin: 0 auto;
}

/* Add responsiveness - on screens less than 580px wide, display the topbar vertically instead of horizontally */
@media screen and (max-width: 580px) {
  #mainbar {
    padding: 20px 5px !important; /* Use !important to make sure that JavaScript doesn't override the padding on small screens */
  }
  #mainbar a {
    float: none;
    display: block;
    text-align: left;
  }
  #mainbar-right {
    float: none;
  }
}

/* ******************* */

.form-signin {
  width: 100%;
  max-width: 500px;
  padding: 15px;
  margin: auto;
}
.form-signin .checkbox {
  font-weight: 400;
}
.form-signin .form-control {
  position: relative;
  box-sizing: border-box;
  height: auto;
  padding: 10px;
  font-size: 16px;
}
.form-signin .form-control:focus {
  z-index: 2;
}
.form-signin input[type="email"] {
  margin-bottom: -1px;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.form-signin input[type="password"] {
  margin-bottom: 10px;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}