/* Revised opt-in proposal only. Source image reserves its left 36% for copy. */
.saints-icon-hero--mosaic::before { display: none; }
.saints-icon-hero--mosaic .saints-icon-hero__art {
 width: min(100%, 1560px);
 left: 50%;
 right: auto;
 transform: translateX(-50%);
 /* Match the quieter institutional mastheads; leave title and copy at full contrast. */
 opacity: .46;
 -webkit-mask-image: linear-gradient(90deg, transparent, #000 9%, #000 98%, transparent);
 mask-image: linear-gradient(90deg, transparent, #000 9%, #000 98%, transparent);
}
.saints-icon-hero--mosaic .saints-icon-hero__art img {
 top: 50%;
 width: 100%;
 height: auto;
 transform: translateY(-50%);
 filter: saturate(.48) contrast(.88) brightness(.94);
 -webkit-mask-image: linear-gradient(180deg, transparent, #000 8%, #000 84%, transparent);
 mask-image: linear-gradient(180deg, transparent, #000 8%, #000 84%, transparent);
}
.saints-icon-hero--mosaic .saints-icon-hero__art::after {
 background: linear-gradient(90deg, #0b2b3f 2%, rgba(11,43,63,.7) 20%, transparent 40%);
}
.saints-icon-hero--mosaic .saints-icon-hero__copy { max-width: 28%; }
@media (min-width: 821px) and (max-width: 1100px) {
 .saints-icon-hero--mosaic h1 { font-size: clamp(2rem, 3.8vw, 2.6rem); }
}
@media (max-width: 820px) {
 .saints-icon-hero--mosaic .saints-icon-hero__copy { max-width: 100%; }
 .saints-icon-hero--mosaic .saints-icon-hero__art {
  width: 100%;
  height: auto;
  aspect-ratio: 1.92 / 1;
  left: auto;
  right: auto;
  transform: none;
  margin-block: .9rem 1rem;
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 3%, #000 99%, transparent);
  mask-image: linear-gradient(90deg, transparent, #000 3%, #000 99%, transparent);
 }
 /* Reframe only the empty left part away; all four heads and emblem stay visible. */
 .saints-icon-hero--mosaic .saints-icon-hero__art img { width: 156.25%; left: -56.25%; }
 .saints-icon-hero--mosaic .saints-icon-hero__art::after { background: none; }
}

/* A book-like opening, scoped to this proposal; editorial content stays in WordPress. */
.saints-icon-hero--mosaic ~ .ministry-content {
 padding-top: clamp(3rem, 5.5vw, 5rem);
}
.saints-icon-hero--mosaic ~ .ministry-content .ministry-intro-grid {
 grid-template-columns: minmax(0, .78fr) minmax(0, 1.22fr);
 align-items: start;
 gap: clamp(2rem, 4.5vw, 4.5rem);
 margin-bottom: 3.5rem;
}
.saints-icon-hero--mosaic ~ .ministry-content .ministry-intro-grid > figure {
 position: relative;
 padding-top: 1.35rem;
}
.saints-icon-hero--mosaic ~ .ministry-content .ministry-intro-grid > figure::before {
 content: "";
 position: absolute;
 top: 0;
 left: 0;
 width: 4rem;
 height: 1px;
 background: linear-gradient(90deg, #ad8950, #ad895030);
}
.saints-icon-hero--mosaic ~ .ministry-content .ministry-intro-grid > figure img {
 box-shadow: 0 8px 22px rgba(27, 42, 45, .09);
}
.saints-icon-hero--mosaic ~ .ministry-content .ministry-intro-grid figcaption {
 max-width: 42ch;
 margin-top: 1rem;
 padding-left: .85rem;
 border-left: 1px solid #cab793;
 color: #777366;
 font-size: .71rem;
 line-height: 1.75;
}
.saints-icon-hero--mosaic ~ .ministry-content .ministry-intro-grid > div {
 border-top: 1px solid #d1c3a7;
 padding-top: 1.35rem;
}
.saints-icon-hero--mosaic ~ .ministry-content .ministry-intro-grid > div > p {
 font-family: Georgia, "Times New Roman", serif;
 font-size: clamp(1.02rem, 1.3vw, 1.13rem);
 line-height: 1.95;
 color: #414840;
 text-wrap: pretty;
}
.saints-icon-hero--mosaic ~ .ministry-content .ministry-intro-grid > div > p:first-of-type::first-letter {
 float: left;
 margin: .07em .13em 0 0;
 font-family: Palatino, "Palatino Linotype", "Book Antiqua", Georgia, serif;
 font-size: 5.4rem;
 font-weight: 400;
 line-height: .84;
 color: #7c3541;
}
.saints-icon-hero--mosaic ~ .ministry-content .ministry-intro-grid > div::after {
 content: "";
 display: block;
 width: 2.5rem;
 height: 1px;
 margin-top: 1.5rem;
 background: linear-gradient(90deg, #b29664, transparent);
}
@media (max-width: 820px) {
 .saints-icon-hero--mosaic ~ .ministry-content .ministry-intro-grid { grid-template-columns: 1fr; gap: 2rem; }
 .saints-icon-hero--mosaic ~ .ministry-content .ministry-intro-grid > figure { max-width: 600px; }
}
@media (max-width: 540px) {
 .saints-icon-hero--mosaic ~ .ministry-content { padding-top: 2.4rem; }
 .saints-icon-hero--mosaic ~ .ministry-content .ministry-intro-grid > div > p { font-size: 1.03rem; line-height: 1.9; }
 .saints-icon-hero--mosaic ~ .ministry-content .ministry-intro-grid > div > p:first-of-type::first-letter { font-size: 4.65rem; }
}
