/*
=============================================================================
COLLARTIVE / SOCIAL IMPACT PAGE / EXTRA STYLES
=============================================================================
This file ONLY adds styling for social-impact.html.
Shared typography, colours, navigation, buttons and footers live in style.css.
To change a social impact section, search its EDIT label below.
NOTE: Dash punctuation is avoided in visible website copy, not in CSS syntax.
=============================================================================
*/
/* Navigation active underline is now managed in the shared stylesheet. */
/* EDIT IMPACT SECTION 01 / HERO */
.impact-hero { background-color: var(--sun); position: relative; overflow: hidden; }
.impact-hero-inner { min-height: 728px; display: grid; grid-template-columns: minmax(0,1.02fr) minmax(0,.98fr); gap: 35px; align-items: center; }
.impact-hero-copy { position: relative; z-index: 2; padding: 92px 0 100px; }
.impact-kicker { display: inline-flex; align-items: center; gap: 9px; background: var(--cream); padding: 8px 11px; font-size: 11px; font-weight: 900; letter-spacing: .08em; }
.impact-kicker-dot { display: inline-block; width: 9px; height: 9px; background: var(--blue); border-radius: 50%; }
.impact-hero h1 { font: 900 clamp(64px,7.8vw,126px)/.88 var(--display); letter-spacing: -.095em; margin: 32px 0 30px; }
.impact-hero h1 span { color: var(--blue); }
.impact-hero-copy > p { max-width: 575px; font-size: clamp(18px,1.7vw,23px); line-height: 1.38; font-weight: 600; }
.impact-hero-actions { display: flex; flex-wrap: wrap; gap: 24px; align-items: center; margin-top: 30px; }
.impact-secondary-link { border-bottom: 2px solid var(--ink); padding-block: 8px; font-weight: 800; font-size: 13px; }
.impact-secondary-link span { padding-left: 7px; }
.impact-hero-visual { position: relative; min-height: 680px; }
.impact-yellow-arch { position: absolute; right: -30px; top: 38px; height: 545px; width: 87%; border-radius: 310px 310px 40px 40px; background: var(--pink); border: 2px solid var(--ink); }
.impact-photo-large { position: absolute; top: 95px; right: 40px; width: 73%; height: 447px; overflow: hidden; border-radius: 240px 240px 0 0; transform: rotate(3deg); box-shadow: -12px 12px 0 var(--blue); }
.impact-photo-large img, .impact-photo-small img { width: 100%; height: 100%; object-fit: cover; }
.impact-photo-large img { object-position: center 38%; }
.impact-photo-small { position: absolute; width: 52%; height: 177px; overflow: hidden; bottom: 45px; left: 4px; border: 8px solid var(--sun); border-radius: 130px 130px 0 0; transform: rotate(-8deg); }
.impact-hero-sticker { position: absolute; background: var(--hot-pink); color: var(--ink); bottom: 107px; right: 7px; width: 116px; height: 116px; display: flex; flex-direction: column; align-items: start; justify-content: center; padding: 18px; border: 2px solid var(--ink); border-radius: 0 35px 0 0; transform: rotate(9deg); font: 900 16px/1.05 var(--display); z-index: 2; }
.impact-hero-sticker span { font-size: 24px; align-self: end; }
.impact-hero-bottom { display: flex; justify-content: space-between; border-top: 2px solid var(--ink); padding: 14px max(24px,calc((100% - var(--container))/2)); font-size: 10px; font-weight: 900; letter-spacing: .09em; }
/* EDIT IMPACT SECTION 02 / MANIFESTO */
.impact-manifesto { background: var(--forest); color: white; position: relative; overflow: hidden; }
.manifesto-grid { display: grid; grid-template-columns: 155px minmax(0,1fr) 135px; gap: 25px; }
.manifesto-grid > .section-label { align-self: start; }
.impact-manifesto h2 { font: 900 clamp(64px,9.4vw,142px)/.86 var(--display); letter-spacing: -.09em; margin: 5px 0 45px; }
.impact-manifesto h2 span { color: var(--sun); }
.impact-manifesto p { max-width: 685px; font-size: 22px; line-height: 1.43; margin: 0; }
.manifesto-stamp { color: var(--hot-pink); font-size: 170px; line-height: 1; align-self: end; }
/* EDIT IMPACT SECTION 03 / PATHWAYS */
.impact-pathways { background: var(--cream); }
.impact-section-heading { display: grid; grid-template-columns: 1.15fr .85fr; align-items: end; gap: 35px; margin: 45px 0 55px; }
.impact-section-heading h2, .impact-learning-heading h2, .impact-evidence-head h2 { font: 900 clamp(57px,8vw,114px)/.9 var(--display); letter-spacing: -.085em; margin: 0; }
.impact-section-heading h2 span, .impact-learning-heading h2 span, .impact-evidence-head h2 span { color: var(--blue); }
.impact-section-heading p, .impact-learning-heading p, .impact-evidence-head p { max-width: 480px; font-size: 20px; font-weight: 600; line-height: 1.46; margin: 0 0 6px; }
.impact-pathway-cards { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; }
.impact-feature-card { display: flex; flex-direction: column; min-width: 0; border: 2px solid var(--ink); background: var(--pink); box-shadow: 7px 7px 0 var(--ink); }
.impact-feature-card:nth-child(2) { background: var(--mint); }
.impact-feature-bar { display: flex; align-items: center; gap: 14px; min-height: 70px; background: var(--blue); padding: 10px 23px; color: white; font-weight: 900; font-size: 13px; }
.impact-feature-bar > span:last-child { margin-left: auto; font-size: 23px; }
.impact-round-num { display: grid; place-items: center; width: 42px; height: 42px; border: 2px solid var(--hot-pink); border-radius: 50%; flex-shrink: 0; }
.impact-feature-content { padding: 35px; display: flex; flex-direction: column; gap: 25px; flex: 1; }
.impact-feature-eyebrow { max-width: 430px; font-size: 11px; font-weight: 900; line-height: 1.5; letter-spacing: .065em; }
.impact-feature-content h3 { font: 900 clamp(42px,4.6vw,72px)/.92 var(--display); letter-spacing: -.075em; margin: 0; }
.impact-feature-content h3 span { color: var(--blue); }
.impact-feature-content > p { font-size: 17px; line-height: 1.47; font-weight: 500; margin: 0; }
.impact-mini-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); border-top: 2px solid var(--ink); border-left: 2px solid var(--ink); margin-top: auto; }
.impact-mini-grid span { min-width: 0; padding: 15px 10px; border-right: 2px solid var(--ink); border-bottom: 2px solid var(--ink); font: 900 11px/1.35 var(--display); }
.impact-card-link { display: flex; justify-content: space-between; align-items: center; font-size: 12px; font-weight: 900; padding-top: 10px; border-bottom: 2px solid var(--ink); padding-bottom: 8px; }
.impact-card-link span { font-size: 21px; }
/* EDIT IMPACT SECTION 04 / MODULAR TRAINING FLOW */
.impact-learning { background-color: var(--pink); }
.impact-learning-heading { display: grid; grid-template-columns: 1.15fr .85fr; align-items: end; gap: 45px; margin: 40px 0 75px; }
.impact-learning-flow { display: grid; grid-template-columns: minmax(0,1fr) 70px minmax(0,1fr) 70px minmax(0,1fr); align-items: stretch; }
.impact-flow-stage { min-width: 0; display: flex; flex-direction: column; border: 2px solid var(--ink); padding: 25px; min-height: 285px; background: var(--sun); }
.stage-practise { background: var(--blue); color: #fff; }
.stage-review { background: #dce7bf; }
.flow-tag { font-size: 11px; font-weight: 900; letter-spacing: .08em; }
.impact-flow-stage b { font: 900 clamp(28px,3vw,46px)/.98 var(--display); letter-spacing: -.06em; margin: auto 0 20px; }
.impact-flow-stage p { font-size: 15px; font-weight: 500; line-height: 1.35; margin: 0; }
.impact-flow-joint { display: grid; place-items: center; font: 900 53px var(--display); }
.impact-learning-after { display: flex; align-items: center; gap: 20px; max-width: 800px; margin: 42px 0 0 auto; }
.learning-star { font-size: 60px; line-height: 1; color: var(--blue); }
.impact-learning-after p { font-size: 18px; font-weight: 600; line-height: 1.42; margin: 0; }
/* EDIT IMPACT SECTION 05 / PHOTOS AND EVIDENCE */
.impact-evidence { background: var(--mint); }
.impact-evidence-head { display: flex; align-items: end; justify-content: space-between; gap: 35px; margin: 40px 0 60px; }
.impact-evidence-head h2 { font-size: clamp(50px,7vw,99px); }
.impact-evidence-grid { display: grid; grid-template-columns: 1.15fr .85fr; grid-template-rows: 280px 280px; gap: 12px; }
.impact-evidence-photo { position: relative; margin: 0; overflow: hidden; background: #e6e6e6; }
.impact-evidence-photo img { width: 100%; height: 100%; object-fit: cover; }
.impact-evidence-photo figcaption { position: absolute; left: 0; bottom: 0; right: 0; background: var(--forest); color: #fff; padding: 12px 16px; font-size: 11px; font-weight: 900; letter-spacing: .04em; }
.impact-evidence-block { padding: 25px; display: flex; flex-direction: column; background: var(--pink); }
.impact-evidence-block > span { font-weight: 900; }
.impact-evidence-block h3 { margin: auto 0 12px; font: 900 clamp(40px,5vw,75px)/.92 var(--display); letter-spacing: -.08em; }
.impact-evidence-block p { max-width: 500px; font-size: 17px; font-weight: 500; line-height: 1.4; margin: 0; }
.evidence-yellow { background: var(--sun); }
.impact-proof-note { font-size: 12px; color: #435448; margin-top: 20px; }
/* EDIT IMPACT SECTION 06 / PARTNERSHIP GRID */
.impact-partners { background: var(--forest); color: white; }
.impact-partners-intro { display: flex; align-items: end; justify-content: space-between; gap: 40px; margin: 45px 0 60px; }
.impact-partners-intro h2 { font: 900 clamp(52px,7.2vw,106px)/.9 var(--display); letter-spacing: -.083em; margin: 0; }
.impact-partners-intro h2 span { color: var(--sun); }
.impact-partners-intro p { max-width: 350px; font-size: 19px; line-height: 1.4; }
.impact-partner-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 0; border: 1px solid var(--forest); }
.impact-partner-grid article { min-height: 310px; display: flex; flex-direction: column; padding: 23px 20px; color: var(--ink); background: var(--pink); border: 1px solid var(--forest); min-width: 0; }
.impact-partner-grid article:nth-child(2) { background: var(--sun); }
.impact-partner-grid article:nth-child(3) { background: var(--mint); }
.impact-partner-grid article:nth-child(4) { background: #dce7bf; }
.impact-partner-grid article > span { align-self: end; font-weight: 900; }
.impact-partner-grid article h3 { margin: auto 0 15px; font: 900 clamp(25px,2.45vw,37px)/1 var(--display); letter-spacing: -.07em; overflow-wrap: break-word; }
.impact-partner-grid article p { font-size: 15px; line-height: 1.35; margin: 0; }
/* EDIT IMPACT SECTION 07 / EXPANDABLE QUESTIONS */
.impact-faq { background: var(--cream); }
.impact-faq-layout { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); gap: 65px; }
.impact-faq h2 { font: 900 clamp(65px,7.5vw,115px)/.92 var(--display); letter-spacing: -.09em; margin: 45px 0 0; }
.impact-faq h2 span { color: var(--blue); }
.impact-faq-items { border-top: 2px solid var(--ink); }
.impact-faq-items details { border-bottom: 2px solid var(--ink); }
.impact-faq-items summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; cursor: pointer; padding: 25px 10px 25px 0; list-style: none; font-size: 20px; font-weight: 800; line-height: 1.2; }
.impact-faq-items summary::-webkit-details-marker { display: none; }
.impact-faq-items summary span { font: 500 30px var(--display); transition: transform .2s; }
.impact-faq-items details[open] summary span { transform: rotate(45deg); }
.impact-faq-items details p { max-width: 650px; font-size: 17px; line-height: 1.5; margin: 0; padding: 0 50px 26px 0; }
/* EDIT IMPACT SECTION 08 / LAST ENQUIRY */
.impact-end { background-color: var(--pink); padding: 110px 0 120px; }
.impact-end h2 { font: 900 clamp(70px,9vw,140px)/.89 var(--display); letter-spacing: -.09em; margin: 35px 0 50px; }
.impact-end h2 span { color: var(--blue); }
.impact-end-row { display: flex; justify-content: space-between; align-items: end; gap: 35px; padding-top: 40px; border-top: 2px solid var(--ink); }
.impact-end-row p { max-width: 600px; font-size: 22px; font-weight: 600; line-height: 1.4; margin: 0; }
.impact-end-row .button { flex-shrink: 0; }
/* EDIT RESPONSIVE LAYOUT. The original homepage remains untouched. */
@media (max-width: 1150px) {
  .impact-hero h1 { font-size: clamp(62px,7.3vw,99px); }
  .impact-feature-content { padding: 25px; }
  .impact-feature-content h3 { font-size: clamp(37px,4.2vw,58px); }
  .impact-flow-stage { padding: 20px; }
  .impact-learning-flow { grid-template-columns: minmax(0,1fr) 40px minmax(0,1fr) 40px minmax(0,1fr); }
  .impact-partner-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .impact-partner-grid article { min-height: 260px; }
}
@media (max-width: 900px) {
  .impact-hero-inner { grid-template-columns: 1fr; gap: 0; }
  .impact-hero-copy { padding-bottom: 0; padding-top: 75px; }
  .impact-hero h1 { font-size: clamp(69px,11vw,105px); }
  .impact-hero-visual { min-height: 515px; }
  .impact-yellow-arch { top: 15px; right: 10%; height: 445px; width: 68%; }
  .impact-photo-large { top: 45px; width: 51%; height: 360px; right: 18%; }
  .impact-photo-small { left: 12%; bottom: 35px; width: 37%; }
  .impact-hero-sticker { right: 14%; bottom: 55px; }
  .impact-hero-bottom { padding-inline: 25px; }
  .manifesto-grid { grid-template-columns: minmax(0,1fr) 75px; }
  .manifesto-grid > .section-label { grid-column: 1 / -1; }
  .manifesto-stamp { font-size: 110px; }
  .impact-section-heading, .impact-learning-heading { grid-template-columns: 1fr; gap: 24px; margin-bottom: 42px; }
  .impact-pathway-cards { grid-template-columns: 1fr; }
  .impact-feature-content h3 { font-size: clamp(50px,9vw,76px); }
  .impact-evidence-head { display: block; }
  .impact-evidence-head p { margin-top: 25px; }
  .impact-partners-intro { display: block; }
  .impact-partners-intro p { margin-top: 25px; }
  .impact-faq-layout { grid-template-columns: 1fr; gap: 35px; }
  .impact-faq h2 { margin-top: 30px; }
  .impact-end-row { display: block; }
  .impact-end-row .button { margin-top: 25px; }
}
@media (max-width: 700px) {
  .impact-hero-copy { padding-top: 58px; }
  .impact-hero h1 { font-size: clamp(61px,13.2vw,87px); }
  .impact-hero-copy > p { font-size: 18px; }
  .impact-hero-visual { min-height: 390px; }
  .impact-yellow-arch { width: 82%; height: 345px; right: 0; }
  .impact-photo-large { width: 65%; height: 295px; right: 10%; top: 35px; }
  .impact-photo-small { width: 45%; height: 135px; left: 0; bottom: 8px; border-width: 6px; }
  .impact-hero-sticker { width: 88px; height: 88px; font-size: 12px; padding: 9px; bottom: 20px; right: 0; }
  .impact-hero-sticker span { font-size: 16px; }
  .impact-hero-bottom { font-size: 8px; }
  .impact-hero-bottom span:last-child { display: none; }
  .impact-manifesto h2 { font-size: clamp(59px,12.8vw,95px); }
  .impact-manifesto p { font-size: 18px; }
  .manifesto-grid { grid-template-columns: 1fr; }
  .manifesto-stamp { display: none; }
  .impact-section-heading h2, .impact-learning-heading h2, .impact-evidence-head h2 { font-size: clamp(54px,11vw,79px); }
  .impact-section-heading p, .impact-learning-heading p, .impact-evidence-head p { font-size: 18px; }
  .impact-feature-content { padding: 22px; }
  .impact-feature-content h3 { font-size: clamp(43px,10vw,68px); }
  .impact-feature-bar { padding: 10px 14px; font-size: 11px; }
  .impact-mini-grid span { padding: 12px 8px; font-size: 10px; }
  .impact-learning-flow { grid-template-columns: 1fr; }
  .impact-flow-stage { min-height: 220px; padding: 23px; }
  .impact-flow-stage b { font-size: 40px; }
  .impact-flow-joint { font-size: 34px; padding: 8px; transform: rotate(45deg); }
  .impact-learning-after { margin-top: 24px; }
  .impact-learning-after p { font-size: 16px; }
  .learning-star { font-size: 39px; }
  .impact-evidence-grid { grid-template-columns: 1fr 1fr; grid-template-rows: 240px 240px; gap: 8px; }
  .impact-evidence-block { padding: 17px; }
  .impact-evidence-block h3 { font-size: clamp(30px,6vw,52px); }
  .impact-evidence-block p { font-size: 13px; }
  .impact-partner-grid article h3 { font-size: clamp(22px,4vw,34px); }
  .impact-partner-grid article p { font-size: 13px; }
  .impact-partner-grid article { padding: 15px; min-height: 248px; }
  .impact-faq-items summary { font-size: 18px; }
  .impact-end { padding: 80px 0 95px; }
  .impact-end h2 { font-size: clamp(55px,12vw,85px); }
  .impact-end-row p { font-size: 19px; }
}
@media (max-width: 420px) {
  .impact-hero h1 { font-size: clamp(50px,12.7vw,67px); }
  .impact-hero-actions .button { width: 100%; }
  .impact-hero-visual { min-height: 330px; }
  .impact-yellow-arch { height: 294px; }
  .impact-photo-large { height: 250px; }
  .impact-photo-small { height: 105px; }
  .impact-manifesto h2 { font-size: 55px; }
  .impact-feature-content h3 { font-size: clamp(39px,10vw,50px); }
  .impact-feature-eyebrow { font-size: 10px; }
  .impact-evidence-grid { grid-template-columns: 1fr; grid-template-rows: repeat(4,minmax(225px,auto)); }
  .impact-evidence-block h3 { font-size: 57px; }
  .impact-partner-grid { grid-template-columns: 1fr; }
  .impact-partner-grid article { min-height: 205px; }
  .impact-partner-grid article h3 { font-size: 35px; }
  .impact-faq-items details p { padding-right: 0; }
  .impact-end h2 { font-size: clamp(47px,12vw,65px); }
  .impact-end-row .button { width: 100%; }
}

/* =====================================================================
   VERSION 1.5 / ORIGINAL PHOTOGRAPHY AND INSTITUTIONAL PARTNERSHIPS
   The hero image and two pathway photographs use user supplied workshop
   images. Use object-position to change the crop without touching HTML.
   ===================================================================== */
.impact-photo-large img { object-position: 49% 45%; }
.impact-photo-small img { object-position: 52% 54%; }
.impact-path-photo { margin: 0; position: relative; height: clamp(195px,21vw,282px); overflow: hidden; border: 2px solid var(--ink); background: var(--cream); }
.impact-path-photo img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center 43%; }
.impact-feature-card:nth-child(2) .impact-path-photo img { object-position: center 70%; }
.impact-path-photo figcaption { position: absolute; bottom: 0; left: 0; right: 0; background: var(--forest); color: white; padding: 10px 13px; font: 900 10px/1.2 var(--display); letter-spacing: .06em; }
.impact-evidence-photo:first-child img { object-position: center 55%; }

/* The four coloured tiles scroll to detailed proposals below. */
.impact-partner-tile { min-height: 330px; display: flex; flex-direction: column; padding: 23px 20px; color: var(--ink); background: var(--pink); border: 1px solid var(--forest); min-width: 0; text-decoration: none; transition: filter .18s ease; }
.impact-partner-tile:nth-child(2) { background: var(--sun); }
.impact-partner-tile:nth-child(3) { background: var(--mint); }
.impact-partner-tile:nth-child(4) { background: #dce7bf; }
.impact-partner-tile:hover { filter: brightness(.95); }
.impact-partner-tile:focus-visible { outline: 4px solid white; outline-offset: -5px; }
.impact-partner-tile > span:first-child { align-self: end; font-weight: 900; }
.impact-partner-tile h3 { margin: auto 0 13px; font: 900 clamp(24px,2.45vw,37px)/1 var(--display); letter-spacing: -.07em; overflow-wrap: break-word; }
.impact-partner-tile p { font-size: 15px; line-height: 1.38; margin: 0; }
.impact-partner-tile b { font: 900 10px/1.2 var(--display); letter-spacing: .035em; border-top: 1px solid currentColor; padding-top: 12px; margin-top: 20px; display: flex; justify-content: space-between; }
.impact-partner-tile b span { font-size: 14px; }
.engagement-details { margin-top: 76px; }
.engagement-details-heading { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,.75fr); gap: 20px 50px; align-items: end; border-top: 1px solid rgba(255,255,255,.42); padding: 35px 0 40px; }
.engagement-details-heading > span { grid-column: 1 / -1; font-size: 12px; letter-spacing: .08em; font-weight: 900; color: var(--sun); }
.engagement-details-heading h3 { font: 900 clamp(35px,4.4vw,65px)/.94 var(--display); letter-spacing: -.075em; margin: 0; }
.engagement-details-heading p { max-width: 440px; margin: 0; font-size: 17px; line-height: 1.45; }
.engagement-detail { scroll-margin-top: 94px; background: #fff9ef; color: var(--ink); display: grid; grid-template-columns: minmax(0,.82fr) minmax(0,1.18fr); margin-bottom: 13px; border: 2px solid #051807; }
.engagement-detail-title { padding: clamp(20px,3.3vw,48px); display: flex; flex-direction: column; background: var(--pink); min-width: 0; }
.engagement-detail:nth-of-type(2) .engagement-detail-title { background: var(--sun); }
.engagement-detail:nth-of-type(3) .engagement-detail-title { background: var(--mint); }
.engagement-detail:nth-of-type(4) .engagement-detail-title { background: #dce7bf; }
.engagement-counter { font: 900 11px/1.3 var(--display); letter-spacing: .05em; }
.engagement-detail-title h4 { font: 900 clamp(37px,4.25vw,62px)/.94 var(--display); letter-spacing: -.08em; margin: 65px 0 24px; overflow-wrap: normal; }
.engagement-detail-title h4 span { color: var(--blue); }
.engagement-audience { margin: auto 0 0; font-size: 12px; line-height: 1.5; font-weight: 900; letter-spacing: .03em; max-width: 300px; }
.engagement-detail-body { min-width: 0; padding: clamp(22px,3vw,42px); }
.engagement-lead { font-size: clamp(19px,1.6vw,23px); font-weight: 700; line-height: 1.38; max-width: 630px; margin: 0 0 28px; }
.engagement-bullets { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 22px; padding: 24px 0; border-top: 1px solid #a7b4a8; border-bottom: 1px solid #a7b4a8; }
.engagement-bullets strong { display: block; color: var(--blue); font: 900 11px/1.3 var(--display); letter-spacing: .045em; margin-bottom: 10px; }
.engagement-bullets p { margin: 0; font-size: 15px; line-height: 1.45; }
.engagement-example { font-size: 15px; line-height: 1.4; margin: 22px 0 26px; }
.engagement-example strong { font-weight: 900; }
.engagement-action { display: inline-flex; justify-content: space-between; align-items: center; gap: 24px; padding: 14px 17px; background: var(--forest); color: white; text-decoration: none; font: 900 12px/1.3 var(--display); }
.engagement-action:hover { background: var(--blue); }
.engagement-action:focus-visible { outline: 3px solid var(--blue); outline-offset: 3px; }
.engagement-footnote { font-size: 13px; line-height: 1.5; margin: 24px 0 0; color: #dae5da; max-width: 860px; }
@media (max-width:1150px) {
 .impact-partner-tile { min-height: 275px; }
 .impact-partner-tile h3 { font-size: clamp(28px,3.3vw,39px); }
}
@media (max-width:900px) {
 .engagement-detail { grid-template-columns: 1fr; }
 .engagement-detail-title h4 { margin: 40px 0 28px; }
 .engagement-details-heading { grid-template-columns: 1fr; }
 .engagement-details-heading > span { grid-column: auto; }
}
@media (max-width:700px) {
 .impact-partner-tile { min-height: 258px; padding: 17px; }
 .impact-partner-tile h3 { font-size: clamp(25px,4.8vw,35px); }
 .impact-partner-tile p { font-size: 13px; }
 .impact-path-photo { height: 235px; }
 .engagement-details { margin-top: 58px; }
 .engagement-bullets { grid-template-columns: 1fr; gap: 20px; }
 .engagement-detail-title h4 { font-size: clamp(37px,7vw,49px); }
}
@media (max-width:420px) {
 .impact-partner-tile { min-height: 195px; }
 .impact-partner-tile h3 { font-size: 35px; }
 .impact-path-photo { height: 235px; }
 .engagement-detail-title h4 { font-size: clamp(36px,9vw,48px); }
 .engagement-detail-body { padding: 22px 18px 30px; }
 .engagement-lead { font-size: 19px; }
}
