/* Final editorial and responsive refinements. */
:root{--obsidian:#202020}
.core-value-rows{display:grid;gap:0;border-top:1px solid #b9c3b6;margin-top:2rem}
.core-value-rows article{display:grid;grid-template-columns:3.5rem minmax(170px,.6fr) 1.4fr;gap:1.5rem;align-items:baseline;padding:2rem 0;border-bottom:1px solid #b9c3b6;border-radius:0;background:transparent}
.core-value-rows article>*{margin:0}.core-value-rows article>span{color:var(--blue);font-weight:700}.core-value-rows h3{font-size:clamp(25px,2.5vw,36px)}
.story-contact.team-contact{display:block}.team-contact>div{max-width:1000px}.team-contact h2{max-width:17ch}.team-contact .button{width:auto;white-space:normal}.lead-pastors .text-link{margin-left:0!important;justify-self:start}
.staff-values{background:#e7ebe2}.staff-values>h2{font-size:clamp(36px,4vw,60px);margin:0 0 2rem}.staff-values details{border-bottom:1px solid #b7c3b0}.staff-values summary{padding:1.3rem 0;cursor:pointer;font-size:clamp(23px,2vw,30px);font-weight:700;display:flex;align-items:center;justify-content:space-between;gap:1rem;list-style:none}.staff-values summary::-webkit-details-marker{display:none}.staff-values summary::after{content:'+';font-size:1.6em;font-weight:400}.staff-values details[open] summary::after{content:'−'}.staff-values details p{max-width:52em;margin:0 0 1.5rem}
.page-serve .team-chips li,.page-serve .team-chips li:nth-child(3n+1){background:#e2e7de;border-radius:1rem 2rem 1rem 1rem}.page-serve .team-chips li:nth-child(8n+1),.page-serve .team-chips li:nth-child(8n+3),.page-serve .team-chips li:nth-child(8n+6),.page-serve .team-chips li:nth-child(8n+8){background:#d2e6f2}
.page-missions .mission-purpose,.page-missions .zimbabwe-story{border-radius:0}.mission-trip-hero img{width:100%;height:auto;display:block}.mission-trip-hero{margin:0;overflow:hidden;border-radius:2rem 5rem 2rem 2rem}
.restore-founder .story-photo{max-width:500px;aspect-ratio:4/5}.restore-founder img{object-position:center top}.restore-social-links{display:flex;flex-wrap:wrap;gap:1.5rem;padding-top:0}.restore-social-links a{color:#654b8a}.restore-ribbon{flex-wrap:wrap;gap:1rem 3rem}
.camp-back{margin-bottom:2rem}.camp-back .text-link{font-size:1.1rem}.camp-track h1{font-size:clamp(44px,6vw,86px);line-height:1.05;margin:1rem 0}.camp-track:target{scroll-margin-top:130px}
.page-kids .path-grid article p{line-height:1.65}.directory-feature img{object-position:center 30%}.directory-adult-grid article:first-child img{object-position:center top}
:focus-visible{outline:3px solid currentColor;outline-offset:5px}summary:focus-visible{outline-offset:-3px}
@media(max-width:900px){.core-value-rows article{grid-template-columns:2.5rem 1fr;gap:.75rem 1rem}.core-value-rows article p{grid-column:2}.page-serve .team-chips li:nth-child(n){background:#e2e7de}.page-serve .team-chips li:nth-child(4n+1),.page-serve .team-chips li:nth-child(4n+4){background:#d2e6f2}}
@media(max-width:600px){.team-contact h2{max-width:none}.core-value-rows article{padding:1.5rem 0}.staff-values summary{padding:1.25rem 0}.camp-track h1{font-size:clamp(42px,12vw,66px)}.restore-ribbon{font-size:1.4rem!important;justify-content:center}.restore-social-links{gap:1.25rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

.staff-values summary>span:last-child{display:none}

.page-missions .mission-trip-hero{max-width:440px;justify-self:center}.page-missions .mission-trip-hero img{height:auto;aspect-ratio:auto}.directory-impact-grid article:nth-child(2) .story-photo img{object-position:center 25%}
.camp-detail .camp-back{padding-block:24px;margin-bottom:0}.camp-detail .camp-track{padding-top:clamp(32px,4vw,60px)}

/* November refinement: let the section headings and vision lead. */
.page-about .mission-vision { align-items:start; }
.page-about .mission-vision .vision-article .mission-vision-description { max-width:36em; margin:0; padding:0; border:0; font-size:clamp(21px,2vw,26px); line-height:1.6; }
.page-about .mission-vision .vision-accent { color:var(--blue); font-family:Roboto,sans-serif; font-weight:700; font-size:clamp(18px,1.5vw,21px); line-height:1.5; margin:24px 0 0; }
.page-about .wide-story-links article:nth-child(1), .page-about .wide-story-links article:nth-child(3) { background:#e3e8df; }
.page-about .wide-story-links article:nth-child(2) { background:#cee2f1; }
.page-index .kids-card .round-link { background:transparent; border-color:currentColor; color:var(--ink); }
.page-index .kids-card:hover .round-link { background:var(--blue); border-color:var(--blue); color:var(--sand); }
.page-missions .mission-trip-hero { overflow:visible; border-radius:0; }
.page-missions .mission-trip-hero figcaption { padding-inline:2px; }
.page-section-heading > div > h2:first-child, .story-heading > h2:first-child { margin-top:0; }
@media(max-width:760px){ .page-about .mission-vision { gap:38px; } .page-about .mission-vision .vision-accent { margin-top:18px; } }

/* Space and resource refinements */
.page-new-here .visit-faq-section>.faq { max-width:none; margin:0; }
.page-new-here #next-steps { padding-bottom:clamp(40px,5vw,72px); }
.page-new-here .visit-faq-section { padding-top:clamp(40px,5vw,72px); }
.page-new-here .visit-faq-section .page-section-heading { margin-bottom:1.5rem; }
.ministry-resources,.kids-family-links,.kids-events,.ministry-social{padding-block:clamp(48px,6vw,88px)}
.resource-links{display:flex;gap:1.5rem 2rem;flex-wrap:wrap;margin-top:1.5rem}
.ministry-social{background:#e7ebe2}.page-kids .ministry-social{color:#01334f}
.oya-intro:has(>div:only-child){display:block}.oya-intro>div{max-width:55rem}
.page-youth .gathering-story:has(>div:only-child){grid-template-columns:1fr}.page-youth .gathering-story>div{max-width:55rem}
.kids-footer{flex-wrap:wrap;gap:1.5rem}
.page-new-here #next-steps { padding-bottom:clamp(30px,3vw,44px); }
.page-new-here .visit-faq-section { padding-top:clamp(30px,3vw,44px); }
.quick-links .button.blue { background:var(--blue); color:#fff; }
.quick-links .button.blue:hover { background:#195f9d; color:#fff; }
/* Quick links and questions align with their headings. */
.page-links .quick-link-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 3rem; padding:0; margin:1.5rem 0 0; list-style:none; }
.page-links .quick-link-list li { border-bottom:1px solid #bbc6ba; }
.page-links .quick-link-list .quick-link { display:flex; justify-content:space-between; align-items:center; gap:1rem; min-height:68px; padding:1rem 0; font-family:Roboto,sans-serif; font-size:clamp(19px,1.6vw,23px); font-weight:600; color:var(--ink); text-decoration:none; }
.page-links .quick-link-list .quick-link:hover { color:var(--blue); }
.page-links .quick-link .action-icon,.page-links .quick-link span { width:1em; height:1em; flex:none; }
.page-serve .room-faq>.faq { max-width:none; margin:1.5rem 0 0; }
@media(max-width:700px) { .page-links .quick-link-list { grid-template-columns:1fr; } }
