:root {
  --semi-light: 300;
  --semi-bold: 500;
  --maximum-bold: 900;
  --student-support-impact-report-container-max-inline-size: 1020px;
  --local-lightest-grey: #fafafa;
}

body.queensu-alumni-student-support-impact-report {
  background-color: var(--white);
  min-inline-size: var(--container-min-width);
  font-family: var(--sans-serif);
  font-size: 16px;
  font-weight: var(--normal);
  line-height: 1.25;
  color: var(--blue);
}
.student-support-impact-report {
  margin-block-end: 1em;
  text-align: center;
  text-wrap: balance;
}
.student-support-impact-report h1 {
  margin-block: 3rem;
  padding: 5.5rem 3.5rem 3rem 3.5rem;
  border: 2px solid var(--blue);
  font-size: 4em;
  font-weight: var(--semi-bold);
  line-height: 1;
  text-transform: uppercase;
}
.student-support-impact-report h1 strong {
  position: relative;
  inset-inline-start: -0.5rem;
  display: block;
  font-size: 2.75em;
  font-weight: var(--maximum-bold);
}
.student-support-impact-report h1 span.year {
  display: block;
  margin-block-start: 1rem;
  font-size: 0.675em;
  color: var(--red);
}
.student-support-impact-report h2 {
  margin-block: 0;
  clear: both;
  font-size: 3em;
  font-weight: var(--maximum-bold);
}
.student-support-impact-report h2::after {
  content: '';
  display: block;
  margin: 0.5em 38%;
  border-block-end: 3px solid var(--yellow);
}
.student-support-impact-report h3,
.student-support-impact-report p {
  margin: 1em 25%;
  font-family: var(--sans-serif);
  font-size: 1.75em;
}
.student-support-impact-report h3 {
  margin-block: 3em 1em;
  font-size: 1.5em;
  text-transform: uppercase;
  color: var(--red);
}
.student-support-impact-report .number + h3 {
  margin-block-start: 4.5em;
}
.student-support-impact-report .section.quotation p {
  margin-inline: 16%;
  font-family: var(--serif);
}
.student-support-impact-report.report-dynamic .section.quotation p {
  opacity: 0;
}
.student-support-impact-report .section.world p {
  margin-inline: 17.5%;
}
.student-support-impact-report p.highlight {
  margin-inline: 0;
  font-family: var(--serif);
  font-size: 2.75em;
  font-weight: var(--semi-bold);
}
.student-support-impact-report .section.world ul {
  margin-block-start: 0.375em;
  font-size: 3.5em;
  font-weight: var(--bold);
  line-height: 1;
}
.student-support-impact-report li:not(:first-child) {
  margin-block-start: 4.5rem;
}
.student-support-impact-report hr {
  display: block;
  margin: 0 auto;
  border: none;
  background-color: var(--yellow);
  padding: 0;
  inline-size: 2px;
  block-size: 0;
  color: var(--yellow);
}
.student-support-impact-report strong {
  font-weight: var(--bold);
}
.student-support-impact-report a {
  text-decoration: none;
  color: var(--blue);
}
.student-support-impact-report a svg.ext {
  display: none;
}
.student-support-impact-report .section {
  padding-block: 4em;
}
.student-support-impact-report .section:has(hr:last-child) {
  padding-block-end: 0;
}
.student-support-impact-report .section > .content {
  box-sizing: border-box;
  margin: 0 auto;
  padding-inline: 2.5em;
  max-inline-size: var(--student-support-impact-report-container-max-inline-size);
}
.student-support-impact-report .section.title {
  background: url(../img/title-bg.jpg) center center / cover no-repeat scroll padding-box padding-box var(--local-lightest-grey);
  padding: 0;
  overflow: auto;
  text-align: start;
}
.student-support-impact-report .section.title .content {
  position: relative;
}
.student-support-impact-report .section.title img {
  position: absolute;
  /* Inline-start padding accounts for .content padding and border and h1
     padding. */
  inset: -3rem auto auto calc(3.5em + 2.5em + 2px);
  inline-size: 4.5rem;
  block-size: auto;
}
.student-support-impact-report .number {
  font-size: 8em;
  font-weight: var(--bold);
  line-height: 1;
}
.student-support-impact-report .number + .note {
  font-size: 1.25em;
  font-weight: var(--semi-bold);
}
.student-support-impact-report .section.quotation,
.student-support-impact-report .section.video {
  margin-block: 4em 2em;
  background-color: var(--lightest-grey);
  font-weight: var(--semi-bold);
}
.student-support-impact-report .section.quotation:has(+ .section.conclusion) {
  margin-block-end: 0;
}
.student-support-impact-report.report-dynamic .section.quotation {
  overflow: hidden;
}
.student-support-impact-report .section.quotation .content {
  margin-block: 2em;
  background: url(../img/quotation-bg.png) top center / 5rem 5rem no-repeat scroll padding-box padding-box transparent;
  padding-block-start: 6.25rem;
}
.student-support-impact-report .section.quotation .attribution {
  margin-block-start: 2em;
  font-size: 1.25em;
  font-weight: var(--light);
}
.student-support-impact-report .section.quotation .attribution .name {
  display: block;
  margin-block-end: 0.375em;
  font-weight: var(--bold);
}
.student-support-impact-report .section.video {
  padding-block: 0;
}
.student-support-impact-report .section.video iframe {
  display: block;
  border: none;
  inline-size: 100%;
  aspect-ratio: 16/9;
}
.student-support-impact-report .section.conclusion {
  background-color: var(--blue);
  color: white;
}
.student-support-impact-report .section.conclusion *:not(hr) {
  color: white;
}
.student-support-impact-report .conclusion a.download {
  font-family: var(--sans-serif);
  font-size: 2.125rem;
  font-weight: var(--normal);
  text-decoration: none;
}
.student-support-impact-report .conclusion a.download:hover {
  text-decoration: underline;
}
