@import url('https://fonts.googleapis.com/css2?family=Work+Sans:ital,wght@0,100..900;1,100..900&display=swap');

body {
  background: #e8e8ec;
  font-family:
    Work Sans,
    sans-serif;
}

body > * {
  max-width: 1024px;
  margin-inline: auto;
}

@media all and (max-width: 1024px) {
  body > * {
    padding-inline: 8px;
  }
}

body > .field__items > .field__item {
  margin-block: 24px 40px;
}

.field--name-field-paragraph-title {
  font-size: 1.75rem;
  line-height: 2rem;
  font-weight: 600;
  margin-bottom: 24px;
}

.paragraph--type--title-and-image .field--name-field-image {
  text-align: center;
}

.field--name-field-image img {
  max-width: 100%;
}

.paragraph--type--title-image-and-text
  .paragraph-title-image-and-text__wrapper {
  display: flex;
  align-items: center;
  gap: 8px 24px;
  flex-direction: column;
}

.paragraph--type--title-image-and-text .field--name-field-image {
  flex: 0 0 50%;
  text-align: center;
}

.paragraph--type--title-image-and-text .field--name-field-body {
  align-self: flex-start;
}

.paragraph--type--table .field--name-field-row {
  display: flex;
  flex-direction: column;
}

.paragraph--type--table .field--name-field-row .paragraph--type--row {
  display: flex;
  border-bottom: 1px solid #c6c6cf;
  margin-bottom: 8px;
}

.paragraph--type--table
  .field--name-field-row
  .paragraph--type--row
  .paragraph-row__left {
  font-weight: 600;
  flex: 0 0 50%;
}

.paragraph--type--table
  .field--name-field-row
  .paragraph--type--row
  .paragraph-row__left,
.paragraph--type--table
  .field--name-field-row
  .paragraph--type--row
  .paragraph-row__right {
  margin: 0;
  padding: 8px;
}

.paragraph--type--table
  .field--name-field-row
  .paragraph--type--row
  .paragraph-row__right {
  flex: 0 0 calc(50% - 24px);
}

.paragraph--type--table
  .field--name-field-row
  .paragraph--type--row
  .paragraph-row__left
  p,
.paragraph--type--table
  .field--name-field-row
  .paragraph--type--row
  .paragraph-row__right
  p {
  margin: 0;
}

.paragraph--type--title-and-text img {
  max-width: 100%;
}

@media all and (min-width: 400px) {
  .field--name-field-image img {
    height: 400px;
  }
}

@media all and (min-width: 768px) {
  .paragraph--type--title-image-and-text
    .paragraph-title-image-and-text__wrapper {
    flex-direction: row;
  }

  .paragraph--type--title-and-image .field--name-field-image {
    width: 50%;
  }

  .paragraph--type--title-image-and-text .field--name-field-body {
    align-self: unset;
  }
}
