/* The original About composition is the homepage; new invitations extend it. */
.ap-education-gpa { display:block; color:#28553c; font-weight:600; margin-top:.35rem; font-variant-numeric:tabular-nums; }
.ap-home-explore { margin-top:1rem; }
.ap-explore-invitation { display:grid; grid-template-columns:1.25fr 1fr; align-items:center; gap:1rem; padding:1.6rem 2.5rem; border:1px solid #b7c6af; background:#edf2e6; color:#1c2924; text-decoration:none; }
.ap-explore-invitation h2 { font-size:clamp(1.5rem,2.4vw,2.1rem); font-weight:500; letter-spacing:-.045em; line-height:1.15; margin:.6rem 0 .8rem; }
.ap-explore-invitation p:not(.ap-about-kicker) { max-width:43ch; font-size:.92rem; line-height:1.65; color:#4c6253; }
.ap-explore-invitation img { width:100%; height:auto; max-height:14rem; object-fit:contain; }
.ap-invitation-action { display:inline-flex; gap:1.2rem; align-items:center; font-size:.84rem; color:#0b6b4f; font-weight:600; margin-top:1rem; }
.ap-explore-invitation:hover { border-color:#527557; background:#e7eedf; }
.ap-explore-invitation:hover .ap-invitation-action { text-decoration:underline; }
.ap-home-featured { padding-top:4rem; }
.ap-home-project-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.ap-home-project-grid article { border:1px solid #bfc8bd; background:#fefefc; padding:1.7rem; display:flex; flex-direction:column; }
.ap-home-project-grid h3 { font-size:1.4rem; letter-spacing:-.035em; font-weight:500; margin:1rem 0 .8rem; }
.ap-home-project-grid p { color:#506356; font-size:.94rem; line-height:1.75; margin-bottom:1.4rem; }
.ap-home-project-actions { display:flex; flex-wrap:wrap; gap:.7rem 1.2rem; align-items:center; margin-top:auto; }
.ap-home-project-actions>a:not(.ap-button) { font-size:.8rem; }
@media(max-width:46rem) {
 .ap-explore-invitation { grid-template-columns:1fr; padding:1.4rem; }
 .ap-explore-invitation img { grid-row:1; max-height:10rem; }
 .ap-home-featured { padding-top:3rem; }
 .ap-home-project-grid { grid-template-columns:1fr; }
 .ap-home-project-grid article { padding:1.4rem; }
}
