/******************************************
		Layout -- Global elements
******************************************/
/* 
2022 palette
Dusty blue: #434F6A
Dusty orange: #F09054
Darker blue: #141E3C
Darker orange: #bc5e35
Beige: #F2E5DD
Main yellow: #FFCA03
Darker orange-ish yellow: #EE9E0E */
:root {
	font-size: 18px;
	--dusty-blue: #434f6a;
	--dusty-orange: #f09054;
	--blue-dark: #141e3c;
	--blue-uva: #232d4b;
	--orange-dark: #d16800;
	--orange-light: #ffad5c;
	--orange-light-secondary: #ffd3a9;
	--orange-uva: #e57200;
	--beige: #f2e5dd;
	--yellow: #ffca03;
	--yellow-dark: #ee9e0e;
	--duotone-base: #dadada;
	--duotone-bg-blend: multiply;
	--duotone-fg-blend: color;
}
html {
	font-size: 100%;
	background-color: #fff;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	color: #666;
	-webkit-font-smoothing: antialiased;
	scroll-behavior: smooth;
}
body {
	height: 100%;
	margin: 0;
	padding: 0;
	font-family: "franklin-gothic-urw", arial, sans-serif;
	color: #111111;
	font-weight: 500;
	position: relative;
	background: #fff;
	line-height: 1.2;
	background-size: 12px 12px;
}
body,
body * {
	box-sizing: border-box;
}
p {
	font-size: 1.125rem;
	max-width: 50rem;
	line-height: 1.4;
}
hr {
	border: 0;
	background-color: #f1f5f9;
	height: 2px;
	margin: 10px 0 0 0;
}
hr.serpentine {
	background-color: transparent;
	background-image: url("/2021/assets/images/graphics/SquiggleLink_AR21.svg");
	background-repeat: repeat-x;
	background-size: 235px 12px;
	color: transparent;
	height: 12px;
	display: block;
	margin: 4rem 0;
	text-decoration: none;
	z-index: 0;
}
blockquote,
q {
	quotes: none;
}
a,
a img {
	cursor: pointer;
	border: none;
}
a {
	color: var(--blue-dark);
	font-weight: bold;
}
.clear {
	clear: both;
}
a:focus,
button:focus {
	outline: 2px solid #25cad3;
	z-index: 1;
}
/* HTML5 display-role reset for older browsers */
address,
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
video {
	display: block;
}
header,
footer {
	padding: 0;
}
header .fm-logo {
	margin-right: 3rem;
}
header,
.boundaries,
footer {
	max-width: 77.777777rem;
}
header {
	margin-right: auto;
	margin-left: auto;
	position: relative;
}
.fm-logo {
	display: block;
	width: 17.777777rem;
}
.fm-logo img {
	max-width: 100%;
}
.slash-divider {
	display: inline-block;
	position: relative;
	height: 0;
	width: 54px;
}
.slash-divider:before {
	border-top: 1px solid #111111;
	content: "";
	height: 100%;
	position: absolute;
	top: -40px;
	left: -50%;
	right: 0;
	transform: rotate(-60deg);
	transform-origin: 100% 0;
}
.header-inner {
	display: flex;
	align-items: center;
	padding: 1rem;
	justify-content: space-between;
}
.header-logo-link {
	display: inherit;
	align-items: inherit;
}
.header-site-name a {
	letter-spacing: 0.1em;
	text-decoration: none;
}
header h1 {
	padding: 1.666666rem 0;
	background-color: white;
}
.nav-dropdown {
	background-color: #f1f1ef;
	display: flex;
	flex-direction: column;
	position: absolute;
	right: 1rem;
	z-index: 2;
}
.nav-dropdown ul {
	list-style: none;
	margin: 0;
	padding: 1rem 1.5rem;
}
.nav-dropdown ul li {
	display: block;
	margin: 0;
}
.nav-dropdown ul li + li {
	border-top: 1px solid #dadada;
}
.nav-dropdown ul li a {
	display: block;
	font-family: "franklin-gothic-urw", arial, sans-serif;
	letter-spacing: 0.1em;
	padding: 0.833333rem 0;
	text-decoration: none;
	text-transform: uppercase;
}
.nav-dropdown ul li a:focus {
	background-color: #ffffff;
}
.nav-dropdown[hidden] {
	display: none;
}
.nav-toggle {
	align-items: center;
	background-color: transparent;
	border: none;
	display: flex;
	flex-direction: row;
	font-family: "franklin-gothic-urw", arial, sans-serif;
	font-size: 1.111111rem;
	font-style: italic;
	font-weight: 500;
	cursor: pointer;
	margin: 0.5rem 0;
	min-height: 40px;
	position: relative;
}
.nav-toggle-chevron {
	display: inline-block;
	font-size: 0.6rem;
	font-style: normal;
	font-weight: 800;
	margin-left: 0.5rem;
}
.nav-container {
	margin-bottom: 3rem;
}
.home .nav-container {
	display: none;
}

/*************** Nav columns ******************/
.nav-columns {
	padding: 2rem 9%;
}
.nav-columns ul {
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	height: 10rem;
	list-style: none;
}
.nav-columns ul li a.current {
	font-weight: 500;
	outline: 1px solid var(--blue-dark);
	padding: 0 0.4rem;
}
.nav-columns a {
	color: var(--blue-dark);
	font-weight: 400;
	text-decoration: none;
}
.nav-columns h3 {
	font-family: "franklin-gothic-urw", arial, sans-serif;
	font-size: 1rem;
	font-weight: 500;
	letter-spacing: 0.08em;
	margin-right: 0.25rem;
	text-align: center;
	text-transform: uppercase;
}
/**************************
	   Typography
**************************/
h1 {
	color: #232d4b;
	font-size: 2.5rem;
	text-align: center;
	font-family: "franklin-gothic-urw", arial, sans-serif;
	font-weight: 600;
	margin-top: 1rem;
	margin-bottom: 1rem;
}
h2 {
	color: var(--blue-dark);
	font-size: 2rem;
	font-weight: 600;
	margin: 1rem 0;
	padding: 0;
	position: relative;
}

h3 {
	font-size: 1.8rem;
	margin: 20px 0;
	padding: 0;
	font-family: "franklin-gothic-urw-cond", "arial narrow", sans-serif;
}

h4 {
	font-size: 1.5rem;
	margin-bottom: 0;
}
p {
	margin: 0 0 0.833333rem 0;
}
ul {
	margin: 20px 0 20px 60px;
	padding: 0;
}
ul.noLeftMargin {
	margin: 20px 0 20px 20px;
	padding: 0;
}
li {
	line-height: 1.3;
	margin: 0 0 0.833333rem 0;
}
.italic {
	font-style: italic;
}
.bold {
	font-weight: 600;
}
.book {
	font-weight: 400;
}
.demi {
	font-weight: 700;
}
.spaced {
	letter-spacing: 0.2rem;
}
.uppercase {
	text-transform: uppercase;
}
.bodoni {
	font-family: "bodoni-urw", georgia, serif;
	font-weight: 900;
	font-style: italic;
}
.fg-comp {
	font-family: "franklin-gothic-urw-comp", arial, sans-serif;
}
.fg-ex-comp {
	font-family: "franklin-gothic-ext-comp-urw", "arial narrow", sans-serif;
}
.fg-cond {
	font-family: "franklin-gothic-urw-cond", "arial narrow", sans-serif;
}
.center {
	text-align: center;
}
.boundaries {
	margin-right: auto;
	margin-left: auto;
	max-width: 77.777777rem;
}
.gutter {
	margin: 0 auto;
	max-width: 77.777777rem;
	overflow: hidden;
}
main section {
	margin: 0 auto;
	max-width: 77.777777rem;
	overflow: hidden;
	position: relative;
}
.main-nav {
	max-width: 77.777777rem;
}
.sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	border: 0;
}
.copy-blue-primary {
	color: var(--blue-dark);
}
.copy-blue-dark {
	color: var(--blue-dark);
}
.copy-blue-uva {
	color: #232d4b;
}
.copy-orange-primary-uva {
	color: #e57200;
}
.copy-orange-2nd-uva {
	color: #eb5f0c;
}
.copy-orange-primary {
	color: #f09054;
}
.copy-orange-2nd {
	color: var(--orange-dark);
}
.copy-white,
.copy-white h2 {
	color: #ffffff;
}
.copy-beige {
	color: var(--beige);
}
article .bg-blue {
	background-color: var(--dusty-blue);
}
.bg-blue a {
	color: #ffffff;
}
.bg-blue-primary {
	background-color: #434f6a;
}
.bg-blue-dark {
	background-color: var(--blue-dark);
}
.bg-blue-dusty {
	background-color: var(--dusty-blue);
}
.bg-blue-uva {
	background-color: #232d4b;
}
.bg-beige {
	background-color: var(--beige);
}
.bg-none {
	background-color: transparent;
}
.bg-orange-uva {
	color: #e57200;
}
.bg-orange-2nd-uva {
	color: #eb5f0c;
}
.bg-orange-primary {
	background-color: #f09054;
}
.bg-orange-2nd {
	background-color: var(--orange-dark);
}
.bg-white {
	background-color: #ffffff;
}
.bg-yellow {
	background-color: var(--yellow);
}
.bg-yellow-dark {
	background-color: var(--yellow-dark);
}
.bg-yellow-uva {
	background-color: #fdda24;
}
.skew-button.bg-orange-2nd:focus {
	background-color: #25cad3;
}
.skew-button.bg-orange-2nd:focus a {
	color: #232d4b;
}

/**************************
	   UVA branding
**************************/
.uvabrand {
	width: 100%;
	margin: 0 auto;
	background-color: #232d4b;
	height: 90px;
	position: relative;
}
#uvaLogo {
	padding: 0;
	text-indent: -9999px;
	padding-top: 28px;
}
#uvaLogo a {
	display: block;
	z-index: 2;
	position: relative;
	margin: 0;
	background-position: -50px 0;
	width: 328px;
	height: 35px;
}

/**** Twitter hashtag ****/
.twitHashTag {
	float: right;
	margin: -30px 40px 0 0;
	padding: 0;
	display: block;
}
.twit-icon {
	float: left;
	background-position: -1px 0;
	width: 37px;
	height: 31px;
	text-indent: -9999px;
}
.twitHashTag p {
	padding: 0 0 0 5px;
	font-weight: normal;
	font-size: 1em /*14px*/;
	float: right;
	color: #aed8f7;
}
/**************************
	   Main nav
**************************/
.main-nav {
	background-color: #f1f1ef;
	margin: 0 auto;
	padding: 2rem;
	position: relative;
}
.main-nav-wrapper {
	margin: 0 auto;
	text-align: center;
}
section {
	padding: 6%;
}
.content-wrapper {
	width: 90%;
	max-width: 61.111111rem;
	margin: 0 auto;
	padding: 100px 0;
}
/* past reports */
#fullReport p {
    color: #232d4b;
    text-align: center;
    font-size: 1.75rem;
    font-weight: 600;
    font-style: italic;
    max-width: none;
  }
  #fullReport a {
    background-color: #00bef2;
    font-size: 1.5rem;
    display: inline-block;
    padding: 1rem 1.5rem;
    text-transform: uppercase;
    font-weight: 600;
    font-family: 'franklin-gothic-urw-cond', 'arial narrow', sans-serif;
    text-decoration: none;
  }
  #fullReport a:hover {
      background-color: #6dd0f6;
      color: #002f6c;
  }
  #fullReport .current-report a {
    border-radius: 2rem;
  }
  #fullReport .past-reports {
    margin: 3rem auto;
    text-align: center;
  }
  .past-reports {
    list-style: none;
}
@media all and (max-width: 1139px) {
    #fullReport .past-reports {
        /* margin: 3rem auto; */
        text-align: center;
    }
    #fullReport .past-reports li:first-of-type {
        /* margin: 3rem auto; */
    }
    .past-reports li {
        display: block;
    }
}
/**************************
		Footer
**************************/
footer {
	font-weight: 400;
	overflow: hidden;
	position: relative;
	background: #232d4b;
	width: 100%;
	margin: 5rem auto 0;
	padding: 4rem 1rem 2rem;
	font-style: normal;
}
footer,
footer * {
	font-size: 1rem;
}
footer a {
	color: #ffffff;
}
.footer-inner {
	display: flex;
	flex-wrap: wrap;
	margin: 0 auto;
	max-width: 77.777777rem;
}
.footer-column:first-of-type {
	text-align: center;
}
.footer-column {
	padding-right: 1rem;
	width: 25%;
}
.footer-copyright {
	margin-top: 3rem;
	margin-bottom: 3rem;
	text-align: center;
	width: 100%;
}
.footer-copyright p {
	max-width: none;
}
footer p {
	color: #ffffff;
}
footer ul {
	list-style: none;
	margin: 0;
}
.social-media ul li {
	display: flex;
	align-items: center;
}
.social-media svg {
	height: 2rem;
	fill: #ffffff;
	margin-right: 1rem;
	width: 2rem;
}
.exposure {
	margin-bottom: 0.555555rem;
}
.logo-footer {
	max-width: 11.111111rem;
}
.logo-footer img {
	max-width: inherit;
}
p.copyright {
	color: #9fbad9;
	font-size: 0.75em;
	line-height: 1;
}
.label {
	display: inline-block;
	text-transform: uppercase;
	margin-right: 5px;
	margin-right: 0.3125rem;
}
.labelContent {
	display: inline-block;
}
.deptTitle {
	font-size: 1.125em;
}
footer .gutter .twitHashTag {
	margin: 15px 0 0 0;
	font-size: 0.925em;
	float: none;
}
footer .gutter .twitHashTag p {
	float: none;
	padding-left: 42px;
}
figure {
	margin: 0;
}
figure img {
	display: block;
	max-width: 100%;
}
figcaption,
.gallery-row-caption p {
	font-size: 0.888888rem;
	font-style: italic;
	font-weight: 400;
	padding: 0.5rem 0.888888rem;
}
.figure-caption-wrap.align-right {
	margin: 1.5rem 0 1.5rem 1rem;
}
.figure-caption-wrap.align-left {
	margin: 1.5rem 1rem 1.5rem 0;
}
/************************************
  Breadcrumbs section
************************************/
.breadcrumbs {
	display: flex;
	padding: 1rem;
	margin: 0;
	justify-content: space-between;
}
.breadcrumbs li {
	list-style: none;
	margin-bottom: 0;
	flex: 1;
}
.breadcrumbs li > div,
.breadcrumbs span {
	display: inline-block;
}
.breadcrumbs a {
	display: inline-block;
	padding: 0.5rem 3rem;
	font-family: "franklin-gothic-urw", arial, sans-serif;
	font-size: 1rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-decoration: none;
	text-transform: uppercase;
}
.breadcrumbs .prev-link,
.breadcrumbs .current-link,
.breadcrumbs .next-link {
	display: inherit;
	align-items: center;
}
.breadcrumbs .prev-link {
	justify-content: start;
}
.breadcrumbs .prev-link a,
.breadcrumbs .next-link a {
	padding-left: 0;
	padding-right: 0;
}
.breadcrumbs .current-link {
	margin: 0 1rem;
	justify-content: center;
}
.breadcrumbs .next-link {
	text-align: right;
	justify-content: end;
}
.breadcrumbs .current-link a {
	font-weight: 600;
}
.breadcrumbs .skew-button.bg-orange-2nd {
	background-color: #cb4b00;
}
/************************************
  Highlights section
************************************/
.highlights-list {
	display: flex;
	display: -ms-flexbox;
}
.highlights-year,
.highlights-year-chapter {
	flex-direction: column;
	padding: 2rem 1rem;
}
.highlights-year h2,
.highlights-year-chapter h2 {
	font-family: "franklin-gothic-urw-cond", "arial narrow", arial, sans-serif;
	font-size: 3rem;
	font-style: italic;
	font-weight: 600;
}
.highlights-year-chapter h2 {
	align-self: end;
}
.highlights-active-date {
	text-align: center;
	margin-right: 1rem;
}
#highlightsActiveMonth {
	font-size: 4.3rem;
	justify-self: center;
	align-self: end;
}
#highlightsActiveYear {
	font-size: 3rem;
	justify-self: center;
}
.highlights-tabs button {
	font-weight: 500;
	background: none;
	border: none;
}

.highlights-tabs ul {
	display: flex;
	display: -ms-flexbox;
	list-style: none;
	margin: 2rem 0;
	text-align: center;
	overflow-x: auto;
}
.highlights-tabs ul li {
	width: 8.333333%;
	min-width: 84px;
}
.highlights-tabs ul li button {
	border-bottom: 1px solid #666666;
	font-weight: 600;
	margin-bottom: 0;
	padding: 1rem;
	width: 100%;
}
.highlights-tabs button.active {
	border-top: 1px solid #666666;
	border-right: 1px solid #666666;
	border-bottom: none;
	border-left: 1px solid #666666;
}
.highlights-article-list {
	display: flex;
	display: -ms-flexbox;
	list-style: none;
	justify-content: start;
	margin-left: 0;
	position: relative;
	width: 100%;
}
.highlights-article-list-item {
	padding: 0 1rem;
	width: 32%;
}
.home .highlights-article-list-item {
	position: absolute;
	left: 0;
	top: 0;
	z-index: -1;
	opacity: 0;
	animation-name: fadeOutOpacity;
	animation-iteration-count: 1;
	animation-timing-function: ease-in;
	animation-duration: 250ms;
}
.highlights-article-link {
	text-decoration: none;
}
.fade-in {
	opacity: 1;
	animation-name: fadeInOpacity;
	animation-iteration-count: 1;
	animation-timing-function: ease-in;
	animation-duration: 250ms;
}
.fade-out {
	opacity: 0;
	animation-name: fadeOutOpacity;
	animation-iteration-count: 1;
	animation-timing-function: ease-in;
	animation-duration: 250ms;
}
.highlights-article-list-item img {
	background-color: #f1f1ef;
	max-width: 100%;
}
.highlights-article-list-item.visible {
	display: block;
	opacity: 1;
	position: relative;
	z-index: 1;
	animation-name: fadeInOpacity;
	animation-iteration-count: 1;
	animation-timing-function: ease-in;
	animation-duration: 250ms;
}
@keyframes fadeInOpacity {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}
@keyframes fadeOutOpacity {
	0% {
		opacity: 1;
	}
	100% {
		opacity: 0;
	}
}
.highlights-list h2 {
	font-size: 1.6666666rem;
}
.highlights-list h3 {
	font-size: 1.333333rem;
	font-weight: 600;
	margin: 0.3rem 0;
}
.highlights-list p {
	font-size: 1rem;
	font-weight: normal;
}
.highlights-article-date {
	margin-bottom: 0.222222rem;
}
.all-news {
	text-align: right;
}

/**************************
        Duotone images
**************************/
.duotone {
	background-color: var(--duotone-base);
	display: flex;
	height: 100%;
	overflow: hidden;
	position: relative;
}

.duotone img {
	filter: grayscale(100%) contrast(1) blur(0px);
	flex: 1 0 100%;
	height: 100%;
	max-width: 100%;
	mix-blend-mode: var(--duotone-bg-blend);
	object-fit: cover;
	opacity: 1;
	position: relative;
	width: 100%;
}

.duotone::before {
	/* if these variables show as 'not defined' in Chrome inspector
    it's a bug; they are working */
	background-color: var(--blue-dark);
	bottom: 0;
	content: "";
	height: 100%;
	left: 0;
	mix-blend-mode: var(--duotone-fg-blend);
	position: absolute;
	right: 0;
	top: 0;
	width: 100%;
	z-index: 1;
}

/************************************
  Featured profile section
************************************/
.profile-feature {
	background-color: #ffffff;
	/* padding: 3rem; */
	position: relative;
}
.profile-feature .skew-bg-30 {
	padding: 0.3rem 2rem;
	margin-bottom: 1.3rem;
}
.profile-feature .skew-bg-30,
.profile-feature .skew-bg-30 h2 {
	display: inline-block;
}
.profile-feature article {
	display: flex;
	align-items: center;
}
.profile-feature .profile-wrap {
	position: relative;
}
.profile-feature .profile-bg {
	position: absolute;
	width: 100%;
	height: 100%;
	z-index: 1;
}
.profile-feature .pink-pattern {
	right: -12px;
	bottom: -12px;
}
.profile-feature .teal-pattern {
	top: -12px;
	left: -12px;
}
.profile-feature .profile-headshot {
	max-width: 16.666666rem;
	z-index: 2;
}
.profile-feature .profile-headshot img {
	width: 100%;
	/* border-radius: 50%; */
}
.profile-feature .profile-copy {
	color: var(--beige);
	background-color: var(--dusty-blue);
	/* padding-left: 3rem; */
	margin-left: 3rem;
	position: relative;
	z-index: 1;
}
.profile-feature .full-width-background {
	left: auto;
}
.profile-feature .bg-blue-dusty {
	position: relative;
	width: 100%;
}
.profile-feature .profile-copy h2 {
	color: var(--beige);
	font-family: "franklin-gothic-urw-cond", "arial narrow", arial, sans-serif;
	font-size: 3rem;
	font-style: italic;
}
.profile-feature p {
	font-weight: 400;
	line-height: 1.5;
}
.profile-feature .squiggle-link {
	font-size: 1rem;
	font-weight: 500;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}
@media (hover: hover) {
	.highlights-tabs ul li button:hover {
		cursor: pointer;
	}
	a:hover .duotone img,
	a .duotone:hover img {
		filter: none;
		mix-blend-mode: unset;
	}
	.nav-dropdown ul li a:hover {
		background-color: #ffffff;
	}
	.skew-button.bg-orange-2nd:hover {
		background-color: #25cad3;
	}
	.skew-button.bg-orange-2nd:hover a {
		color: #232d4b;
	}
	.skew-button.bg-yellow-dark:hover {
		background-color: var(--dusty-blue);
	}
	.skew-button.bg-yellow-dark:hover a,
	.skew-button.bg-yellow-dark a.copy-blue-primary:hover {
		color: #ffffff;
	}
	.breadcrumbs .skew-button.bg-orange-2nd:hover a {
		color: #232d4b;
	}
	.breadcrumbs a:hover {
		color: #ffffff;
	}
	.breadcrumbs a.copy-blue-primary:hover {
		color: var(--blue-dark);
	}
	.breadcrumbs .prev-link a:hover,
	.breadcrumbs .next-link a:hover {
		text-decoration: underline;
	}
	.breadcrumbs .skew-button.bg-orange-2nd:hover {
		background-color: #25cad3;
	}
	#goTopButton:hover {
		background-color: #25cad3;
		border: 1px solid #232d4b;
		color: #232d4b;
		cursor: pointer;
		-webkit-transition: all 0.25s ease;
		transition: all 0.25s ease;
	}
	a:hover .duotone::before,
	a .duotone:hover::before {
		filter: none;
		mix-blend-mode: unset;
		opacity: 0;
	}
}
@media all and (max-width: 599px) {
	.profile-feature {
		padding: 1.222222rem;
	}
	.profile-feature .skew-bg-30,
	.profile-feature .skew-bg-30 h2 {
		transform: none;
	}
	.profile-feature h2 {
		font-size: 1.222222rem;
	}
	.profile-feature article {
		flex-direction: column;
		align-items: flex-start;
	}
	.profile-feature .profile-headshot img {
		max-width: 12rem;
	}
	.profile-feature .profile-copy {
		margin-left: 0;
		width: 100%;
	}
}
/**************************
		Misc.
**************************/
.flex {
	display: flex;
}
.flex.column {
	flex-direction: column;
}
.compat-object-fit {
	background-size: cover;
	background-position: center center;
}
.compat-object-fit img {
	/* opacity: 0; */
	display: none;
}
.divider-60-pct {
	height: 1px;
	width: 60%;
	margin: 0 auto 2rem;
}
.full-width-background {
	max-width: none;
	overflow: visible;
	width: 100vw;
	/* I don't like this rule but I'm looking for another way to account for the scrollbar */
	/* width: calc(100vw - 9px); */
	/* width: calc(100vw - (100vw - 100%)); */
	position: relative;
	left: calc(-50vw + 50%);
}
.max-620 {
	max-width: 34.444444rem;
}
.max-620 figure {
	max-width: 33.333333rem;
}
.max-420 {
	max-width: 23.333333rem;
}
.max-360 {
	max-width: 20rem;
}
.max-320 {
	max-width: 17.777777rem;
}
.max-320 figure {
	max-width: 16.666666rem;
}
.max-300 {
	max-width: 16.666666rem;
}
.align-left {
	float: left;
}
.align-right {
	float: right;
}
.skew-bg-30 {
	transform: skew(-30deg);
	-webkit-transform: skew(-30deg);
	-moz-transform: skew(-30deg);
}
.skew-bg-30 > * {
	transform: skew(30deg);
	-webkit-transform: skew(30deg);
	-moz-transform: skew(30deg);
}
.skew-bg-30 h2 {
	margin: 0;
}
.bg-opacity-80 {
	opacity: 0.8;
}
.bg-opacity-80 > * {
	opacity: 1;
}
#skipToMain {
	color: #ffffff;
	font-weight: 500;
	margin: 0 0 0 10px;
	position: absolute;
	left: 0;
	top: -26px;
	z-index: 1;
}
#skipToMain:focus {
	background-color: #002f6c;
	display: block;
	padding: 5px 8px;
	text-decoration: underline;
	top: 0;
}
.divider-solid {
	border: 1px solid;
	max-width: 28rem;
	margin-right: auto;
	margin-bottom: 2.5rem;
	margin-left: auto;
}
.divider-solid.orange {
	border-color: #eb5f0c;
}
.divider-solid.white {
	border-color: #ffffff;
}
.dot-header {
	line-height: 0.5;
	overflow: hidden;
	padding: 0 1rem;
	text-align: center;
}
.dot-header span {
	display: inline-block;
	line-height: 1;
	position: relative;
}
.dot-header span::before,
.dot-header span::after {
	/* border-bottom: .555555rem dotted; */
	border-bottom: 0.422222rem dotted;
}
.dot-header span::before,
.dot-header span::after {
	content: "";
	position: absolute;
	bottom: 40%;
	width: 190%;
}
.dot-header span::before {
	right: 100%;
	margin-right: 1rem;
}
.dot-header span::after {
	margin-left: 1rem;
	left: 100%;
}
.clear {
	clear: both;
}
/* backToTop sticky button */
#goTop {
	display: none;
	bottom: 6px;
	position: fixed;
	right: 6px;
	height: 5rem;
	width: 5rem;
	z-index: 3;
}
#goTopButton {
	background-color: var(--yellow);
    background-color: var(--blue-uva);
	border: 1px solid #ffffff;
	border-radius: 50%;
	color: var(--blue-dark);
    color: #ffffff;
	display: flex;
	/* font-family: "franklin-gothic-ext-comp-urw", "arial narrow", sans-serif; */
	justify-content: center;
	align-items: center;
	font-size: 0.8rem;
	font-weight: 400;
	letter-spacing: 0.05em;
	width: 100%;
	height: 100%;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
	-webkit-transition: all 0.25s ease;
	transition: all 0.25s ease;
}
#goTopButton:focus {
	outline: 2px solid #25cad3;
}
#goTop.visible {
	display: block;
}
iframe {
	max-width: 100%;
}
.squiggle-link {
	text-decoration: none;
	color: #000;
	display: inline-block;
	line-height: 1.5;
	text-decoration: none;
	overflow: visible;
}
.squiggle-underline {
	background: linear-gradient(to left, #25cad3 0%, #ef3f6b 100%);
	background-position: 0 100%;
	background-repeat: repeat-x;
	background-size: 100% 2px;
	line-height: inherit;
}
.squiggle-link:hover {
	background-image: none;
}
.squiggle-link:hover .squiggle-underline,
.squiggle-link:focus .squiggle-underline {
	background-image: url("/2021/assets/images/graphics/SquiggleLink_AR21.svg");
	background-position: 0 100%;
	background-size: 100% 8px;
	background-repeat: repeat-x;
	text-decoration: none;
	animation: 8s squiggle linear infinite;
	z-index: 0;
}
@keyframes squiggle {
	0% {
		background-position: 0 102%;
	}
	100% {
		background-position: 300px 102%;
	}
}
/**************************
	   Media queries
**************************/
@media screen and (max-width: 1106px) {
	.col1 {
		float: none;
		width: auto;
	}
	.col2 {
		float: none;
		width: auto;
	}
}

@media screen and (max-width: 930px) {
	#uvaLogo {
		margin: 0;
	}
	header .twitHashTag {
		display: inline-block;
	}
	iframe {
		max-height: 650px;
	}
	#footeruvaLogo {
		margin: 0 auto;
		padding: 0;
	}
	#footeruvaLogo a {
		display: block;
		margin: 0 auto;
		width: 140px;
		height: 90px;
	}

	p.copyright {
		margin: 0 auto;
		text-align: center;
	}
	footer .gutter .twitHashTag {
		margin: 20px auto 0 auto;
		font-size: 0.925em;
		float: none;
		display: block;
	}
	footer .gutter .twitHashTag .twit-icon {
		float: none;
		display: inline-block;
		vertical-align: middle;
	}
	footer .gutter .twitHashTag p {
		float: none;
		padding-left: 0.666666rem;
		display: inline-block;
	}
	footer .gutter .twitHashtag a {
		display: inline-block;
	}
}
@media all and (max-width: 699px) {
	h1 {
		font-size: 1.333333rem;
	}
	h2 {
		font-size: 1.3333333rem;
		margin: 1.25rem 0;
	}
	h3 {
		font-size: 1.25rem;
		margin: 0.333333rem 0;
	}
	.intro .intro-paragraph {
		font-size: 1rem;
		margin-bottom: 1.333333rem;
		text-align: left;
	}
	.intro .intro-instructions {
		width: 100%;
	}
	.about .boundaries > *,
	.questions-troubleshooting .boundaries > p {
		width: auto;
	}
	#goTop {
		width: 4rem;
		height: 4rem;
	}
	#goTop a {
		line-height: 4rem;
	}
	.nav-columns ul {
		margin: 20px 0;
	}
}
@media all and (max-width: 599px) {
	.full-width-background {
		width: 100%;
	}
}
@media all and (max-width: 414px) {
	.header-inner {
		display: block;
	}
	.header-nav {
		text-align: right;
	}
}
@media all and (max-width: 650px) {
	.nav-columns {
		height: auto;
		min-height: 530px;
		padding: 2rem;
	}
	.nav-columns h3 {
		text-align: left;
	}
	.nav-columns ul {
		flex-direction: column;
		height: auto;
		margin: 0 auto;
		width: 100%;
		flex-wrap: nowrap;
	}
	.divider-60-pct {
		width: 100%;
	}
}
@media all and (max-width: 799px) {
	.header-inner {
		align-items: flex-end;
	}
	.header-logo-link {
		display: block;
	}
	.fm-logo {
		width: 12rem;
	}
	.slash-divider {
		display: none;
	}
}
/****************** Tablet styles ****************/
@media all and (min-width: 700px) and (max-width: 1020px) {
	h1 {
		font-size: 2rem;
	}
	h2 {
		font-size: 1.777777rem;
		margin: 0.777777rem 0;
	}
	h3 {
		font-size: 1.5rem;
	}
	.intro .intro-paragraph {
		font-size: 1.333333rem;
	}
}
@media all and (max-width: 1020px) {
	section {
		padding: 3%;
	}
	.divider-solid {
		margin-bottom: 1.5rem;
	}
}
@media all and (max-width: 819px) {
	p {
		font-size: 1rem;
	}
	.logo {
		height: 11.111111rem;
		margin: 1rem auto;
	}
	.nav-button {
		height: 6rem;
		width: 6rem;
		line-height: 6rem;
	}
	.nav-button a {
		font-size: 1rem;
	}
}
@media all and (max-width: 559px) {
	.highlights-article-list {
		flex-direction: column;
	}
	.highlights-article-list-item {
		margin-bottom: 1.5rem;
		width: auto;
	}
}
@media all and (max-width: 640px) {
}
@media screen and (max-width: 765px) {
	.circle {
		height: 120px;
		width: 120px;
		line-height: 120px;
		font-size: 20px;
	}
}
@media all and (max-width: 830px) {
	.highlights-list {
		flex-direction: column;
	}
	.highlights-tabs ul {
		margin-bottom: 0;
	}
	.highlights-list .highlights-active-date {
		font-size: 2.222222rem;
		margin: 0.8rem 0;
	}
	#highlightsActiveMonth,
	#highlightsActiveYear {
		font-size: inherit;
	}
}
@media all and (max-width: 873px) {
	.footer-inner {
		flex-direction: column;
		align-items: center;
	}
	.footer-column {
		padding-right: 0;
		padding-bottom: 2rem;
		width: auto;
	}
	.footer-fm-logo {
		width: 50%;
	}
}
@media all and (max-width: 945px) {
	.breadcrumbs {
		align-items: center;
		flex-direction: column;
	}
	.breadcrumbs .prev-link,
	.breadcrumbs .current-link,
	.breadcrumbs .next-link {
		margin-bottom: 1rem;
		text-align: center;
		width: auto;
	}
	.breadcrumbs .prev-link,
	.breadcrumbs .current-link {
		margin-bottom: 1rem;
	}
}
@media all and (max-width: 999px) {
	.alternating-grid-list .article-container {
		height: 10rem;
	}
	.alternating-grid-list .article-intro {
		width: 60%;
	}
	.profile-wrap {
		max-width: 220px;
		margin: 1rem;
	}
	.profile-feature article {
		flex-direction: column;
		align-items: start;
	}
	.profile-feature .profile-copy {
		margin-left: 0;
		padding: 1rem 1.5rem;
	}
	.profile-feature .profile-copy h2,
	.article-intro h2,
	.chapter-feature-title,
	.highlights-year-chapter h2 {
		font-size: 1.777rem;
	}
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
	body {
		background-size: 16px 16px;
	}
	.fm-logo svg {
		height: 4rem;
	}
}
