/** Styled cover blocks */

.wp-block-cover.is-style-themed {
  position: relative;
  transition: all 0.3s ease;
}

.wp-block-cover.is-style-themed .wp-block-cover__background {
  transition:
    background-color 0.3s ease,
    opacity 0.3s ease;
}

.wp-block-cover.is-style-themed:hover .wp-block-cover__image-background {
  transition: filter 0.3s ease 0.15s;
}

.wp-block-cover.is-style-themed .wp-block-cover__inner-container {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
  margin: 0 auto;
  padding: 0.75em 1.25em;
  transition: transform 0.3s ease;
}

.wp-block-cover.alignfull.is-style-themed .wp-block-cover__inner-container {
  max-width: var(--wide-size);
}

.wp-block-cover.is-style-themed .wp-block-cover__inner-container * {
  width: auto;
  margin-left: 0 !important;
  margin-right: 0 !important;
  text-align: right;
  text-shadow: 0 2px 3px rgba(0, 0, 0, 0.3);
}

.wp-block-cover.is-style-themed .wp-block-cover__inner-container a {
  text-decoration: none;
}

.wp-block-cover.is-style-themed .wp-block-cover__inner-container a::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
}

.wp-block-cover.is-style-themed:has(a):hover .wp-block-cover__background {
  opacity: 0.75;
  background-color: var(--wp--preset--color--accent-1);
}

.wp-block-cover.is-style-themed:has(a):hover .wp-block-cover__image-background {
  filter: saturate(0);
}

@media (max-width: 600px) {
  .wp-block-group.is-layout-grid:has(> .wp-block-cover.is-style-themed) {
    display: flex !important;
    flex-direction: column;
  }

  .wp-block-group.is-layout-grid > .wp-block-cover.is-style-themed {
    min-height: 200px;
    width: 100%;
  }
}

@media (max-width: 900px) {
  .wp-block-group.is-layout-grid > .wp-block-cover.is-style-themed {
    min-height: 200px;
  }
}

/** Projects menu */

.projects-menu a {
  text-decoration: none;
}

/** Masonry post template */

.wp-block-post-template.is-style-masonry {
  display: flex !important;
  flex-wrap: wrap;
  gap: var(--wp--preset--spacing--20);
  opacity: 0;
  transition: opacity 0.4s;
}

.wp-block-post-template.is-style-masonry > li {
  flex-basis: 100%;
  width: 100%;
  margin: 0 !important;
}

/* Fade transition for the grid */

.wp-block-post-template.is-style-masonry.grid-fade {
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.4s;
}

.wp-block-post-template.is-style-masonry.grid-visible {
  opacity: 1;
  pointer-events: auto;
  transition: opacity 0.4s;
}

/** Styled cover blocks */

.wp-block-cover.is-style-themed {
  position: relative;
  transition: all 0.3s ease;
}

.wp-block-cover.is-style-themed .wp-block-cover__background {
  transition:
    background-color 0.3s ease,
    opacity 0.3s ease;
}

.wp-block-cover.is-style-themed:hover .wp-block-cover__image-background {
  transition: filter 0.3s ease 0.15s;
}

.wp-block-cover.is-style-themed .wp-block-cover__inner-container {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
  margin: 0 auto;
  padding: 0.75em 1.25em;
  transition: transform 0.3s ease;
}

.wp-block-cover.alignfull.is-style-themed .wp-block-cover__inner-container {
  max-width: var(--wide-size);
}

.wp-block-cover.is-style-themed .wp-block-cover__inner-container * {
  width: auto;
  margin-left: 0 !important;
  margin-right: 0 !important;
  text-align: right;
  text-shadow: 0 2px 3px rgba(0, 0, 0, 0.3);
}

.wp-block-cover.is-style-themed .wp-block-cover__inner-container a {
  text-decoration: none;
}

.wp-block-cover.is-style-themed .wp-block-cover__inner-container a::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
}

.wp-block-cover.is-style-themed:has(a):hover .wp-block-cover__background {
  opacity: 0.75;
  background-color: var(--wp--preset--color--accent-1);
}

.wp-block-cover.is-style-themed:has(a):hover .wp-block-cover__image-background {
  filter: saturate(0);
}

/** Projects menu */

.projects-menu a {
  text-decoration: none;
}

.strasman-project-category-link.is-active {
  color: var(--wp--preset--color--accent-1);
}

/** Masonry post template */

.wp-block-post-template.is-style-masonry {
  display: flex !important;
  flex-wrap: wrap;
  gap: var(--wp--preset--spacing--20);
  opacity: 0;
  transition: opacity 0.4s;
}

.wp-block-post-template.is-style-masonry > li {
  flex-basis: 100%;
  width: 100%;
  margin: 0 !important;
}

/* Fade transition for the grid */

.wp-block-post-template.is-style-masonry.grid-fade {
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.4s;
}

.wp-block-post-template.is-style-masonry.grid-visible {
  opacity: 1;
  pointer-events: auto;
  transition: opacity 0.4s;
}
