.language-switch{display:flex;align-items:center;gap:8px;margin-left:auto;margin-right:30px;font-size:11px;letter-spacing:.06em;white-space:nowrap}
.language-switch a{display:flex;min-height:44px;min-width:24px;align-items:center;justify-content:center;opacity:.55;text-decoration:none}
.language-switch a[aria-current=page]{opacity:1;font-weight:600;text-decoration:underline;text-underline-offset:5px}
.language-switch a:hover{opacity:1}
.language-switch>span{opacity:.35}
.nav-wrap .nav-join{margin-left:0}
html[lang=de] .hero h1{font-size:clamp(43px,4.3vw,65px)}
html[lang=de] .card-title{font-size:clamp(27px,3vw,43px);overflow-wrap:normal;hyphens:auto}
html[lang=de] .contribution-card-title{font-size:clamp(27px,2.65vw,38px)}
html[lang=de] .contribution-card-title br{display:initial}
html[lang=de] .lets-act .act-finale{white-space:normal}
html[lang=de] .topic-grid h4{hyphens:auto;overflow-wrap:anywhere}
@media(max-width:850px){.language-switch{margin-right:20px}}
@media(max-width:640px){.language-switch{gap:4px;margin-right:14px;font-size:10px}.nav-wrap .nav-join{margin-right:0;font-size:10px}html[lang=de] .hero h1{font-size:clamp(35px,10vw,54px)}html[lang=de] .card-title{font-size:31px}html[lang=de] .join-section h2{font-size:clamp(30px,8.8vw,45px)}html[lang=de] .founder-section h2{font-size:36px}html[lang=de] .contribution-card-title{font-size:34px}html[lang=de] .founder-profile-box h3{overflow-wrap:anywhere}}
@media(max-width:360px){.language-switch{margin-right:8px}.nav-wrap .nav-join{gap:6px;font-size:9px}.nav-wrap .wordmark{font-size:37px}}

.nav-wrap{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);column-gap:14px}
.nav-wrap .wordmark{grid-column:1;grid-row:1;justify-self:start}
.nav-wrap .nav-join{grid-column:2;grid-row:1;justify-self:center;margin:0}
.nav-wrap .language-switch{grid-column:3;grid-row:1;justify-self:end;margin:0}
@media(max-width:360px){.nav-wrap{column-gap:8px}}

/* One optical centre line for the three header elements. */
.nav-wrap{align-items:center}
.nav-wrap .wordmark{align-self:center;line-height:1;text-box-trim:trim-both;text-box-edge:cap alphabetic}
.nav-wrap .nav-join{align-self:center;min-height:44px;padding:0;gap:14px;border:0;border-radius:0;background:transparent;color:var(--ink);line-height:1.2;position:relative}
.nav-wrap .nav-join::after{content:"";position:absolute;left:0;right:0;bottom:5px;height:1px;background:#8d9b87;transition:background .2s}
.nav-wrap .nav-join:hover{background:transparent;color:var(--ink)}
.nav-wrap .nav-join:hover::after{background:var(--ink)}
.nav-wrap .nav-join:focus-visible{outline:2px solid var(--ink);outline-offset:4px}
.nav-wrap .language-switch{align-self:center;line-height:1}
@media(max-width:640px){.nav-wrap .nav-join{padding:0;gap:9px;font-size:11px}.nav-wrap .nav-join svg{width:15px;height:15px}}
@media(max-width:360px){.nav-wrap .nav-join{padding:0;font-size:10px;gap:6px}.nav-wrap{column-gap:7px}}
@supports not (text-box-trim:trim-both){.nav-wrap .wordmark{transform:translateY(.08em)}}

/* Image wordmarks match alma.tools in size and alignment. */
.wordmark{display:inline-flex;align-items:center;letter-spacing:normal;padding:0;line-height:1}
.brand-logo{display:block;width:204px;max-width:100%;height:auto}
.nav-wrap .wordmark{width:183.6px;transform:none}
.site-header .brand-logo{width:183.6px}
.site-footer{padding-top:45px}
.site-footer .footer-top{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-bottom:40px}
.site-footer .footer-wordmark{display:inline-flex;font-size:inherit;line-height:1;margin:0;padding:0;flex:none}
.site-footer .footer-top>p{font-size:14px;line-height:1.5;color:var(--muted);margin-right:auto;margin-left:50px;white-space:nowrap}
.site-footer .back-top{font-size:11px;line-height:1.5;gap:22px;white-space:nowrap}
.site-footer .back-top span{font-size:24px}
.site-footer .footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:25px;border-top:1px solid var(--line);padding-block:21px 25px;font-size:10px;color:var(--muted)}
.site-footer .footer-bottom button{font-size:inherit}
.why-reason{border-top:0}
@media(max-width:900px){.site-footer .footer-top>p{margin-left:15px}}
@media(max-width:600px){
 .nav-wrap{grid-template-columns:auto minmax(0,1fr) auto;column-gap:12px}
 .nav-wrap .wordmark{width:128.52px;max-width:100%}
 .site-header .brand-logo{width:128.52px}
 .site-footer{padding-top:34px}
 .site-footer .footer-top{display:grid;grid-template-columns:minmax(0,auto) max-content max-content;justify-content:space-between;column-gap:clamp(8px,2.4vw,14px);align-items:end;padding-bottom:28px}
 .site-footer .footer-top .brand-logo{width:clamp(96px,31vw,170px)}
 .site-footer .footer-top>p{font-size:11px;margin:0}
 .site-footer .back-top{font-size:11px;gap:10px;align-items:baseline}
 .site-footer .back-top span{font-size:20px;line-height:0}
 .site-footer .footer-bottom{flex-direction:row;gap:10px;padding-block:20px 25px;font-size:9px}
}
@media(max-width:360px){
 .site-footer .footer-top .brand-logo{width:clamp(82px,29vw,104px)}
 .site-footer .footer-top>p,.site-footer .back-top{font-size:10px}
 .site-footer .back-top{gap:7px}
 .site-footer .back-top span{font-size:18px}
}

/* Status, domain and toggle form a single integrated card heading. */
.pillar-unit{background:#dce5c4;border-radius:var(--radius);transition:box-shadow .2s}
.pillar-unit:has(.people){background:#e9e4d5}
.pillar-unit:has(.ecosystem){background:#d9e3dd}
.pillar-unit:has(.pillar-card[aria-expanded=true]){box-shadow:inset 0 0 0 2px var(--ink)}
.pillar-heading{display:grid;grid-template-columns:minmax(0,max-content) minmax(0,1fr) 26px;align-items:center;gap:8px;padding:24px 27px 0;min-height:50px}
.pillar-heading-status{font-size:10px;line-height:1.35;color:#53664e}
.pillar-heading-domain{justify-self:center;text-align:center;font-size:12px;line-height:1.4;color:var(--ink);white-space:nowrap}
a.pillar-heading-domain{text-decoration:underline;text-underline-offset:3px;padding-block:10px}
.pillar-heading .pillar-toggle{width:26px;height:26px;background:transparent;flex-shrink:0}
.pillar-heading .pillar-toggle[aria-expanded=true]{transform:rotate(45deg)}
.pillar-unit>.pillar-card{border-radius:0 0 var(--radius) var(--radius);padding-top:0;background:transparent}
.pillar-unit>.pillar-card:hover{transform:none;box-shadow:none}
.pillar-unit>.pillar-card[aria-expanded=true]{box-shadow:none}
.lets-act h2{font-size:clamp(44px,4.2vw,62px);line-height:1.05}
.lets-act .act-finale{white-space:normal}
@media(max-width:1150px){.pillar-heading{padding-inline:23px}}
@media(max-width:850px){.pillar-heading{padding:18px 17px 0;gap:6px}.pillar-heading-status{font-size:9px}.pillar-heading-domain{font-size:11px}.lets-act h2{font-size:45px}}
@media(max-width:640px){.pillar-heading{padding:20px 23px 0;gap:8px}.pillar-heading-status{font-size:11px}.pillar-heading-domain{font-size:12px}.lets-act h2{font-size:44px}}
.pillar-heading{grid-template-columns:minmax(0,max-content) minmax(max-content,1fr) 26px;grid-template-rows:40px}

/* Equal side tracks keep each domain on the centre line of the whole card. */
.pillar-heading{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}
.pillar-heading-status{grid-column:1;min-width:0;justify-self:start}
.pillar-heading-domain{grid-column:2}
.pillar-heading .pillar-toggle{grid-column:3;justify-self:end}
.pillar-heading-status.is-current{display:inline-flex;align-items:center;gap:6px;color:#466234}
.focus-dot{display:inline-block;width:5px;height:5px;flex:none;border-radius:50%;background:#648047}
a.pillar-heading-domain{display:inline-flex;align-items:center;gap:6px}
.pillar-heading-domain svg{width:14px;height:14px;flex:none}

/* Domain left, status centred, with one shared type size. */
.pillar-heading{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:minmax(40px,auto);gap:6px}
.pillar-heading-domain{grid-column:1;grid-row:1;justify-self:start;font-size:12px}
.pillar-heading-status{grid-column:2;grid-row:1;justify-self:center;text-align:center;font-size:12px;line-height:1.4}
.pillar-heading .pillar-toggle{grid-column:3;grid-row:1}
@media(min-width:641px) and (max-width:1000px){
 .pillar-heading{grid-template-columns:1fr 1fr;grid-template-rows:32px auto;row-gap:2px}
 .pillar-heading-domain,.pillar-heading-status{font-size:11px}
 .pillar-heading .pillar-toggle{grid-column:2}
 .pillar-heading-status{grid-column:1/-1;grid-row:2;min-height:31px}
}

/* Shared heading accent and compact, aligned footer links. */
.approach-heading-accent{color:#91a75f}
.site-footer .footer-bottom>.footer-legal{display:flex;flex-direction:row;align-items:center;gap:30px;width:auto;font-size:inherit;line-height:1.5;flex-shrink:0}
.site-footer .footer-legal a{white-space:nowrap}
.site-footer .footer-legal a:hover{color:#658244}
@media(max-width:640px){
 html[lang=de] .pillar-heading{grid-template-columns:minmax(0,1fr) max-content minmax(26px,1fr)}
 html[lang=de] .pillar-heading-status{white-space:nowrap}
 .site-footer .footer-bottom{font-size:clamp(7.8px,2.4vw,9px);align-items:center}
 .site-footer .footer-bottom>.footer-legal{gap:10px}
}
@media(max-width:360px){.pillar-heading-domain,.pillar-heading-status{font-size:11px}}

/* Section titles follow the same responsive size as the hero. */
html{--display-title-size:clamp(46px,4.6vw,64px);--topic-heading-gap:12px}
html[lang=de]{--display-title-size:clamp(43px,4.3vw,65px)}
@media(max-width:850px){html{--display-title-size:clamp(46px,7.8vw,60px)}}
@media(max-width:640px){
 html{--display-title-size:clamp(38px,10.5vw,58px);--topic-heading-gap:9px}
 html[lang=de]{--display-title-size:clamp(35px,10vw,54px)}
}
@media(max-width:360px){html{--display-title-size:36px}}
html[lang] .hero h1,html[lang] .why-heading h2,html[lang] .lets-act h2,html[lang] .section-heading h2,html[lang] .founder-section h2,html[lang] .join-section h2{font-size:var(--display-title-size)}
#info-content a[href^="mailto:"],#info-content a[href^="tel:"]{text-decoration:underline;text-underline-offset:3px}
.topic-grid h4{min-height:0;margin:var(--topic-heading-gap) 0}
.topic-content{padding-top:0}

.founder-heading-accent{color:#91a75f}
.founder-profile-label{text-transform:uppercase}
@media(max-width:850px){.why-food{border-top:0}}

/* White hero lettering with a single green final full stop. */
.hero h1 .hero-heading-accent{color:var(--paper)}
.hero h1 .hero-heading-accent .full-stop{color:#91a75f}
/* Equal space before and after each role title, without a subtitle. */
.contribution-card-title{min-height:0;margin-block:24px}
@media(max-width:760px){.contribution-card-title{margin-block:19px}}

.join-copy h2 .join-full-stop{color:#91a75f}
.contribution-card-top{font-size:11px}
@media(max-width:640px){.contribution-card-top{font-size:9px}}
