.capitol-partners {
  background: var(--capitol-bg);
  color: #000000;
}

.capitol-partners__inner {
  --partners-gap: 64px;
  max-width: 1920px;
  margin: 0 auto;
  padding: 88px var(--capitol-primary-gutter) 88px;
}

.capitol-partners__section + .capitol-partners__section { margin-top: 90px; }

.capitol-partners h2 {
  margin: 0 0 54px;
  font-size: calc(58px * var(--capitol-font-scale));
  line-height: 1.1;
  font-weight: 700;
  text-transform: uppercase;
}

.capitol-partners__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0 var(--partners-gap);
  margin: 0;
  padding: 0;
  list-style: none;
}

.capitol-partners__item {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  min-width: 0;
  height: 280px;
  padding: 28px 22px;
  border-top: 1px solid #808080;
}

.capitol-partners__logo {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 0;
  height: 100%;
  color: inherit;
}

.capitol-partners__logo img {
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 200px;
  object-fit: contain;
  mix-blend-mode: multiply;
  transition: transform 340ms cubic-bezier(0.22, 1, 0.36, 1);
}

a.capitol-partners__logo:hover img,
a.capitol-partners__logo:focus-visible img { transform: scale(1.035); }

.capitol-partners__item--double { gap: 12px; }
.capitol-partners__item--double .capitol-partners__logo { height: calc(50% - 6px); }
.capitol-partners__item--double img { max-height: 90px; }
.capitol-partners__section--patrons .capitol-partners__item { height: 180px; padding: 50px 0 28px; align-items: flex-start; }
.capitol-partners__section--patrons .capitol-partners__logo { width: 124%; max-width: 475px; justify-content: flex-start; }
.capitol-partners__section--patrons img { max-height: 72px; }

body.a11y-contrast .capitol-partners { color: #ffffff; }
body.a11y-contrast .capitol-partners__logo { background: #ffffff; }

@media (max-width: 1600px) {
  .capitol-partners__inner { --partners-gap: 48px; padding-top: 72px; padding-bottom: 64px; }
  .capitol-partners h2 { font-size: calc(48px * var(--capitol-font-scale)); margin-bottom: 44px; }
  .capitol-partners__item { height: 230px; padding: 24px 18px; }
  .capitol-partners__logo img { max-height: 166px; }
  .capitol-partners__item--double img { max-height: 72px; }
  .capitol-partners__section + .capitol-partners__section { margin-top: 70px; }
  .capitol-partners__section--patrons .capitol-partners__item { height: 155px; }
}

@media (max-width: 1000px) {
  .capitol-partners__inner { --partners-gap: 36px; padding-top: 48px; }
  .capitol-partners h2 { font-size: calc(40px * var(--capitol-font-scale)); margin-bottom: 32px; }
  .capitol-partners__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .capitol-partners__section + .capitol-partners__section { margin-top: 52px; }
  .capitol-partners__section--patrons .capitol-partners__logo { width: 100%; }
}

@media (max-width: 520px) {
  .capitol-partners__inner { --partners-gap: 22px; padding-top: 36px; padding-bottom: 40px; }
  .capitol-partners h2 { font-size: calc(32px * var(--capitol-font-scale)); }
  .capitol-partners__item { height: 145px; padding: 18px 4px; }
  .capitol-partners__logo img { max-height: 105px; }
  .capitol-partners__item--double { gap: 8px; }
  .capitol-partners__item--double img { max-height: 45px; }
  .capitol-partners__section--patrons .capitol-partners__item { grid-column: 1 / -1; height: 105px; padding: 28px 0; }
  .capitol-partners__section--patrons .capitol-partners__logo { max-width: 320px; }
}
