.about-page-container{max-width:1140px;margin:0 auto;padding:0 20px}.about-hero{background:#22682b;padding:3rem 0 2.5rem}.about-hero-eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.75rem;font-weight:700;color:rgba(255,255,255,.6);margin-bottom:.75rem}.about-hero-title{font-size:2.6rem;font-weight:700;line-height:1.15;color:#fff;margin-bottom:1.25rem;letter-spacing:-.02em}.about-hero-subtitle{font-size:1.15rem;line-height:1.6;color:rgba(255,255,255,.8);font-weight:400;margin-bottom:0;max-width:600px}.about-hero-divider{width:100%;height:1px;background:rgba(255,255,255,.2);border:none;margin:2rem 0}.about-hero-body{font-size:1.02rem;line-height:1.75;color:rgba(255,255,255,.85);max-width:920px}.about-hero-body p{font-size:inherit;line-height:inherit;color:inherit;margin-bottom:1rem}.about-hero-body p:last-child{margin-bottom:0}@media (max-width:991px){.about-hero-title{font-size:2.1rem}}@media (max-width:575px){.about-hero{padding:2rem 0 1.5rem}.about-hero-title{font-size:1.7rem}.about-hero-subtitle{font-size:1rem}.about-hero-body{font-size:.95rem}}.about-section-heading{text-transform:uppercase;letter-spacing:.12em;font-size:.8rem;font-weight:700;color:#22682b;margin-bottom:.25rem}.about-section-title{font-size:1.75rem;font-weight:700;color:#222;margin-bottom:.5rem}.about-section-rule{width:48px;height:3px;background:#22682b;border:none;margin:0 0 2rem}.about-section{margin-top:3rem;margin-bottom:1rem}.team-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:2.5rem 1.5rem;margin-bottom:2rem}.team-card{border:none;background:0 0;text-align:center;transition:transform .25s ease;cursor:pointer;padding:0}.team-card:hover{transform:translateY(-3px)}.team-card:focus-visible{outline:2px solid #22682b;outline-offset:4px;border-radius:4px}.team-headshot-wrap{width:160px;height:160px;margin:0 auto 1.25rem;border-radius:50%;overflow:hidden;border:3px solid #22682b;background:#f5f5f3}.team-headshot{width:100%;height:100%;object-fit:cover;object-position:center 20%;display:block}.team-headshot-placeholder{width:100%;height:100%;background:linear-gradient(145deg,#22682b,#174d1e);display:flex;align-items:center;justify-content:center}.team-headshot-placeholder span{font-size:3.5rem;color:rgba(255,255,255,.85);font-weight:700;line-height:1}.team-card-body{padding:0}.team-card .team-name{font-size:1.1rem;font-weight:700;color:#222;margin-bottom:.3rem}.team-card .team-role{font-size:.85rem;color:#666;line-height:1.5;margin-bottom:0}.team-view-bio{display:inline-block;font-size:.8rem;font-weight:600;color:#22682b;margin-top:.75rem;padding:.3rem 1rem;border:1px solid #22682b;border-radius:2px;transition:background .2s,color .2s}.team-card:hover .team-view-bio{background:#22682b;color:#fff}.team-bio-content[hidden]{display:none !important}.team-card:target .team-headshot-wrap{border-color:#2f883b;box-shadow:0 0 0 4px rgba(47,136,59,.2)}.team-modal-backdrop{position:fixed;inset:0;z-index:9999;background:rgba(0,0,0,.6);display:flex;align-items:center;justify-content:center;padding:2rem;animation:modalFadeIn .25s ease}.team-modal-backdrop[hidden]{display:none !important}@keyframes modalFadeIn{from{opacity:0}to{opacity:1}}.team-modal{background:#fff;border-radius:8px;max-width:680px;width:100%;max-height:85vh;overflow-y:auto;position:relative;padding:2.5rem;box-shadow:0 20px 60px rgba(0,0,0,.25);animation:modalSlideUp .3s ease}@keyframes modalSlideUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.team-modal-close{position:absolute;top:1rem;right:1.25rem;background:0 0;border:none;font-size:1.75rem;color:#999;cursor:pointer;line-height:1;padding:.25rem .5rem;transition:color .15s}.team-modal-close:hover{color:#333}.team-modal-header{display:flex;align-items:center;gap:1.5rem;margin-bottom:1.75rem;padding-bottom:1.5rem;border-bottom:2px solid #22682b}.team-modal-headshot-wrap{width:120px;height:120px;border-radius:50%;overflow:hidden;border:3px solid #22682b;background:#f5f5f3;flex-shrink:0}.team-modal-headshot{width:100%;height:100%;object-fit:cover;object-position:center 20%;display:block}.team-modal-headshot-wrap .team-headshot-placeholder{width:100%;height:100%}.team-modal-name{font-size:1.5rem;font-weight:700;color:#222;margin:0 0 .25rem}.team-modal-role{font-size:.95rem;color:#666;margin:0;line-height:1.5}.team-modal-body{font-size:.95rem;line-height:1.75;color:#444}.team-modal-body p:last-child{margin-bottom:0}.team-modal-body img{display:none}@media (max-width:575px){.team-modal{padding:1.5rem;max-height:90vh;border-radius:8px 8px 0 0;margin-top:auto}.team-modal-backdrop{padding:0;align-items:flex-end}.team-modal-header{flex-direction:column;text-align:center;gap:1rem}.team-modal-headshot-wrap{width:100px;height:100px}.team-modal-name{font-size:1.25rem}}.project-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:2rem}.project-card{border:1px solid #e8e8e6;border-radius:4px;background:#fff;overflow:hidden;transition:border-color .2s,box-shadow .2s;display:flex;flex-direction:column}.project-card:hover{border-color:#22682b;box-shadow:0 2px 12px rgba(34,104,43,.12)}.project-card-img{width:100%;height:180px;object-fit:cover;display:block}.project-card--no-image{border-top:3px solid #22682b}.project-card-body{padding:1.25rem;flex:1;display:flex;flex-direction:column}.project-card-title{font-size:1rem;font-weight:700;color:#222;margin-bottom:.5rem;line-height:1.35}.project-card-title a{color:inherit;text-decoration:none}.project-card-title a:hover{color:#22682b}.project-card-meta{font-size:.8rem;color:#888;line-height:1.6;margin-bottom:.75rem}.project-card-meta p{margin:0}.project-card-link{margin-top:auto;font-size:.85rem;font-weight:600;color:#22682b;text-decoration:none}.project-card-link:hover{color:#174d1e;text-decoration:underline}@media (max-width:991px){.team-headshot-wrap{width:140px;height:140px}}@media (max-width:575px){.team-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem 1rem}.team-headshot-wrap{width:100px;height:100px;border-width:2px;margin-bottom:.75rem}.team-card .team-name{font-size:.9rem}.team-card .team-role{font-size:.75rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.team-view-bio{font-size:.7rem;padding:.2rem .6rem}.about-section-title{font-size:1.4rem}.project-card-img{height:140px}}