.initiative-page { overflow: hidden; }

.nav-active { border-bottom: 1px solid currentColor; padding-bottom: 4px; }

.initiative-hero {
  min-height: calc(100vh - 88px);
  padding-block: clamp(44px, 7vw, 100px);
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(340px, .72fr);
  gap: clamp(36px, 7vw, 110px);
  align-items: center;
}

.initiative-hero-copy h1,
.initiative-copy-grid h2,
.initiative-section-heading h2,
.partner-copy h2,
.join-copy h2 {
  font: 500 clamp(3.4rem, 6.8vw, 7.2rem)/.89 Manrope, sans-serif;
  letter-spacing: -.075em;
  margin: 22px 0 0;
}

.initiative-hero-copy h1 { max-width: 880px; }
.initiative-lead { max-width: 650px; margin: 36px 0 0; color: var(--muted); font-size: clamp(1.05rem, 1.55vw, 1.32rem); line-height: 1.55; }
.initiative-button { width: min(100%, 280px); margin-top: 44px; padding: 17px 20px; display: flex; justify-content: space-between; align-items: center; background: var(--ink); color: white; font-size: .82rem; transition: .2s ease; }
.initiative-button:hover { background: var(--acid); color: var(--ink); }

.initiative-hero-image { position: relative; margin: 0; height: min(72vh, 780px); min-height: 560px; overflow: hidden; background: #bbb8af; }
.initiative-hero-image img { width: 100%; height: 100%; object-fit: cover; display: block; }
.initiative-hero-image figcaption { position: absolute; right: 18px; bottom: 18px; width: 156px; padding: 16px; background: var(--acid); color: var(--ink); }
.initiative-hero-image figcaption strong { display: block; font: 600 3.4rem/.82 Manrope, sans-serif; letter-spacing: -.07em; }
.initiative-hero-image figcaption span { display: block; margin-top: 10px; font-size: .66rem; line-height: 1.35; text-transform: uppercase; letter-spacing: .06em; }

.initiative-intro { padding-block: clamp(100px, 12vw, 180px); }
.initiative-copy-grid { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(300px, .75fr); gap: 9vw; margin-top: 26px; align-items: start; }
.initiative-copy-grid h2 { font-size: clamp(3rem, 5.8vw, 6.2rem); }
.initiative-copy-grid > div { padding-top: 12px; }
.initiative-copy-grid p { margin: 0 0 24px; color: var(--muted); font-size: 1.05rem; line-height: 1.7; }

.transformation-band { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 8px; padding-bottom: clamp(100px, 12vw, 170px); }
.transformation-band figure { margin: 0; aspect-ratio: 4 / 3; overflow: hidden; background: #cbc8bf; }
.transformation-band figure:nth-child(2) { transform: translateY(42px); }
.transformation-band img { width: 100%; height: 100%; object-fit: cover; display: block; }

.esg-section { background: var(--ink); color: white; padding-block: clamp(100px, 11vw, 160px); }
.initiative-section-heading { display: grid; grid-template-columns: .65fr 1.35fr; gap: 7vw; align-items: start; }
.initiative-section-heading h2 { font-size: clamp(3.1rem, 5.7vw, 6rem); margin-top: 0; }
.esg-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-top: 72px; }
.esg-grid article { min-height: 310px; padding: 28px; background: #252520; display: flex; flex-direction: column; }
.esg-letter { width: 74px; height: 74px; display: grid; place-items: center; margin-left: auto; background: var(--acid); color: var(--ink); font: 700 3.1rem/1 Manrope, sans-serif; transform: rotate(-7deg); }
.esg-grid article:nth-child(2) .esg-letter { transform: rotate(6deg); }
.esg-grid h3 { margin: auto 0 14px; font: 500 1.35rem/1.2 Manrope, sans-serif; }
.esg-grid p { margin: 0; color: #afafa8; line-height: 1.55; }

.impact-section { padding-block: clamp(100px, 12vw, 180px); }
.metrics-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-block: 1px solid var(--line); margin-top: 80px; }
.metrics-grid article { min-height: 230px; padding: 30px 26px 28px 0; display: flex; flex-direction: column; justify-content: space-between; border-right: 1px solid var(--line); }
.metrics-grid article:not(:first-child) { padding-left: 26px; }
.metrics-grid article:last-child { border-right: 0; }
.metrics-grid strong { font: 500 clamp(4rem, 7vw, 7.3rem)/.85 Manrope, sans-serif; letter-spacing: -.08em; }
.metrics-grid span { max-width: 240px; color: var(--muted); font-size: .8rem; line-height: 1.45; text-transform: uppercase; letter-spacing: .05em; }
.impact-note { max-width: 760px; margin: 48px 0 0 auto; font-size: 1.12rem; line-height: 1.65; color: var(--muted); }

.partner-value { display: grid; grid-template-columns: .9fr 1.1fr; gap: clamp(42px, 8vw, 120px); align-items: center; padding-bottom: clamp(110px, 13vw, 190px); }
.partner-value figure { margin: 0; height: min(72vw, 760px); max-height: 760px; overflow: hidden; background: #cbc8bf; }
.partner-value figure img { width: 100%; height: 100%; object-fit: cover; display: block; }
.partner-copy h2 { font-size: clamp(3rem, 5.2vw, 5.8rem); }
.partner-copy > p:not(.kicker) { margin: 34px 0 0; max-width: 620px; color: var(--muted); font-size: 1.05rem; line-height: 1.65; }
.partner-copy ul { list-style: none; padding: 0; margin: 45px 0 0; border-top: 1px solid var(--line); }
.partner-copy li { padding: 16px 0 16px 28px; border-bottom: 1px solid var(--line); position: relative; line-height: 1.4; }
.partner-copy li::before { content: "+"; position: absolute; left: 0; color: #76a900; font-weight: 700; }

.initiative-gallery { display: grid; grid-template-columns: 1.4fr .85fr .85fr; grid-template-rows: minmax(250px, 410px); gap: 8px; padding-bottom: clamp(110px, 12vw, 180px); }
.initiative-gallery figure { margin: 0; overflow: hidden; background: #cbc8bf; }
.initiative-gallery img { width: 100%; height: 100%; object-fit: cover; display: block; }
.gallery-statement { padding: 28px; background: var(--acid); display: flex; flex-direction: column; justify-content: space-between; }
.gallery-statement > p:last-child { margin: 0; font: 500 clamp(1.35rem, 2vw, 2rem)/1.25 Manrope, sans-serif; letter-spacing: -.035em; }

.join-section { border-top: 1px solid var(--line); padding-block: clamp(100px, 11vw, 160px); display: grid; grid-template-columns: 1fr 1fr; gap: 9vw; }
.join-copy h2 { font-size: clamp(3.1rem, 5.4vw, 5.8rem); }
.join-copy > p:not(.kicker) { max-width: 580px; margin: 34px 0 0; color: var(--muted); font-size: 1.05rem; line-height: 1.65; }
.join-copy .contact-meta { max-width: 580px; }

@media (max-width: 900px) {
  .initiative-hero { grid-template-columns: 1fr; min-height: auto; }
  .initiative-hero-image { height: 72vw; min-height: 480px; }
  .initiative-copy-grid, .partner-value, .join-section { grid-template-columns: 1fr; }
  .partner-value figure { height: 76vw; max-height: 700px; }
  .initiative-section-heading { grid-template-columns: 1fr; }
}

@media (max-width: 780px) {
  .initiative-hero { padding-top: 48px; }
  .initiative-hero-copy h1 { font-size: clamp(3.25rem, 15vw, 5.5rem); }
  .initiative-lead { font-size: 1rem; }
  .initiative-hero-image { height: 110vw; min-height: 460px; }
  .transformation-band { grid-template-columns: 1fr; gap: 8px; }
  .transformation-band figure:nth-child(2) { transform: none; }
  .esg-grid, .metrics-grid { grid-template-columns: 1fr; }
  .esg-grid article { min-height: 250px; }
  .metrics-grid article { min-height: 190px; border-right: 0; border-bottom: 1px solid var(--line); padding: 26px 0; }
  .metrics-grid article:not(:first-child) { padding-left: 0; }
  .metrics-grid article:last-child { border-bottom: 0; }
  .impact-note { margin-left: 0; }
  .initiative-gallery { grid-template-columns: 1fr 1fr; grid-template-rows: 80vw 80vw; }
  .initiative-gallery .gallery-large { grid-column: 1 / -1; }
  .gallery-statement { padding: 20px; }
  .gallery-statement > p:last-child { font-size: 1.18rem; }
}

@media (max-width: 520px) {
  .initiative-hero-image { min-height: 400px; }
  .initiative-gallery { grid-template-columns: 1fr; grid-template-rows: 110vw 80vw auto; }
  .initiative-gallery .gallery-large { grid-column: auto; }
  .gallery-statement { min-height: 280px; }
}
