/* v1.47: mobile homepage hero layout and Safari legacy iframe failure handling. */
/* Safari renders a secure donation action rather than an unusable legacy iframe. */
.donation-page .givebutter-native-safari { min-height:0!important; padding:24px 12px!important; }
.donation-page .givebutter-native-safari iframe { display:none!important; }
.donation-page .givebutter-native-safari .givebutter-safari-action { display:block!important; max-width:560px; }
.donation-page .givebutter-native-safari .givebutter-safari-fallback { display:none!important; }
.donation-page .givebutter-native-safari .givebutter-safari-action[hidden] { display:block!important; }
@media (max-width: 620px) {
  /* Separate photograph, heading and controls into non-overlapping regions. */
  .home .hero-section.hero-slider, body.home .hero-section.hero-slider {
    min-height: 850px!important; height:850px!important; max-height:none!important;
    overflow:hidden!important; background:#171013!important;
  }
  .home .hero-slide__media, body.home .hero-slide__media { bottom:auto!important; height:295px!important; }
  .home .hero-slide__media > img, .home .hero-slide__media video, body.home .hero-slide__media > img {
    width:100%!important;height:100%!important;object-fit:cover!important;
  }
  .home .hero-slide__scrim, body.home .hero-slide__scrim { background:linear-gradient(0deg,rgba(18,12,16,.6),transparent 55%)!important; }
  .home .hero-slide__inner, body.home .hero-slide__inner {
    position:relative!important; display:block!important; height:auto!important;
    padding:312px 18px 0!important; width:100%!important; max-width:100%!important;
  }
  .home .hero-slide__content, body.home .hero-slide__content {
    width:100%!important; max-width:100%!important; max-height:none!important;
    overflow:visible!important; padding:0!important; margin:0!important;
    background:none!important; text-align:left!important;
  }
  .home .hero-slide__content h1, .home .hero-slide__content h2 {
    font-size:clamp(1.85rem,7.8vw,2.55rem)!important; line-height:1.12!important;
    margin:0 0 10px!important; overflow-wrap:break-word;
  }
  .home .hero-slide__eyebrow { margin-bottom:11px!important; }
  .home .hero-slide__tagline { margin-bottom:10px!important; line-height:1.4!important; }
  .home .hero-slide__lede { display:none!important; }
  .home .hero-slide__actions { display:flex!important; flex-wrap:wrap!important; margin-top:14px!important; gap:8px!important; }
  .home .hero-slide__actions .button { min-height:42px!important; padding:10px 14px!important; }
  .home .hero-slider__chrome, body.home .hero-slider__chrome {
    position:absolute!important; left:50%!important; bottom:146px!important;
    width:calc(100% - 36px)!important; transform:translateX(-50%)!important;
    justify-content:center!important; padding:0!important; border:0!important;
    background:none!important; box-shadow:none!important;
  }
  .home .hero-slider__controls { margin:0 auto!important; justify-content:center!important; gap:7px!important; }
  .home .hero-slider__meta, .home .hero-cinema-hint { display:none!important; }
  .home .hero-trust-rail, body.home .hero-trust-rail {
    bottom:12px!important; left:50%!important; transform:translateX(-50%)!important;
    width:calc(100% - 24px)!important; max-width:none!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important; gap:6px!important;
  }
  .home .hero-trust-rail > div { min-width:0!important; min-height:52px!important; padding:6px!important; }
  /* Place text/photo cards apart rather than overlapping their photos. */
  .donate-photo-card, .feature-photo-card, .impact-photo-card { position:relative!important; inset:auto!important; margin:16px 0 0!important; }
  .donate-photo-frame, .donation-visual-story, .feature-photo { margin-bottom:16px!important; }
  .donate-photo-card strong, .feature-photo-card p, .impact-photo-card p { line-height:1.5!important; }
}
@media (max-width:380px) {
  .home .hero-section.hero-slider { min-height:890px!important;height:890px!important; }
  .home .hero-slider__chrome { bottom:153px!important; }
  .home .hero-slide__media { height:265px!important; }
  .home .hero-slide__inner { padding-top:282px!important; }
}
