@font-face{font-family:Jakarta;src:url('/assets/jakarta.ttf') format('truetype');font-display:swap}
:root{--ink:#26322e;--muted:#58645e;--accent:#285b4c;--line:#dce1dd;--surface:#f3f5f3;--ease:cubic-bezier(.32,.72,0,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0;color:var(--ink);background:#fff;font-family:Jakarta,Arial,sans-serif;font-size:1rem;line-height:1.5}a{color:inherit;text-decoration:none}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid var(--accent);outline-offset:4px}p,h1,h2,h3,h4,h5,figure{margin:0}p{max-width:65ch;text-wrap:pretty}p+p{margin-top:24px}h1,h2,h3{font-weight:500;letter-spacing:-.045em;text-wrap:balance}h1,h2{line-height:1.05}h4,h5{line-height:1.5}img{max-width:100%;display:block}.header,.hero,.section,.contact,footer{width:min(100% - 96px,1320px);margin-inline:auto}.header{display:flex;align-items:center;gap:32px;justify-content:space-between;min-height:128px;border-bottom:1px solid var(--line)}.brand{display:block;flex-shrink:0}.logo-window{display:block;width:196px;height:98px;overflow:hidden;position:relative}.logo-window img{width:250px;height:250px;max-width:none;transform:translate(-27px,-78px)}.header nav{display:flex;align-items:center;gap:24px;margin-left:auto;font-size:.875rem}.header nav a{padding:12px 0;transition:color .7s var(--ease)}.header nav a:hover{color:var(--accent);text-decoration:underline;text-underline-offset:8px}.languages{display:flex;align-items:center;gap:4px;font-size:.875rem}.languages button{background:none;border:0;padding:12px 8px;min-height:44px;cursor:pointer;color:var(--muted);transition:background .7s var(--ease)}.languages button:hover{background:var(--surface)}.languages button[aria-pressed=true]{color:var(--ink);font-weight:600;text-decoration:underline;text-underline-offset:8px}.menu-toggle{display:none}#mobile-nav[hidden]{display:none}.skip{position:absolute;top:-96px;left:24px;padding:12px;background:#fff;z-index:10}.skip:focus{top:12px}.hero{display:grid;grid-template-columns:1.15fr 1fr;gap:64px;padding:64px 0 80px;align-items:center}.eyebrow{font-size:.875rem;font-weight:500;color:var(--accent);margin-bottom:24px}.hero h1{font-size:4.5rem;max-width:680px;margin-bottom:32px;color:#26322e;background:linear-gradient(90deg,#26322e,#666);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.hero h1 em{font-style:normal}.lead{font-size:1.125rem;line-height:1.55;color:var(--muted);max-width:52ch}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;padding:12px 16px;min-height:48px;font-size:1rem;font-weight:600;border-radius:4px;transition:background .7s var(--ease),transform .7s var(--ease)}.button:hover{background:#1d4539;transform:translateY(-2px)}.button:active{transform:translateY(1px)}.button span{font-size:1.25rem}.yellow,.dark{background:var(--accent);color:white;margin-top:32px}.field-photo{align-self:stretch;min-height:520px;display:flex;flex-direction:column;overflow:hidden;border-radius:8px;background:var(--surface)}.field-photo>img{width:100%;height:100%;min-height:0;flex:1;object-fit:cover;object-position:54% 75%;aspect-ratio:4/5}.field-photo figcaption{padding:16px 24px;display:flex;flex-direction:column;gap:4px;font-size:.875rem;background:var(--surface)}.field-photo figcaption span:first-child{color:var(--accent);font-weight:600}.field-photo figcaption span:last-child{color:var(--muted)}.section{padding:80px 0 96px;border-top:1px solid var(--line)}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px}h2{font-size:3rem;line-height:1.12}.large-copy{font-size:1.5rem;line-height:1.4;letter-spacing:-.02em}.about .split>div>p:not(:first-child){color:var(--muted)}.ways{display:grid;grid-template-columns:repeat(3,1fr);gap:48px;margin-top:64px}.ways article{padding:0 0 8px}.number{color:var(--muted);font-size:.875rem;font-variant-numeric:tabular-nums}.ways h3{font-size:1.5rem;line-height:1.35;letter-spacing:-.025em;margin:16px 0}.ways p{color:var(--muted)}.section-heading{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:end;margin-bottom:48px}.section-heading>p{color:var(--muted);max-width:45ch}.initiative-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:24px}.initiative{padding:32px;border-radius:8px;background:var(--surface)}.initiative.i0{grid-row:span 2;background:#e9eeeb;display:flex;flex-direction:column;justify-content:flex-start;padding:40px}.i0 .card-top{margin-bottom:64px}.card-top{display:flex;justify-content:space-between;gap:24px;font-size:.875rem;color:var(--muted);margin-bottom:24px}.initiative h3{font-size:2.25rem;line-height:1.15;letter-spacing:-.035em;margin-bottom:16px}.i0 h3{font-size:3.75rem;margin-bottom:32px}.initiative h4{font-size:1rem;font-weight:600;margin-bottom:16px}.initiative p{font-size:1rem;line-height:1.65;color:var(--muted)}.i0 p{max-width:38ch;font-size:1.125rem}.project-list{display:grid;gap:24px}.project{display:grid;grid-template-columns:1fr 1.2fr;gap:64px;padding:32px;border:1px solid var(--line);border-radius:8px}.project-title{display:flex;align-items:start;gap:24px}.project h3{font-size:1.875rem;line-height:1.2;letter-spacing:-.035em}.project h4{font-size:1.25rem;line-height:1.4;margin-bottom:16px;font-weight:500}.project-body>p{color:var(--muted)}.school-projects{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:32px}.school-projects>div{background:var(--surface);padding:24px;border-radius:4px}.school-projects h5{font-size:1rem;font-weight:600}.school-projects span{display:block;font-size:.875rem;color:var(--accent);margin:8px 0 16px}.school-projects p{font-size:1rem;color:var(--muted)}.contact{padding:64px;background:var(--surface);border-radius:8px;margin-bottom:64px}.contact .split{gap:64px}.contact p:not(.eyebrow){font-size:1.125rem;color:var(--muted)}.email{display:block;font-size:1rem;margin-top:24px;overflow-wrap:anywhere}.email:hover{text-decoration:underline;text-underline-offset:4px}footer{display:flex;align-items:center;justify-content:space-between;gap:32px;padding:0 0 48px}footer p{font-size:.875rem;line-height:1.5}footer p:last-child{text-align:right;color:var(--muted)}footer p span{display:inline-block;margin-top:8px}.hero-text{animation:arrive .8s var(--ease) both}@keyframes arrive{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@media(max-width:1100px){.header,.hero,.section,.contact,footer{width:calc(100% - 64px)}.header{gap:16px}.header nav{gap:16px}.hero{gap:32px}.hero h1{font-size:3.75rem}.split,.section-heading{gap:48px}.contact{padding:40px}.project{grid-template-columns:1fr 1.3fr;gap:32px}.school-projects{grid-template-columns:1fr}.logo-window{width:176px;height:88px}.logo-window img{width:225px;height:225px;transform:translate(-24px,-70px)}}
@media(max-width:1000px){.header nav{display:none}.brand{margin-right:auto}.menu-toggle{display:block;padding:8px 12px;min-height:44px;border:1px solid var(--line);border-radius:4px;background:white;font-size:.875rem;cursor:pointer}.header{position:relative}.menu-toggle:hover{background:var(--surface)}#mobile-nav{position:absolute;z-index:5;top:100%;left:0;right:0;background:#fff;padding:24px;border:1px solid var(--line);border-radius:8px}#mobile-nav a{display:block;padding:16px 8px}.hero{align-items:start}.hero h1{font-size:3rem}.field-photo{min-height:480px}.split{gap:32px}.ways{gap:24px}.project{grid-template-columns:1fr;gap:24px}.initiative h3{font-size:1.875rem}.i0 h3{font-size:3rem}}
@media(max-width:640px){.header,.hero,.section,.contact,footer{width:calc(100% - 32px)}.header{min-height:112px;gap:8px}.logo-window{width:152px;height:80px}.logo-window img{width:200px;height:200px;transform:translate(-24px,-62px)}.languages button{padding:12px 8px}.hero{grid-template-columns:1fr;padding:40px 0 48px;gap:40px}.hero h1{font-size:3rem;letter-spacing:-.045em}.hero .eyebrow{font-size:.75rem;margin-bottom:24px}.lead{font-size:1rem}.field-photo{min-height:0}.field-photo>img{height:320px;flex:none;aspect-ratio:auto;object-position:center 75%}.field-photo figcaption{padding:16px}.section{padding:48px 0 64px}.split,.section-heading{grid-template-columns:1fr;gap:24px}h2{font-size:2.25rem;line-height:1.15}.large-copy{font-size:1.25rem;line-height:1.5}.ways{grid-template-columns:1fr;gap:32px;margin-top:40px}.ways article{display:grid;grid-template-columns:24px 1fr;column-gap:16px;align-items:baseline}.ways h3{margin:0 0 12px}.ways p{grid-column:2}.initiative-grid{grid-template-columns:1fr;gap:16px}.initiative,.initiative.i0{padding:24px}.initiative.i0{grid-row:auto}.i0 .card-top{margin-bottom:32px}.i0 h3{font-size:2.25rem;margin-bottom:16px}.i0 p{font-size:1rem}.project{padding:24px;gap:24px}.project-title{gap:16px}.project h3{font-size:1.5rem}.school-projects{gap:16px}.school-projects>div{padding:16px}.contact{padding:32px 24px;margin-bottom:32px}.contact .split{gap:24px}.contact p:not(.eyebrow){font-size:1rem}.email{font-size:.875rem}footer{flex-wrap:wrap;gap:24px;padding-bottom:32px}footer>p:nth-child(2){display:none}footer p:last-child{text-align:left;max-width:36ch}.button{gap:24px}.field-photo,.initiative,.project,.contact{border-radius:4px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
@media(max-width:380px){.header{gap:4px}.logo-window{width:128px;height:72px}.logo-window img{width:175px;height:175px;transform:translate(-21px,-54px)}.languages{gap:0}.languages button{padding:12px 8px}.hero h1{font-size:2.25rem}}
/* A static partner wall: text now, with space for future supplied logos. */
.partners{padding:48px 0 64px}.partners-heading{margin-bottom:40px;max-width:820px}.partners-heading .eyebrow{margin-bottom:16px}.partners-heading h2{font-size:1.875rem;line-height:1.3;letter-spacing:-.03em}.partner-groups{display:grid;gap:32px}.partner-group{display:grid;grid-template-columns:160px minmax(0,1fr);gap:32px;align-items:start}.partner-group h3{padding-top:24px;font-size:1rem;font-weight:500;letter-spacing:0;color:var(--accent)}.partner-names{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:8px;overflow:hidden;margin:0;padding:0}.partner-names li{display:flex;align-items:center;justify-content:center;text-align:center;min-height:112px;padding:24px;background:#fff;min-width:0}.partner-names li span{font-size:1.125rem;line-height:1.5;letter-spacing:-.015em;text-wrap:balance;max-width:24ch;overflow-wrap:break-word}.partner-group-companies .partner-names{grid-template-columns:repeat(4,minmax(0,1fr))}.partner-group-companies li span{font-size:1.25rem}.partner-names li img{max-width:160px;max-height:64px;width:auto;height:auto;object-fit:contain}@media(max-width:1100px){.header nav{gap:12px}.header{gap:12px}.header nav a{font-size:.875rem}.partner-group{grid-template-columns:128px minmax(0,1fr);gap:24px}.partner-names li{padding:16px}.partner-names li span{font-size:1rem}}@media(max-width:850px){.partner-group{grid-template-columns:1fr;gap:16px}.partner-group h3{padding-top:0}.partner-groups{gap:32px}}@media(max-width:640px){.partners{padding:32px 0 48px}.partners-heading{margin-bottom:32px}.partners-heading h2{font-size:1.5rem;line-height:1.4}.partner-names,.partner-group-companies .partner-names{grid-template-columns:repeat(2,minmax(0,1fr))}.partner-group-organizations li:last-child{grid-column:1/-1}.partner-names li{min-height:96px;padding:16px}.partner-group-companies li span{font-size:1.125rem}.partner-names li img{max-width:100%;max-height:56px}}
