article {
  font-weight: normal;
  width: 100%;
  margin-top: calc(var(--height-header) + var(--height-top-bar));
  overflow: auto;
}

@media (min-width: 45rem) {
  article {
    margin-top: 0;
  }
}

article > :not(.cta):not(iframe):not(:only-child):last-child {
  margin-bottom: calc(var(--spacing-vertical) * 2);
}

.wp-block-columns {
  margin-bottom: var(--spacing-vertical);
}

article .wp-block-social-links,
article .wp-block-columns {
  margin-top: var(--spacing-vertical);
  margin-bottom: var(--spacing-vertical);
  max-width: var(--width-max-section);
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--spacing-horizontal);
  padding-right: var(--spacing-horizontal);
}

.wp-block-column {
  margin-top: var(--spacing-vertical);
}

.wp-block-column figure img {
  height: auto !important;
}

.wp-block-column:first-child {
  margin-top: 0;
}

@media (min-width: 45rem) {
  .wp-block-column {
    margin-top: 0;
  }
}

.wp-block-column p:first-child {
  padding-top: 0;
}

.wp-block-column p:last-child {
  padding-bottom: 0;
  margin-bottom: 0;
}

article .wp-block-columns p {
  padding-left: 0;
  padding-right: 0;
}

.wp-block-media-text {
  margin: calc(var(--spacing-vertical) * 2) 0;
}

.wp-block-media-text__content {
  padding-right: 0;
  padding-left: calc(var(--spacing-horizontal) * 2);
}

@media (min-width: 45rem) {
  .wp-block-media-text__content {
    max-width: calc(
      ((var(--width-max-section) - (var(--spacing-horizontal) * 2) / 2) / 2)
    );
  }
}

.wp-block-image figure.aligncenter img {
  height: auto !important;
}

.wp-block-buttons {
  background-color: var(--color-blue-light);
  padding: var(--spacing-vertical);
}

article .wp-block-buttons .wp-block-button {
  margin-bottom: 0;
  text-align: center;
}

article .wp-block-group__inner-container h2 {
  max-width: calc(var(--width-max-section) - (var(--spacing-horizontal) * 2));
  margin: calc(var(--spacing-vertical) * 2) auto var(--spacing-vertical) auto;
}

article p + form,
form + p {
  margin-top: calc(var(--spacing-vertical) * 2);
}

article ol,
article ul {
  margin: 0 auto;
}

article ol,
article ul {
  list-style-position: inside;
  padding: var(--spacing-vertical) var(--spacing-horizontal);
}

article ol ul,
article ul ol,
article ul ul,
article ol ol {
  padding-top: 0;
  padding-bottom: 0;
}

article ul.columns-2,
article ol.columns-2,
article ul.columns-3,
article ol.columns-3 {
  font-size: var(--font-size-smaller);
  margin-left: auto;
}

article .wp-block-pullquote {
  margin: 0;
}

article > .wp-block-pullquote blockquote,
article .wp-block-column .wp-block-pullquote {
  border-color: var(--color-text);
  border-style: solid;
  border-width: 0.2rem;
  border-left-width: 0;
  border-right-width: 0;
  margin-left: auto;
  margin-right: auto;
}

@media (min-width: 45rem) {
  article .columns-2 {
    columns: 2;
  }

  article .columns-3 {
    columns: 3;
  }
}

article iframe {
  float: left;
  width: 100%;
}

article .wp-block-group {
  margin-bottom: calc(var(--spacing-vertical) * 2);
  padding-left: var(--spacing-horizontal);
  padding-right: var(--spacing-horizontal);
}

article iframe:not(:last-child) {
  margin-bottom: calc(var(--spacing-vertical) * 2);
}

/*
.linkbutton figure {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  width: 100%;
  overflow: auto;
  margin: 0;
  padding: 0;
}

.linkbutton figure img {
  width: 80%;
  height: auto;
  margin-bottom: 4rem;
}

.linkbutton figcaption,
.linkbutton figcaption a {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  margin: 0;
}

.linkbutton figcaption {
  height: 100%;
}

.linkbutton figcaption a {
  height: 100%;
  line-height: 2rem;
  background: rgba(0, 0, 0, 0.5);
  color: white;
  text-decoration: none;
  font-weight: bold;
  text-align: center;
  display: flex;
  justify-content: center;
  align-content: flex-end;
}

*/

.linkbuttons .wp-block-cover,
.linkbutton {
  position: relative;
  background-color: unset !important;
  padding: 0;
  text-align: center;
  min-height: unset;
  height: 14rem !important;
  display: block;
}

.linkbuttons .wp-block-cover__inner-container,
.linkbutton .wp-block-cover__inner-container {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.wp-block-cover .has-large-font-size {
  font-size: 3rem;
}

.linkbuttons .wp-block-cover__image-background,
.linkbutton .wp-block-cover__image-background {
  width: 8rem !important;
  height: 8rem !important;
  margin-top: 2rem !important;
  position: relative !important;
  opacity: 0.5;
  object-fit: unset !important;
  transition: 0.2s ease all;
}

.linkbuttons .wp-block-cover:hover .wp-block-cover__image-background,
.linkbutton:hover .wp-block-cover__image-background {
  opacity: 1;
  transform: rotate(15deg);
}

.linkbuttons p,
.linkbutton p {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
}

.linkbuttons a,
.linkbutton a {
  display: block;
  flex-basis: 100%;
  height: 2rem;
  font-size: 1rem;
  line-height: 2rem;
  font-weight: bold;
  text-decoration: none;
  color: var(--color-text);
  padding-bottom: 1rem;
}

.linkbuttons .wp-block-cover:hover a,
.linkbutton:hover a {
  text-decoration: underline;
}

.linkbuttons a:before,
.linkbutton a:before {
  content: "";
  display: block;
  height: calc(100% - 2rem);
}

.small {
  font-size: var(--font-size-small);
  line-height: var(--line-height-small);
}

.smaller {
  font-size: var(--font-size-smaller);
  line-height: var(--line-height-smaller);
}

.center-content,
.center-content .wp-block-image {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}

.center-content .wp-block-image {
  flex-basis: 80%;
  margin: 0;
  justify-content: center; /* align horizontal */
  align-items: center; /* align vertical */
}

article h2 + .wp-block-columns {
  margin-top: 0;
}

article .card-profile {
  padding-left: 0;
  padding-right: 0;
  margin-top: var(--spacing-vertical);
  position: relative;
}

article .card-profile h2 {
  text-align: center;
  font-size: var(--font-size);
  line-height: calc(var(--font-size-large) * var(--line-height));
  margin: 0;
  padding: 0;
  width: 100%;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

article .card-profile:after {
  content: "";
  width: 100%;
  height: var(--spacing-vertical);
  background-image: var(--background-gradient);
  display: block;
  position: absolute;
  top: calc(0px - var(--spacing-vertical));
  left: 0;
}

article .card-profile figcaption {
  margin: 0;
  font-size: var(--font-size-small);
  line-height: var(--line-height-small);
  text-align: center;
}

article .cta a,
article .cta a:visited,
article .cta {
  color: var(--color-white);
  position: relative;
  overflow: hidden;
}

article .cta ul,
article .cta h2 {
  margin-left: 0;
  padding-left: 0;
  padding-right: 0;
}

article .cta:before {
  content: "";
  background-image: url(../img/logo-white.svg);
  background-repeat: no-repeat;
  background-size: 30rem;
  background-position: center;
  position: absolute;
  opacity: 0.1;
  width: 200%;
  height: 200%;
  top: -50%;
  left: -50%;
  transform: rotate(27deg);
  z-index: 0;
}

.cta > div {
  z-index: 1;
  position: relative;
}

.cta .wp-block-buttons {
  margin-left: 0;
  margin-right: 0;
  margin-top: var(--spacing-vertical);
  margin-bottom: calc(var(--spacing-vertical) * 2);
  padding: 0;
}

.cta .wp-block-buttons > .wp-block-button {
  margin-top: 0;
  margin-bottom: 0;
  margin-left: auto;
  margin-right: auto;
}

.cta .wp-block-buttons > .wp-block-button > a {
  margin: 0;
}