/* V95 - site-wide public/mobile responsive polish. Desktop layouts intentionally unchanged. */
@media (max-width: 760px){
  html,body{max-width:100%;overflow-x:hidden}
  *,*::before,*::after{box-sizing:border-box}
  img,video,svg,canvas,iframe{max-width:100%;height:auto}
  p,h1,h2,h3,h4,h5,h6,a,button,label,span,strong,small{overflow-wrap:anywhere}
  input:not([type="checkbox"]):not([type="radio"]),select,textarea{max-width:100%;width:100%}
  table{max-width:100%;display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}

  /* Home: fix the charity/outreach card that became a narrow text column below its image. */
  .soh83-section-head{align-items:flex-start;gap:10px}
  .soh83-section-head>div{min-width:0;flex:1}
  .soh83-section-head h2{font-size:clamp(1.8rem,9vw,2.45rem);line-height:1.05}
  .soh83-section-head a{flex:0 0 auto;font-size:.95rem}
  .soh83-charity-event{display:grid;grid-template-columns:1fr!important;gap:12px;padding:12px;align-items:stretch}
  .soh83-charity-event .soh83-datebox{grid-column:1!important;width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 15px;text-align:left}
  .soh83-charity-event .soh83-datebox strong{font-size:1.5rem;line-height:1;margin:0}
  .soh83-charity-event .soh83-datebox span{font-size:.78rem;margin-left:auto}
  .soh83-charity-event>img{grid-column:1!important;width:100%;height:auto!important;aspect-ratio:16/9;max-height:260px;object-fit:cover;border-radius:12px}
  .soh83-charity-event>div:last-child{grid-column:1!important;width:100%;min-width:0;display:block}
  .soh83-charity-event h3{font-size:1.35rem;line-height:1.2;margin:2px 0 8px}
  .soh83-charity-event p{width:100%;max-width:none;margin:0 0 14px;line-height:1.55}
  .soh83-charity-event .soh83-btn{width:100%;min-height:48px}

  /* Home page remaining cards: use one clean column on narrow phones. */
  .soh83-feature-grid,.soh83-secondary-grid,.soh83-about-strip,.soh83-cta-row{grid-template-columns:1fr!important}
  .soh83-about-strip{gap:14px}
  .soh83-about-strip em{text-align:left}
  .soh83-cta{grid-template-columns:1fr!important;gap:10px}
  .soh83-cta a{grid-column:1!important;width:100%;text-align:center}
  .soh83-yahweh-card{padding:18px}
  .soh83-card,.soh83-charity-latest,.soh83-yahweh-card{min-width:0}

  /* Charity + Support */
  .soh82-charity-donate,.soh82-donation-grid,.soh82-event-support-grid,.soh82-next-event-inner,.soh82-gratitude{grid-template-columns:1fr!important}
  .soh82-purpose-grid,.soh82-impact-grid,.soh82-supporter-grid,.soh82-stats,.soh82-form-grid{grid-template-columns:1fr!important}
  .soh82-amounts{grid-template-columns:1fr 1fr!important}
  .soh82-card,.soh82-impact-card{min-width:0}

  /* Booking / Join / community / FAQ / media / about / events */
  .v69-book-grid,.v69-form-grid,.v69-status-grid,.v69-track-row,
  .join14-layout,.join14-grid,
  .about13-two,.about13-music-grid,.about13-splitcards,.about13-glance-grid,.contact13-grid,
  .faq65-grid,.media-grid,.media-platform-grid,.platform-grid,.featured-video-grid,
  .v66-events-grid,.v67-card-grid,.v67-photo-grid,.v67-platform-grid,
  .inquiry-grid,.impact-grid,.give-grid,.card-grid{grid-template-columns:1fr!important}

  /* Music / albums */
  .v63-home-grid,.v63-music-layout,.v63-about,.v63-cta-grid,.v63-footer-grid{grid-template-columns:1fr!important}
  .v63-featured-wrap{grid-template-columns:1fr!important}
  .v63-featured-wrap img{max-width:260px}
  .album-open-grid,.catalog-grid{grid-template-columns:1fr!important}

  /* Keep small repeat grids usable rather than creating very narrow columns. */
  .soh83-release-grid,.v63-release-grid,.v63-albums,.soh83-social-grid,.v63-socials{grid-template-columns:repeat(2,minmax(0,1fr))!important}

  /* Generic public card safeguards */
  .card,.cards,.side-card,.impact-card,.platform-card,.featured-video-card,.media-gallery-card,.placeholder-card,
  .join14-formcard,.booking45-card,.v69-form-card,.soh-track-card,.song-player-card{min-width:0;max-width:100%}
  .hero-actions,.soh83-hero-actions,.soh83-inline-actions,.v69-success-actions,.v69-track-actions{gap:10px}
}

@media (max-width: 430px){
  .soh82-amounts{grid-template-columns:1fr!important}
  .soh83-release-grid,.v63-release-grid,.v63-albums,.soh83-social-grid,.v63-socials{grid-template-columns:1fr!important}
  .soh83-section-head{flex-wrap:wrap}
  .soh83-section-head a{margin-left:auto}
}


/* V95 cross-page safeguards for public and member-facing phone layouts. */
@media (max-width:760px){
  main,.container,.v67-shell,.v63-shell,.soh82-shell,.soh83-shell,.join-flow-shell,.bricoss-shell{max-width:100%!important}
  .two-col,.three-col,.four-col,.split,.content-grid,.feature-grid,.stats-grid,.form-grid,.details-grid,.dashboard-grid{grid-template-columns:1fr!important}
  .actions,.button-row,.form-actions,.cta-actions{flex-wrap:wrap}
  .actions>a,.actions>button,.button-row>a,.button-row>button,.form-actions>a,.form-actions>button{max-width:100%}
  .card img,.feature-card img,.event-card img,.article-card img,.outreach-card img{width:100%;height:auto;object-fit:cover}
  .member-register-card,.member-setup-card,.auth-card,.login-card{width:min(100%,680px)!important;margin-inline:auto;padding-inline:16px}
  .member-register-card .grid,.member-setup-card .grid{grid-template-columns:1fr!important}
}
