html {
  color-scheme: light dark;
}

body {
  font-family: Tahoma, Verdana, Arial, sans-serif;
}

.back_button {
  display: block;
	padding: 0.5em;
}

@media print {
  .back_button {
    display: none;
  }
}

.section {
  display: flex;
  flex-direction: row;
}

.section__column {
  flex-direction: column;
  margin: 5px;
}

.section__content {
  margin-right: auto;
}

.sidebar {
  width: 10%;
  height: auto;
}

.sidebar--red {
  background-color: hsl(0, 85%, 59%);
}

.sidebar--lavender {
  background-color: lavender;
}

.sidebar--blue {
  background-color: hsl(233, 70%, 70%)
}

.sidebar--green {
  background-color: hsl(124, 70%, 60%);
}

.section__title {
  display: block;
  font-size: x-large;
}

.frontmatter {
	display: grid;
	grid-template-areas:
		"headshot heading"
		"headshot description";
	gap: 1em;
}

@media (max-width: 450px) {
	.frontmatter {
		grid-template-areas:
			"heading"
			"headshot"
			"description";
	}
}

.frontmatter__heading {
	grid-area: heading;
}

@supports not (display: grid) {
	padding-bottom: 1em;
}

.frontmatter__name {
  display: block;
  font-size: xxx-large;
  font-weight: bold;
}

@media (max-width: 450px) {
	.frontmatter__name {
		font-size: xx-large;
	}
}

.frontmatter__headshot {
	grid-area: headshot;
}

.frontmatter__description {
	grid-area: description;
}

.project {
  display: table;
  flex-direction: row;
	break-inside: avoid;
}

.project__image-holder {
  display: table-cell;
  vertical-align: middle;
}

.project__image {
	display: block;
  width: 100px;
}

.project__card {
  display: table-cell;
  padding: 5px;
  vertical-align: middle;
}

.project__title {
  display: block;
  text-decoration: underline;
  font-size: large;
}

.project__authors {
  display: block;
}

.project__date {
	display: inline-block;
}

.project__date::after {
	content: "\25CF";
	display: inline-block;
	padding: 0 0.5ex;
}

.project__location {
  display: inline-block;
  font-style: italic;
}

.project__description {
	display: block;
}

@media (max-width: 450px) {
	.project {
		flex-direction: column;
		padding-bottom: 1em;
	}

	.project__image-holder {
		display: table-row;
	}

	.project__image {
		margin: 0 auto;
		width: 75%;
	}

	.project__card {
		display: table-row;
	}

	.project__description {
		padding-top: 0.5em;
	}
}
