.rep {
	margin-top: 2rem;
	font-size: 1rem;
}
.rep:first-child {
	margin-top: 0;
}
.rep p {
	margin: 0.125rem 0;
	font-size: 1rem; line-height: normal;
}
.rep .name {
	padding: 0.375rem 0.5rem;
	background: #5f2693;
	color: #fff;
}
.rep .name.red { background: #922626; }
.rep .name.blue { background: #0055ab; }
.rep .name.purple { background: #5f2693; }
.rep .details {
	display: flex;
	flex: 1 1 auto; flex-wrap: wrap; flex-direction: row;
}
.rep .details > div {
	flex-basis: 100%;
}
.rep .details .info dl {
	display: flex;
	flex: 1 1 auto; flex-wrap: nowrap; flex-direction: row;
	margin: 0;
}
.rep .details .info dt {
	flex-basis: 30%;
	padding: 0.125rem 0;
}
.rep .details .info dd {
	flex-basis: 70%;
	padding: 0.125rem 0;
}
.rep .details .info .contact {
	margin: 0.5rem 0 0 0;
}
.rep .details .territory {
	font-size: 0.9375rem;
}
.rep .details .territory .label {
	margin-bottom: 0.25rem;
	font-size: 0.75rem;
}
@media (min-width: 768px) and (max-width: 1023px), (min-width: 1280px) {
	.rep .details > div {
		flex-basis: 50%;
	}
}
