:root {
  --benefactor-color: #151515;
  --benefactor-menu-button-border-color: #9F9F9F35;
  --benefactor-menu-button-bg-color: #359595;
  --benefactor-button-bg-color: #359595;
  --benefactor-button-color: white;

  /*Nav bar variables go here*/
  --benefactor-nav-height: 55px;
  --benefactor-nav-bg-color: white;
  --benefactor-nav-color: #353535;
  --benefactor-nav-font-size: clamp(13px, 1.75rem, 1.75rem);

  /*Menu variables*/
  --benefactor-menu-bg-color: #FFFFFF;
  --benefactor-menu-color: #858585;
  --benefactor-menu-border-color: #85858535;
  --benefactor-menu-anchor-hover-color: var(--benefactor-button-bg-color);
  --benefactor-figure-border-color: #FFFFFF;
  --benefactor-menu-icon-bg-color: #151515;
  --benefactor-menu-icon-color: #FDFDFD;

  --benefactor-label-bg-color: #D08070;
  --benefactor-label-color: white;

  --benefactor-menu-info-h2-font-size: clamp(13px, 3rem, 3rem);
  --benefactor-menu-info-h2-sub-font-size: clamp(10px, 1.8rem, 1.8rem);
  --benefactor-menu-icons-font-size: clamp(15px, 2.136rem, 2.136rem);

  /*Headline variables*/
  --benefactor-headline-color: white;
  --benefactor-headline-font-size: clamp(18px, 5rem, 5rem);
  --benefactor-headline-link-color: white;
  --benefactor-headline-link-border-color: #F5F5F535;
  --benefactor-headline-link-bg-color: #FFFFFF15;
  --benefactor-headline-link-hover-bg-color: #DDDDDD15;

  --benefactor-label-font-size: clamp(11px, 1.235rem, 1.235rem);

  --benefactor-article-bg-color: #F3F3F3;
  --benefactor-article-h2-font-size: clamp(18px, 4rem, 4rem);
  --benefactor-description-border-color: #33333325;

  /*Footer variables*/
  --benefactor-footer-color: #C5C5C5;
  --benefactor-footer-bg-color: #242424;
  --benefactor-footer-article-border-color: #F4F4F410;
  --benefactor-footer-box-font-size: clamp(12px, 2rem, 2rem);

  font-size: 10px;
}

.benefactor-dark {
  --benefactor-bg-color: #353535;
  --benefactor-color: #F5F5F5;
  --benefactor-menu-button-border-color: #9F9F9F35;
  --benefactor-menu-button-bg-color: #15D5D5;

  /*Nav bar variables go here*/
  --benefactor-nav-bg-color: #353535;
  --benefactor-nav-height: 55px;
  --benefactor-nav-color: #F5F5F5;

  /*Menu variables*/
  --benefactor-menu-bg-color: #2F2F2F;
  --benefactor-menu-color: #B0B0B0;
  --benefactor-figure-border-color: #DADADA;
  --benefactor-menu-icon-bg-color: #151515;
  --benefactor-menu-icon-color: #FDFDFD;

  /*Headline variables*/
  --benefactor-headline-color: white;

  --benefactor-article-bg-color: #434343;
  --benefactor-description-border-color: #F3F3F325;
}

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  font-size: clamp(10px, 2.35rem, 2.35rem);
}

h2 {
  font-weight: 300;
}

html,
body {
  max-width: 100vw;
}

body {
  background-color: var(--benefactor-bg-color);
  color: var(--benefactor-color);
  font-family: 'Jost', sans-serif;
  font-weight: 300;
  display: flex;
  flex-flow: column;
}

/*Simple cosmetic and helper classes*/
.benefactor-dark .benefactor-invert {
  filter: invert(1);
}

.benefactor-quote {
  display: inline-block;
  float: left;
  font-family: 'Lato';
  font-size: clamp(18px, 3.765rem, 3.765rem);
  font-weight: 300;
  justify-content: center;
  line-height: 235%;
  margin: 1rem 5rem;
  position: relative;
  width: 32.6%;
}

[class*="benefactor-photo"] {
  aspect-ratio: 1/1.135;
  border-radius: 18px;
  display: flex;
  filter: drop-shadow(0 0 2rem rgba(0, 0, 0, .465));
  margin: 0 5rem 5rem 5rem;
  max-width: 43.735rem;
  overflow: hidden;
}

[class*="benefactor-photo"] img {
  object-fit: cover;
  height: auto;
  width: 100%;
}

.benefactor-photo-left {
  float: left;
}

.benefactor-photo-right {
  float: right;
}

/*Benefactor navigation elements*/
.benefactor-nav {
  align-items: center;
  background-color: var(--benefactor-nav-bg-color);
  box-shadow: 0 0 15px rgba(0, 0, 0, .135);
  color: var(--benefactor-nav-color);
  display: flex;
  justify-content: space-between;
  inset: 0 0 calc(100% - var(--benefactor-nav-height)) 0;
  position: fixed;
  max-width: 100vw;
}

.benefactor-title {
  color: var(--benefactor-nav-color);
  display: flex;
  height: 100%;
  text-decoration: none;
}

.benefactor-title img {
  margin: 0 -2.735rem 0 2.35rem;
  padding: 1.235%;
  height: 100%;
}

.benefactor-title span {
  align-items: center;
  display: flex;
  font-size: var(--benefactor-nav-font-size);
  height: 100%;
  padding: 2rem 3.735rem;
}

.benefactor-promo-button {
  background-color: var(--benefactor-button-bg-color);
  border: none;
  border-radius: 3px;
  color: var(--benefactor-button-color);
  font-size: var(--benefactor-nav-font-size);
  font-weight: 300;
  height: 73.65%;
  margin: 0 0 0 auto;
  padding: 0 3rem;
  transition: .765s;
}

.benefactor-promo-button:hover {
  background-color: var(--benefactor-button-bg-color);
  color: var(--benefactor-button-color);
  filter: hue-rotate(35deg) brightness(1.236);
  cursor: pointer;
}

.benefactor-menu-button {
  align-items: center;
  background-color: transparent;
  border: none;
  border-left: 1px solid var(--benefactor-menu-button-border-color);
  display: flex;
  height: 100%;
  justify-content: center;
  margin: 0 0 0 1rem;
  overflow: hidden;
  position: relative;
  width: var(--benefactor-nav-height);
}

.benefactor-menu-button::after {
  background-color: var(--benefactor-menu-button-bg-color);
  content: '';
  filter: grayscale(.5) brightness(1);
  inset: 0;
  opacity: .135;
  position: absolute;
  transition: .25s;
  z-index: -1;
}

.benefactor-menu-button:hover:after {
  filter: grayscale(1) brightness(.5);
  opacity: .635;
}

.benefactor-menu-button img {
  height: 85%;
  filter: brightness(1);
  transition: .35s;
}

.benefactor-dark .benefactor-menu-button img {
  filter: brightness(1.835);
}

.benefactor-menu-button:hover img {
  filter: brightness(5);
}

.benefactor-menu {
  background-color: var(--benefactor-menu-bg-color);
  border-bottom-left-radius: 18px;
  box-shadow: 0 6px 8px rgba(0, 0, 0, .065);
  min-height: fit-content;
  position: absolute;
  right: 0;
  opacity: 0;
  top: var(--benefactor-nav-height);
  transform: scale(0);
  transition: 1.35s;
  transform-origin: top right;
  visibility: hidden;
}

.benefactor-menu-open {
  opacity: 1;
  transform: scale(1);
  transition: .365s linear;
  visibility: visible;
}

.benefactor-menu-item {
  border: 1px solid var(--benefactor-menu-button-border-color);
  border-radius: 8px;
  display: flex;
  list-style: none;
  margin: 1.35rem auto;
  width: 93.735%;
}

.benefactor-menu .benefactor-button {
  background-color: transparent;
  border-radius: 8px;
  color: var(--benefactor-menu-color);
  font-family: 'Jost', sans-serif;
  font-weight: 400;
  flex: 1;
  height: 100%;
  letter-spacing: .076rem;
  margin: 0;
  padding: 1.735rem 3.765rem;
  transition: .235s;
  text-align: left;
  text-decoration: none;
}

.benefactor-menu .benefactor-button:hover {
  color: var(--benefactor-menu-anchor-hover-color);
  filter: hue-rotate(-18deg) brightness(1.276) grayscale(.135);
}

.benefactor-menu-info {
  align-items: start;
  border-right: none;
  border-top: none;
  display: flex;
  flex-flow: row;
  padding: 5rem;
  position: relative;
}

.benefactor-menu-info figure {
  border: .5rem solid var(--benefactor-figure-border-color);
  box-shadow: 5px 8px 18px rgba(0, 0, 0, .135);
  border-radius: 50%;
  height: 21.35rem;
  position: relative;
  width: 21.35rem;
}

@keyframes benefactor-rotate-after {
  from {
    transform: rotate(0);
  }
  to {
    transform: rotate(365deg);
  }
}

.benefactor-menu-info figure::after {
  animation: benefactor-rotate-after 9.635s linear infinite;
  border-left: .736rem solid var(--benefactor-button-bg-color);
  border-radius: 50%;
  content: '';
  filter: brightness(1.236) hue-rotate(-96deg);
  inset: -9.35%;
  position: absolute;
  opacity: .235;
}

.benefactor-dark .benefactor-menu-info figure::after {
  border-left: .376rem solid var(--benefactor-button-bg-color);
  filter: brightness(2.736) hue-rotate(16deg) saturate(2);
}

@keyframes benefactor-rotate-before {
  from {
    transform: rotate(365deg);
  }
  to {
    transform: rotate(0);
  }
}

.benefactor-menu-info figure::before {
  animation: benefactor-rotate-before 9.735s linear infinite;
  border-left: .736rem solid var(--benefactor-button-bg-color);
  border-radius: 50%;
  content: '';
  filter: brightness(1.736) hue-rotate(-176deg);
  inset: -17.935%;
  position: absolute;
  opacity: .235;
}

.benefactor-dark .benefactor-menu-info figure::before {
  border-left: .436rem solid var(--benefactor-button-bg-color);
  filter: brightness(1.736) hue-rotate(-136deg) saturate(5);
}

.benefactor-menu-info img {
  width: 100%;
}

.benefactor-menu-info h2 {
  color: var(--benefactor-menu-color);
  font-size: var(--benefactor-menu-info-h2-font-size);
  padding: 2.35rem 3.65rem .135rem 3.65rem;
  margin: 0 2.365rem;
  position: relative;
}

.benefactor-menu-info h2::after {
  background-color: var(--benefactor-menu-color);
  content: '';
  font-size: var(--benefactor-menu-info-h2-font-size);
  inset: auto 0 -35% auto;
  height: 1px;
  opacity: .35;
  position: absolute;
  transform: rotate(-65deg);
  width: 25%;
}

.benefactor-menu-info h2::before {
  background-color: var(--benefactor-menu-color);
  content: '';
  font-size: var(--benefactor-menu-info-h2-font-size);
  inset: 149.5% 9.365% -35% auto;
  height: 1px;
  opacity: .35;
  position: absolute;
  width: 65%;
}

.benefactor-menu-info h2 sub {
  color: var(--benefactor-menu-color);
  font-size: var(--benefactor-menu-info-h2-sub-font-size);
  inset: 100% 0 0 3.65rem;
  padding: 0 .25rem;
  position: absolute;
  height: 35px;
}

.benefactor-menu-branding {
  align-items: center;
  display: flex;
  justify-content: flex-end;
  letter-spacing: .365rem;
  list-style: none;
  margin-top: -1rem;
  padding: 2rem 3rem;
  position: relative;
  text-transform: uppercase;
}

.benefactor-menu-branding::after {
  aspect-ratio: 1/1;
  border: 2px solid var(--benefactor-menu-border-color);
  border-radius: 50%;
  content: '';
  inset: auto auto auto 3.735%;
  position: absolute;
  transform: translateY(2px);
  text-transform: uppercase;
  width: 20px;
}

.benefactor-menu-branding::before {
  aspect-ratio: 1/1;
  border: 2px solid transparent;
  background-color: var(--benefactor-menu-color);
  border-radius: 50%;
  content: '';
  inset: auto auto auto 3.735%;
  opacity: 0;
  position: absolute;
  transition: .35s;
  transform: translateY(2px) scale(.376);
  transition: .735s;
  text-transform: uppercase;
  width: 20px;
}

.benefactor-menu-branding:hover:before {
  opacity: 1;
  transform: translateY(2px) scale(.135);
}

.benefactor-menu-item:hover ~ .benefactor-menu-branding::before {
  background-color: var(--benefactor-menu-anchor-hover-color);
  opacity: 1;
}

.benefactor-menu-item:nth-of-type(1):hover ~ .benefactor-menu-branding::before {
  filter: hue-rotate(36deg) brightness(1.736);
  opacity: 1;
}

.benefactor-menu-item:nth-of-type(2):hover ~ .benefactor-menu-branding::before {
  filter: hue-rotate(-136deg) brightness(1.236);
  opacity: 1;
}

.benefactor-menu-item:nth-of-type(3):hover ~ .benefactor-menu-branding::before {
  filter: hue-rotate(136deg);
  opacity: 1;
}

.benefactor-menu-item:nth-of-type(5):hover ~ .benefactor-menu-branding::before {
  filter: hue-rotate(-96deg) brightness(1.36);
  opacity: 1;
}

.benefactor-menu-branding span {
  font-family: 'Inter';
  font-size: 1.236rem;
  font-weight: 600;
  opacity: .576;
  transform: translateY(3px);
}

.benefactor-menu-branding a {
  margin: -2.5rem -3.25rem -3.5rem 0;
  transform: translateX(-1.235rem);
  width: 8rem;
}

.benefactor-menu-branding img {
  height: auto;
  opacity: .736;
  transform: scale(.8);
  transition: .365s;
  width: 100%;
}

.benefactor-menu-branding img:hover {
  opacity: 1;
  transform: scale(1);
}

.benefactor-menu-branding img.dark {
  display: none;
}

.benefactor-menu-branding img.light {
  display: block;
}

.benefactor-dark .benefactor-menu-branding img.dark {
  display: block;
}

.benefactor-dark .benefactor-menu-branding img.light {
  display: none;
}

.benefactor-theme-toggle {
  background-color: transparent;
  border: 1px solid var(--benefactor-menu-button-border-color);
  border-radius: 5rem;
  box-shadow: inset 0 0 18px rgba(0, 0, 0, .135);
  height: 30px;
  inset: 2.35rem 2.35rem auto auto;
  position: absolute;
  transition: .235s;
  width: 54px;
  z-index: 1;
}

.benefactor-theme-toggle::after {
  background-color: transparent;
  border: 1px solid var(--benefactor-menu-button-border-color);
  border-radius: 5rem;
  box-shadow: inset 0 0 18px rgba(0, 0, 0, .235);
  content: '';
  height: 75%;
  inset: 10% auto 10% 10%;
  position: absolute;
  transition: .235s;
  width: 40%;
  z-index: 1;
}

.benefactor-dark .benefactor-theme-toggle {
  box-shadow: inset 0 0 36px rgba(236, 236, 236, .276);
}

.benefactor-theme-toggle:hover:after {
  box-shadow: inset 0 0 18px rgba(0, 0, 0, .635);
  transform: translateX(15%);
}

.benefactor-dark .benefactor-theme-toggle::after {
  box-shadow: inset 0 0 18px rgba(35, 35, 35, .735);
  inset: 10% 10% 10% auto;
}

.benefactor-dark .benefactor-theme-toggle:hover:after {
  box-shadow: inset 0 0 18px rgba(235, 235, 235, .935);
  transform: translateX(-15%);
}

.benefactor-menu-icons {
  display: flex;
  gap: 1.35rem;
  flex-flow: row;
  inset: 196% -5% auto auto;
  position: absolute;
}

.benefactor-menu-icons a {
  align-items: center;
  aspect-ratio: 1/1;
  background-color: var(--benefactor-menu-icon-bg-color);
  border-radius: 50%;
  color: var(--benefactor-menu-icon-color);
  display: flex;
  font-family: 'Inter';
  font-size: var(--benefactor-menu-icons-font-size);
  font-weight: 600;
  justify-content: center;
  text-decoration: none;
  transition: .635s;
  width: 45px;
}

.benefactor-menu-icons a:hover {
  background-color: var(--benefactor-menu-icon-color);
  color: var(--benefactor-menu-icon-bg-color);
  transform: scale(1.135);
}

.benefactor-headline {
  background-color: #355085;
  height: 47.65rem;
  margin-top: var(--benefactor-nav-height);
  overflow: hidden;
  position: relative;
}

.benefactor-headline img {
  object-fit: cover;
  height: 100%;
  width: 100%;
}

.benefactor-headline span {
  align-items: center;
  color: var(--benefactor-headline-color);
  display: flex;
  font-size: var(--benefactor-headline-font-size);
  font-weight: 300;
  justify-content: center;
  margin: 5rem;
  inset: 0;
  position: absolute;
  text-shadow: 3px 5px 8px rgba(0, 0, 0, .135);
}

.benefactor-hero-nav {
  align-item: center;
  color: var(--benefactor-headline-color);
  font-weight: 300;
  display: flex;
  gap: 15px;
  inset: calc(100% - 17.35rem) 0 auto 0;
  justify-content: center;
  position: absolute;
}

.benefactor-hero-nav a {
  backdrop-filter: blur(8px);
  background-color: var(--benefactor-headline-link-hover-bg-color);
  border: 1px solid var(--benefactor-headline-link-border-color);
  border-radius: 8px;
  box-shadow: 0 7px 18px rgba(0, 0, 0, .435), inset 0 0 85px rgba(35, 35, 35, .236);
  color: var(--benefactor-headline-link-color);
  display: flex;
  height: fit-content;
  padding: 1rem 5rem;
  text-decoration: 0;
  transition: .635s;
}

.benefactor-hero-nav a:hover {
  background-color: var(--benefactor-headline-link-bg-color);
  border: 1px solid var(--benefactor-headline-link-border-color);
  box-shadow: 0 7px 18px rgba(0, 0, 0, .435), inset 0 0 85px rgba(35, 65, 135, 1);
}

.benefactor-hero-nav a:last-of-type {
  background-color: var(--benefactor-headline-link-bg-color);
  border: 1px solid var(--benefactor-headline-link-border-color);
  box-shadow: 0 7px 18px rgba(0, 0, 0, .435), inset 0 0 85px rgba(35, 135, 135, 1);
}

.benefactor-hero-nav a:last-of-type:hover {
  box-shadow: 0 7px 18px rgba(0, 0, 0, .435), inset 0 0 85px rgba(135, 85, 135, 1);
}

.benefactor-main {
  line-height: 5rem;
  padding: 5rem 25rem;
}

.benefactor-description-box + .benefactor-text {
  margin: 7.355rem 0 3.735rem 0;
}

.benefactor-text + .benefactor-text {
  margin: 17.35rem 0;
}

.benefactor-text > * > p {
  margin: 3.735rem 0;
}

.benefactor-grid-item-container {
  align-items: center;
  display: flex;
  flex-flow: row wrap;
  gap: 2rem;
  justify-content: space-around;
  margin: 5rem 0;
  width: 100%;
}

.benefactor-grid-item {
  aspect-ratio: 1/1;
  background-color: var(--benefactor-article-bg-color);
  border: .135rem solid var(--benefactor-menu-button-border-color);
  border-radius: 8px;
  display: flex;
  max-width: 39.35rem;
  position: relative;
}

.benefactor-grid-item figure {
  align-content: center;
  display: flex;
  justify-content: center;
  width: 100%;
}

.benefactor-grid-item img {
  aspect-ratio: 1/1;
  width: 46.35%;
}

.benefactor-grid-item .benefactor-label {
  align-items: center;
  background-color: var(--benefactor-label-bg-color);
  border-radius: 5px;
  display: flex;
  font-size: var(--benefactor-label-font-size);
  font-weight: 400;
  justify-content: center;
  color: var(--benefactor-label-color);
  inset: calc(100% - 4.735rem) 1rem 1.235rem 1rem;
  letter-spacing: .365rem;
  padding: .235rem 0 0 0;
  position: absolute;
  text-transform: uppercase;
}

.benefactor-grid-item:nth-of-type(2) .benefactor-label {
  filter: hue-rotate(135deg);
}

.benefactor-grid-item:nth-of-type(3) .benefactor-label {
  filter: hue-rotate(205deg) saturate(1.35) brightness(1.035);
}

.benefactor-description-box {
  border: 1px solid var(--benefactor-description-border-color);
  border-radius: 18px;
  margin: 2.35em 3.765rem;
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
}

.benefactor-description-box figure {
  align-items: center;
  display: flex;
  justify-content: center;
  padding: 5rem;
  width: auto;
}

.benefactor-description-box img {
  width: 76%;
}

.benefactor-description-box .benefactor-article {
  align-items: start;
  border-radius: 8px;
  flex: 1;
  justify-content: flex-start;
  flex-flow: column;
  margin: 3.765rem;
}

.benefactor-description-box .benefactor-article h2 {
  font-size: var(--benefactor-article-h2-font-size);
  font-weight: 300;
  margin: 8rem 0 2rem 0;
}

.benefactor-description-box .benefactor-article p {
  display: flex;
  font-weight: 300;
  margin: 0 5rem 2rem 0;
}

.benefactor-button-group {
  flex-flow: row wrap;
}

.benefactor-button-group * {
  flex: 1;
}

.benefactor-button-group a:last-child {
  filter: hue-rotate(-85deg);
}

.benefactor-button-group a:last-child:hover {
  filter: hue-rotate(-185deg) saturate(2) brightness(1.135) grayscale(.236);
}

.benefactor-button {
  background-color: var(--benefactor-button-bg-color);
  border-radius: 8px;
  color: var(--benefactor-button-color);
  margin: 2rem .5rem;
  padding: 1rem 5rem;
  text-align: center;
  text-decoration: none;
  transition: .435s;
  white-space: nowrap;
}

.benefactor-button:hover {
  filter: hue-rotate(35deg) saturate(1.36) brightness(1.135);
}

.benefactor-footer {
  background-color: var(--benefactor-footer-bg-color);
  color: var(--benefactor-footer-color);
  display: flex;
  flex-flow: column;
  min-height: 35rem;
}

.benefactor-footer > * {
  flex: 1;
}

.benefactor-footer-box-container {
  display: flex;
  flex-flow: row wrap;
  margin: 2rem 5rem 0 5rem;
}

.benefactor-footer-box {
  align-self: stretch;
  align-content: center;
  border: 2px solid var(--benefactor-footer-article-border-color);
  border-radius: 8px;
  display: flex;
  flex: 1;
  height: 100%;
  justify-content: center;
  margin: 2rem 1.35rem;
  padding: 1rem 2rem;
}

.benefactor-footer-link-box {
  margin: 2.35rem 1.35rem;
  padding: 0;
  width: 100%;
}

.benefactor-footer-link-box li:not(.benefactor-footer-headline) {
  display: flex;
  height: 5rem;
  margin: .735rem 0 0 .35rem;
  padding: .235rem 5.375rem .235rem 3.65rem;
  width: 100%;
}

.benefactor-footer-link-box li a {
  inset: 0;
  position: absolute;
}

.benefactor-footer-link-box li::after {
  aspect-ratio: 1/1;
  content: '>';
  font-family: 'Inter';
  font-weight: 400;
  font-size: 1.765rem;
  inset: auto 1.935rem auto auto;
  opacity: .135;
  position: absolute;
  transform: scaleX(.435) translateY(-.35rem);
  transition: .635s;
  width: 3px;
}

.benefactor-footer-link-box li::before {
  border: 1px solid transparent;
  content: '';
  inset: -.5rem 0 0 -2.5rem;
  opacity: 1;
  position: absolute;
  transition: .635s;
}

.benefactor-footer-link-box li:hover:before {
  border: 1px solid var(--benefactor-footer-article-border-color);
  opacity: 1;
}

.benefactor-footer-link-box li:hover:after {
  opacity: .735;
}

.benefactor-footer-address-box li:not(.benefactor-footer-headline) {
  margin: 0 0 0 -.835rem;
}

.benefactor-footer-address-box li:not(.benefactor-footer-headline) a {
  margin: 0 0 0 auto;
  width: fit-content;
}

.benefactor-footer-box ul {
  display: flex;
  flex-flow: column;
  justify-content: center;
  line-height: 4.35rem;
  list-style-type: none;
  margin: 2.35rem 5rem;
}

.benefactor-footer-box li {
  display: flex;
  font-size: var(--benefactor-footer-box-font-size);
  height: fit-content;
  position: relative;
}

.benefactor-footer-box a {
  color: inherit;
  font-size: inherit;
  height: 100%;
  opacity: .635;
  position: relative;
  text-decoration: none;
  transition: .736s;
  width: 100%;
}

.benefactor-footer-box a:hover {
  opacity: 1;
}

.benefactor-footer-box li a::after {
  aspect-ratio: 1/1;
  background-color: var(--benefactor-footer-color);
  border-radius: 50%;
  content: '';
  inset: 37.6% auto auto -2.35rem;
  opacity: 0;
  position: absolute;
  transition: .35s;
  width: 5px;
}

.benefactor-footer-box li a::before {
  background-color: var(--benefactor-footer-color);
  content: '';
  font-size: 2rem;
  height: 1px;
  inset: calc(50% - 3.5px) auto auto -.996rem;
  opacity: .365;
  position: absolute;
  transition: .35s;
  transition-delay: .135s;
  width: 5px;
}

.benefactor-footer-box li a:hover:before {
  opacity: 0;
  transform: translateX(-.736rem);
  width: 18px;
}

.benefactor-footer-box li a:hover:after {
  opacity: .135;
  transform: translateX(.736rem);
}

.benefactor-footer-headline {
  margin-left: -2.35rem;
}

.benefactor-footer-headline::before {
  display: none;
  font-weight: 400;
  margin-left: -15rem;
}

.benefactor-footer-headline::after {
  display: none;
  font-weight: 400;
  margin-left: -15rem;
}

.benefactor-footer-headline h2 {
  font-size: 115%;
  font-weight: 400;
}

.benefactor-footer .rx-logo {
  display: flex;
  justify-content: center;
}

.benefactor-footer .rx-logo img {
  height: 23.65rem;
}

@media only screen and (max-width: 1200px) {
  :root {
    font-size: 10px;
  }

  .benefactor-main {
    line-height: 5rem;
    padding: 5rem 11.5rem;
  }

  .benefactor-description-box {
    display: block;
    margin: 5rem -2.35rem;
    padding: .5rem;
    width: auto;
  }

  .benefactor-description-box figure img {
    width: 50%;
  }

  .benefactor-description-box .benefactor-article {
    font-size: 8px;
    margin: 2rem;
  }

  .benefactor-description-box .benefactor-article p {
    font-size: 2.35rem;
    margin: 2rem 0;
  }

  .benefactor-description-box .benefactor-article h2 {
    margin: 2rem 0;
  }

  .benefactor-description-box .benefactor-button {
    margin: 2rem .5rem;
    width: 100%;
  }
}

@media only screen and (max-width: 768px) {
  .benefactor-title {
    width: 100px;
  }

  .benefactor-headline span {
    align-items: flex-start;
    font-size: clamp(23px, 17.35vw, 37.6px);
    padding: 15% 0 0 0;
  }

  .benefactor-menu {
    position: fixed;
    bottom: 0;
    height: unset;
    left: 0;
  }

  .benefactor-menu-info {
    flex-flow: column;
  }

  .benefactor-menu-info figure {
    font-size: 0;
    aspect-ratio: 1/1;
    height: unset;
    margin: 0 auto;
    width: 47.635%;
  }

  .benefactor-menu-info h2 {
    align-items: center;
    display: flex;
    flex-flow: column;
    justify-content: center;
    margin: 10% auto 0 auto;
    padding: 0;
    text-align: center;
  }

  .benefactor-menu-info h2::after,
  .benefactor-menu-info h2::before {
    display: none;
  }

  .benefactor-menu-info h2 sub,
  .benefactor-menu-icons {
    inset: unset;
    margin: 5% auto;
    padding: 0;
    position: relative;
    text-align: center;
  }

  .benefactor-text article {
    display: flex;
    flex-flow: column;
  }

  .benefactor-description-box figure img {
    width: 100%;
  }

  .benefactor-text p {
    margin: 1rem 0;
  }

  .benefactor-photo-left,
  .benefactor-photo-right {
    float: none;
    margin: 5rem auto;
    width: 100%;
  }

  .benefactor-quote {
    float: none;
    order: -1;
    margin: 0;
    padding: 0 5rem;
    text-align: center;
    width: 100%;
  }

  .benefactor-main {
    padding: 5rem 5rem;
  }

  .benefactor-title span {
    display: none;
  }

  .benefactor-footer-box-container {
    display: block;
  }
}

@media only screen and (max-width: 560px) {
  .benefactor-hero-nav a {
    padding: 1rem 1rem 1rem 1.35rem;
    justify-content: center;
  }

  .benefactor-headline {
    height: 57.65rem;
  }

  .benefactor-headline span {
    align-items: flex-start;
    font-size: clamp(18px, 12.35vw, 32.6px);
    padding: 15% 0 0 0;
  }

  .benefactor-hero-nav {
    flex-flow: column;
    inset: calc(100% - 27.35rem) 0 auto 0;
    padding: 0 15%;
    text-align: center;
  }
}

@media only screen and (max-width: 300px) {
  .benefactor-promo-button {
    display: none;
  }
}
