/* Personal welcome only; inherit every existing font family. */
.pastor-welcome-page { color: #081a23; overflow-x: clip; }
.pastor-welcome-page .pastor-reading-layout {
  --window-height: min(68svh, 640px);
  display: grid;
  grid-template-columns: minmax(80px, 1fr) minmax(0, 760px) minmax(80px, 1fr);
  align-items: start;
  gap: clamp(2rem, 4vw, 4rem);
  width: min(1440px, calc(100% - 4rem));
  margin-inline: auto;
  padding-block: clamp(4rem, 8vw, 7rem);
}
.pastor-welcome-page .pastor-article { width: 100%; min-width: 0; margin: 0; padding: 0; }
.pastor-welcome-page .pastor-article p { color: #081a23; }
.pastor-welcome-page .pastor-scripture-ref {
  margin-left: .08em;
  font-size: .62em;
  line-height: 0;
  vertical-align: super;
  white-space: nowrap;
}
.pastor-welcome-page .pastor-scripture-ref cite,
.pastor-welcome-page .pastor-scripture-ref a {
  color: #8a284a;
  font-style: normal;
  font-weight: 600;
  text-decoration: none;
}
.pastor-welcome-page .pastor-scripture-ref a:hover,
.pastor-welcome-page .pastor-scripture-ref a:focus-visible { text-decoration: underline; }
.pastor-welcome-page .pastor-window {
  position: sticky;
  top: calc(100px + (100svh - 100px - var(--window-height)) / 2);
  justify-self: center;
  height: var(--window-height);
  width: calc(var(--window-height) * 280 / 1610);
  max-width: 100%;
  pointer-events: none;
}
.pastor-welcome-page .pastor-window img { display: block; width: 100%; height: 100%; object-fit: contain; }
.pastor-welcome-page [data-pastor-reveal] { transition: opacity 650ms ease, transform 650ms ease; }
.pastor-welcome-page .pastor-reveal-pending { opacity: 0; transform: translateY(10px); }
.pastor-welcome-page [data-pastor-reveal]:focus-within { opacity: 1; transform: none; }
@media (max-width: 760px) {
  .pastor-welcome-page .pastor-reading-layout {
    --window-height: min(45svh, 180px);
    grid-template-columns: 28px minmax(0, 1fr) 28px;
    width: calc(100% - 1.5rem);
    gap: .75rem;
    padding-block: 3rem;
  }
  .pastor-welcome-page .pastor-window { top: calc(50svh - var(--window-height) / 2); }
  .pastor-welcome-page .pastor-article h1 { font-size: clamp(2rem, 7vw, 2.8rem); }
  .pastor-welcome-page .pastor-article h2 { font-size: clamp(1.5rem, 5.5vw, 2rem); }
  .pastor-welcome-page .pastor-article-header { margin-bottom: 2.5rem; }
}
@media (prefers-reduced-motion: reduce) {
  .pastor-welcome-page [data-pastor-reveal],
  .pastor-welcome-page .pastor-reveal-pending { opacity: 1; transform: none; transition: none; }
}
