.content-wrapper{
  padding: 1.5vw;
}
/**
* @author  Xu Ding
* @website https://www.StarTutorial.com
* @revised by Alessandro Marinuzzi
* @website https://www.alecos.it/
* @revised 10.17.2017
**/
/*************************** Calendar Top Navigation **************************/
#calendar {
  /*margin: 0px auto;
  padding: 0px;
  width: 602px;*/
  background-color: white;
}
#calendar .calendar_box {
  position: relative;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 40px;
  background-color: #4e93d5;
}
#calendar .calendar_header {
  line-height: 40px;  
  display: flex;
  justify-content: space-evenly;
  /*vertical-align: middle;
  position: absolute;
  left: 11px;
  top: 0px;
  width: 582px;*/
  height: 40px;
  text-align: center;
  /*border-top: solid 1px black;
  border-right: solid 1px black;
  border-left: solid 1px black;*/
}
#calendar .calendar_header .calendar_prev, #calendar .calendar_header .calendar_next {
  /*position: absolute;
  top: 0px;
  height: 17px;
  display: block;*/
  cursor: pointer;
  text-decoration: none;
  color: #FFF;
}
#calendar .calendar_header .calendar_title {
  color: #FFF;
  font-size: 18px;
}
#calendar .calendar_header .calendar_prev {
  /*left: 0px;*/
}
#calendar .calendar_header .calendar_next {
  /*right: 0px;*/
}
/*************************** Calendar Content Cells ***************************/
#calendar .calendar_content {
  /*border: 1px solid #4e93d5;*/
  border-top: none;
}
#calendar .calendar_label {
  float: left;
  margin: 0px;
  padding: 0px;
  background-color: #e9edeb;
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  width: 100%;
  /*border-right: solid 1px black;
  border-left: solid 1px black;*/
}
#calendar .calendar_label .calendar_names {
  /*margin: 0px;
  padding: 0px;
  margin-right: 5px;
  float: left;
  width: 80px;
  height: 40px;
  line-height: 40px;
  vertical-align: middle;
  text-align: center;
  color: #000;
  font-size: 15px;*/

}
#calendar .calendar_dates {
  /*float: left;
  margin: 0px;
  padding: 0px;
  margin-left: 5px;
  margin-bottom: 5px;*/
}

#calendar .calendar_week {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  width: 100%;
  border-bottom: solid 1px black;
  border-left: solid 1px black;
}

/** overall width = width+padding-right **/
#calendar .calendar_dates .calendar_names, #calendar .calendar_dates .calendar_days, #calendar .calendar_dates .calendar_today {
  margin: 0px;
  padding: 5px 5px 5px 5px;
  min-height: 120px;
  margin-right: 0px;
  margin-top: 0px;
  border-right: solid 1px black;
  
  /*margin-right: 5px;
  margin-top: 5px;
  line-height: 80px;
  vertical-align: middle;
  float: left;
  width: 80px;
  height: 80px;
  font-size: 25px;
  background-color: #DDD;
  color: #000;
  text-align: center;*/
}
#calendar .calendar_dates .calendar_today {
  color: #f68622;
}

#calendar .event{
	flex: 0 0 auto;
    font-size: 15px;
    border-radius: 4px;
    padding: 5px;
    margin-bottom: 5px;
    line-height: 14px;
    background: #e8ecea;
    border: 1px solid #4e93d5;
    color: #4e93d5;
    text-decoration: none;
}

#calendar .event-desc{
	color: #666;
	margin: 3px 0 7px 0;
	text-decoration: none;	
}

:focus {
  outline: none;
}
.calendar_clear {
  clear: both;
}

@media(max-width: 800px) {

	#calendar .calendar_label, #calendar #empty-day{
		display: none;
	}

	#calendar li {
		height: auto !important;
		border: 1px solid #ededed;
		width: 100%;
		padding: 10px;
		margin-bottom: -1px;
	}
  
  #calendar, #calendar .calendar_week {
    grid-template-columns: 1fr;
  }
  
  #calendar  .calendar_week {
    grid-column: 1 / 2;
  }

	#calendar .date {
		align-self: flex-start;
	}
}