* {
    margin: 0;
}

html, body{
    height: 100%;
}

body{
	background: #0a090c;
	color: #f0f0f0;
}

p, h1, h2, h3, h4, h5, h6, a, label{
	font-family: 'Open Sans', sans-serif;
}

a, a:hover{
	color: #eb0504;
}

#wrap{
	min-height: 100%;
   height: auto !important;
   margin: 0 auto -50px; /* the bottom margin is the negative value of the footer's height */
}

.row-head {
	padding: 8em 2em 0em 2em;
}

.row-body {
	min-height: 90%;
	min-height: 90vh;
	
	/* Make it a flex container */
  	display: -webkit-box;
  	display: -moz-box;
  	display: -ms-flexbox;
  	display: -webkit-flex;
  	display: flex; 
  	
  	/* Align the bootstrap's container vertically */
    -webkit-box-align : center;
  -webkit-align-items : center;
       -moz-box-align : center;
       -ms-flex-align : center;
          align-items : center;
  
  /* In legacy web browsers such as Firefox 9
     we need to specify the width of the flex container */
  width: 100%;
  
  /* Also 'margin: 0 auto' doesn't have any effect on flex items in such web browsers
     hence the bootstrap's container won't be aligned to the center anymore.
  
     Therefore, we should use the following declarations to get it centered again */
         -webkit-box-pack : center;
            -moz-box-pack : center;
            -ms-flex-pack : center;
  -webkit-justify-content : center;
          justify-content : center;
}

/*
 * Footer
 */
.footer{
	color: #f0f0f0;
	font-size: 11px;
}

.footer, .push {
	height: 50px;	
}

#btn-footer{
	height: 24px;
}

/*
 * Menù
 */
.navbar{
	background-color: #0a090c;
	text-align: center;
}

.navbar-inverse .navbar-nav > .active > a:hover,
.navbar-inverse .navbar-nav > .active > a:focus,
.navbar-inverse .navbar-nav > .active > a {
	background-color: #eb0504;
	/*border-radius: 5px;*/
}

.navbar-nav li a:hover, .navbar-nav li.active a {
   background-color: #eb0504 !important;
   /*border-radius: 5px;*/
}

.navbar-default .navbar-toggle {
   border-color: transparent;
   color: #fff !important;
}

.navbar-brand {
	width: 40%;
	height: 65px;
}

/*
 * Carousel
 */
.carousel-body {
  	margin-top: 5.5%;
}

/*
 * Login
 */
.card-container.card {
    max-width: 350px;
    padding: 40px 40px;
}

.btn {
    font-weight: 700;
    height: 36px;
    -moz-user-select: none;
    -webkit-user-select: none;
    user-select: none;
    cursor: default;
}

/*
 * Logout
 */
.button{
	padding-bottom: 10%;
}

/*
 * Card component
 */
.card {
    background-color: #888888;
    /* just in case there no content*/
    margin: 50px auto 70px;
    /* shadows and rounded borders */
    -moz-border-radius: 2px;
    -webkit-border-radius: 2px;
    border-radius: 2px;
    -moz-box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
    -webkit-box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
    box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
}

.profile-img-card {
    width: 96px;
    height: 96px;
    margin: 0 auto 10px;
    display: block;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    border-radius: 50%;
}

/*
 * Form styles
 */
.profile-name-card {
    font-size: 16px;
    font-weight: bold;
    text-align: center;
    margin: 10px 0 0;
    min-height: 1em;
}

.reauth-user {
    display: block;
    color: #404040;
    line-height: 2;
    margin-bottom: 10px;
    font-size: 14px;
    text-align: center;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.form-signin #inputUser,
.form-signin #inputPassword {
    direction: ltr;
    height: 44px;
    font-size: 16px;
}

.form-signin input[type=user],
.form-signin input[type=password],
.form-signin input[type=text],
.form-signin button {
    width: 100%;
    display: block;
    margin-bottom: 10px;
    z-index: 1;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.form-signin .form-control:focus {
    border-color: rgb(104, 145, 162);
    outline: 0;
    -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgb(104, 145, 162);
    box-shadow: inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgb(104, 145, 162);
}

.btn.btn-signin,
.btn.btn-logout {
    /*background-color: #4d90fe; */
    background-color: #d9534f;
    /* background-color: linear-gradient(rgb(104, 145, 162), rgb(12, 97, 33));*/
    padding: 0px;
    font-weight: 700;
    font-size: 14px;
    height: 36px;
    -moz-border-radius: 3px;
    -webkit-border-radius: 3px;
    border-radius: 3px;
    border: none;
    -o-transition: all 0.218s;
    -moz-transition: all 0.218s;
    -webkit-transition: all 0.218s;
    transition: all 0.218s;
}

.btn.btn-logout {
    width: 60px;
}

.btn.btn-danger:hover,
.btn.btn-danger:active,
.btn.btn-danger:focus,
.btn.btn-signin:hover,
.btn.btn-signin:active,
.btn.btn-signin:focus,
.btn.btn-logout:hover,
.btn.btn-logout:active,
.btn.btn-logout:focus {
    background-color: #eb0504;
}

.forgot-password {
    color: rgb(104, 145, 162);
}

.forgot-password:hover,
.forgot-password:active,
.forgot-password:focus{
    color: rgb(12, 97, 33);
}

/*
 * Info
 */
#info{
 	padding-top: 8em;
}
 
.map-responsive{
	position: relative;
	padding-bottom: 65.25%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
}

.map-responsive iframe{
    left:0;
    top:0;
    height:100%;
    width:100%;
    position:absolute;
}

/*
 * Shop
 */
 #shop{
 	padding-top: 20px;
 }
 
.NDis{
	font-weight: bold;
	color: #ff0000;
}

.Dis{
	font-weight: bold;
	color: #00ff00;
}

.thumbnail{
	background-color: #888888;
   /* shadows and rounded borders */
   -moz-border-radius: 2px;
   -webkit-border-radius: 2px;
   border-color: #888888;
   border-radius: 2px;
   -moz-box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
   -webkit-box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
   box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
}

.caption,.pull-right,h4{
	color: #f0f0f0;
}

.carousel-inner .item img {
	margin: 0 auto;
}

/*
 * Modal
 */
.modal-content{
	background-color: #888888;
	text-align: center;
}

.modal-header{
	border-bottom: 0px solid #888888;
}

.modal-footer{
	border-top: 0px solid #888888;
	text-align: center;
}