/* === Layout Overlays: Group, Columns, Cover, Media-Text, Heading, Button, Quote, Separator === */

/* === Group Block Styles === */
.wp-block-group.is-style-bordered {
  border: 1px solid #ccc;
  padding: 1.5em;
  border-radius: 4px;
}

.wp-block-group.is-style-shadowed {
  box-shadow: 0 2px 6px rgba(0,0,0,0.1);
  padding: 1.5em;
}

/* === Columns Block Styles === */
.wp-block-columns.is-style-gapless {
  gap: 0 !important;
}

.wp-block-columns.is-style-asymmetric > .wp-block-column:first-child {
  flex-basis: 30% !important;
}
.wp-block-columns.is-style-asymmetric > .wp-block-column:last-child {
  flex-basis: 70% !important;
}

/* Responsive fallback for asymmetric columns on small screens */
@media (max-width: 999px) {
  .wp-block-columns.is-style-asymmetric {
    flex-direction: column;
  }
  .wp-block-columns.is-style-asymmetric > .wp-block-column {
    flex-basis: auto !important;
    width: 100%;
  }
}

/* Ensures multiple images stack with spacing inside columns (single consolidated rule) */
.wp-block-column .wp-block-image {
  display: block;
  margin-bottom: 1.5em;
}
.wp-block-column .wp-block-image img {
  width: 100%;
  height: auto;
}

/* Optional caption styling */
.wp-block-image figcaption {
  font-size: 0.9em;
  color: #555;
  text-align: center;
}

/* === Cover Block Styles === */
.wp-block-cover.is-style-fixed-bg {
  background-attachment: fixed;
}

.wp-block-cover.is-style-dark-overlay .wp-block-cover__overlay {
  background-color: rgba(0,0,0,0.5);
}

/* === Media & Text Block Styles === */
.wp-block-media-text.is-style-vertical-stack {
  flex-direction: column;
}
.wp-block-media-text.is-style-vertical-stack .wp-block-media-text__media,
.wp-block-media-text.is-style-vertical-stack .wp-block-media-text__content {
  width: 100%;
}

/* === Heading Block Styles === */
.wp-block-heading.is-style-accent {
  color: #005a9c;
  border-bottom: 2px solid #005a9c;
  padding-bottom: 0.3em;
}

/* === Button Block Styles === */
.wp-block-button.is-style-outline .wp-block-button__link {
  background: transparent;
  border: 2px solid currentColor;
  color: inherit;
}

.wp-block-button.is-style-ghost .wp-block-button__link {
  background: none;
  color: #555;
  text-decoration: underline;
}

/* === Quote Block Styles === */
.wp-block-quote.is-style-pull {
  font-size: 1.4em;
  font-style: italic;
  margin-left: 2em;
  border-left: 4px solid #ccc;
  padding-left: 1em;
}

/* === Separator Block Styles === */
.wp-block-separator.is-style-dotted {
  border-top: 2px dotted #ccc;
}

.wp-block-separator.is-style-gradient {
  border: none;
  height: 4px;
  background: linear-gradient(to right, #005a9c, #00bcd4);
}

/* === Stewardship-grade spacer support === */
.wp-block-spacer {
  width: 100%;
  min-height: 1em;
  max-height: 4em;
  background: transparent;
  clear: both;
}

/* Editor-only guide line for authors — scope to editor with wrapper if present */
.editor-styles-wrapper .wp-block-spacer::before,
.wp-block-spacer.editor-only::before {
  content: "";
  display: block;
  height: 1px;
  background-color: #eee;
}
