/* Pack 02 public shell — presentation layer built on the Pack 01 tokens. */
.site-nav a[aria-current="page"]{color:var(--brand-ruby)}
.site-nav a[aria-current="page"]::after{transform:scaleX(1)}

.home-hero{position:relative;overflow:hidden;padding-block:clamp(72px,10vw,144px);background:linear-gradient(132deg,var(--canvas) 0 58%,var(--surface-green) 58% 100%)}
.home-hero::before{position:absolute;inset:0;background:linear-gradient(90deg,transparent 49.9%,rgba(23,54,42,.07) 50%,transparent 50.1%);background-size:80px 100%;content:"";pointer-events:none}
.home-hero__grid{position:relative;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(300px,.7fr);align-items:center;gap:clamp(48px,8vw,120px)}
.home-hero h1{max-width:900px;margin-bottom:26px;font-size:clamp(3.2rem,6.5vw,6.25rem)}
.home-hero .lede{max-width:760px;margin-bottom:32px;color:#3f4a45}
.home-hero__signature{margin:36px 0 0;color:var(--brand-ruby);font-family:var(--font-display);font-size:1.45rem}
.home-hero__brand{position:relative;display:grid;min-height:390px;place-items:center;padding:clamp(24px,4vw,56px);border:1px solid rgba(23,54,42,.14);border-radius:50%;background:rgba(255,255,255,.7);box-shadow:var(--shadow-subtle)}
.home-hero__brand .brand-logo{position:relative;width:100%;z-index:1}
.home-hero__orbit{position:absolute;width:115%;aspect-ratio:1;border:1px solid var(--brand-gold);border-radius:50%;opacity:.65}
.home-hero__orbit::before,.home-hero__orbit::after{position:absolute;border-radius:50%;content:""}
.home-hero__orbit::before{inset:12%;border:1px solid rgba(151,27,33,.35)}
.home-hero__orbit::after{top:9%;right:12%;width:14px;height:14px;background:var(--brand-ruby)}

.trust-strip{padding-block:22px;background:var(--brand-green);color:var(--white)}
.trust-strip ul{display:grid;grid-template-columns:repeat(4,1fr);margin:0;padding:0;list-style:none}
.trust-strip li{position:relative;padding:5px 24px;color:#f4f7f5;font-size:.88rem;font-weight:700;letter-spacing:.08em;text-align:center;text-transform:uppercase}
.trust-strip li+li::before{position:absolute;top:50%;left:0;width:5px;height:5px;border-radius:50%;background:var(--brand-gold);content:"";transform:translate(-50%,-50%)}

.editorial-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(40px,8vw,120px)}
.editorial-grid h2{max-width:620px}
.prose p{font-size:1.08em}.prose p:last-child{margin-bottom:0}.prose--large{font-size:clamp(1.08rem,1rem + .35vw,1.3rem)}
.prose--light{max-width:840px;margin-bottom:48px;color:#e2eae5}.prose--light p{max-width:80ch}
.section--soft .section-header p:last-child,.steps-grid p,.transparency-grid p,.mission-facts--light dt{color:#626b66}
.progress-path{display:grid;grid-template-columns:repeat(4,1fr);margin:72px 0 0;padding:0;border-top:2px solid var(--brand-green);list-style:none}
.progress-path li{position:relative;padding:26px 12px 0;color:var(--brand-green);font-size:.88rem;font-weight:700;letter-spacing:.1em}
.progress-path li::before{position:absolute;top:0;left:12px;width:14px;height:14px;border:4px solid var(--white);border-radius:50%;background:var(--brand-gold);box-shadow:0 0 0 2px var(--brand-green);content:"";transform:translateY(-50%)}
.progress-path li:not(:last-child)::after{position:absolute;top:-12px;right:8px;color:var(--brand-ruby);content:"→";font-size:1.2rem}
.progress-path li span{display:block;margin-bottom:5px;color:var(--muted);font-size:.7rem}
.progress-path--light{grid-template-columns:repeat(5,1fr);border-color:var(--brand-gold)}
.progress-path--light li{color:var(--white)}.progress-path--light li::before{border-color:var(--brand-green);box-shadow:0 0 0 2px var(--brand-gold)}.progress-path--light li span{color:#c6d6ce}

.public-programmes .programme-card__media{aspect-ratio:16/8}
.programme-card__graphic{background:linear-gradient(135deg,var(--brand-green),#265640);color:var(--white)}
.programme-card__graphic span{color:var(--brand-gold);font-family:var(--font-display);font-size:clamp(3.5rem,7vw,6.5rem);font-weight:400;line-height:1}
.programme-card__graphic small{color:#dfe9e3;font-size:.72rem;letter-spacing:.14em}
.programme-card__focus{padding-top:18px;border-top:1px solid var(--border);font-size:.9rem}
.page-card-grid{margin-top:32px}
.status-badge--fundraising-programme-development{--status:var(--brand-ruby)}

.pathway-list,.support-grid,.check-list{margin:48px 0 0;padding:0;list-style:none}
.pathway-list{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--border)}
.pathway-list li{display:grid;min-height:112px;place-items:center;padding:20px;background:var(--white);color:var(--brand-green);font-weight:700;text-align:center}
.disclaimer{margin:32px 0 0;padding:20px 24px;border-left:4px solid var(--brand-gold);background:var(--surface-green);color:#46514b;font-size:.9rem}

.mission-teaser__grid,.mission-page-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:clamp(48px,8vw,120px);align-items:start}
.mission-teaser p:not(.eyebrow),.mission-teaser__grid>div>p{color:#dfe9e3}
.mission-teaser__grid>div>.button{margin-top:18px}
.mission-facts{padding:clamp(28px,4vw,48px);border:1px solid #446353;border-radius:var(--radius-card);background:#0e291f}
.mission-facts__target{margin-bottom:36px!important;color:var(--brand-gold)!important;font-family:var(--font-display);font-size:clamp(3rem,6vw,5rem);line-height:1}
.mission-facts dl{display:grid;gap:20px;margin:0}
.mission-facts dl div{padding-top:18px;border-top:1px solid #446353}.mission-facts dt{color:#b7cac0;font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.mission-facts dd{margin:5px 0 0;color:var(--white);font-size:1.15rem;font-weight:700}
.mission-facts--light{border-color:var(--border);background:var(--surface-green)}.mission-facts--light .mission-facts__target{color:var(--brand-green)!important}.mission-facts--light dt{color:var(--muted)}.mission-facts--light dd{color:var(--charcoal)}.mission-facts--light dl div{border-color:#bdcac3}

.milestone-grid,.steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin:0;padding:1px;background:var(--border);list-style:none}
.milestone-grid li,.steps-grid li{min-height:220px;padding:32px;background:var(--white)}
.milestone-grid>li>span,.steps-grid>li>span,.principle-grid>li>span,.participation-list>article>span{display:block;margin-bottom:32px;color:var(--brand-ruby);font-family:var(--font-display);font-size:2rem}
.milestone-grid .eyebrow{color:var(--brand-ruby)}
.steps-grid li{background:var(--surface-green)}.steps-grid p{margin-bottom:0;color:var(--muted)}
.impact-grid--public{grid-template-columns:repeat(3,1fr)}.impact-grid--public .impact-metric{min-height:270px}.section-action{margin-top:40px}

.support-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.support-grid li,.check-list li{position:relative;padding:18px 18px 18px 42px;border:1px solid var(--border);background:var(--white);color:var(--brand-green);font-weight:700}
.support-grid li::before,.check-list li::before{position:absolute;top:24px;left:19px;width:8px;height:8px;border-radius:50%;background:var(--brand-gold);content:""}
.check-list{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:28px}.check-list li{font-size:.92rem}
.resource-category-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.resource-category-grid article{min-height:190px;padding:28px;border:1px solid var(--border);border-radius:var(--radius-card);background:var(--white)}
.resource-category-grid article p:last-child{margin-bottom:0;color:var(--muted)}
.brand-quote{color:var(--brand-ruby);font-family:var(--font-display);font-size:clamp(2rem,4vw,3.75rem);line-height:1.15}

.involvement-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:16px}
.involvement-grid>a{grid-column:span 2;min-height:260px;padding:30px;border:1px solid var(--border);border-radius:var(--radius-card);background:var(--white);text-decoration:none;transition:border-color var(--motion-micro),transform var(--motion-micro),box-shadow var(--motion-micro)}
.involvement-grid>a:nth-child(4){grid-column:2/span 2}.involvement-grid>a:nth-child(5){grid-column:4/span 2}
.involvement-grid>a:hover,.involvement-grid>a:focus-visible{border-color:var(--brand-gold);box-shadow:var(--shadow-subtle);transform:translateY(-3px)}
.involvement-grid>a>span{color:var(--brand-ruby);font-family:var(--font-display);font-size:1.5rem}.involvement-grid h3{margin:32px 0 12px}.involvement-grid p{color:var(--muted)}.involvement-grid strong{color:var(--brand-green);font-size:.9rem}

.final-cta{padding-block:clamp(72px,9vw,120px);background:var(--brand-green);color:var(--white)}
.final-cta__inner{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.6fr);align-items:end;gap:48px}.final-cta h2{max-width:900px;color:var(--white)}.final-cta p{color:#dfe9e3}.final-cta .button-row{justify-content:flex-end}.final-cta .button--secondary{border-color:var(--white);color:var(--white)}.final-cta .button--secondary:hover{background:var(--white);color:var(--brand-green)}

.page-hero{position:relative;overflow:hidden;padding-block:clamp(48px,7vw,96px);background:var(--brand-green);color:var(--white)}
.page-hero::after{position:absolute;right:-8vw;bottom:-18vw;width:42vw;min-width:360px;aspect-ratio:1;border:1px solid rgba(211,163,78,.45);border-radius:50%;box-shadow:0 0 0 80px rgba(211,163,78,.035),0 0 0 160px rgba(211,163,78,.025);content:""}
.page-hero .container{position:relative;z-index:1}.page-hero .breadcrumb{margin-bottom:clamp(32px,5vw,60px)}.page-hero__content{max-width:920px}.page-hero h1{margin-bottom:20px;color:var(--white)}.page-hero .lede{margin-bottom:0;color:#dfe9e3}.page-hero .eyebrow{color:var(--brand-gold)}
.link-panel-grid,.statement-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.link-panel-grid>a{min-height:250px;padding:32px;border:1px solid var(--border);border-radius:var(--radius-card);background:var(--white);text-decoration:none}.link-panel-grid>a:hover{border-color:var(--brand-gold)}.link-panel-grid>a>span{color:var(--brand-ruby);font-family:var(--font-display);font-size:1.5rem}.link-panel-grid h2{margin:36px 0 12px}.link-panel-grid p{color:var(--muted)}
.statement-grid{gap:clamp(24px,5vw,64px)}.statement-grid article{padding:clamp(28px,5vw,56px);border-top:4px solid var(--brand-gold);background:var(--surface-green)}.statement-grid blockquote{margin:32px 0 0;color:var(--charcoal);font-family:var(--font-display);font-size:clamp(1.5rem,2.6vw,2.4rem);line-height:1.35}
.principle-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:0;padding:0;list-style:none}.principle-grid li{min-height:230px;padding:28px;border:1px solid var(--border);background:var(--white)}.principle-grid h2{font-size:clamp(1.45rem,2vw,2rem)}
.approach-callout h2{max-width:900px;color:var(--white)}
.transparency-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:64px}.transparency-grid article{padding:28px;border-top:3px solid var(--brand-gold);background:var(--surface-green)}.transparency-grid h2{font-size:1.55rem}.transparency-grid p{margin-bottom:0;color:var(--muted)}
.participation-list{margin-bottom:40px;border-top:1px solid var(--border)}.participation-list article{display:grid;grid-template-columns:100px 1fr;gap:32px;padding-block:40px;border-bottom:1px solid var(--border)}.participation-list article>span{margin:0}.participation-list h2{margin-bottom:10px}.participation-list p{color:var(--muted)}
.contact-note{margin-top:48px;padding-top:40px;border-top:1px solid var(--border)}

@media (max-width:1180px){
  .home-hero__grid{grid-template-columns:minmax(0,1.35fr) minmax(270px,.65fr)}.home-hero__brand{min-height:320px}
  .pathway-list{grid-template-columns:repeat(3,1fr)}.support-grid{grid-template-columns:repeat(2,1fr)}.principle-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:900px){
  .home-hero{background:linear-gradient(150deg,var(--canvas),var(--surface-green))}.home-hero__grid,.editorial-grid,.mission-teaser__grid,.mission-page-grid,.final-cta__inner{grid-template-columns:1fr}
  .home-hero__brand{width:min(82vw,500px);min-height:0;aspect-ratio:1;margin-inline:auto;order:-1}.home-hero h1{font-size:clamp(3rem,9vw,5.25rem)}
  .trust-strip ul{grid-template-columns:1fr 1fr;gap:14px}.trust-strip li+li::before{display:none}
  .milestone-grid,.steps-grid,.resource-category-grid,.transparency-grid{grid-template-columns:repeat(2,1fr)}
  .pathway-list{grid-template-columns:1fr 1fr}.impact-grid--public{grid-template-columns:1fr 1fr}.support-grid{grid-template-columns:1fr 1fr}
  .involvement-grid{grid-template-columns:1fr 1fr}.involvement-grid>a,.involvement-grid>a:nth-child(4),.involvement-grid>a:nth-child(5){grid-column:auto}
  .final-cta .button-row{justify-content:flex-start}.progress-path--light{grid-template-columns:repeat(5,1fr)}
}
@media (max-width:767px){
  .home-hero{padding-block:48px 72px}.home-hero__brand{width:min(74vw,320px)}.home-hero h1{font-size:clamp(2.7rem,13vw,4.6rem)}
  .trust-strip ul,.link-panel-grid,.statement-grid,.milestone-grid,.steps-grid,.resource-category-grid,.transparency-grid,.involvement-grid{grid-template-columns:1fr}
  .trust-strip li{text-align:left}.trust-strip li::before{display:inline-block;width:6px;height:6px;margin:0 12px 2px 0;border-radius:50%;background:var(--brand-gold);content:""}
  .progress-path,.progress-path--light{grid-template-columns:1fr;margin-left:10px;padding-left:0;border-top:0;border-left:2px solid var(--brand-green)}.progress-path--light{border-color:var(--brand-gold)}
  .progress-path li{padding:0 0 34px 34px}.progress-path li::before{top:0;left:0;transform:translate(-50%,0)}.progress-path li:not(:last-child)::after{display:none}.progress-path li:last-child{padding-bottom:0}
  .pathway-list,.impact-grid--public,.support-grid,.check-list{grid-template-columns:1fr}.pathway-list li{min-height:72px}
  .mission-facts__target{font-size:clamp(2.5rem,13vw,4rem)}.principle-grid{grid-template-columns:1fr}.principle-grid li{min-height:180px}
  .participation-list article{grid-template-columns:58px 1fr;gap:16px}.participation-list>article>span{font-size:1.5rem}
  .final-cta .button-row{align-items:stretch}.final-cta .button{width:100%}
}
@media (max-width:430px){
  .home-hero__brand{width:78vw}.home-hero__copy .button-row{align-items:stretch}.home-hero__copy .button{width:100%}
  .milestone-grid li,.steps-grid li{min-height:190px;padding:26px}.involvement-grid>a{min-height:230px;padding:26px}.mission-facts{padding:24px}
}
@media (prefers-reduced-motion:reduce){.home-hero__orbit{animation:none}.involvement-grid>a{transform:none!important}}
