/* ---------- Word of Truth tract page ---------- */
.page-head .eyebrow a { color: inherit; }
.page-head blockquote.scripture { max-width: var(--text); margin: 1.25rem 0 0; }
.tract-block { background: var(--cream); }
.tract-col { width: 100%; max-width: 54rem; margin: 0 auto; padding: 0 1rem; }
.tract-hint { text-align: center; color: var(--brown-soft); font-size: .98rem; margin: 0 0 1.75rem; }
.tract-page { margin: 0 0 2.25rem; }
.tract-zoom { display: block; width: 100%; padding: .75rem; border: 1px solid var(--line); border-radius: var(--radius); background: #fff; overflow: hidden; box-shadow: var(--shadow); cursor: zoom-in; transition: box-shadow .2s ease, transform .2s ease; }
.tract-zoom:hover { box-shadow: 0 2px 4px rgba(43,30,23,.08), 0 14px 34px rgba(43,30,23,.12); transform: translateY(-1px); }
.tract-zoom:focus-visible { outline: 3px solid var(--rock); outline-offset: 3px; }
.tract-zoom img { display: block; width: 100%; height: auto; }
.tract-page figcaption { text-align: center; margin-top: .6rem; font-family: var(--serif); font-size: .95rem; color: var(--brown); letter-spacing: .02em; }
.tract-page figcaption span { color: var(--brown-soft); font-family: var(--sans); font-size: .85rem; }
.tract-end { text-align: center; padding: 1rem 0 .5rem; }
.tract-end p { color: var(--brown-soft); font-size: 1.1rem; }
.tract-end .btn-row { justify-content: center; }
.tract-dialog { padding: 0; border: 0; background: transparent; max-width: 96vw; max-height: 96vh; }
.tract-dialog::backdrop { background: rgba(20, 14, 10, .85); }
.tract-dialog img { display: block; max-width: 96vw; max-height: 92vh; width: auto; height: auto; border-radius: 8px; cursor: zoom-out; }
.tract-dialog form { position: absolute; top: .4rem; right: .4rem; margin: 0; }
.tract-close { width: 2.4rem; height: 2.4rem; border-radius: 50%; border: 0; background: rgba(255,253,249,.92); color: var(--brown); font-size: 1.6rem; line-height: 1; cursor: pointer; }
@media (max-width: 40rem) {
  .tract-col { padding: 0 .6rem; }
  .tract-page { margin-bottom: 1.6rem; }
  .tract-zoom { border-radius: 10px; padding: .35rem; }
}
/* homepage / ministries tract buttons */
.tile-cta { align-self: flex-start; margin-top: 1rem; }
@media (min-width: 52rem) { .teaser a.tile:nth-child(4) .tile-cta { grid-column: 1; justify-self: start; } }
.teaser a.tile:hover .tile-cta { background: var(--rock-dark); border-color: var(--rock-dark); }
.ministry .btn-row { margin-top: 1.25rem; }
