.pastorals-page-content.wrap { width: min(1380px,calc(100% - 36px)); grid-template-columns: repeat(4,minmax(0,1fr)); gap: 20px; align-items: start; }
.pastorals-intro, .pastorals-nav, .pastorals-closing { grid-column: 1 / -1; }
.pastorals-intro { max-width: none; padding: 24px 28px; }
.pastorals-group, .pastorals-cards { display: contents; }
.pastorals-group > h2 { display: none; }
.pastoral-card { min-width: 0; height: 100%; display: flex; flex-direction: column; padding: 0 19px 20px; overflow: hidden; border-radius: 17px; }
.pastoral-card-cover { display: grid; place-items: center; height: 112px; flex-shrink: 0; margin: 0 -19px 18px; color: #f2cd7b; background: radial-gradient(circle at 80% 15%,rgba(185,208,244,.28),transparent 55%),linear-gradient(125deg,#0c205d,#204586); }
.pastoral-card-cover .icon { width: 48px; height: 48px; padding: 12px; box-sizing: content-box; border: 1px solid rgba(243,208,132,.4); border-radius: 50%; background: rgba(255,255,255,.06); }
.pastoral-card-category { margin-bottom: 8px; color: #94681f; font-size: .65rem; font-weight: 750; text-transform: uppercase; letter-spacing: .075em; }
.pastoral-card h3 { margin: 0 0 12px; font: 600 1.3rem/1.2 var(--serif); overflow-wrap: anywhere; }
.pastoral-card .pastoral-tagline { margin: 0 0 18px; font-size: .8rem; line-height: 1.55; }
.pastoral-card .pastoral-tagline strong { color: #52617c; font-weight: 400; }
.pastoral-card .pastoral-contact { margin-top: auto; padding-top: 15px; border-top: 1px solid #e9edf4; font-size: .74rem; line-height: 1.5; }
.pastoral-card .pastoral-people { display: grid; gap: 10px; margin: 0 0 18px; }
.pastoral-card .pastoral-person { gap: 10px; padding: 0; border: 0; background: transparent; }
.pastoral-card .pastoral-person img { width: 44px; height: 44px; flex-basis: 44px; border-radius: 50%; }
.pastoral-card .pastoral-person strong { font-size: .8rem; }
.pastoral-card .pastoral-person a { font-size: .7rem; }
.pastoral-more { margin-top: auto; }
.pastoral-more summary { display: flex; justify-content: space-between; align-items: center; gap: 10px; padding: 13px 16px; border-radius: 999px; list-style: none; color: #172b63; background: #f3e6ce; font-size: .78rem; font-weight: 700; cursor: pointer; }
.pastoral-more summary::-webkit-details-marker { display: none; }
.pastoral-more summary:hover { background: #ead4ab; }
.pastoral-more summary:focus-visible { outline: 3px solid #be8b24; outline-offset: 3px; }
.pastoral-more[open] summary span { transform: rotate(90deg); }
.pastoral-more-content { padding-top: 18px; }
.pastoral-more-content p { font-size: .8rem; line-height: 1.65; }
@media (max-width: 1100px) { .pastorals-page-content.wrap { grid-template-columns: repeat(3,minmax(0,1fr)); } }
@media (max-width: 850px) { .pastorals-page-content.wrap { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 560px) { .pastorals-page-content.wrap { grid-template-columns: 1fr; } .pastorals-intro { padding: 22px; } }
