/* Preserve the approved desktop banner. Phones use one continuous pink blend. */
.life-theme .life-hero-photo.owner-banner-photo {
  object-fit: contain;
  object-position: right center;
  background: #fff;
}
@media (max-width: 580px) {
  .life-theme .life-hero {
    isolation: isolate;
    position: relative;
    min-height: 0;
    overflow: hidden;
    padding-bottom: 28px;
    background: #e06ca1;
  }
  .life-theme .life-hero-photo.owner-banner-photo {
    position: absolute;
    inset: 0 0 auto;
    width: 100%;
    height: clamp(365px, 105vw, 440px);
    object-fit: contain;
    object-position: center top;
    opacity: 1;
    z-index: 0;
  }
  .life-theme .hero-shade {
    display: block;
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    background: linear-gradient(180deg, rgba(224,108,161,.09) 0, rgba(224,108,161,.12) 150px, rgba(224,108,161,.60) 270px, #e06ca1 395px, #e06ca1 100%);
  }
  .life-theme .life-hero-content {
    position: relative;
    z-index: 1;
    padding-top: clamp(270px, 78vw, 315px);
    padding-bottom: 25px;
  }
  .life-theme .life-hero-content .eyebrow { font-size: 8px; line-height: 1.6; letter-spacing: 1.15px; margin-bottom: 16px; }
  .life-theme .life-hero h1 { font-size: clamp(45px, 13vw, 57px); line-height: 1.04; }
  .life-theme .life-hero-description { font-size: 13px; }
  .life-theme .life-hero-actions .button { font-size: 12px; min-height: 46px; }
  .life-theme .hero-dedication { position: relative; inset: auto; margin: 0 6%; z-index: 1; }
  .life-theme .hero-product-note {
    position: relative;
    inset: auto;
    width: min(310px, 88%);
    margin: 24px 6% 0;
    transform: none;
  }
}
