/* Acknowledgements — page-specific styles (shared layout is in ../subpage.css) */

.supporters { list-style: none; margin: 2.5rem 0 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem; }
.supporter {
  display: flex; flex-direction: column; align-items: flex-start; padding: 2rem 1.75rem; background: #fff; border: 1px solid #ebe5da;
  border-top: 4px solid var(--red); border-radius: .5rem; transition: transform .3s var(--ease), box-shadow .3s;
}
.supporter:hover { transform: translateY(-3px); box-shadow: 0 1rem 2rem rgba(74,21,14,.08); }
.supporter__icon { width: 3.25rem; height: 3.25rem; border-radius: 50%; display: grid; place-items: center; background: var(--cream); color: var(--red-brand); border: 1px solid var(--gold); }
.supporter__icon svg { width: 1.625rem; height: 1.625rem; }
.supporter__org { margin-top: 1.25rem; font-family: var(--f-serif); font-weight: 500; font-size: 1.625rem; line-height: 1.2; color: var(--ink); }
.supporter__program { margin-top: .375rem; font-size: 1.0625rem; color: #5a5a5a; }

.thanks {
  position: relative; margin: 3rem 0 0; padding: 3rem 2.5rem; text-align: center; background: var(--red) url("../../assets/images/leather.jpg") center / 89.5rem auto;
  border-radius: .5rem; color: var(--cream);
}
.thanks::before { content: ""; position: absolute; inset: .75rem; border: 1px solid rgba(220,161,93,.5); border-radius: .25rem; pointer-events: none; }
.thanks p { font-family: var(--f-serif); font-style: italic; font-size: clamp(1.5rem, 2.2vw, 2rem); line-height: 1.5; max-width: 34ch; margin: 0 auto; }

@media (max-width: 760px) {
  .supporters { grid-template-columns: 1fr; }
  .thanks { padding: 2.25rem 1.5rem; }
}

.sub-prose strong, .community strong { font-weight: 600; color: var(--ink); }

/* St. John's A.M.E. Church panel */
.community {
  display: grid; grid-template-columns: auto 1fr; gap: 1.5rem; margin: 3rem 0; padding: 2.25rem 2rem;
  background: #fbf3e6; border: 1px solid rgba(220,161,93,.55); border-radius: .5rem;
}
.community__icon { width: 3.25rem; height: 3.25rem; border-radius: 50%; display: grid; place-items: center; background: var(--red); color: var(--cream); }
.community__icon svg { width: 1.75rem; height: 1.75rem; }
.community__eyebrow { font-family: var(--f-nav); font-size: 1rem; letter-spacing: .12em; text-transform: uppercase; color: #8a5a1f; }
.community__title { margin: .25rem 0 1rem; font-family: var(--f-serif); font-weight: 500; font-size: clamp(1.625rem, 2.2vw, 2.125rem); color: var(--red-brand); }
.community p:not(.community__eyebrow) { font-size: 1.125rem; line-height: 1.8; color: #3f3f3f; font-weight: 400; }

/* student names */
.name-chips { list-style: none; margin: 1.25rem 0 1.75rem; padding: 0; display: flex; flex-wrap: wrap; gap: .625rem; }
.name-chips li {
  padding: .5rem 1rem; background: #fff; border: 1px solid #e3d9cc; border-radius: 2rem;
  font-family: var(--f-serif); font-size: 1.125rem; color: var(--ink); transition: border-color .2s, background-color .2s;
}
.name-chips li:hover { border-color: var(--gold); background: #fffaf2; }

/* the three diary leads (visual summary of the sentence above) */
.leads { list-style: none; margin: 1.5rem 0 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.leads li { padding: 1.25rem 1.25rem 1.125rem; background: #fff; border: 1px solid #ebe5da; border-top: 3px solid var(--gold); border-radius: .375rem; }
.lead__name { display: block; font-family: var(--f-serif); font-weight: 500; font-size: 1.375rem; color: var(--ink); }
.lead__diary { display: block; margin-top: .25rem; font-size: .9375rem; color: #5a5a5a; }
.lead__diary::before { content: "Lead, "; }

/* training courses */
.courses { list-style: none; margin: 1.25rem 0 0; padding: 0; border-top: 1px solid rgba(119,46,37,.2); }
.courses li { display: grid; grid-template-columns: minmax(0, 15rem) 1fr; gap: .5rem 1.5rem; padding: 1rem 0; border-bottom: 1px solid rgba(119,46,37,.2); }
.course__people { font-family: var(--f-serif); font-weight: 500; font-size: 1.1875rem; line-height: 1.4; color: var(--ink); }
.course__name { font-size: 1.0625rem; line-height: 1.6; color: #4b4b4b; }

@media (max-width: 900px) { .leads { grid-template-columns: 1fr; } }
@media (max-width: 760px) {
  .community { grid-template-columns: 1fr; padding: 1.75rem 1.25rem; }
  .courses li { grid-template-columns: 1fr; }
}

.scholar {
  position: relative; margin: 4.5rem 0 0; padding: 4.25rem 3.25rem 3rem; text-align: center; color: var(--cream);
  background: radial-gradient(120% 80% at 50% 0%, rgba(120,46,30,.35), rgba(30,8,4,.55)), var(--red) url("../../assets/images/leather.jpg") center / 89.5rem auto;
  border-radius: .625rem; box-shadow: 0 1.5rem 3rem -1.5rem rgba(40,10,4,.5);
}
.scholar::before { content: ""; position: absolute; inset: .875rem; border: 1px solid rgba(220,161,93,.55); border-radius: .375rem; pointer-events: none; }
.scholar::after { content: ""; position: absolute; inset: 1.25rem; border: 1px solid rgba(220,161,93,.2); border-radius: .25rem; pointer-events: none; }
.scholar__seal {
  position: absolute; top: 0; left: 50%; width: 4.25rem; height: 4.25rem; margin: -2.125rem 0 0 -2.125rem; border-radius: 50%; display: grid; place-items: center; z-index: 1;
  background: #fbf3e6; color: var(--red-brand); border: 1px solid var(--gold); box-shadow: 0 0 0 .375rem #fff, 0 0 0 .4375rem rgba(220,161,93,.5), 0 .75rem 1.5rem rgba(40,10,4,.25);
}
.scholar__seal svg { width: 1.875rem; height: 1.875rem; }
.scholar__eyebrow { position: relative; font-family: var(--f-nav); font-size: 1rem; letter-spacing: .2em; text-transform: uppercase; color: var(--gold); }
.scholar__title { position: relative; margin-top: .5rem; font-family: var(--f-serif); font-style: italic; font-weight: 500; font-size: clamp(2.25rem, 3.4vw, 3rem); line-height: 1.1; color: #fff8ec; }
.scholar__rule { position: relative; display: block; width: 6rem; height: 1px; margin: 1.5rem auto; background: linear-gradient(90deg, transparent, var(--gold), transparent); }
.scholar__lead { position: relative; max-width: 38rem; margin: 0 auto; font-family: var(--f-serif); font-size: clamp(1.375rem, 1.9vw, 1.75rem); line-height: 1.5; color: #fff8ec; }
.scholar__body { position: relative; max-width: 40rem; margin: 1.5rem auto 0; }
.scholar__body p { font-size: 1.125rem; line-height: 1.8; color: rgba(245,234,216,.88); }
.scholar__body strong, .scholar__note strong { font-weight: 600; color: #fff8ec; }
.scholar__body a { color: #f3d3a8; text-decoration: underline; text-underline-offset: .25rem; }
.scholar__body a:hover { color: #fff; }
.scholar__facts { position: relative; list-style: none; margin: 2.25rem auto 0; padding: 0; max-width: 40rem; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.scholar__facts li { display: flex; flex-direction: column; gap: .375rem; padding: .25rem 1rem; }
.scholar__facts li + li { border-left: 1px solid rgba(220,161,93,.35); }
.scholar__facts b { font-family: var(--f-serif); font-weight: 500; font-size: 2.25rem; line-height: 1; color: var(--gold); }
.scholar__facts span { font-size: .875rem; line-height: 1.45; color: rgba(245,234,216,.78); }
.scholar__note { position: relative; max-width: 36rem; margin: 2.25rem auto 0; padding-top: 1.5rem; border-top: 1px solid rgba(220,161,93,.3); font-family: var(--f-serif); font-style: italic; font-size: 1.1875rem; line-height: 1.6; color: rgba(245,234,216,.92); }

.ai-note { margin: 3.5rem 0 0; padding: 2.25rem 2.25rem 2rem; background: #fff; border: 1px solid #e6dccb; border-radius: .625rem; box-shadow: 0 1rem 2rem -1.5rem rgba(74,21,14,.2); }
.ai-note__head { display: flex; align-items: center; gap: 1.125rem; margin-bottom: 1.25rem; padding-bottom: 1.25rem; border-bottom: 1px dashed #e0d2bb; }
.ai-note__icon { flex: none; width: 3.25rem; height: 3.25rem; border-radius: 50%; display: grid; place-items: center; background: #eef4f2; color: var(--teal); border: 1px solid rgba(33,103,95,.35); }
.ai-note__icon svg { width: 1.625rem; height: 1.625rem; }
.ai-note__eyebrow { font-family: var(--f-nav); font-size: .875rem; letter-spacing: .18em; text-transform: uppercase; color: var(--teal); }
.ai-note__title { margin-top: .125rem; font-family: var(--f-serif); font-weight: 500; font-size: clamp(1.5rem, 2vw, 1.875rem); color: var(--ink); }
.ai-note > p { font-size: 1.125rem; line-height: 1.8; color: #3f3f3f; }
.ai-note__split { list-style: none; margin: 1.5rem 0 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.ai-note__split li { padding: 1rem 1.125rem; border-radius: .5rem; font-size: 1rem; line-height: 1.55; color: #4b4b4b; }
.ai-note__split span { display: block; margin-bottom: .375rem; font-family: var(--f-nav); font-size: .875rem; letter-spacing: .12em; text-transform: uppercase; }
.ai-note__split .is-human { background: #fbf3e6; border: 1px solid rgba(220,161,93,.5); }
.ai-note__split .is-human span { color: #8a5a1f; }
.ai-note__split .is-ai { background: #f1f6f4; border: 1px solid rgba(33,103,95,.25); }
.ai-note__split .is-ai span { color: var(--teal); }

@media (max-width: 760px) {
  .scholar { margin-top: 4rem; padding: 3.75rem 1.375rem 2.25rem; }
  .scholar__facts { grid-template-columns: 1fr; gap: 1rem; }
  .scholar__facts li + li { border-left: 0; border-top: 1px solid rgba(220,161,93,.3); padding-top: 1rem; }
  .ai-note { padding: 1.75rem 1.25rem; }
  .ai-note__split { grid-template-columns: 1fr; }
}