/* Version 17: shared spacing, readable hierarchy and consistent components. */
body{line-height:1.65}h1,h2,h3{text-wrap:balance}p{ text-wrap:pretty }
.wrap{padding:80px max(6%,calc((100vw - 1200px)/2))}
main>section+section{border-top:1px solid var(--line)}
h2{font-size:clamp(30px,3.4vw,52px);line-height:1.18;margin-bottom:26px}
h3{line-height:1.3}.eyebrow{font-size:12px;line-height:1.6;margin-bottom:20px;color:#77c9c7}
.section-lead{max-width:720px;margin:24px 0 28px;font-size:18px;line-height:1.75}
.wrap>p:not(.eyebrow):not(.page-status){max-width:760px}
.page-intro{padding-bottom:48px}.page-intro h1{font-size:clamp(34px,4.6vw,66px);line-height:1.15}
.product-grid,.content-grid{gap:24px;margin-top:32px}.product-grid article{padding:28px;background:#0e2a38;border-color:#39525d;border-radius:12px}
.product-grid h3{font-size:clamp(23px,2vw,29px);line-height:1.3}.product-grid p{font-size:16px;line-height:1.7}
.button{min-height:48px;justify-content:center;gap:12px;padding:14px 22px;white-space:normal;text-align:center;line-height:1.4}
.button:hover{transform:none}.text-link{margin-top:16px;margin-right:18px;color:#77d1cf;line-height:1.5}
.quiet-panel .text-link{color:#174e58}.quiet-panel .eyebrow{color:#375b63}
.first-project{border-left:6px solid #3ec6c3}.first-project .event-note{margin-top:32px;padding-top:24px}.first-project h2{font-size:clamp(34px,4.4vw,64px)}
.human-grid{margin-top:28px;gap:0 36px}.human-grid article{padding:22px 0}.human-grid h3{font-size:23px}
.engagement-intro{font-size:18px;line-height:1.7;margin:24px 0 30px}.engagement-grid .button{font-size:14px;padding:12px 16px;width:100%;margin-top:auto}
.team-grid{gap:32px}.team-grid h3{font-size:25px;min-height:0}.team-grid article{padding:24px 0}.team-portrait{aspect-ratio:4/5;width:100%;max-width:420px;object-position:center 20%;height:auto}
.board-profiles{display:flex;flex-direction:column;gap:40px}.board-profiles article{display:grid;grid-template-columns:minmax(220px,340px) 1fr;gap:40px;width:100%;align-items:center}.board-profiles .team-portrait{margin:0}.profile-copy{max-width:620px}.profile-copy h3{font-size:clamp(26px,3vw,38px)}
.project-copy{font-size:18px;line-height:1.8}.project-audiences{gap:32px}.project-audiences article{background:#0e2a38;border:1px solid #39525d;border-radius:12px;padding:28px}.project-subheading{margin-top:40px}
.supporting-links,.compact-links{display:flex;flex-wrap:wrap;gap:14px 28px}.supporting-links a{text-decoration:underline;text-underline-offset:5px;font-size:15px}
.foundation-location{gap:40px}.location-logo{padding:32px 24px;align-self:center}.location-logo span{color:#174e58}
footer{padding:48px 6%;gap:24px}.footer-status{font-size:14px;line-height:1.7}.contact-email{overflow-wrap:anywhere}
a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #77d1cf;outline-offset:5px}
@media(max-width:780px){.wrap{padding:52px 6%}.page-intro{padding-top:165px;padding-bottom:36px}.section-lead{font-size:17px;line-height:1.7}.team-grid{gap:28px}.team-grid h3{font-size:23px}.board-profiles article{grid-template-columns:1fr;gap:24px}.board-profiles .team-portrait{max-width:340px}.product-grid article{padding:24px}.project-audiences article{padding:24px}.first-project{border-left-width:3px}.eyebrow{letter-spacing:1.5px}.engagement-intro{font-size:17px}.project-copy{font-size:17px}.human-grid h3{font-size:22px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* Portrait cropping is presentation only; source photographs stay unchanged. */
.portrait-team{max-width:1160px}.portrait-circle{border-radius:50%;overflow:hidden;position:relative}
.portrait-team .team-portrait{position:absolute;height:auto!important;max-width:none!important;aspect-ratio:auto;filter:none!important;border-radius:0;margin:0;object-fit:initial}
.profile-copy{max-width:680px;padding:24px 0}.profile-copy h3{font-size:clamp(25px,2.7vw,36px);margin:0 0 12px;line-height:1.25}.profile-copy p{font-size:17px;line-height:1.75;margin:14px 0}.profile-copy h3+p{font-size:14px;color:#87c9cb}
.person-bio{margin-top:20px;border:0;padding:0}.person-bio summary{display:list-item;cursor:pointer;width:fit-content;color:#9cd6d6;font-size:16px;padding:8px 0;text-underline-offset:6px}.person-bio summary:hover{text-decoration:underline}.full-bio{padding-top:12px}.full-bio p{font-size:16px}.person-bio summary:focus-visible{outline:2px solid #87c9cb;outline-offset:5px}

/* V24: original symbol, subdued colors, independent expandable biographies. */
.integrated-team{display:grid;grid-template-columns:minmax(300px,480px) minmax(0,1fr);gap:48px;align-items:start}
.integrated-iceberg{position:sticky;top:30px;aspect-ratio:638/652;width:100%;isolation:isolate}
.integrated-iceberg:before{content:"";position:absolute;inset:0;background:url('/assets/logo-symbol.png') center/contain no-repeat;filter:saturate(.35);opacity:.7;z-index:-1}
.integrated-aga,.integrated-anna{position:absolute;left:58%;transform:translate(-50%,-50%);width:32.5%;aspect-ratio:1}.integrated-aga{top:34%}.integrated-anna{top:72%}
.integrated-team .portrait-circle{width:100%;height:100%;border:3px solid #bcd4d7;box-shadow:0 0 0 5px #09212de6}
.integrated-aga .team-portrait{width:113.5%;left:-7%;top:-12%}.integrated-anna .team-portrait{width:360%;left:-123%;top:-20.5%}
.integrated-bios{min-width:0}.integrated-bios article{min-height:242px;border-bottom:1px solid #355864;padding:0 0 16px;margin-bottom:20px}.integrated-bios article:last-child{border:0}.integrated-team .profile-copy{padding-top:18px;min-width:0}.integrated-team h3{font-size:clamp(25px,2.5vw,34px);overflow-wrap:break-word}.integrated-team .person-bio{max-width:100%;overflow-wrap:anywhere}.integrated-team .person-bio summary{line-height:1.5}.integrated-team .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:780px){.integrated-team{grid-template-columns:1fr;gap:24px}.integrated-iceberg{position:relative;top:0;max-width:440px;margin:auto}.integrated-bios article{min-height:0}.integrated-team .profile-copy{padding-top:0}}

.portrait-credit{position:absolute;bottom:-32px;left:0;width:100%;text-align:center;font-size:12px;letter-spacing:.03em;color:#a3b6bc;margin:0}.integrated-iceberg{margin-bottom:40px}

/* V25 shared audit refinements: typography, contact and compact mobile hero. */
.footer-address{font-style:normal;color:#c4d0d4;font-size:14px;line-height:1.8;flex-basis:100%}
.bio-link{font-size:15px;display:inline-flex;min-height:44px;align-items:center;text-decoration:underline;text-underline-offset:5px}
[id]{scroll-margin-top:32px}
.integrated-bios article{scroll-margin-top:32px}
.full-bio{max-width:62ch}.full-bio p:last-child{margin-bottom:0}
.product-grid article{min-width:0}.product-grid h3{overflow-wrap:break-word}
.product-grid article .text-link{margin-top:auto;min-height:44px;display:inline-flex;align-items:center}
.product-grid article{display:flex;flex-direction:column;align-items:flex-start}
.quiet-panel .page-status{color:#294b54}.quiet-panel .page-status span{color:#163e49}
.quiet-panel .button:focus-visible,.quiet-panel a:focus-visible{outline-color:#174e58}
button,input,select,textarea{font:inherit}
@media(max-width:780px){
 .homepage .hero{justify-content:flex-start;padding-top:152px;min-height:100svh}
 .homepage .hero-top{display:none}
 .homepage .hero h1{font-size:clamp(29px,7.7vw,48px);margin-bottom:16px}
 .homepage .hero-subtitle{margin-bottom:18px;line-height:1.5}
 .homepage .hero-actions{gap:10px}
 .homepage .hero .scroll-link{margin-top:12px}
 .integrated-team{gap:16px}.profile-copy p{font-size:16px}
 .integrated-bios article{padding-bottom:24px;margin-bottom:24px}
 .footer-links{gap:12px 24px}
}
@media(max-width:380px){.homepage .hero{padding-top:140px}.homepage .hero h1{font-size:29px}.homepage .hero-subtitle{font-size:15px}.homepage .hero-actions .button{min-height:44px}}
/* The shared .wrap rule must not erase clearance below the absolute header. */
.wrap.page-intro{padding-top:235px;padding-bottom:48px}
@media(min-width:1400px){.wrap.page-intro{padding-top:175px}}
@media(max-width:780px){.wrap.page-intro{padding-top:165px;padding-bottom:36px}}
.human-mission .mission-foundation{color:#b8cdd3}
.quiet-panel .event-note p{color:#294b54}
.giving-allocation .giving-note{color:#294b54}
/* Reflow when readers enlarge text, including long Polish words. */
main h1,main h2,main h3,main p{overflow-wrap:anywhere}
.human-grid article,.content-grid article,.sector-list article,.project-audiences article{min-width:0}
@media(max-width:780px){.human-grid{grid-template-columns:minmax(0,1fr)}}
main h1 span,.giving-page h1{overflow-wrap:anywhere}
.product-grid h3,.product-grid article>p,.topic-cloud span{max-width:100%;overflow-wrap:anywhere}
.giving-tiers{grid-template-columns:repeat(2,minmax(0,1fr))}.giving-tiers strong{white-space:normal;overflow-wrap:anywhere}
.triad-diagram,.triad-detail,.service-panel{min-width:0}
@media(max-width:780px){.triad-explorer,.support-grid:not(.product-grid){grid-template-columns:minmax(0,1fr)}.pillar-picker button{overflow-wrap:anywhere;min-width:0;max-width:100%}}
summary h3,.panel-top span{min-width:0;overflow-wrap:anywhere}
summary .expand{flex-shrink:0}
@media(max-width:780px){.text-link{max-width:100%;margin-right:0;overflow-wrap:anywhere}summary{gap:12px}.panel-top{flex-wrap:wrap}}
summary .expand{line-height:1}
.format-list summary{padding-right:18px}
