.alignwide {
  margin-left: -80px;
  margin-right: -80px;
  max-width: 100vw;
}
.alignfull {
  margin-left: calc(-100vw / 2 + 100% / 2);
  margin-right: calc(-100vw / 2 + 100% / 2);
  max-width: 100vw;
}
.wp-block-table td {
  vertical-align: top;
}

.wp-block-group.alignfull {
  position: relative;
  padding: 90px 0;
  background-color: #fafafa;
}
.wp-block-group.alignfull:nth-child(even) {
  background-color: #f3f3f3;
}

.wp-block-group.alignfull > * {
  position: relative;
  z-index: 2;
}

.wp-block-group.alignfull h2.has-text-align-center {
  margin-bottom: 30px;
}
.wp-block-image.is-style-circle-mask img,
.wp-block-image.is-style-rounded img {
  border-radius: 15px;
}

.wp-block-group.alignfull > * {
  position: relative;
}
/* .wp-block-image,
  .wp-block-video {
    margin: 0 0 30px 0;
  } */

.wp-block-image.is-style-shadow img {
  box-shadow: 2px 2px 15px rgba(0, 0, 0, 0.05);
  border-radius: 5px;
}

.is-style-shadow {
  margin-top: 15px;
  filter: grayscale(20%);
}
.is-style-shadow:hover {
  filter: grayscale(0%);
}

p:empty {
  display: none;
}

.wp-block-columns {
  margin: 0;
}
.wp-block-buttons.aligncenter {
  text-align: center;
  justify-content: center;
}

.wp-block-quote {
  background-color: #fff;
  box-shadow: 2px 2px 15px rgba(0, 0, 0, 0.05);
  padding: 15px;
}
.wp-block-quote p {
  font-style: italic;
}
.wp-block-quote > p:last-child {
  margin-bottom: 0;
}

.wp-block-separator.is-style-wide {
  margin: 30px 0;
  border-bottom: 2px #aaa solid;
}

.wp-block-button__link,
.wp-block-button__link:hover {
  background-color: #007ac1;
  color: #fff;
}
.wp-block-button .wp-block-button__link.is-style-outline:not(.has-background),
.wp-block-button.is-style-outline
  > .wp-block-button__link:not(.has-background) {
  border-color: #007ac1;
  color: #007ac1;
}

/* Image alignment */
.alignleft {
    float: left;
    margin: 0 1.5em 1em 0;
}

.alignright {
    float: right;
    margin: 0 0 1em 1.5em;
}

.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.wp-block-image img {
    max-width: 100%;
    height: auto;
}

.wp-block-image.aligncenter {
    text-align: center;
}
.wp-caption {
    max-width: 100%;
}

.wp-caption img {
    display: block;
}

.wp-caption-text {
    font-size: 0.875rem;
    color: #666;
    margin-top: 0.5em;
    text-align: center;
}

/* Gutenberg image alignment */
.wp-block-image > .alignleft {
    float: left;
    margin: 0 1.5em 1em 0;
}

.wp-block-image > .alignright {
    float: right;
    margin: 0 0 1em 1.5em;
}

.wp-block-image > .aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}
.entry-content::after {
    content: "";
    display: table;
    clear: both;
}
/* Allow text to wrap next to aligned images */
.wp-block-image:has(> figure.alignleft),
.wp-block-image:has(> figure.alignright) {
    width: auto;
}
