/* v24 — cleaner programme-purpose layouts and programme-specific accents */
.page-baxter .wing-purpose,
.page-dragonfly .wing-purpose,
.page-dnav .wing-purpose{
  padding:clamp(72px,8vw,116px) 0;
  background:
    radial-gradient(circle at 88% 10%,rgba(var(--programme-rgb),.12),transparent 30%),
    linear-gradient(180deg,#fff 0%,var(--programme-soft) 100%);
}
.page-baxter .wing-purpose-grid,
.page-dragonfly .wing-purpose-grid,
.page-dnav .wing-purpose-grid{
  display:block;
}
.page-baxter .wing-purpose-intro,
.page-dragonfly .wing-purpose-intro,
.page-dnav .wing-purpose-intro{
  max-width:820px;
  margin:0 0 42px;
}
.page-baxter .wing-purpose-intro .h2,
.page-dragonfly .wing-purpose-intro .h2,
.page-dnav .wing-purpose-intro .h2{
  max-width:760px;
}
.page-baxter .wing-purpose-cards,
.page-dragonfly .wing-purpose-cards,
.page-dnav .wing-purpose-cards{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.page-baxter .wing-purpose-card,
.page-dragonfly .wing-purpose-card,
.page-dnav .wing-purpose-card{
  display:block;
  min-height:270px;
  padding:30px 30px 32px;
  border-radius:24px;
  background:rgba(255,255,255,.88);
  border:1px solid rgba(var(--programme-rgb),.18);
  border-top:5px solid var(--programme-accent);
  box-shadow:0 18px 42px rgba(var(--programme-rgb),.09);
  backdrop-filter:blur(8px);
}
.page-baxter .wing-purpose-card:before,
.page-dragonfly .wing-purpose-card:before,
.page-dnav .wing-purpose-card:before{display:none}
.page-baxter .wing-purpose-card>span,
.page-dragonfly .wing-purpose-card>span,
.page-dnav .wing-purpose-card>span{
  width:auto;height:auto;display:inline-block;
  margin:0 0 30px;padding:8px 13px;
  border-radius:999px;
  color:var(--programme-deep);
  background:color-mix(in srgb,var(--programme-accent) 16%,#fff);
  border:1px solid color-mix(in srgb,var(--programme-accent) 42%,#fff);
  box-shadow:none;
  font:700 12px/1 var(--corp);
  letter-spacing:.12em;
}
.page-baxter .wing-purpose-card h3,
.page-dragonfly .wing-purpose-card h3,
.page-dnav .wing-purpose-card h3{
  margin:0 0 15px;
  color:#201a25;
  font:500 clamp(29px,2.4vw,38px)/1.05 var(--serif);
}
.page-baxter .wing-purpose-card p,
.page-dragonfly .wing-purpose-card p,
.page-dnav .wing-purpose-card p{
  margin:0;color:#625c68;font-size:16px;line-height:1.7;
}
.page-baxter .wing-purpose-card:hover,
.page-dragonfly .wing-purpose-card:hover,
.page-dnav .wing-purpose-card:hover{
  transform:translateY(-4px);
  border-color:rgba(var(--programme-rgb),.28);
  border-top-color:var(--programme-deep);
  box-shadow:0 24px 54px rgba(var(--programme-rgb),.14);
}

/* Impact visual replaces the repeated Baxter photograph with a programme system graphic */
.impact-programme-visual{
  min-height:500px;padding:34px;border-radius:30px;
  background:linear-gradient(145deg,#291049 0%,#4b2072 58%,#68409a 100%);
  box-shadow:0 24px 56px rgba(47,17,74,.22);
  display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;position:relative;
}
.impact-programme-visual:before{
  content:"";position:absolute;width:330px;height:330px;border-radius:50%;right:-100px;top:-120px;
  background:rgba(255,255,255,.1);filter:blur(2px);
}
.impact-programme-visual>div{position:relative;z-index:1}
.impact-programme-visual .visual-kicker{font:700 11px/1.2 var(--corp);letter-spacing:.17em;text-transform:uppercase;color:#e8daf7}
.impact-programme-visual h3{max-width:430px;margin:16px 0 28px;font:500 clamp(34px,4vw,52px)/1.02 var(--serif);color:#fff}
.impact-programme-logos{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.impact-programme-logo{min-height:130px;padding:18px;border-radius:20px;background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.2);display:grid;place-items:center;text-align:center}
.impact-programme-logo img{max-width:92px;max-height:70px;object-fit:contain}
.impact-programme-logo span{display:block;margin-top:10px;color:#fff;font:600 12px/1.25 var(--corp)}
.impact-programme-visual .photo-caption{position:relative;z-index:1;margin-top:24px;color:#f5effb;font-size:13px;line-height:1.5}

@media(max-width:900px){
 .page-baxter .wing-purpose-cards,.page-dragonfly .wing-purpose-cards,.page-dnav .wing-purpose-cards{grid-template-columns:1fr}
 .page-baxter .wing-purpose-card,.page-dragonfly .wing-purpose-card,.page-dnav .wing-purpose-card{min-height:auto}
}
@media(max-width:600px){
 .impact-programme-logos{grid-template-columns:1fr}
 .impact-programme-visual{min-height:auto}
}

/* v25 — align programme step numbers with headings */
.page-baxter .wing-purpose-card,
.page-dragonfly .wing-purpose-card,
.page-dnav .wing-purpose-card{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  column-gap:18px;
  row-gap:18px;
  align-content:start;
}
.page-baxter .wing-purpose-card>span,
.page-dragonfly .wing-purpose-card>span,
.page-dnav .wing-purpose-card>span{
  margin:3px 0 0;
  align-self:start;
}
.page-baxter .wing-purpose-card h3,
.page-dragonfly .wing-purpose-card h3,
.page-dnav .wing-purpose-card h3{
  margin:0;
  align-self:center;
}
.page-baxter .wing-purpose-card p,
.page-dragonfly .wing-purpose-card p,
.page-dnav .wing-purpose-card p{
  grid-column:1 / -1;
  margin:2px 0 0;
}
