.article-block {
  padding-top: calc(var(--block-vertical-padding) - 20px);
  padding-bottom: var(--block-bottom-padding);
}
.article-block ~ .article-block {
  padding-top: var(--block-vertical-padding);
}
.article-layout .sidebar__inner {
  display: flex;
  flex-direction: column;
  gap: 30px;
}
.sidebar-box {
  background-color: var(--color-grey-extra-light);
  color: var(--color-grey-dark);
  border-radius: 10px;
  padding: 20px;
}
.sidebar-box__heading {
  margin-bottom: 20px;
}
.sidebar-img {
  width: 100%;
  max-width: 100%;
  height: auto;
}
.article {
  padding-bottom: var(--block-vertical-padding);
}
.article__date {
  display: block;
  color: #909090;
  font-family: var(--font-family-secondary);
  text-transform: uppercase;
  font-weight: 500;
  font-size: 1.375rem;
  line-height: 1.5rem;
  margin-top: calc(-1.375rem - 6px);
}
.article > * + * {
  margin-top: 40px;
}
.article > .article__date + * {
  margin-top: 5px;
}
.donation > * + * {
  margin-top: 30px;
}
.rte {
  max-width: 780px;
}
.rte > * + *,
.rte .intro > * + * {
  margin-top: 20px;
}
.article > .callout + * {
  margin-top: 50px;
}
.article > .block-header + * {
  margin-top: 0;
}
.article .quote {
  margin-right: 0;
  margin-left: 0;
  max-width: 443px;
}
.sidebar .quote {
  margin-right: 0;
  margin-left: 0;
}
.sidebar .box__content {
  padding: 20px;
}
.rte > * + h2 {
  margin-top: 50px;
}
.rte a {
  text-decoration: underline;
  color: var(--color-blue);
}
.rte strong {
  font-weight: 500;
}
.rte ul,
.rte ol {
  font-weight: 500;
  margin-left: 1.2em;
}
.rte li {
  padding-left: 0.5em;
}
.rte ul li::marker {
  content: '\2014';
}
.rte figcaption {
  padding: 0;
  margin: 20px 0 0 0;
}
.rte .small,
.rte figcaption {
  font-size: 0.875rem;
  line-height: 1.5rem;
}
.rte img {
  width: 100%;
  height: auto;
  border-radius: 5px;
}
.back-link {
  font-family: var(--font-family-secondary);
  text-transform: uppercase;
  color: var(--color-yellow);
  font-size: 1.375rem;
  line-height: 1.5;
  display: flex;
  align-items: center;
  gap: 10px;
}
.article__news-heading {
  color: var(--color-yellow);
}

.callout {
  border-radius: 3px;
  border: 2px solid var(--color-grey-extra-light);
  padding: 10px;
}
.callout a {
  color: var(--theme-color);
  overflow-wrap: break-word;
  word-wrap: break-word;

  -ms-word-break: break-all;
  /* This is the dangerous one in WebKit, as it breaks things wherever */
  word-break: break-all;
  /* Instead use this non-standard one: */
  word-break: break-word;

  /* Adds a hyphen where the word breaks, if supported (No Blink) */
  -ms-hyphens: auto;
  -moz-hyphens: auto;
  -webkit-hyphens: auto;
  hyphens: auto;
}
.donate-sidebar {
  accent-color: var(--theme-color);
}
.donate-sidebar__radio {
  width: 20px;
  height: 20px;
  border: none;
}
.donate-sidebar {
  display: grid;
	grid-template-columns: 1fr 1fr 1fr;
  gap: 10px;
}
.donate-sidebar__fieldset {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px;
  background-color: var(--color-white);
  border-radius: 3px;
  grid-column: auto;
}
.donate-sidebar__fieldset--wide {
  grid-column: auto / span 3;
}
.donate-sidebar__label {
  font-family: var(--font-family-secondary);
  font-size: 1.375rem;
  font-weight: 500;
  line-height: 1.5rem;
  letter-spacing: 0;
  text-transform: uppercase;
}
.donate-sidebar__fieldset--submit {
  padding: 0;
  background: none;
  padding-top: 10px;
}
.sidebar-small-link {
  display: block;
  padding-top: 12px;
  text-decoration: underline;
  font-size: 0.875rem;
  color: var(--color-grey-mid);
}
.sidebar-form {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.sidebar-form__submit {
  margin-top: 10px;
  align-self: start;
}

.article-block-video > * + *,
.article-block-carousel > * + * {
  margin-top: 20px;
}
.carousel-slide__caption {
  margin-top: 20px;
}
.carousel-slide__img {
  border-radius: 5px;
  width: 100%;
  height: auto;
}
.carousel .splide__arrow {
  position: relative;
}
.carousel .splide__arrows {
  margin-top: 20px;
  display: flex;
  gap: 10px;
}
.carousel .splide__arrow:disabled {
  opacity: 0.5;
}
.carousel .splide__arrow--prev,
.carousel .splide__arrow--next {
  left: auto;
  right: auto;
  top: auto;
}
.carousel .splide__arrow svg {
  width: 30px;
  height: 30px;
}

.rte .blocks-gallery-grid {
  list-style-type: none;
  margin-left: 0;
}
.rte .blocks-gallery-grid li {
  padding-left: 0;
}
.rte .blocks-gallery-grid li::marker {
  content: "";
}
.rte figcaption em {
  font-style: normal;
}
.rte hr {
  display: none;
}


@media (min-width: 640px) {
  .article-layout .sidebar__inner {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
  .rte .blocks-gallery-grid {
    display: flex;
    gap: var(--gutter);
  }
}

@media (min-width: 840px) {
  .article-layout .sidebar__inner {
    grid-template-columns: 1fr 1fr 1fr;
  }
}

@media (min-width: 960px) {
  .article-block {
    padding-top: var(--block-vertical-padding);
  }
  .article-layout {
    display: grid;
    grid-template-columns: repeat(var(--grid-cols), 1fr);
    gap: calc(var(--gutter) * 2);
  }
  .article-layout .sidebar {
    grid-column: 1 / span 4;
    grid-row: 1;
  }
  .article-layout .sidebar__inner {
    display: flex;
    position: sticky;
    top: calc(var(--block-vertical-padding) + 10px);
    padding-bottom: var(--block-vertical-padding);
  }
  .article-layout .article {
    grid-column: 5 / span 8;
    grid-row: 1;
  }
  .callout {
    padding: calc(var(--block-vertical-padding) / 2);
  }
}

@media (min-width: 1050px) {
  .article-layout .sidebar {
    grid-column: 1 / span 4;
  }
}

@media (min-width: 1260px) {
  .article-layout .article {
    grid-column: 4 / span 9;
    padding-left: 52px;
  }
  .article-layout .sidebar {
    grid-column: 1 / span 3;
  }
}