.funded-project a { color: var(--blue); text-underline-offset: .2em; }
.funded-project a:hover { color: var(--navy-deep); }
.funded-project a:focus-visible, .site-footer a:focus-visible, .navigation a:focus-visible {
  outline: 3px solid var(--blue);
  outline-offset: 5px;
}
.funding-logos {
  display: grid;
  grid-template-columns: 185fr 46fr 52fr 123fr;
  align-items: center;
  gap: clamp(12px, 3vw, 48px);
  padding-block: 24px;
  max-width: 1060px;
}
.funding-logos img { display: block; width: 100%; height: auto; }
.project-intro { padding: 56px 0; background: var(--paper); border-block: 1px solid var(--line); }
.project-intro h1 { max-width: 940px; color: var(--navy); font-size: clamp(2.2rem, 4.5vw, 3.8rem); overflow-wrap: break-word; }
.project-intro p { max-width: 800px; }
.project-lead { font-size: 1.18rem; color: #415167; }
.project-intro .button { margin-top: .5rem; color: var(--navy); }
.project-section { padding-block: 48px; }
.project-section h2 { font-size: clamp(1.8rem, 3vw, 2.5rem); color: var(--navy); margin-bottom: 1.5rem; }
.project-section h3 { font-size: 1.4rem; margin: 2rem 0 1rem; }
.project-section > p, .project-objectives { max-width: 850px; }
.project-section > p:last-child { margin-bottom: 0; }
.project-objectives { padding-left: 1.3rem; }
.project-objectives li + li { margin-top: .6rem; }
.project-financing { background: var(--paper); border-block: 1px solid var(--line); }
.funding-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; margin: 0; }
.funding-grid > div { padding: 24px; background: white; border-left: 3px solid var(--blue); }
.funding-grid dt { font-size: .9rem; color: #415167; }
.funding-grid dd { margin: .5rem 0 0; color: var(--navy); font-size: clamp(1.4rem, 3vw, 2rem); font-weight: 800; font-variant-numeric: tabular-nums; }
.funding-grid dd span { font-size: 1rem; font-weight: 400; }
#comunicate { scroll-margin-top: 100px; }
.press-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.press-card { border: 1px solid var(--line); padding: 28px; }
.press-card .press-date { color: #415167; font-size: .85rem; margin: 0; }
.press-card h3 { margin-top: 1rem; }
.press-link { font-weight: 700; display: block; margin-top: 1.5rem; }
.press-link span { white-space: nowrap; font-weight: 400; font-size: .85rem; }
.press-download { display: inline-block; margin-top: .8rem; font-size: .9rem; }
.project-contact { border-top: 1px solid var(--line); overflow-wrap: anywhere; }
.funding-footer { text-align: center; padding-block: 32px 48px; border-top: 1px solid var(--line); }
.funding-footer > p:first-child { max-width: 800px; margin-inline: auto; }
.funding-slogan { font-weight: 800; font-size: 1.5rem; color: var(--navy); margin: 2rem 0; }
.funding-footer img { width: min(390px, 100%); height: auto; }
.funding-sites { display: flex; justify-content: center; gap: .6rem; flex-wrap: wrap; font-weight: 700; font-size: .9rem; }
.funding-disclaimer { max-width: 850px; margin: 24px auto 0; font-size: .8rem; color: #415167; }
@media (max-width: 650px) {
  .funding-logos { grid-template-columns: 2fr 1fr; gap: 12px 24px; max-width: 420px; padding-block: 16px; }
  .funding-logos img:nth-child(2) { width: 52px; justify-self: center; }
  .funding-logos img:nth-child(3) { width: 60px; justify-self: center; }
  .funding-logos img:nth-child(4) { width: 100%; max-width: 140px; justify-self: center; }
  .project-intro { padding-block: 36px; }
  .project-section { padding-block: 36px; }
  .project-lead { font-size: 1.05rem; }
  .funding-grid, .press-grid { grid-template-columns: 1fr; gap: 16px; }
  .funding-grid > div, .press-card { padding: 20px; }
}
