#timeline {
	margin-top: 1rem;
}
#timeline .day {
}
#timeline .day > .weekday {
	margin: 0;
	font-size: 1.25rem; font-weight: 500; line-height: normal;
}
#timeline .day > .weekday .date {
	font-weight: 300; line-height: normal;
}
#timeline .items {
	display: block; position: relative;
	margin: 1rem 0 2rem 0;
}
#timeline .items::after {
	content: "";
	display: block; position: absolute;
	left: 0; top: 0; width: 1px; height: 100%;
	background: #999;
}
#timeline .time {
	display: block; position: relative;
	margin: 1rem 0 1.5rem 0;
}
#timeline .time > .label {
	display: block; position: relative;
	margin: 0 0 0 2rem; padding: 0 0.25rem;
	font-size: 1rem; font-weight: 500; line-height: 1;
}
#timeline .time > .label::after {
	content: "";
	display: block; position: absolute;
	left: -2rem; top: 0.5rem; width: 2rem; height: 1px;
	background: #999;
}
#timeline .time > .label .ref {
	margin-left: 0.25rem;
	font-weight: 300; color: #555;
}
#timeline .types {
	display: block;
	margin: 0 0 0 1rem;
}
#timeline .type {
	display: block;
	margin: 0.5rem 1rem; padding: 0 0 0 2rem;
}
@media (min-width: 768px) and (max-width: 1023px), (min-width: 1280px) {
	#timeline .types {
		display: flex;
		margin: 0 0 0 1rem;
	}
	#timeline .type {
		flex: 1 1 50%;
		margin: 0.5rem 1rem; padding: 0 0 0 2rem;
	}
	#timeline .type.session {
		flex-basis: 65%;
	}
}
/*
#timeline .type.session { background: #eee; }
#timeline .type.event { background: #eef; }
#timeline .type.exhibitor { background: #ffe; }
*/
#timeline .type > .label {
	font-size: 0.875rem; text-transform: uppercase;
}
#timeline .meeting {
	display: block;
	margin: 0.75rem 0 0.5rem 0;
	font-size: 0.9375rem; font-weight: 500;
}
#timeline .item {
	list-style: square;
	margin: 0.25rem 0 0 1rem;
}
#timeline .item:first-child {
	margin-top: 0;
}

