.work-page{overflow:hidden;background:#f5f6ef;color:#173667}
.work-page-container{width:min(1380px,calc(100% - 72px))}
.work-page-hero{position:relative;padding:60px 0 46px;background:radial-gradient(ellipse at 88% 0%,rgba(94,185,60,.28),transparent 34%),#f5f6ef}
.work-eyebrow,
.work-program-label{display:none!important}
.work-eyebrow i{width:7px;height:7px;border-radius:50%;background:#FAB831;box-shadow:0 0 0 5px rgba(250,184,49,.15)}
.work-hero-row{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.55fr);align-items:end;gap:clamp(35px,8vw,120px);margin-top:0}
.work-hero-row h1{max-width:810px;margin:0;font-size:clamp(42px,5.4vw,70px);line-height:.99;letter-spacing:-.065em}
.work-hero-row h1 em,.work-programs-heading h2 em{color:#173667;font-style:normal}
.work-hero-copy{max-width:385px;padding:0 0 6px 20px;border-left:2px solid #FAB831}
.work-hero-copy p{margin:0 0 15px;color:#535353;font-size:14px;line-height:1.7}
.work-hero-copy a,.work-outcome-copy>a{display:inline-flex;align-items:center;gap:10px;color:#173667;font-size:12px;font-weight:800}
.work-hero-copy a span,.work-outcome-copy>a span{color:#5EB93C;font-size:17px;transition:transform .25s ease}
.work-hero-copy a:hover span,.work-outcome-copy>a:hover span{transform:translate(2px,-2px)}
.work-outcome-section{padding:8px 0 34px;background:#f5f6ef}
.work-outcome{display:grid;grid-template-columns:.8fr 1.2fr;min-height:350px;overflow:hidden;border:1px solid rgba(23,54,103,.13);border-radius:23px;background:linear-gradient(120deg,#173667,#173667);box-shadow:0 22px 48px rgba(23,54,103,.1)}
.work-outcome-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:34px clamp(27px,4vw,58px);color:#fff}
.work-outcome-label{display:none}
.work-outcome-number{margin:0;color:#FAB831;font-size:clamp(55px,7vw,82px);font-weight:800;line-height:.92;letter-spacing:-.07em}
.work-outcome-copy h2{margin:9px 0 8px;color:#fff;font-size:clamp(23px,2.5vw,34px);line-height:1.15;letter-spacing:-.04em}
.work-outcome-description{max-width:390px;margin:0 0 18px;color:#dce3ec;font-size:14px;line-height:1.65}
.work-outcome-copy>a{color:#FAB831}
.work-outcome-photo{position:relative;min-height:350px;margin:0;overflow:hidden;background:#535353}
.work-outcome-photo:after{position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(23,54,103,.58));content:""}
.work-outcome-photo img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:center 42%;transition:transform .65s cubic-bezier(.2,.7,.2,1)}
.work-outcome:hover .work-outcome-photo img{transform:scale(1.025)}
.work-outcome-photo figcaption{position:absolute;z-index:1;bottom:17px;left:20px;color:#fff;font-size:10px;font-weight:700}
.work-programs{padding:14px 0 34px;background:#f5f6ef}
.work-programs-heading{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:22px}
.work-programs-heading h2{max-width:650px;margin:0;font-size:clamp(32px,4vw,49px);line-height:1.06;letter-spacing:-.055em}
.work-programs-heading>p{max-width:330px;margin:0 0 3px;color:#535353;font-size:14px;line-height:1.65}
.work-program-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:19px}
.work-page .work-program-card{grid-column:auto;min-height:0}
.work-program-card{display:flex;min-width:0;flex-direction:column;overflow:hidden;border:1px solid #dfe4ec;border-radius:17px;background:#fff;box-shadow:0 10px 26px rgba(23,54,103,.045);transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s ease,border-color .35s ease}
.work-page .work-program-card:before,.work-page .work-program-card:after{display:none}
.work-program-card:hover{transform:translateY(-5px);border-color:#5EB93C;box-shadow:0 20px 34px rgba(23,54,103,.11)}
.work-program-photo{position:relative;aspect-ratio:1.48;overflow:hidden;background:#e7e8df}
.work-program-photo:after{position:absolute;inset:55% 0 0;background:linear-gradient(transparent,rgba(23,54,103,.22));content:""}
.work-program-photo img{width:100%;height:100%;object-fit:cover;transition:transform .55s cubic-bezier(.2,.7,.2,1)}
.work-program-card:hover .work-program-photo img{transform:scale(1.04)}
.work-program-copy{display:flex;flex:1;flex-direction:column;align-items:flex-start;padding:17px 17px 15px}
.work-program-label{color:#5EB93C;font-size:8px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.work-program-copy h3{margin:9px 0 7px;color:#173667;font-size:17px;line-height:1.25;letter-spacing:-.035em}
.work-program-copy p{margin:0;color:#535353;font-size:14px;line-height:1.6}
.work-program-link{display:grid;grid-template-columns:minmax(0,1fr) 34px;align-items:center;gap:12px;width:100%;margin-top:auto;padding:7px 8px 7px 14px;border:1px solid #d9e4d3;border-radius:13px;background:linear-gradient(105deg,#eef5e9,#f7f9f3);color:#173667;font-size:12px;font-weight:800;line-height:1.25;box-shadow:0 5px 13px rgba(23,54,103,.06);transition:background .28s ease,color .28s ease,border-color .28s ease,box-shadow .28s ease}
.work-program-link i{grid-column:2;grid-row:1;justify-self:end;display:grid;width:34px;height:34px;place-items:center;border-radius:10px;background:#5EB93C;color:#173667;font-size:16px;font-style:normal;transition:background .28s ease,color .28s ease,transform .28s ease}
.work-program-card:hover .work-program-link{border-color:#173667;background:#173667;color:#fff;box-shadow:0 8px 18px rgba(23,54,103,.16)}
.work-program-card:hover .work-program-link i{transform:translate(2px,-2px);background:#FAB831;color:#173667}
.work-program-card:focus-visible{outline:3px solid #5EB93C;outline-offset:3px}

@media(max-width:1080px){
.work-page-container{width:min(100% - 56px,900px)}
.work-program-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.work-program-copy{padding:18px 19px}
.work-program-copy h3{font-size:19px}
.work-outcome{grid-template-columns:.9fr 1.1fr}
}

@media(max-width:700px){
.work-page-container{width:calc(100% - 36px)}
.work-page-hero{padding:44px 0 32px}
.work-hero-row{grid-template-columns:1fr;gap:17px;margin-top:13px}
.work-hero-row h1{max-width:600px;font-size:clamp(41px,10.5vw,62px)}
.work-hero-copy{max-width:520px;padding-left:14px}
.work-outcome-section{padding:7px 0 25px}
.work-outcome{grid-template-columns:1fr;border-radius:18px}
.work-outcome-photo{order:-1;min-height:0;aspect-ratio:1.55}
.work-outcome-copy{padding:22px 22px 25px}
.work-outcome-number{margin-top:13px;font-size:62px}
.work-outcome-copy h2{font-size:26px}
.work-programs{padding:14px 0 28px}
.work-programs-heading{display:block;margin-bottom:16px}
.work-programs-heading h2{font-size:35px}
.work-programs-heading>p{margin-top:10px;font-size:12px}
.work-program-grid{gap:12px}
.work-program-photo{aspect-ratio:1.4}
.work-program-copy{padding:15px}
.work-program-copy h3{font-size:17px}
.work-program-copy p{font-size:14px}
}

@media(max-width:480px){
.work-page .work-program-card:nth-child(1),.work-page .work-program-card:nth-child(4){min-height:154px}
.work-program-grid{grid-template-columns:1fr;gap:11px}
.work-program-card{display:grid;grid-template-columns:39% minmax(0,1fr);min-height:154px}
.work-program-photo{aspect-ratio:auto;min-height:154px}
.work-program-copy{padding:14px 13px}
.work-program-copy h3{margin:6px 0;font-size:15px}
.work-program-copy p{font-size:14px;line-height:1.45}
.work-program-link{grid-template-columns:minmax(0,1fr) 26px;gap:7px;padding:6px 6px 6px 10px;font-size:11px}
.work-program-link i{width:26px;height:26px;border-radius:8px}
}

@media(max-width:480px){
.work-program-copy>span.work-program-link{min-height:42px;margin-top:10px;padding:5px 6px 5px 10px;font-size:10px}
.work-program-copy>span.work-program-link i{flex-basis:28px;width:28px;height:28px}
}

@media(prefers-reduced-motion:reduce){
.work-program-card,.work-program-photo img,.work-outcome-photo img,.work-program-link,.work-program-link i{transition:none!important}
}

.work-program-copy>span{margin-top:0}
.work-program-copy>span.work-program-label{margin-top:0;color:#5EB93C;font-size:8px;line-height:1.4}
.work-program-copy>span.work-program-link{display:flex;align-items:center;justify-content:space-between;gap:9px;min-height:49px;margin-top:14px;padding:6px 7px 6px 15px;border:1px solid #173667;border-radius:999px;background:#173667;color:#fff;font-size:12px;font-weight:800;line-height:1.2;white-space:nowrap;box-shadow:0 6px 14px rgba(23,54,103,.12);transition:background .28s ease,color .28s ease,border-color .28s ease,box-shadow .28s ease}
.work-program-copy>span.work-program-link i{flex:0 0 34px;width:34px;height:34px;place-items:center;border-radius:50%;background:#FAB831;color:#173667}
.work-program-card:hover .work-program-copy>span.work-program-link{border-color:#173667;background:#173667;color:#fff;box-shadow:0 9px 20px rgba(23,54,103,.2)}
.work-program-card:hover .work-program-copy>span.work-program-link i{transform:translate(2px,-2px);background:#FAB831;color:#173667}

/* ==========================================================================
   Detailed Programs Showcase Section
   ========================================================================== */
.detailed-programs-showcase {
  background-color: #FAF9F5;
  padding: 64px 0 96px;
  position: relative;
  font-family: var(--font, 'Plus Jakarta Sans', sans-serif);
}

.programs-showcase-container {
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 16px;
  box-sizing: border-box;
}

@media (min-width: 640px) {
  .detailed-programs-showcase {
    padding: 80px 0 104px;
  }
  .programs-showcase-container {
    padding: 0 24px;
  }
}

@media (min-width: 1024px) {
  .detailed-programs-showcase {
    padding: 96px 0 120px;
  }
  .programs-showcase-container {
    padding: 0 32px;
  }
}

.showcase-header {
  text-align: center;
  max-width: 780px;
  margin: 0 auto 56px;
}

.showcase-kicker {
  display: inline-block;
  font-family: inherit;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: #5EB93B;
  margin-bottom: 8px;
}

.showcase-title {
  font-family: inherit;
  font-size: clamp(26px, 3.4vw, 40px);
  font-weight: 800;
  color: #111111;
  letter-spacing: -0.035em;
  line-height: 1.15;
  margin: 6px 0 14px;
}

.showcase-divider {
  width: 48px;
  height: 4px;
  background-color: #5EB93B;
  margin: 0 auto;
  border-radius: 9999px;
}

.showcase-stack {
  display: flex;
  flex-direction: column;
  gap: 64px;
}

@media (min-width: 640px) {
  .showcase-stack {
    gap: 80px;
  }
}

@media (min-width: 1024px) {
  .showcase-stack {
    gap: 96px;
  }
}

/* Card Base */
.showcase-card {
  background-color: #FFFFFF;
  border: 1px solid #E8EBE5;
  border-radius: 28px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.035);
  padding: 24px;
  box-sizing: border-box;
  transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
}

@media (min-width: 640px) {
  .showcase-card {
    padding: 32px;
    border-radius: 32px;
  }
}

@media (min-width: 1024px) {
  .showcase-card {
    padding: 40px;
  }
}

.showcase-card:hover {
  box-shadow: 0 12px 36px rgba(23, 54, 103, 0.08);
  border-color: #d8dfd4;
}

.showcase-card-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 32px;
  align-items: start !important;
}

@media (min-width: 1024px) {
  .showcase-card-grid {
    grid-template-columns: repeat(12, 1fr);
    gap: 48px;
    align-items: start !important;
  }
  .showcase-col-image-left {
    grid-column: span 6;
    order: 1;
    margin-top: 0 !important;
    padding-top: 0 !important;
  }
  .showcase-col-content-right {
    grid-column: span 6;
    order: 2;
    margin-top: 0 !important;
    padding-top: 0 !important;
  }
  .showcase-col-content-left {
    grid-column: span 6;
    order: 1;
    margin-top: 0 !important;
    padding-top: 0 !important;
  }
  .showcase-col-image-right {
    grid-column: span 6;
    order: 2;
    margin-top: 0 !important;
    padding-top: 0 !important;
  }
}

/* Image frame */
.showcase-image-frame {
  position: relative;
  display: block;
  width: 100%;
  aspect-ratio: 16 / 11;
  border-radius: 20px;
  overflow: hidden;
  border: 1px solid #E8EBE5;
  background-color: #F7F8F4;
  cursor: pointer;
  box-shadow: 0 2px 10px rgba(0,0,0,0.03);
  text-decoration: none;
  margin-top: 0 !important;
}

@media (min-width: 640px) {
  .showcase-image-frame {
    aspect-ratio: 4 / 3;
    border-radius: 24px;
  }
}

.showcase-image-frame img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.5s cubic-bezier(0.2, 0.7, 0.2, 1);
}

.showcase-card:hover .showcase-image-frame img {
  transform: scale(1.05);
}

/* Content column */
.showcase-content {
  display: flex;
  flex-direction: column;
  justify-content: flex-start !important;
  height: 100%;
  margin-top: 0 !important;
  padding-top: 0 !important;
}

.showcase-card-title {
  font-family: inherit;
  font-size: clamp(22px, 2.2vw, 30px);
  font-weight: 800;
  color: #173667;
  letter-spacing: -0.03em;
  line-height: 1.18;
  margin: 0 0 14px !important;
  padding-top: 0 !important;
}

.showcase-title-link {
  color: inherit !important;
  text-decoration: none !important;
  transition: color 0.25s ease;
  display: inline-block;
  cursor: pointer;
}

.showcase-title-link:hover,
.showcase-title-link:focus-visible {
  color: #5EB93B !important;
}

.showcase-card:hover .showcase-title-link {
  color: #5EB93B !important;
}

.showcase-card-desc {
  font-family: inherit;
  font-size: 15px;
  line-height: 1.72;
  color: #626262;
  margin: 0;
}

/* Metrics bar */
.showcase-metrics-bar {
  background-color: #F7F8F4;
  border: 1px solid #E8EBE5;
  border-radius: 18px;
  padding: 16px 14px;
  margin: 22px 0 24px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  box-sizing: border-box;
}

@media (min-width: 640px) {
  .showcase-metrics-bar {
    padding: 18px 20px;
    border-radius: 20px;
    gap: 16px;
  }
}

.showcase-metric-item {
  display: flex;
  flex-direction: column;
  min-width: 0;
}

.showcase-metric-num {
  font-family: inherit;
  font-weight: 800;
  font-size: clamp(19px, 1.9vw, 26px);
  color: #222222;
  line-height: 1.15;
  letter-spacing: -0.02em;
  display: inline-flex;
  align-items: baseline;
  white-space: nowrap;
}

.showcase-metric-label {
  font-family: inherit;
  font-size: 12px;
  color: #555e65;
  line-height: 1.35;
  margin-top: 4px;
  white-space: normal;
  word-wrap: break-word;
  overflow-wrap: break-word;
  display: block;
}

/* Action Buttons */
.showcase-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
  gap: 12px;
  margin-top: auto;
  position: relative;
  z-index: 5;
}

.btn-sponsor {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  background-color: #5EB93B;
  color: #FFFFFF !important;
  font-family: inherit;
  font-weight: 700;
  font-size: 14px;
  line-height: 1;
  padding: 14px 28px;
  min-height: 48px;
  border-radius: 9999px;
  border: 1.5px solid #5EB93B;
  box-shadow: 0 4px 14px rgba(94, 185, 59, 0.25);
  cursor: pointer;
  text-decoration: none;
  box-sizing: border-box;
  vertical-align: middle;
  transition: background-color 0.25s ease, transform 0.2s ease, box-shadow 0.25s ease;
}

@media (min-width: 640px) {
  .btn-sponsor {
    font-size: 14px;
    padding: 14px 30px;
    min-height: 48px;
  }
}

.btn-sponsor:hover {
  background-color: #4ea030;
  border-color: #4ea030;
  box-shadow: 0 6px 20px rgba(94, 185, 59, 0.35);
  transform: translateY(-2px);
  color: #FFFFFF !important;
}

.btn-sponsor:active {
  transform: translateY(0);
}

.btn-sponsor svg {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
}

/* Original Solid Black Action Button - Consistent across ALL cards */
.btn-dark-action {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 9px !important;
  background-color: #14171A !important;
  color: #FFFFFF !important;
  font-family: inherit !important;
  font-weight: 700 !important;
  font-size: 14px !important;
  line-height: 1 !important;
  padding: 14px 26px !important;
  min-height: 48px !important;
  border-radius: 9999px !important;
  border: 1.5px solid #14171A !important;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.18) !important;
  cursor: pointer !important;
  text-decoration: none !important;
  box-sizing: border-box !important;
  vertical-align: middle !important;
  position: relative !important;
  z-index: 5 !important;
  transition: background-color 0.25s ease, transform 0.2s ease, box-shadow 0.25s ease, border-color 0.25s ease, color 0.25s ease !important;
}

@media (min-width: 640px) {
  .btn-dark-action {
    font-size: 14px !important;
    padding: 14px 26px !important;
    min-height: 48px !important;
  }
}

.btn-dark-action:hover {
  background-color: #000000 !important;
  border-color: #000000 !important;
  box-shadow: 0 8px 22px rgba(0, 0, 0, 0.3) !important;
  transform: translateY(-2px) !important;
  color: #FFFFFF !important;
}

.btn-dark-action:active {
  transform: translateY(0) !important;
}

.btn-dark-action span {
  color: #FFFFFF !important;
}

.btn-dark-action .btn-icon-left {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
}

.btn-dark-action .btn-icon-right {
  width: 15px;
  height: 15px;
  flex-shrink: 0;
  stroke: currentColor;
  transition: transform 0.2s ease;
}

.btn-dark-action:hover .btn-icon-right {
  transform: translateX(3px);
}

/* Mobile Responsive Layout: Zero text truncation, clean padding & spacing */
@media (max-width: 768px) {
  .detailed-programs-showcase {
    padding: 48px 0 100px;
  }
  .showcase-header {
    margin-bottom: 36px;
  }
  .showcase-stack {
    gap: 40px;
  }
  .showcase-card {
    padding: 24px 20px;
    border-radius: 24px;
  }
  .showcase-card-grid {
    gap: 22px;
  }
}

@media (max-width: 640px) {
  .showcase-card {
    padding: 20px 16px;
    border-radius: 20px;
  }
  .showcase-card-title {
    font-size: 21px;
    margin-bottom: 10px !important;
  }
  .showcase-card-desc {
    font-size: 14.5px;
    line-height: 1.62;
  }
  .showcase-metrics-bar {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px 10px;
    padding: 14px 12px;
    margin: 18px 0 20px;
  }
  .showcase-metric-num {
    font-size: 17px;
  }
  .showcase-metric-label {
    font-size: 11px;
    line-height: 1.3;
  }
}

@media (max-width: 520px) {
  .showcase-actions {
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
    width: 100%;
  }

  .showcase-actions .btn-dark-action,
  .showcase-actions .btn-sponsor {
    width: 100%;
    justify-content: center;
    text-align: center;
  }
}

@media (max-width: 420px) {
  .showcase-card {
    padding: 16px 14px;
    border-radius: 18px;
  }
  .showcase-metrics-bar {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 6px 8px;
    padding: 12px 8px;
  }
  .showcase-metric-num {
    font-size: 15px;
  }
  .showcase-metric-label {
    font-size: 10px;
    line-height: 1.25;
  }
}

