.background-color {
  width: 100vw;
  position: relative;
  left: 50%;
  right: 50%;
  background-color: var(--blue-dark);
  padding: 0 5rem;
  row-gap: 0;
  margin: 100px -50vw;
  color: white;
}

.background-color::before,
.background-color::after {
  content: "";
  position: absolute;
  left: 0;
  width: 100vw;
  height: 100px;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: center;
  color: white;
}

.background-color::before {
  top: -100px;
  background-image: url("data:image/svg+xml;utf8,<svg viewBox='0 0 1000 100' preserveAspectRatio='none' xmlns='http://www.w3.org/2000/svg'><path d='M0 50 C175 25, 200 25, 500 50 S 800 75, 1000 50 L1000 100 L0 100' fill='%230D1833'/></svg>");
}

.background-color::after {
  bottom: -100px;
  transform: rotate(180deg);
  background-image: url("data:image/svg+xml;utf8,<svg viewBox='0 0 1000 100' preserveAspectRatio='none' xmlns='http://www.w3.org/2000/svg'><path d='M0 50 C175 25, 200 25, 500 50 S 800 75, 1000 50 L1000 100 L0 100' fill='%230D1833'/></svg>");
}

.background-color-warm {
  position: relative;
  max-width: 1200px;
  margin: 1.75em auto;
  padding: 5rem 0;
  row-gap: 0;
  color: white;
}

.background-color-warm::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100vw;
  background-color: #9C8F7C;
  z-index: -1;
}

/* Media & Text - Full bleed image left, text right */
.media-text-full {
  display: block;
  position: relative;
  width: 100vw;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
}

.media-text-full .wp-block-media-text__media {
  position: absolute;
  top: 0;
  left: 0;
  width: 50%;
  max-width: 960px;
  height: 100%;
  margin: 0;
  grid-column: unset;
  grid-row: unset;
}

.media-text-full .wp-block-media-text__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.media-text-full .wp-block-media-text__content {
  width: 50%;
  margin-left: 50%;
  padding: 3rem 5rem;
  max-width: 600px;
  grid-column: unset;
  grid-row: unset;
}
