div.post {
	border-bottom: 1px solid #ccc;
	padding: 1rem 0 2rem;
	margin-bottom: 1rem
}
.post .description img, .post .image img {
	max-width: 100%;
	height: auto;
	margin: .5rem 0 1rem 0;
}
.post .location {
	color: var(--secondary);
}
.post .preamble {
	font-size: 1.25rem;
	margin-bottom: .5em;
}
.post a img:hover {
	opacity: .75;
}

#calendar {
	position: relative;
	width: 100%;
	font-size: .6rem;
	border-collapse: separate;
    border-spacing: 1px;
}
#calendar a {
	display: inline-block;
	width: 100%;
	position: relative;
}
#calendar th a, #calendar th select {
	font-weight: normal;
	padding: .25rem;
	font-size: .7rem;
	margin-bottom: 1rem;
	border-radius: 4px;
}
#calendar th.month-year-dropdowns {
	width: 40.5%; /* 3 cols */
	text-align: center;
}
#calendar th, #calendar td {
	max-width: 0;
	overflow: hidden;
	white-space: nowrap;
	width: 13.5%;
}
#calendar th.wk, #calendar td.wk {
	width: 5.5%;
	vertical-align: top;
	text-align: center;
}
#calendar td a {
	height: 5rem;
	vertical-align: top;
	padding: 3px;
}
#calendar td a:hover {
	color: #333;
	text-decoration: none;
	background: rgba(255, 221, 153, .6);
}
#calendar .day-outside {
	background: transparent;
}
#calendar .day-inside {
	background: rgba(230, 230, 230, 1);
}
#calendar .day-selected {
	background: rgba(255, 221, 153, 1);
}
#calendar .num-events {
	position: absolute;
	top: 2px;
	left: 1rem;
	background-color: red;
	color: white;
	font-weight: bold;
	padding: 0 6px;
	border-radius: 5px;
}
.calendar-article {
	margin-left: 5.5%;
	overflow: hidden;
}
.calendar-article .location {
	font-weight: bold;
	color: #28a745;
}