/* Police Chaplain Project in the Gravitas site system (site-system.css). */
body.gx-pcp { --font: var(--gx-serif); --gold: var(--gx-gold); --muted: var(--gx-slate); --ink: var(--gx-ink); }

/* hero card */
body.gx-pcp .hero-stage.gx-hero { min-height: 0; }
body.gx-pcp .hero-stage .shell { padding: 0; max-width: none; }
body.gx-pcp .hero-copy h1 { font-size: var(--gx-h1) !important; font-weight: 500 !important; margin: 4px 0 22px; }
body.gx-pcp .hero-copy .eyebrow::after, body.gx-pcp .sec-head .eyebrow::after, body.gx-pcp .band-dark .eyebrow::after { display: none; }
body.gx-pcp .prose p { font-size: var(--gx-body) !important; line-height: 1.55; color: var(--gx-ink) !important; margin-top: 14px !important; }
body.gx-pcp .prose .pull { font-size: var(--gx-lead) !important; line-height: 1.38; font-weight: 500; }
body.gx-pcp .hero-art img { border-radius: var(--gx-r); }

/* section heads */
body.gx-pcp .sec-head h2 { font-size: var(--gx-h2) !important; font-weight: 500 !important; line-height: 1.08; margin-top: 0; }
body.gx-pcp .sec-head .lede { font-size: var(--gx-lead) !important; font-weight: 400; line-height: 1.4; color: var(--gx-slate); }
body.gx-pcp h2[style] { color: var(--gx-ink) !important; }
body.gx-pcp .prose p[style] { color: var(--gx-ink) !important; }

/* how the archive is used: raised cards */
body.gx-pcp .step { background: var(--gx-ground); border-radius: var(--gx-r); box-shadow: var(--gx-raise); }
body.gx-pcp .step h3 { font-size: 1.75rem !important; font-weight: 500 !important; line-height: 1.15; }
body.gx-pcp .step p:not(.use-audience) { font-size: var(--gx-small); line-height: 1.55; color: var(--gx-slate); }
body.gx-pcp .use-audience { font: 700 .75rem/1.5 var(--gx-sans) !important; letter-spacing: .14em; text-transform: uppercase; color: var(--gx-gold) !important; }

/* night panels, as on Gravitas */
body.gx-pcp .band-dark { background: var(--gx-ink); box-shadow: var(--gx-raise); }
body.gx-pcp .band-dark h2 { color: #f3ecdd !important; font-size: var(--gx-h2) !important; font-weight: 500 !important; }
body.gx-pcp .band-dark .eyebrow { color: #d2b575 !important; }
body.gx-pcp .band-dark p { font-size: var(--gx-body); color: #e8deca; }
body.gx-pcp .qc { border-left-color: #d2b575; }
body.gx-pcp .qc blockquote { font: italic 400 1.375rem/1.45 var(--gx-serif) !important; color: #f3ecdd; }
body.gx-pcp .qc cite { font: 700 .6875rem/1.6 var(--gx-sans); letter-spacing: .14em; color: #d2b575; }
body.gx-pcp .qc cite span { font: italic 400 1rem/1.4 var(--gx-serif); letter-spacing: 0; text-transform: none; color: #c9c2b2; }
body.gx-pcp .band-dark .btn { background: #f3ecdd; color: var(--gx-ink); border-color: transparent; box-shadow: none; }

/* footer keeps the night ground with the shared label face */
body.gx-pcp .foot { font-family: var(--gx-text); }
body.gx-pcp .foot .foot-desc, body.gx-pcp .foot .foot-contact { font-family: var(--gx-text); font-size: 1.0625rem; }

/* the collection sits on a dark ground: keep its heading light */
body.gx-pcp .collection-section .sec-head h2 { color: #f3ecdd !important; }
body.gx-pcp .collection-section .sec-head .lede { color: #c9c2b2 !important; }
body.gx-pcp .collection-section .sec-head .eyebrow { color: #d2b575 !important; }

/* the hero card sits 28px under the breadcrumbs, as on Gravitas */
body.gx-pcp main { padding-top: 0 !important; }

/* Nov 7, 2026: hero eyebrow dash + "An exciting update" panel */
body.gx-pcp .eyebrow.pcp-dash { display: flex; align-items: center; gap: 18px; }
body.gx-pcp .eyebrow.pcp-dash::before { content: ""; width: 40px; height: 2px; background: var(--gx-gold); flex: none; }
body.gx-pcp .hero-copy .prose p { font-size: var(--gx-lead) !important; line-height: 1.45; color: var(--gx-slate) !important; }
.pcp-update-wrap { width: var(--gx-frame); margin: clamp(28px, 4vw, 48px) auto; }
.pcp-update { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: clamp(28px, 5vw, 80px); padding: clamp(32px, 6vw, 96px) clamp(26px, 6vw, 96px); border-radius: 36px; background: #e6e3dd; box-shadow: inset 8px 8px 18px #cfc9bc, inset -8px -8px 18px #fbfaf7; }
body.gx-pcp .pcp-update h2 { font: 500 var(--gx-h2)/1.06 var(--gx-serif) !important; color: var(--gx-ink) !important; margin: 0 0 24px; max-width: 19ch; }
body.gx-pcp .pcp-update p { font-family: var(--gx-text); font-size: clamp(1.125rem, 1.6vw, 1.375rem); line-height: 1.75; color: var(--gx-slate); max-width: 40em; margin: 0; }
.pcp-update-media { display: flex; flex-direction: column; align-items: center; gap: 22px; }
.pcp-update-ring { width: clamp(200px, 20vw, 250px); aspect-ratio: 1; border-radius: 50%; border: 0; padding: 11px; cursor: pointer; background: #efede9; box-shadow: 14px 14px 28px #cdc7ba, -14px -14px 28px #fdfcfa; display: grid; place-items: center; }
.pcp-update-well { width: 100%; height: 100%; border-radius: 50%; display: grid; place-items: center; background: #ecebe7; box-shadow: inset 6px 6px 14px #d6d1c6, inset -6px -6px 14px #ffffff; }
.pcp-update-play { width: 48px; height: 48px; border-radius: 50%; display: grid; place-items: center; background: #3b4759; box-shadow: 4px 6px 12px rgba(40,50,65,.35); transition: transform .2s, background .2s; }
.pcp-update-play svg { width: 22px; height: 22px; fill: #fff; margin-left: 3px; }
.pcp-update-ring:hover .pcp-update-play, .pcp-update-ring:focus-visible .pcp-update-play { transform: scale(1.08); background: var(--gx-ink); }
.pcp-update-ring:focus-visible { outline: 3px solid var(--gx-ink); outline-offset: 6px; }
.pcp-update-cap { font: 800 .9375rem/1.3 var(--gx-text); letter-spacing: .02em; color: var(--gx-ink); }
.pcp-update-dialog { width: min(960px, 92vw); padding: 0; border: 0; border-radius: 16px; background: #0d1520; overflow: visible; }
.pcp-update-dialog::backdrop { background: rgba(7, 23, 39, .78); }
.pcp-update-vid { aspect-ratio: 16 / 9; }
.pcp-update-vid iframe { width: 100%; height: 100%; border: 0; display: block; border-radius: 16px; }
.pcp-update-close { position: absolute; top: -44px; right: 0; width: 38px; height: 38px; border: 0; border-radius: 50%; background: #f0eee8; color: var(--gx-ink); font-size: 24px; line-height: 1; cursor: pointer; }
@media (max-width: 760px) {
  .pcp-update { grid-template-columns: 1fr; text-align: left; border-radius: 26px; }
  .pcp-update-media { justify-self: center; }
}
@media (prefers-reduced-motion: reduce) { .pcp-update-play { transition: none; } }
body.gx-pcp .eyebrow.pcp-dash::after { display: none !important; }
/* Nov 7, 2026: hero headline and text match the "An exciting update" panel */
body.gx-pcp .hero-copy h1#project-title { font: 500 var(--gx-h2)/1.06 var(--gx-serif) !important; color: var(--gx-ink) !important; margin: 0 0 24px; }
body.gx-pcp .hero-copy .prose p { font-family: var(--gx-text) !important; font-size: clamp(1.125rem, 1.6vw, 1.375rem) !important; line-height: 1.75 !important; color: var(--gx-slate) !important; }
