/* MNH V22 FINAL — readability + gallery QA + responsive safeguards */

/* White overlay text must remain readable even when the image area underneath is bright. */
.hero:after{
  background:linear-gradient(90deg,rgba(3,20,38,.78) 0%,rgba(3,20,38,.58) 40%,rgba(3,20,38,.25) 68%,rgba(3,20,38,.10) 100%)!important;
}
.page-hero:after{
  background:linear-gradient(90deg,rgba(3,20,38,.76) 0%,rgba(3,20,38,.56) 43%,rgba(3,20,38,.22) 72%,rgba(3,20,38,.08) 100%)!important;
}
.image-banner:after{
  background:linear-gradient(90deg,rgba(3,20,38,.80) 0%,rgba(3,20,38,.58) 46%,rgba(3,20,38,.22) 74%,rgba(3,20,38,.08) 100%)!important;
}
.work-model-banner:before,
.story-hero:before,
.why-hero:before{
  background:linear-gradient(90deg,rgba(3,20,38,.80) 0%,rgba(3,20,38,.58) 46%,rgba(3,20,38,.24) 74%,rgba(3,20,38,.08) 100%)!important;
}
.project-card:after,
.market-path-card:after,
.ag-home-project-shade{
  background:linear-gradient(180deg,rgba(3,20,38,.08) 12%,rgba(3,20,38,.34) 54%,rgba(3,20,38,.94) 100%)!important;
}
.hero-content,.hero-copy,.page-hero-copy,.image-banner-copy,.story-hero-head,.story-hero-detail,.why-hero-copy,
.project-content,.market-path-copy,.ag-home-project-copy{
  text-shadow:0 2px 14px rgba(0,0,0,.50);
}

/* Gallery captions always have their own contrast surface; no dependence on image brightness. */
.gallery-stage:after{
  background:linear-gradient(180deg,rgba(3,20,38,.01) 48%,rgba(3,20,38,.18) 70%,rgba(3,20,38,.48) 100%)!important;
}
.gallery-caption,
.inner-page .gallery-caption{
  left:20px!important;
  bottom:18px!important;
  padding:8px 13px 8px 8px!important;
  border:1px solid rgba(255,255,255,.28)!important;
  border-radius:999px!important;
  background:rgba(3,20,38,.68)!important;
  color:#fff!important;
  text-shadow:0 1px 5px rgba(0,0,0,.72)!important;
  backdrop-filter:blur(7px);
  -webkit-backdrop-filter:blur(7px);
}
.gallery-caption [data-gallery-caption]{color:#fff!important}
.gallery-expand{background:rgba(3,20,38,.76)!important}

/* Form status is visually explicit but never overlays the submit controls. */
.form-status{margin-top:18px!important;border-radius:15px!important;padding:15px 18px!important;line-height:1.45!important}
.form-status.error{background:#fff0ec!important;border:1px solid #f1c4b8!important;color:#8d291f!important}
.form-status.success{background:#eef8f1!important;border:1px solid #bfdcc8!important;color:#245f37!important}

/* Keep product identity visible on smaller screens. */
@media(max-width:900px){
  .hero:after,.page-hero:after,.image-banner:after,.work-model-banner:before,.story-hero:before,.why-hero:before{
    background:linear-gradient(90deg,rgba(3,20,38,.78) 0%,rgba(3,20,38,.56) 62%,rgba(3,20,38,.25) 100%)!important;
  }
}
@media(max-width:650px){
  .gallery-caption,.inner-page .gallery-caption{left:12px!important;right:12px!important;bottom:12px!important;width:max-content;max-width:calc(100% - 24px);font-size:11.5px!important}
}
