﻿@charset "UTF-8";

:root {
	/*============================================*/
	/* Colors */
	--accent-blue: #185f9a;
	--accent-blue-rgb: 24, 95, 154;
	--cyan: #009FDF;
	--cyan-rgb: 0, 159, 223;
	--dark-gray: #414042;
	--dark-gray-rgb: 65, 64, 66;
	--emergency-red: #DF1E43;
	--emergency-red-rgba: 223, 30, 67;
	--green: #62BB46;
	--green-rgb: 98, 187, 70;
	--light-blue: #e9eaed; /* Based on UVA Blue at 10% opacity */
	--light-blue-rgb: 233, 234, 237;
	--light-gray: #F1F1EF;
	--light-gray-rgb: 241, 241, 239;
	--magenta: #EF3F6B;
	--magenta-rgb: 239, 63, 107;
	--medium-blue: #175A94;
	--medium-blue-rgb: 23, 90, 148;
	--medium-gray: #DADADA;
	--medium-gray-rgb: 218, 218, 218;
	--secondary-web-blue: #141E3C;
	--secondary-web-blue-rgb: 20, 30, 60;
	--secondary-web-orange: #EB5F0C;
	--secondary-web-orange-rgb: 235, 95, 12;
	--teal: #25CAD3;
	--teal-rgb: 37, 202, 211;
	--text-gray: #666666;
	--text-gray-rgb: 102, 102, 102;
	--uva-blue: #232D4B;
	--uva-blue-rgb: 35, 45, 75;
	--uva-orange: #E57200;
	--uva-orange-rgb: 229, 114, 0;
	--yellow: #FDDA24;
	--yellow-rgb: 253, 218, 36;
	--accessible-orange: var(--secondary-web-orange);
	/*============================================*/
	/* Fonts */
	--archer: 'Archer A', 'Archer B', 'Archer', Georgia, 'Times New Roman', Times, serif;
	--chronicle-display: 'Chronicle Display A', 'Chronicle Display B', 'Chronicle Display', Georgia, 'Times New Roman', Times, serif;
	--chronicle-text: 'Chronicle Text G1 A', 'Chronicle Text G1 B', 'Chronicle Text G1', Georgia, 'Times New Roman', Times, serif;
	--ringside-compressed: 'Ringside Compressed A', 'Ringside Compressed B', 'Ringside Compressed', Arial, Helvetica, sans-serif;
	--ringside-narrow: 'Ringside Narrow A', 'Ringside Narrow B', 'Ringside Narrow', Arial, Helvetica, sans-serif;
	--ringside-regular: 'Ringside Regular A', 'Ringside Regular B', 'Ringside Regular', Arial, Helvetica, sans-serif;
	--sans-serif: var(--ringside-regular);
	--sans-serif-display: var(--ringside-regular);
	--sans-serif-text: var(--ringside-regular);
	--serif: var(--archer);
	--serif-display: var(--archer);
	--serif-text: var(--chronicle-text);
	/*============================================*/
	/* Font usage */
	--font-body-headings: var(--ringside-compressed);
	--font-body-text: var(--chronicle-text);
	--font-buttons: var(--ringside-regular);
	--font-caption: var(--ringside-regular);
	--font-card-headings: var(--archer);
	--font-card-text: var(--ringside-narrow);
	--font-credit: var(--ringside-regular);
	--font-headings: var(--archer);
	/*================*/
	/* Bootstrap Overrides */
	--bs-body-line-height: 1.3;
	--bs-font-monospace: 'Courier New', Courier, Consolas, monospace;
	--bs-font-sans-serif: var(--sans-serif-text); /* --bs-body-font-family uses --bs-font-sans-serif as its default value */
	--bs-link-color: var(--uva-blue);
	--bs-link-color-rgb: var(--uva-blue-rgb);
	--bs-link-hover-color: var(--medium-blue);
	--bs-link-hover-color-rgb: var(--medium-blue-rgb);
	--bs-primary: var(--uva-blue);
	--bs-primary-rgb: var(--uva-blue-rgb);
	/*================*/
	/* Common Design Elements */
	--dots-color: var(--uva-orange);
	--dots-style: dotted;
	--dots-width: 0.5rem;
	--dotted-line: var(--dots-style) var(--dots-width) var(--dots-color);
	--blue-dots: var(--dots-style) var(--dots-width) var(--uva-blue);
	--orange-dots: var(--dots-style) var(--dots-width) var(--accessible-orange);
}

::selection {
	background: var(--uva-blue);
	color: white;
	text-shadow: none;
}

/* ======================================================================== */
/* Tag Selectors															*/
/* ======================================================================== */

a {
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.15rem;
}
	a:hover, a:focus {
		text-decoration: none;
	}

abbr[title] {
	text-decoration: none;
}

body {
	background-color: var(--uva-blue);
}

	body.has-body-content main .container {
		max-width: 1100px;
	}

em > cite,
.fst-italic > cite {
	font-style: normal;
}

figure a {
	color: inherit;
}

figcaption,
.caption {
	color: var(--bs-secondary-color);
	font-family: var(--font-caption);
	line-height: 1.3rem;
	padding: 1rem 0;
}

footer {
	--bs-nav-link-color: var(--light-gray);
	--bs-nav-link-hover-color: var(--light-gray);
	color: var(--light-gray);
}

	footer a {
		color: inherit;
	}

		footer a:focus, footer a:hover {
			color: white;
			text-decoration: none;
		}

	footer .nav-link {
		color: inherit;
		text-decoration: none;
	}

		footer .nav-link:focus, footer .nav-link:hover {
			color: white;
			text-decoration: underline;
		}

			footer .nav-link:focus .bi,
			footer .nav-link:hover .bi {
				color: var(--secondary-web-orange);
			}

h1, h2, h3, h4, h5, h6 {
	--bs-body-font-family: var(--archer);
	font-family: var(--bs-body-font-family);
}

hr {
	border-color: var(--medium-gray);
	clear: both;
	opacity: 1;
}

	hr.dots {
		border-top-style: var(--dots-style);
		border-top-width: var(--dots-width);
		margin: 2rem 0 0 0;
		padding: 2rem 0 0 0;
	}

	hr.orange {
		border-top-color: var(--dots-color);
	}

	hr.blue {
		border-top-color: var(--uva-blue);
	}

	hr.light-blue {
		border-top-color: var(--light-blue);
	}

	hr.medium-blue {
		border-top-color: var(--medium-blue);
	}

main {
	background-color: white;
}

p:last-child,
li:last-child,
ul:last-child,
dl:last-child,
aside > *:last-child {
	margin-bottom: 0;
}

/* ======================================================================== */
/* Class Selectors															*/
/* ======================================================================== */

.archive-issue {
	font-family: var(--font-headings);
	font-weight: bold;
	position: relative;
	text-align: center;
}

	.archive-issue:hover img {
		opacity: 0.7;
		-moz-transform: scale(1.1);
		-webkit-transform: scale(1.1);
		transform: scale(1.1);
	}

	.archive-issue a {
		color: var(--secondary-web-orange);
		text-decoration: none;
	}

		.archive-issue a:hover {
			text-decoration: underline;
			text-decoration-thickness: 1px;
		}

	.archive-issue .img-container {
		position: relative;
		overflow: hidden;
	}

		.archive-issue .img-container img {
			border-radius: 0;
			backface-visibility: hidden;
			transition: opacity 300ms ease-in-out, transform 300ms ease-in-out;
		}

.article-card {
	background-color: transparent;
	border: none;
	border-radius: 0;
	margin-bottom: 1rem;
	height: 100%;
}

	.article-card:hover img {
		opacity: 0.7;
		transform: scale(1.1);
	}

	.article-card .card-body {
		padding-left: 0;
		padding-right: 0;
	}

	.article-card .card-img-container {
		position: relative;
		overflow: hidden;
	}

		.article-card .card-img-container img {
			border-radius: 0;
			backface-visibility: hidden;
			transition: opacity 300ms ease-in-out, transform 300ms ease-in-out;
		}

	.article-card .card-title {
		font-weight: bold;
	}

		.article-card .card-title a {
			text-decoration: none;
		}

			.article-card .card-title a:hover {
				text-decoration: underline;
				text-decoration-thickness: 1px;
			}

.article-card--horizontal {
	border-bottom: solid 1px var(--medium-gray);
	height: auto;
	padding-bottom: 1rem;
}

	.article-card--horizontal:last-child {
		border-bottom: none;
		margin-bottom: 0;
		padding-bottom: 0;
	}

	.article-card--horizontal .card-body {
		padding-top: 0;
	}

.article-header {
	font-family: var(--font-body-headings);
	margin-bottom: 2rem;
	text-align: center;
}

	.article-header h1 {
		font-weight: bold;
		margin-bottom: 0.5em;
	}

	.article-header .subtitle {
		color: var(--bs-secondary-color);
		margin: 0 auto;
		margin-bottom: 0.5em;
	}

	.article-header:not(.media-page-header) .subtitle {
		max-width: 800px;
	}

.article-image {
	margin: 1rem auto;
	width: 100%;
}
	.article-image:first-child {
		margin-top: 0;
	}
	.article-image:last-child {
		margin-bottom: 0;
	}

	.article-image:has( + .article-quote) figcaption {
		padding-bottom: 0;
	}

	hr.dots + .article-image {
		margin-top: 0;
	}

.article-links {
	font-family: var(--font-caption);
	margin-top: 2rem;
}

	.article-links ul {
		list-style-type: square;
	}

.article-pull-quote {
	font-family: var(--font-caption);
	width: 80%;
}

.article-quote {
	margin: 2rem;
}
	.article-quote.pull-left,
	.article-quote.pull-right {
		margin: 0 1rem;
	}
		.article-quote.pull-left .blockquote,
		.article-quote.pull-right .blockquote {
			color: var(--secondary-web-orange);
			font-size: max(14pt, 1rem) !important; /* To meet accessibility standards, this is necessary along with font-weight: bold; to use orange text */
			font-weight: bold;
			line-height: calc(var(--bs-body-line-height) * 0.9);
		}

.article-sidebar { /* Generic styling for all article sidebars */
	border-top: var(--blue-dots);
	border-bottom: var(--blue-dots);
	clear: both;
	font-family: var(--font-caption);
	font-size: calc(var(--bs-body-font-size) * 0.9);
	line-height: calc(var(--bs-body-line-height) * 0.9);
	margin: 1.5rem auto;
	padding: 1.5rem 0;
}

	.article-sidebar.pull-left,
	.article-sidebar.pull-right {
		background-color: var(--light-blue);
		border-top: none;
		border-bottom: none;
		margin: 0;
		margin-right: 1rem;
		padding: 1rem;
	}

	.article-sidebar > .stats {
		border: none;
		margin: 0 auto;
		padding: 1rem 0;
	}

.article-video {
	margin: 0 auto 1rem;
	width: 100%;
}

.article .author-bio {
	border-left: solid 5px var(--uva-blue);
	font-style: italic;
	margin-top: 2rem;
	padding-left: 0.5rem;
}

	.article .author-bio cite, .article .author-bio em, .article .author-bio i {
		font-style: normal;
	}

.blockquote,
.blockquote-footer {
	font-family: var(--sans-serif-text);
}
.blockquote-footer {
	color: var(--bs-secondary-color);
	margin-left: 1em;
	text-indent: -1em;
}
	.blockquote-footer::before {
		content: '—'; /* 2014 = em dash */
	}
	.blockquote-footer:last-child {
		margin-bottom: 0;
		padding-bottom: 0;
	}
	.blockquote + .blockquote-footer {
		margin-top: -1.5rem;
	}

.body-content {
	--bs-body-font-family: var(--serif-text);
	--bs-body-font-size: 1.2rem;
	--bs-body-line-height: 1.5;
	font-family: var(--bs-body-font-family);
	font-size: var(--bs-body-font-size);
	line-height: var(--bs-body-line-height);
}

	.body-content .lead,
	.body-content .intro {
		font-size: calc(var(--bs-body-font-size) * 1.25);
	}

	.body-content > *:first-child {
		margin-top: 0 !important;
	}

	.body-content h2, .body-content h3, .body-content h4, .body-content h5, .body-content h6,
	.body-content .h2, .body-content .h3, .body-content .h4, .body-content .h5, .body-content .h6 {
		font-family: var(--font-body-headings);
		font-weight: bold;
	}

.btn {
	font-family: var(--font-buttons);
}

.btn-primary {
	--bs-btn-bg: var(--secondary-web-orange);
	--bs-btn-border-color: var(--bs-btn-bg);
	--bs-btn-disabled-bg: var(--bs-btn-bg);
	--bs-btn-disabled-border-color: var(--bs-btn-bg);
	--bs-btn-hover-bg: white;
	--bs-btn-hover-color: var(--secondary-web-orange);
	--bs-btn-hover-border-color: var(--secondary-web-orange);
	--bs-btn-active-bg: white;
	--bs-btn-active-color: var(--secondary-web-orange);
	--bs-btn-active-border-color: var(--secondary-web-orange);
	font-size: max(14pt, 1rem); /* Ensures that we are always meeting the 14pt/bold minimum for color contrast */
	font-weight: bold;
}

.btn-yellow {
	--bs-btn-bg: var(--yellow);
	--bs-btn-border-color: var(--bs-btn-bg);
	--bs-btn-disabled-bg: var(--bs-btn-bg);
	--bs-btn-disabled-border-color: var(--bs-btn-bg);
	--bs-btn-hover-bg: var(--dark-gray);
	--bs-btn-hover-color: var(--yellow);
	--bs-btn-hover-border-color: var(--yellow);
	--bs-btn-active-bg: var(--dark-gray);
	--bs-btn-active-color: var(--yellow);
	--bs-btn-active-border-color: var(--yellow);
}

.card-body {
	color: var(--text-gray);
	font-family: var(--font-card-text);
}

.card-title {
	color: var(--uva-blue);
	font-family: var(--font-card-headings);
}

.carousel.captions-below .carousel-caption {
	background-color: transparent;
	position: relative;
	left: 0;
	right: 0;
	bottom: 0;
	margin-bottom: 1rem;
}

.carousel.captions-below .carousel-indicators {
	bottom: 0.5rem;
	margin-bottom: 0;
}

.carousel-caption {
	background-color: rgba(255, 255, 255, 0.9);
	color: var(--text-gray);
	font-family: var(--font-card-text);
	font-size: calc(var(--bs-body-font-size) * 1.2);
	padding: 1rem;
}

	.carousel-caption a {
		text-decoration: none;
	}

		.carousel-caption a:hover {
			text-decoration: underline;
			text-decoration-thickness: 1px;
		}

.carousel-caption-title {
	font-family: var(--font-card-headings);
	font-weight: bold;
}

.carousel-control-pause {
	aspect-ratio:		1;
	background-color:	rgba(255, 255, 255, 0.5);
	border:				0;
	border-radius:		50%;
	font-size:			1.5rem;
	position:			absolute;
	right:				0.2rem;
	top:				0.2rem;
	z-index:			1000;
}
	.carousel-control-pause:active,
	.carousel-control-pause:hover {
		background-color:	white;
		color:				var(--medium-blue);
	}

.carousel-indicators [data-bs-target] {
	background-color: var(--uva-blue);
	opacity: 1;
}

.carousel-indicators .active {
	background-color: var(--secondary-web-orange);
}

@media only screen and (max-width: 767px) {
	.carousel-caption {
		left: auto;
		position: relative;
		right: auto;
	}

	.carousel-caption-title {
		font-size: 1.8rem;
	}
}

.credit {
	color: var(--text-gray);
	display: block;
	font-family: var(--font-credit);
	font-size: calc(var(--bs-body-font-size) * 0.7);
	font-weight: 200;
	text-transform: uppercase;
}

/* When a credit follows an image-caption element, add space */
.image-caption + .credit {
	margin-top: 0.5rem;
}

.dl-inline dt,
.dl-inline dd {
	display: inline;
}
	.dl-inline dd:not(:last-child)::after {
		content: '';
		display: block;
		margin-bottom: 0.5rem;
	}

.dropcap {
	margin-top: 2.5rem;
}

	.dropcap:first-letter,
	.dropcap-container > p:not(.nodrop,.no-drop):first-of-type:first-letter,
	.article .body-content > p:not(.nodrop,.no-drop):first-of-type:first-letter {
		float: left;
		font-family: var(--font-headings);
		font-size: 90px;
		font-weight: bold;
		line-height: 60px;
		padding-right: 4px;
		padding-top: 4px;
		text-size-adjust: none;
	}

@supports (initial-letter: 3) or (-webkit-initial-letter: 3) {
	.dropcap:first-letter,
	.dropcap-container > p:not(.nodrop,.no-drop):first-of-type:first-letter,
	.article .body-content > p:not(.nodrop,.no-drop):first-of-type:first-letter {
		font-size: inherit;
		float: none;
		line-height: inherit;
		padding-top: 0;
		initial-letter: 3;
		-webkit-initial-letter: 3;
	}
}

.dropdown-menu {
	--bs-dropdown-link-active-bg: var(--medium-blue);
	--bs-dropdown-link-hover-bg: var(--medium-gray);
	--bs-dropdown-link-hover-color: black;
	font-family: var(--font-buttons);
}

.form-control {
	font-family: var(--font-buttons);
}

.full-bleed {
	position: relative;
}

	.full-bleed img {
		width: 100vw !important;
		position: relative;
		left: 50%;
		right: 50%;
		margin-left: -50vw;
		margin-right: -50vw;
		max-width: 100vw;
	}

.has-full-bleed {
	overflow-x: hidden;
}

.header-meta .byline + .header-date::before {
	content: '|';
	display: inline-block;
	margin-left: 0.3rem;
	margin-right: 0.3rem;
}

.header-meta .byline-contributors {
	font-weight: bold;
	text-transform: uppercase;
}

.heading-bar {
	background-color: var(--uva-blue);
	color: var(--light-gray);
	margin-bottom: 1.5rem;
	padding: 0.25rem 1rem;
	text-transform: uppercase;
}

	.heading-bar h1, .heading-bar h2, .heading-bar h3, .heading-bar h4, .heading-bar h5, .heading-bar h6,
	.heading-bar h1, .heading-bar .h2, .heading-bar .h3, .heading-bar .h4, .heading-bar .h5, .heading-bar .h6 {
		font-weight: bold;
	}

.highlights {
	background-color: var(--light-gray);
	box-shadow: inset 0 8px 6px -6px rgba(0,0,0,0.3);
	padding: 1rem 0;
}

	.highlights h2 {
		border-bottom: solid 2px var(--text-gray);
		font-size: 1.7rem;
		font-weight: bold;
		margin-bottom: 1rem;
		padding-bottom: 0.2rem;
		text-transform: uppercase;
	}

.in-memoriam .pagination-container {
	padding-top: 1rem;
	margin-top: 1rem;
	border-top: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color);
}

.interstitial-link {
	--bs-link-color: var(--text-gray);
	--bs-link-color-rgb: var(--text-gray-rgb);
	--bs-link-hover-color: black;
	--bs-link-hover-color-rgb: 0, 0, 0;
	border-left: solid 5px var(--medium-gray);
	color: var(--text-gray);
	font-family: var(--sans-serif-text);
	margin: 1.5rem auto;
	padding-left: 1rem;
}

.intro-media {
	--bs-body-font-size: 1.2rem;
	margin-bottom: 2rem;
}

.jump-nav {
	border-top: var(--orange-dots);
	border-bottom: var(--orange-dots);
	font-family: var(--ringside-narrow);
	margin: 2rem 0;
	padding: 1rem 0;
	text-align: center;
}

.jump-nav ul {
	list-style-type: none;
	display: flex;
	flex-wrap: wrap;
	margin-left: 0;
	padding-left: 0;
}

.jump-nav ul > li {
	--margin: 0.3rem;
	margin: var(--margin);
	width: calc(50% - (2 * var(--margin)));
}
.jump-nav ul > li > a {
	align-items: center;
	background-color: var(--uva-blue);
	color: white;
	display: flex;
	justify-content: center;
	height: 100%;
	line-height: 1.3;
	padding: 0.25rem 1rem;
	text-decoration: none;
}
	.jump-nav ul > li > a:hover
	,.jump-nav ul > li > a:focus {
		background-color: var(--medium-blue);
	}

.list-group {
	--bs-list-group-action-hover-bg: var(--medium-gray);
}

.list-with-icons {
	margin-left: 24px;
	text-indent: -12px;
}

.media-page main {
	--bs-body-font-size: 1.2rem;
	font-size: var(--bs-body-font-size);
}

.media-page figure {
	margin-bottom: 4rem;
}

	.media-page figure img {
		display: block;
		margin-left: auto;
		margin-right: auto;
	}

.media-page figcaption {
	margin: 0 auto;
	max-width: 800px;
	padding: 1rem;
}

.media-page-header {
	margin-bottom: 1rem;
	text-align: left;
}

	.media-page-header h1 {
		margin-bottom: 0em;
	}

	.media-page-header .meta-information {
		margin-bottom: 1rem;
	}

	.media-page-header .subtitle {
		color: var(--light-gray);
		max-width: auto;
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 0.5em;
	}

.meta-information {
	font-family: var(--font-caption);
}

.more_from_virginia_magazine ul {
	padding-left: 0;
	list-style: none;
}

.more_from_virginia_magazine li {
	margin-bottom: 1rem;
}

	.more_from_virginia_magazine li:last-of-type {
		margin-bottom: 0;
	}

	.more_from_virginia_magazine li a {
		font-weight: bold;
	}

.nav {
	--bs-nav-link-color: var(--secondary-web-orange);
	--bs-nav-link-hover-color: var(--uva-blue);
}

.navbar {
	--bs-navbar-brand-color:		var(--secondary-web-orange);
	--bs-navbar-brand-font-size:	2.3rem;
	--bs-navbar-brand-hover-color:	var(--uva-blue);
	--bs-navbar-brand-padding-y:	0;
	color:			var(--text-gray);
	font-family:	var(--chronicle-text);
	text-transform:	uppercase;
}

	.navbar .dropdown-menu {
		font-family: var(--ringside-narrow);
		text-transform: initial;
	}

	.navbar .nav-link {
		--bs-nav-link-hover-color: var(--uva-blue);
	}

		.navbar .nav-link:hover {
			text-decoration: underline var(--uva-orange);
			text-underline-offset: 0.25rem;
		}

.navbar-brand {
	font-family:	var(--chronicle-display);
	font-weight:	bold;
	letter-spacing:	-3px;
	line-height:	1;
}

.navbar:not([data-bs-theme="dark"]) form[role=search] .btn-outline-secondary {
	--bs-btn-color: var(--bs-dark);
}

.orange-text, .orange-txt, .text-orange {
	color: var(--secondary-web-orange);
	font-size: max(18pt, 1rem); /* Ensures that it's always large enough */
}

.page-header {
	background-color: var(--light-gray);
	border-bottom: solid 1px var(--medium-gray);
}

.page-title {
	font-weight: bold;
}

.pagination-container {
	font-family: var(--font-buttons);
}

.pagination {
	--bs-pagination-bg: var(--uva-blue);
	--bs-pagination-border-color: var(--light-blue);
	--bs-pagination-color: white;
	--bs-pagination-hover-bg: white;
	--bs-pagination-hover-color: var(--uva-blue);
	--bs-pagination-focus-color: var(--uva-blue);
	--bs-pagination-active-bg: var(--light-blue);
	--bs-pagination-active-border-color: var(--light-blue);
	--bs-pagination-active-color: var(--uva-blue);
}

.photo-gallery-listings .card {
	border-bottom: solid 1px var(--light-gray);
	margin-bottom: 2rem;
	padding-bottom: 1rem;
}

.photo-gallery-listings .card-title {
	font-size: 2rem;
}

@media only screen and (min-width: 767px) {

	/* ==================================== */
	/* Default pull behaviors				*/
	/* ==================================== */
	.pull-left {
		clear: left;
		float: left;
		margin-left: 0 !important;
		margin-right: 1rem !important;
		width: 50%;
	}

	.pull-right {
		clear: right;
		float: right;
		margin-left: 1rem !important;
		margin-right: 0 !important;
		width: 50%;
	}

	/* ==================================== */
	/* Figure-specific pull behaviors		*/
	/* ==================================== */
	.article-image.pull-left {
		width: 68%;
	}

	.article-image.pull-right,
	.article-quote.pull-right {
		width: 44%;
	}
}


@media only screen and (min-width: 1200px) {
	.pull-left {
		margin-left: -8.5% !important;
	}
}

.quote {
	position: relative;
}

	.quote:not(.pull-box) a {
		text-decoration: none;
	}

		.quote:not(.pull-box) a:hover {
			text-decoration: underline;
			text-decoration-thickness: 2px;
		}


.related-content {
	font-family: var(--font-card-text);
	padding: 1rem 0;
}

	.related-content h2, .related-content h3, .related-content h4, .related-content h5, .related-content h6,
	.related-content .h2, .related-content .h3, .related-content .h4, .related-content .h5, .related-content .h6 {
		font-family: var(--font-body-headings);
		font-weight: bold;
	}

	.related-content a:hover {
		color: inherit;
		text-decoration: none;
	}

.sidebar-meta {
	--bs-body-font-size: 1.2rem;
	--icon-size: 1rem;
	--icon-gap: 0.25rem;
	font-size: var(--bs-body-font-size);
}
	.sidebar-meta dl dd {
		display: block;
		position: relative;
		margin-left: calc(var(--icon-size) + var(--icon-gap));
	}
		.sidebar-meta dl dd .bi {
			font-size: var(--icon-size);
			margin-right: var(--icon-gap);
			position: absolute;
			left: calc((var(--icon-size) + var(--icon-gap)) * -1);
			top: 0;
		}

.sidebar-share a.channel {
	color: var(--secondary-web-orange);
	display: inline-flex;
	font-size: 2rem;
	line-height: 1;
	margin: 0.5rem;
	padding: 0;
	vertical-align: middle;
}

	.sidebar-share a.channel:first-of-type {
		margin-left: 0;
	}

	.sidebar-share a.channel:last-of-type {
		margin-right: 0;
	}

	.sidebar-share a.channel:hover,
	.sidebar-share a.channel:focus,
	.sidebar-share a.channel:active {
		color: var(--uva-blue);
		text-decoration: none;
	}

.sidebar-widget {
	font-family: var(--font-card-text);
}

.skippy {
	background-color: var(--uva-blue);
	color: var(--light-gray);
	font-family: var(--sans-serif-display);
}

	.skippy a {
		background-color: var(--uva-blue);
		color: var(--light-gray);
	}

.speech-bubble, .next-issue-question {
	background-color: var(--secondary-web-orange);
	border-radius: 2rem;
	clear: both;
	color: white !important;
	font-family: var(--sans-serif);
	margin: 2rem auto;
	padding: 1rem 2rem;
	position: relative;
}

	.speech-bubble:before, .next-issue-question:before {
		content: "";
		width: 0px;
		height: 0px;
		position: absolute;
		border-left: 24px solid var(--secondary-web-orange);
		border-right: 12px solid transparent;
		border-top: 12px solid var(--secondary-web-orange);
		border-bottom: 20px solid transparent;
		left: 2em;
		bottom: -24px;
	}

	.speech-bubble h2, .next-issue-question h2 {
		text-transform: uppercase;
	}

	.speech-bubble a:not(.btn), .next-issue-question a:not(.btn) {
		color: inherit;
	}

		.speech-bubble a:not(.btn):hover, .next-issue-question a:not(.btn):hover {
			color: inherit;
		}

	.speech-bubble.blue {
		background-color: var(--uva-blue);
	}

		.speech-bubble.blue:before {
			border-left-color: var(--uva-blue);
			border-top-color: var(--uva-blue);
		}

.stats {
	border: var(--orange-dots);
	border-left: none;
	border-right: none;
	font-family: var(--ringside-compressed);
	margin: 2rem 0;
	padding: 2rem 0;
}

	.stats a {
		color: inherit;
	}

	.stats dd {
		color: var(--medium-blue);
		font-size: calc(var(--bs-body-font-size) * 1.4);
		line-height: 1.2;
		text-align: center;
	}

	.stats dt {
		color: var(--accessible-orange);
		font-size: calc(var(--bs-body-font-size) * 3);
		font-weight: bold;
		line-height: 1;
		text-align: center;
	}

	.stats .inline-stat {
		text-align: center;
	}

		.stats .inline-stat > * {
			display: inline;
		}

	.stats .stat {
		margin-bottom: 2rem;
	}

		.stats .stat:last-child {
			margin-bottom: 0;
		}

/* ======================================================================== */
/* Utilities																*/
/* ======================================================================== */
.font-archer {
	font-family: var(--archer);
}
.font-ringside-compressed {
	font-family: var(--ringside-compressed);
}
.font-ringside-narrow {
	font-family: var(--ringside-narrow);
}
.font-ringside-regular {
	font-family: var(--ringside-regular);
}
.lh-sm {
	line-height: calc(var(--bs-body-line-height) * 0.85) !important;
}
.text-medium-blue {
	color: var(--medium-blue);
}
.text-uva-blue {
	color: var(--uva-blue);
}

.chronicle {
	font-family: var(--chronicle-text);
}
.serif {
	font-family: var(--serif);
}
.serif-display {
	font-family: var(--serif-display);
}
.serif-text {
	font-family: var(--serif-text);
}
.sans-serif {
	font-family: var(--sans-serif);
}
.sans-serif-display {
	font-family: var(--sans-serif-display);
}
.sans-serif-text {
	font-family: var(--sans-serif-text);
}
.verlag {
	font-family: var(--sans-serif);
}


/************************************************************************/
/*	Legacy column support for articles from before Bootstrap. These styles
	were adapted from the Skeleton framework.
/************************************************************************/

.body-content .columns {
	display: inline-block;
	float: left;
	margin-left: 2%;
	position: relative;
}
	.body-content .columns:first-child, .body-content .columns.alpha {
		clear: left;
		margin-left: 0;
	}
	.body-content .columns:last-child, .body-content .columns.omega {
		float: right;
		margin-right: 0;
	}
	.body-content .columns.centered {
		margin: 0 auto;
		float: none;
		display: block;
	}

.body-content .one.column		{ width: 6.5%; }
.body-content .two.columns		{ width: 15%; }
.body-content .three.columns	{ width: 23.5%; }
.body-content .four.columns		{ width: 32%; }
.body-content .five.columns		{ width: 40.5%; }
.body-content .six.columns		{ width: 49%; }
.body-content .seven.columns	{ width: 57.5%; }
.body-content .eight.columns	{ width: 66%; }
.body-content .nine.columns		{ width: 74.5%; }
.body-content .ten.columns		{ width: 83%; }
.body-content .eleven.columns	{ width: 91.5%; }
.body-content .twelve.columns	{ width: 100%; }

.body-content .offset-by-one    { margin-left: 8.5%; }
.body-content .offset-by-two    { margin-left: 19%; }
.body-content .offset-by-three  { margin-left: 27.5%; }
.body-content .offset-by-four   { margin-left: 36%; }
.body-content .offset-by-five   { margin-left: 44.5%; }
.body-content .offset-by-six    { margin-left: 53%; }
.body-content .offset-by-seven  { margin-left: 61.5%; }
.body-content .offset-by-eight  { margin-left: 70%; }
.body-content .offset-by-nine   { margin-left: 78.5%; }
.body-content .offset-by-ten    { margin-left: 87%; }
.body-content .offset-by-eleven { margin-left: 95.5%; }

@media only screen and (max-width: 767px) {
	.body-content .one.column,
	.body-content .one.columns,
	.body-content .two.columns,
	.body-content .three.columns,
	.body-content .four.columns,
	.body-content .five.columns,
	.body-content .six.columns,
	.body-content .seven.columns,
	.body-content .eight.columns,
	.body-content .nine.columns,
	.body-content .ten.columns,
	.body-content .eleven.columns,
	.body-content .twelve.columns,
	.body-content .thirteen.columns,
	.body-content .fourteen.columns,
	.body-content .fifteen.columns,
	.body-content .sixteen.columns,
	.body-content .one-third.column,
	.body-content .two-thirds.column {
		width: 100% !important;
	}
}