
/* ministries v9 (17 Oct night): one page, a chapter for each ministry, each with its leader. No cards: programmes are ruled lines */
.mintro3 .inner { width: min(80%, 1200px); display: grid; justify-items: center; text-align: center; gap: var(--s-m); }
.mintro3 .t-big { max-width: 36em; color: #3F3F3F; }
.anchors { display: flex; flex-wrap: wrap; justify-content: center; gap: var(--s-xs); }
.chap { padding-block: var(--s-xl); }
.chap .inner { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: var(--gap); row-gap: var(--s-l); align-items: start; }
.chap .txt { grid-column: 1 / 7; display: grid; gap: var(--s-m); justify-items: start; }
.chap .side { grid-column: 8 / 13; display: grid; gap: var(--s-m); }
.chap.flip .txt { grid-column: 7 / 13; grid-row: 1; } .chap.flip .side { grid-column: 1 / 6; grid-row: 1; }
.chap .lead { font-size: var(--t-big); color: #3F3F3F; max-width: 32em; }
.chap .lead b { font-weight: 500; color: #121212; }
.chap .photo2 { aspect-ratio: 4 / 5; border-radius: var(--r-panel); overflow: hidden; margin: 0; }
.chap .side { position: sticky; top: calc(var(--nav-h) + 40px); }
.chap .photo2 img, .chap .photo2 video { width: 100%; height: 100%; object-fit: cover; }
/* 18 Oct: the connect-group film is cut at its own left edge through a face; zoom in from the right so she leaves the frame whole */
#connect .photo2 video { transform: scale(1.4); transform-origin: 82% 25% !important; }
.prog2 { width: 100%; border-top: 1px solid var(--rule); }
.prog2 li { display: grid; gap: .45em; padding-block: var(--s-s); border-bottom: 1px solid var(--rule); }
.prog2 h3 { font-size: var(--t-m); font-weight: 500; letter-spacing: -.015em; }
.prog2 p { color: #3F3F3F; max-width: 40em; }
.vq { margin-top: .3em; padding-left: var(--s-s); border-left: 2px solid var(--gold-500); display: grid; gap: .45em; max-width: 36em; }
.vq blockquote { font-size: var(--t-small); line-height: 1.55; color: var(--muted, #4A4A4A); }
.vq .ref { font-size: var(--t-eyebrow); font-weight: 500; letter-spacing: .12em; text-transform: uppercase; color: var(--gold-800); }
/* 18 Oct round 2: every leader stands in the same grey studio as the pastor (cut out from their photo), in the text column under the words */
.leader2 { display: grid; grid-template-columns: clamp(140px, 13vw, 220px) minmax(0, 1fr); gap: var(--s-s); align-items: end; width: 100%; padding-top: var(--s-m); border-top: 1px solid var(--rule); }
.leader2 .studio { position: relative; aspect-ratio: 4 / 5; margin: 0; border-radius: var(--r-panel); overflow: hidden; isolation: isolate; display: grid; align-items: end; justify-items: center;
  background-color: #DCDCDC; background-image: var(--tex-light), radial-gradient(ellipse 80% 70% at 50% 34%, #F6F6F6 0%, #E4E4E4 42%, #C9C9C9 85%, #BDBDBD 100%); background-size: 256px, 100% 100%; background-blend-mode: multiply, normal; }
.leader2 .studio .watermark { width: 120%; left: -10%; top: 4%; color: rgba(255, 255, 255, .5); z-index: 0; }
.leader2 .studio img { position: relative; z-index: 1; width: 92%; height: 94%; object-fit: contain; object-position: 50% 100%; filter: drop-shadow(0 18px 22px rgba(18, 18, 18, .22)); }
.leader2 .name { font-size: var(--t-l); font-weight: 500; letter-spacing: -.02em; line-height: 1.1; }
.leader2 .role { color: var(--muted, #3F3F3F); font-size: var(--t-big); font-weight: 300; }
.blk-char .prog2 p, .blk-char .chap .lead, .chap.blk-char .lead { color: #C9CDD1; }
.chap.blk-char .lead b { color: var(--white); }
.chap.blk-char .prog2 p { color: #C9CDD1; }
.chap.blk-char .vq blockquote { color: #C9CDD1; }
.chap.blk-char .vq .ref { color: var(--gold-300); }
.chap.blk-char .leader2 .role { color: #C9CDD1; }
.days { display: grid; width: 100%; border-top: 1px solid var(--rule); }
.day-row { display: grid; grid-template-columns: 7.5em minmax(0, 1fr) auto; gap: var(--s-s); align-items: baseline; padding-block: .8em; border-bottom: 1px solid var(--rule); transition: background-color var(--d-move), padding var(--d-move) var(--ease); }
.day-row:hover, .day-row:focus-visible { padding-inline: .6em; background: rgba(255, 255, 255, .45); outline: none; }
.day-row .n { font-weight: 500; color: var(--ink); }
.day-row .g { color: #333333; }
.day-row .t { color: var(--gold-small, var(--gold-800)); font-variant-numeric: tabular-nums; white-space: nowrap; }
@media (max-width: 640px) { .day-row { grid-template-columns: 1fr auto; } .day-row .g { grid-column: 1 / -1; grid-row: 2; } }
.preq form { display: grid; gap: var(--s-s); width: 100%; }
.preq .row2 { display: grid; grid-template-columns: 1fr 1fr; gap: var(--s-s); }
.preq .check { display: flex; gap: .7em; align-items: start; font-size: var(--t-small); color: var(--muted, #4A4A4A); }
.preq .check input { width: 1.2em; height: 1.2em; accent-color: var(--gold-500); margin-top: .2em; }
.preq .note { min-height: 1.5em; color: var(--gold-800); }
.ng-band { position: relative; min-height: min(70svh, 720px); display: grid; align-items: end; color: var(--white); overflow: hidden; isolation: isolate; }
.ng-band > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2; }
.ng-band::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(14, 16, 19, .86) 0%, rgba(14, 16, 19, .55) 38%, rgba(14, 16, 19, 0) 64%), linear-gradient(180deg, rgba(14, 16, 19, 0) 40%, rgba(14, 16, 19, .7)); }
.ng-band .txt { display: grid; gap: var(--s-s); justify-items: start; padding-block: var(--s-xl); max-width: 36em; }
.ng-band .txt p { color: var(--white); text-shadow: 0 1px 12px rgba(0, 0, 0, .4); }
@media (max-width: 1024px) {
  .mintro3 .inner { width: var(--shell); }
  .chap .txt, .chap .side, .chap.flip .txt, .chap.flip .side { grid-column: 1 / -1; grid-row: auto; }
  .chap .photo2 { aspect-ratio: 4 / 3; } .chap .side { position: static; }
}
@media (max-width: 640px) { .preq .row2 { grid-template-columns: 1fr; } }
