
.sa-editor-has-image {
  position:relative !important;
  overflow:hidden !important;
}

.sa-editor-has-image::before,
.sa-editor-has-image::after {
  display:none !important;
}

.sa-editor-image-frame {
  position:absolute;
  inset:0;
  z-index:1;
  width:100%;
  height:100%;
  margin:0;
}

.sa-editor-image {
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}

.sa-editor-has-image .sa-about-art-note,
.sa-editor-has-image .sa-host-portrait-note {
  position:absolute !important;
  z-index:2;
}

.sa-about-founder-portrait.sa-editor-has-image .sa-about-founder-placeholder {
  display:none !important;
}


/* ==========================================================
   v0.9.10 — selected live-image sizing refinements
   Only applies when a Page Editor replacement image is present.
   ========================================================== */

/*
 * About → About Sit Awhile
 * Keep the approved hero panel size, but stop the uploaded image from
 * feeling oversized/cropped. Give it breathing room and show the full image.
 */
.sa-about-page .sa-about-art.sa-editor-has-image .sa-editor-image-frame {
  inset: 7%;
  width: auto;
  height: auto;
  border-radius: 2rem 1rem 2rem 1rem;
  overflow: hidden;
}

.sa-about-page .sa-about-art.sa-editor-has-image .sa-editor-image {
  object-fit: contain;
  object-position: center center;
}

/*
 * Membership → Sit Awhile Membership
 * Same treatment as the About hero: slightly smaller inside its existing
 * design panel rather than filling/cropping edge-to-edge.
 */
.sa-membership-page .sa-member-hero-art.sa-editor-has-image .sa-editor-image-frame {
  inset: 7%;
  width: auto;
  height: auto;
  border-radius: 2rem 1rem 2rem 1rem;
  overflow: hidden;
}

.sa-membership-page .sa-member-hero-art.sa-editor-has-image .sa-editor-image {
  object-fit: contain;
  object-position: center center;
}

/*
 * Membership → Your personal journey
 * Keep the whole image centred within the panel.
 */
.sa-membership-page .sa-member-journey-art.sa-editor-has-image .sa-editor-image-frame {
  inset: 4%;
  width: auto;
  height: auto;
}

.sa-membership-page .sa-member-journey-art.sa-editor-has-image .sa-editor-image {
  object-fit: contain;
  object-position: center center !important;
}

/*
 * Membership → Mentoring
 * Give taller/longer artwork enough vertical room and show the complete
 * image rather than cropping the top and bottom.
 */
.sa-membership-page .sa-member-mentoring-art.sa-editor-has-image {
  min-height: clamp(30rem, 42vw, 38rem);
}

.sa-membership-page .sa-member-mentoring-art.sa-editor-has-image .sa-editor-image-frame {
  inset: 3%;
  width: auto;
  height: auto;
}

.sa-membership-page .sa-member-mentoring-art.sa-editor-has-image .sa-editor-image {
  object-fit: contain;
  object-position: center center;
}

@media (max-width: 1000px) {
  .sa-membership-page .sa-member-mentoring-art.sa-editor-has-image {
    min-height: clamp(28rem, 70vw, 36rem);
  }
}

@media (max-width: 640px) {
  .sa-about-page .sa-about-art.sa-editor-has-image .sa-editor-image-frame,
  .sa-membership-page .sa-member-hero-art.sa-editor-has-image .sa-editor-image-frame {
    inset: 4%;
  }

  .sa-membership-page .sa-member-journey-art.sa-editor-has-image .sa-editor-image-frame {
    inset: 2.5%;
  }

  .sa-membership-page .sa-member-mentoring-art.sa-editor-has-image {
    min-height: 27rem;
  }

  .sa-membership-page .sa-member-mentoring-art.sa-editor-has-image .sa-editor-image-frame {
    inset: 2.5%;
  }
}


/* ==========================================================
   v0.9.11 — make live replacement images match Page Editor
   The editor preview is now the visual reference.
   ========================================================== */

/*
 * The Page Editor preview fills its image tile with the selected image.
 * Mirror that behaviour on the live page instead of adding extra inset
 * whitespace or a different crop/height treatment.
 */

/* About → About Sit Awhile */
.sa-about-page .sa-about-art.sa-editor-has-image .sa-editor-image-frame {
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  border-radius: inherit !important;
  overflow: hidden;
}

.sa-about-page .sa-about-art.sa-editor-has-image .sa-editor-image {
  object-fit: cover !important;
  object-position: center center !important;
}

/* Membership → Sit Awhile Membership */
.sa-membership-page .sa-member-hero-art.sa-editor-has-image .sa-editor-image-frame {
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  border-radius: inherit !important;
  overflow: hidden;
}

.sa-membership-page .sa-member-hero-art.sa-editor-has-image .sa-editor-image {
  object-fit: cover !important;
  object-position: center center !important;
}

/* Membership → Your personal journey */
.sa-membership-page .sa-member-journey-art.sa-editor-has-image .sa-editor-image-frame {
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  border-radius: inherit !important;
  overflow: hidden;
}

.sa-membership-page .sa-member-journey-art.sa-editor-has-image .sa-editor-image {
  object-fit: cover !important;
  object-position: center center !important;
}

/*
 * Membership → Mentoring
 * Return to the same panel proportions used by the page design/editor
 * instead of the extra-tall v0.9.10 treatment.
 */
.sa-membership-page .sa-member-mentoring-art.sa-editor-has-image {
  min-height: clamp(21rem, 31vw, 27rem) !important;
}

.sa-membership-page .sa-member-mentoring-art.sa-editor-has-image .sa-editor-image-frame {
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  border-radius: inherit !important;
  overflow: hidden;
}

.sa-membership-page .sa-member-mentoring-art.sa-editor-has-image .sa-editor-image {
  object-fit: cover !important;
  object-position: center center !important;
}

@media (max-width: 1000px) {
  .sa-membership-page .sa-member-mentoring-art.sa-editor-has-image {
    min-height: clamp(21rem, 31vw, 27rem) !important;
  }
}

@media (max-width: 640px) {
  .sa-membership-page .sa-member-mentoring-art.sa-editor-has-image {
    min-height: 20rem !important;
  }
}


/* ==========================================================
   v0.9.12 — live two-column image layout mirrors Page Editor
   The GREEN Page Editor is the visual reference.
   ========================================================== */

@media (min-width: 1001px) {

  /*
   * Page Editor reference:
   * inner width ≈ 64rem
   * columns = 1.16fr / .84fr
   * gap = 3.5rem
   * image tile height = 285px
   */

  /* About → About Sit Awhile */
  .sa-about-page .sa-about-hero-inner {
    width: min(calc(100% - (var(--sa-page-gutter) * 2)), 64rem) !important;
    max-width: 64rem !important;
  }

  .sa-about-page .sa-about-hero-grid {
    grid-template-columns: minmax(0, 1.16fr) minmax(0, .84fr) !important;
    gap: 3.5rem !important;
    align-items: center !important;
  }

  .sa-about-page .sa-about-art.sa-editor-has-image {
    width: 100% !important;
    min-height: 285px !important;
    height: 285px !important;
    margin: 0 !important;
  }

  /* Membership → hero */
  .sa-membership-page .sa-member-hero-grid {
    width: min(calc(100% - (var(--sa-page-gutter) * 2)), 64rem) !important;
    max-width: 64rem !important;
    grid-template-columns: minmax(0, 1.16fr) minmax(0, .84fr) !important;
    gap: 3.5rem !important;
    align-items: center !important;
  }

  .sa-membership-page .sa-member-hero-art.sa-editor-has-image {
    width: 100% !important;
    min-height: 285px !important;
    height: 285px !important;
    margin: 0 !important;
  }

  /*
   * Membership → Your personal journey
   * Editor has image on the LEFT, so that image gets the wider 1.16 column.
   */
  .sa-membership-page .sa-member-journey-grid {
    width: min(calc(100% - (var(--sa-page-gutter) * 2)), 64rem) !important;
    max-width: 64rem !important;
    grid-template-columns: minmax(0, 1.16fr) minmax(0, .84fr) !important;
    gap: 3.5rem !important;
    align-items: center !important;
  }

  .sa-membership-page .sa-member-journey-art.sa-editor-has-image {
    width: 100% !important;
    min-height: 285px !important;
    height: 285px !important;
    margin: 0 !important;
    align-self: center !important;
  }

  /*
   * Membership → Mentoring
   * Editor has wording/card on LEFT and image on RIGHT, so the image is
   * the narrower .84 column.
   */
  .sa-membership-page .sa-member-mentoring-grid {
    width: min(calc(100% - (var(--sa-page-gutter) * 2)), 64rem) !important;
    max-width: 64rem !important;
    grid-template-columns: minmax(0, 1.16fr) minmax(0, .84fr) !important;
    gap: 3.5rem !important;
    align-items: center !important;
  }

  .sa-membership-page .sa-member-mentoring-art.sa-editor-has-image {
    width: 100% !important;
    min-height: 285px !important;
    height: 285px !important;
    margin: 0 !important;
    align-self: center !important;
  }
}

/*
 * Keep replacement images centred inside the now-matched panels.
 */
.sa-about-page .sa-about-art.sa-editor-has-image .sa-editor-image,
.sa-membership-page .sa-member-hero-art.sa-editor-has-image .sa-editor-image,
.sa-membership-page .sa-member-journey-art.sa-editor-has-image .sa-editor-image,
.sa-membership-page .sa-member-mentoring-art.sa-editor-has-image .sa-editor-image {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
}

/*
 * Tablet/mobile remain single-column just like the existing responsive site.
 * Only normalise the replacement-image height so it does not carry desktop
 * proportions into a narrow screen.
 */
@media (max-width: 1000px) {
  .sa-about-page .sa-about-art.sa-editor-has-image,
  .sa-membership-page .sa-member-hero-art.sa-editor-has-image,
  .sa-membership-page .sa-member-journey-art.sa-editor-has-image,
  .sa-membership-page .sa-member-mentoring-art.sa-editor-has-image {
    width: min(100%, 38rem) !important;
    min-height: 285px !important;
    height: 285px !important;
    margin-inline: auto !important;
  }
}

@media (max-width: 640px) {
  .sa-about-page .sa-about-art.sa-editor-has-image,
  .sa-membership-page .sa-member-hero-art.sa-editor-has-image,
  .sa-membership-page .sa-member-journey-art.sa-editor-has-image,
  .sa-membership-page .sa-member-mentoring-art.sa-editor-has-image {
    min-height: 230px !important;
    height: 230px !important;
  }
}


/* ==========================================================
   v0.9.13 — Membership mentoring image made longer
   User request: make the Mentoring image longer so more of it is visible.
   ========================================================== */

@media (min-width: 1001px) {
  .sa-membership-page .sa-member-mentoring-art.sa-editor-has-image {
    min-height: 360px !important;
    height: 360px !important;
  }
}

@media (max-width: 1000px) {
  .sa-membership-page .sa-member-mentoring-art.sa-editor-has-image {
    min-height: 320px !important;
    height: 320px !important;
  }
}

@media (max-width: 640px) {
  .sa-membership-page .sa-member-mentoring-art.sa-editor-has-image {
    min-height: 280px !important;
    height: 280px !important;
  }
}


/* ==========================================================
   v0.9.14 — Mentoring image proportion matches editor
   ========================================================== */

@media (min-width: 1001px) {
  /*
   * The editor preview uses a taller, near-portrait image tile.
   * Let width determine height through aspect-ratio rather than forcing
   * the older landscape-style fixed height.
   */
  .sa-membership-page .sa-member-mentoring-art.sa-editor-has-image {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: 0.94 / 1 !important;
    align-self: center !important;
    justify-self: stretch !important;
  }

  .sa-membership-page .sa-member-mentoring-art.sa-editor-has-image .sa-editor-image-frame {
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
  }

  .sa-membership-page .sa-member-mentoring-art.sa-editor-has-image .sa-editor-image {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
  }
}

@media (max-width: 1000px) {
  .sa-membership-page .sa-member-mentoring-art.sa-editor-has-image {
    width: min(100%, 34rem) !important;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: 0.96 / 1 !important;
    margin-inline: auto !important;
  }
}

@media (max-width: 640px) {
  .sa-membership-page .sa-member-mentoring-art.sa-editor-has-image {
    width: 100% !important;
    aspect-ratio: 1 / 1 !important;
  }
}


/* ==========================================================
   v0.9.15 — Membership Mentoring live section follows editor
   LEFT screenshot = Page Editor reference.
   ========================================================== */

/*
 * The Page Editor shows this section as open page content rather than a
 * large white card, so mirror that presentation on the live page.
 */
.sa-membership-page .sa-member-mentoring-card {
  max-width: none !important;
  padding: 0 !important;
  border: 0 !important;
  border-left: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

/*
 * These labels exist in the older live-page markup but are not part of the
 * approved Page Editor preview. Removing them makes both views consistent.
 */
.sa-membership-page .sa-member-mentoring-card h3 {
  display: none !important;
}

/*
 * Align both columns from the top, rather than vertically centring the image
 * against a much taller text card.
 */
@media (min-width: 1001px) {
  .sa-membership-page .sa-member-mentoring-grid {
    align-items: start !important;
  }

  .sa-membership-page .sa-member-mentoring-grid > .wp-block-column {
    align-self: start !important;
  }

  /*
   * Make the live image taller like the editor tile and keep it at the top
   * of the Mentoring section.
   */
  .sa-membership-page .sa-member-mentoring-art.sa-editor-has-image {
    width: 100% !important;
    height: 320px !important;
    min-height: 320px !important;
    aspect-ratio: auto !important;
    align-self: start !important;
    justify-self: stretch !important;
    margin-top: 0 !important;
  }

  .sa-membership-page .sa-member-mentoring-art.sa-editor-has-image .sa-editor-image-frame {
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
  }

  .sa-membership-page .sa-member-mentoring-art.sa-editor-has-image .sa-editor-image {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
  }
}

@media (max-width: 1000px) {
  .sa-membership-page .sa-member-mentoring-art.sa-editor-has-image {
    height: 310px !important;
    min-height: 310px !important;
    aspect-ratio: auto !important;
  }
}

@media (max-width: 640px) {
  .sa-membership-page .sa-member-mentoring-art.sa-editor-has-image {
    height: 270px !important;
    min-height: 270px !important;
  }
}


/* ==========================================================
   v0.9.16 — centre Membership Mentoring image vertically
   ========================================================== */

@media (min-width: 1001px) {
  .sa-membership-page .sa-member-mentoring-grid {
    align-items: center !important;
  }

  .sa-membership-page .sa-member-mentoring-grid > .wp-block-column {
    align-self: center !important;
  }

  .sa-membership-page .sa-member-mentoring-art.sa-editor-has-image {
    align-self: center !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
}


/* ==========================================================
   v0.9.17 — Your Personal Journey image 50px narrower each side
   ========================================================== */

@media (min-width: 1001px) {
  .sa-membership-page .sa-member-journey-art.sa-editor-has-image {
    width: calc(100% - 100px) !important;
    justify-self: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}


/* ==========================================================
   v0.9.18 — live editor text colour + paragraphs
   ========================================================== */

.sa-pe-live-text {
  color: inherit;
}

.sa-pe-live-has-paragraphs {
  display: block;
}

.sa-pe-live-paragraph {
  display: block;
}

.sa-pe-live-paragraph + .sa-pe-live-paragraph {
  margin-top: 1em;
}


/* ==========================================================
   v0.9.19 — independent paragraph blocks on live pages
   ========================================================== */

.sa-pe-added-paragraph {
  display: block;
  margin-top: 1em;
  margin-bottom: 0;
}


/* ==========================================================
   v0.9.22 — Membership Journey image fit + larger rounded frame
   - stop top/bottom cropping on the journey image
   - make the image panel feel larger so the copy does not overpower it
   - use a much rounder / circle-like frame for this artwork
   ========================================================== */

@media (min-width: 1001px) {
  .sa-membership-page .sa-member-journey-grid {
    width: min(calc(100% - (var(--sa-page-gutter) * 2)), 68rem) !important;
    max-width: 68rem !important;
    grid-template-columns: minmax(0, 1.18fr) minmax(0, .82fr) !important;
    gap: 3.75rem !important;
    align-items: center !important;
  }

  .sa-membership-page .sa-member-journey-grid > .wp-block-column:first-child {
    align-self: center !important;
  }

  .sa-membership-page .sa-member-journey-art.sa-editor-has-image {
    width: 100% !important;
    min-height: 360px !important;
    height: 360px !important;
    justify-self: center !important;
    align-self: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
    border-radius: 999px !important;
    overflow: hidden !important;
  }

  .sa-membership-page .sa-member-journey-art.sa-editor-has-image .sa-editor-image-frame {
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    display: grid !important;
    place-items: center !important;
    border-radius: inherit !important;
    overflow: hidden !important;
  }

  .sa-membership-page .sa-member-journey-art.sa-editor-has-image .sa-editor-image {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
  }
}

@media (max-width: 1000px) {
  .sa-membership-page .sa-member-journey-art.sa-editor-has-image {
    width: min(100%, 42rem) !important;
    min-height: 320px !important;
    height: 320px !important;
    margin-inline: auto !important;
    border-radius: 2rem !important;
    overflow: hidden !important;
  }

  .sa-membership-page .sa-member-journey-art.sa-editor-has-image .sa-editor-image-frame {
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    display: grid !important;
    place-items: center !important;
    border-radius: inherit !important;
    overflow: hidden !important;
  }

  .sa-membership-page .sa-member-journey-art.sa-editor-has-image .sa-editor-image {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
  }
}

@media (max-width: 640px) {
  .sa-membership-page .sa-member-journey-art.sa-editor-has-image {
    min-height: 250px !important;
    height: 250px !important;
    border-radius: 1.5rem !important;
  }
}


/* ==========================================================
   v0.9.23 — Your Personal Journey: true circular image
   ========================================================== */

@media (min-width: 1001px) {
  .sa-membership-page .sa-member-journey-grid {
    width: min(calc(100% - (var(--sa-page-gutter) * 2)), 72rem) !important;
    max-width: 72rem !important;
    grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr) !important;
    gap: clamp(3.5rem, 5vw, 5rem) !important;
    align-items: center !important;
  }

  .sa-membership-page .sa-member-journey-grid > .wp-block-column:first-child {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
  }

  .sa-membership-page .sa-member-journey-art.sa-editor-has-image {
    width: min(100%, 33rem) !important;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: 1 / 1 !important;
    margin: 0 auto !important;
    border-radius: 50% !important;
    overflow: hidden !important;
    background: #F7F1E7 !important;
    box-shadow: 0 20px 45px rgba(59,57,53,.08) !important;
  }

  .sa-membership-page .sa-member-journey-art.sa-editor-has-image .sa-editor-image-frame {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    display: grid !important;
    place-items: center !important;
    border-radius: 50% !important;
    overflow: hidden !important;
  }

  .sa-membership-page .sa-member-journey-art.sa-editor-has-image .sa-editor-image {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
    border-radius: 50% !important;
  }
}

@media (max-width: 1000px) {
  .sa-membership-page .sa-member-journey-art.sa-editor-has-image {
    width: min(88vw, 31rem) !important;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: 1 / 1 !important;
    margin-inline: auto !important;
    border-radius: 50% !important;
    overflow: hidden !important;
    background: #F7F1E7 !important;
  }

  .sa-membership-page .sa-member-journey-art.sa-editor-has-image .sa-editor-image-frame {
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    border-radius: 50% !important;
    overflow: hidden !important;
  }

  .sa-membership-page .sa-member-journey-art.sa-editor-has-image .sa-editor-image {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
    border-radius: 50% !important;
  }
}


/* ==========================================================
   v0.9.34 — universal live replacement-image auto-fit
   ========================================================== */

/*
 * The image BOX keeps the approved section size/shape.
 * The selected IMAGE automatically fits inside it without distortion
 * or top/bottom/side cropping.
 */
.sa-editor-has-image .sa-editor-image-frame {
  display: grid !important;
  place-items: center !important;
  background: #f7f1e7 !important;
}

.sa-editor-has-image .sa-editor-image {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
}

/* Keep the already-approved Personal Journey box circular. */
.sa-membership-page .sa-member-journey-art.sa-editor-has-image,
.sa-membership-page .sa-member-journey-art.sa-editor-has-image .sa-editor-image-frame {
  border-radius: 50% !important;
  overflow: hidden !important;
}


/* ==========================================================
   v0.9.35 — live frame settings mirror Page Editor
   ========================================================== */

.sa-editor-has-image .sa-editor-image-frame,
.sa-editor-has-image .sa-editor-image {
  border-radius: inherit !important;
}

.sa-editor-has-image .sa-editor-image-frame {
  overflow: hidden !important;
}


/* ==========================================================
   v0.9.36 — frame ratio + fit mode shared with Page Editor
   ========================================================== */

.sa-editor-has-image .sa-editor-image {
  object-fit: var(--sa-frame-fit, cover) !important;
}


/* v0.9.41 — optional image caption */
.sa-editor-image-caption {
  width: min(100%, 620px);
  margin: 8px auto 0;
  color: #6f6b64;
  font-size: .78rem;
  line-height: 1.45;
  text-align: center;
}


/* ==========================================================
   v0.9.47 — live block headings span their parent block
   ========================================================== */

:where(
  .sa-about-page,
  .sa-host-page,
  .sa-membership-page,
  .sa-first-chair-page,
  .sa-workshops-page,
  .sa-workshop-september,
  .sa-workshop-october,
  .sa-workshop-november,
  .sa-waiting-page,
  .sa-faq-page,
  .sa-contact-page
) :is(h2, h3) {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}


/* ==========================================================
   v0.9.48 — exact live block-heading width overrides
   ========================================================== */

/*
 * Some older page-specific selectors (notably .sa-wd-body-copy h2 with
 * max-width:16ch) were more directly tied to individual workshop sections.
 * These exact selectors guarantee the heading uses the full width supplied
 * by its own parent block.
 */
.sa-wd-body-copy > h2,
.sa-wd-body-copy > h3,
.sa-wd-explore > h2,
.sa-wd-explore > h3,
.sa-wd-member-panel > h2,
.sa-wd-member-panel > h3,
.sa-wd-cta-panel > h2,
.sa-wd-cta-panel > h3,
.sa-ws-member-card > h2,
.sa-ws-member-card > h3,
.sa-ws-card > h2,
.sa-ws-card > h3 {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}


/* ==========================================================
   v0.9.49 — FINAL inner-page live heading-width rule
   ========================================================== */

/*
 * All primary block headings (H1/H2/H3) use all width supplied by the
 * current block/card/column. No page-specific heading max-width survives
 * this final rule.
 */
body :where(
  .sa-about-page,
  .sa-host-page,
  .sa-membership-page,
  .sa-first-chair-page,
  .sa-workshops-page,
  .sa-workshop-september,
  .sa-workshop-october,
  .sa-workshop-november,
  .sa-waiting-page,
  .sa-faq-page,
  .sa-contact-page
) :is(h1, h2, h3) {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
  hyphens: none !important;
}

/* Explicit workshop hero/detail safeguards against legacy 11ch / 12ch caps. */
body :is(
  .sa-workshop-september,
  .sa-workshop-october,
  .sa-workshop-november
) :is(
  .sa-wd-hero h1,
  .sa-wd-body-copy h2,
  .sa-wd-explore h2,
  .sa-wd-explore h3,
  .sa-wd-member-panel h2,
  .sa-wd-member-panel h3,
  .sa-wd-cta-panel h2,
  .sa-wd-cta-panel h3
) {
  width: 100% !important;
  max-width: none !important;
}
