/* Soul Garden hero only. Existing page copy and shared styles are retained. */
.c-soul-garden-hero .fx-image-zoom:hover > img { transform: none; }
@media (min-width: 70.01rem) {
  .c-soul-garden-hero { isolation: isolate; }
  .c-soul-garden-hero::before,
  .c-soul-garden-hero::after { display: none; }
  .c-soul-garden-hero.c-hero--compact .c-hero__inner {
    grid-template-columns: minmax(0, 1fr);
    min-height: max(42rem, 56.25vw);
    padding-block: clamp(2.5rem, 4vw, 5rem);
  }
  .c-soul-garden-hero .c-hero__copy {
    width: 100%;
    max-width: min(40rem, 44vw);
    z-index: 2;
  }
  .c-soul-garden-hero > .c-hero__inner > .c-media-frame--hero {
    position: absolute;
    inset: 0;
    z-index: 0;
    width: 100%;
    height: 100%;
    min-height: 0;
    max-width: none;
    margin: 0;
    aspect-ratio: auto;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    background: transparent;
  }
  .c-soul-garden-hero .c-media-frame--hero img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
  }
}
@media (max-width: 70rem) {
  .c-soul-garden-hero .c-media-frame--hero {
    min-height: 0;
    aspect-ratio: 4 / 5;
  }
  .c-soul-garden-hero .c-media-frame--hero img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
    object-position: center;
  }
}
/* Mobile copy stays in normal flow above the standalone portrait image. */
@media (max-width: 48rem) {
  .c-soul-garden-hero.c-hero--compact .c-hero__inner {
    grid-template-columns: minmax(0, 1fr);
  }
  .c-soul-garden-hero .c-hero__copy { display: block; }
  .c-soul-garden-hero .c-media-frame--hero {
    position: relative;
    order: initial;
    margin-top: 2rem;
  }
}
