/* MATIS LABS · Förderungen · reference design 2026 */
.funding-page {
  --fund-gold: #c4a261;
  --fund-gold-dark: #8a6d33;
  --fund-ink: #09090e;
  --fund-navy: #111b36;
  --fund-night: #05060f;
  --fund-body: #4a5266;
  --fund-muted: #71788a;
  --fund-line: #dfe3ec;
  --fund-surface: #f7f8fb;
  background: #fff;
  color: var(--fund-ink);
}

.funding-page main { overflow: clip; }
.funding-page .container { position: relative; }
.funding-page header { background: rgba(255,255,255,.96); }
.funding-page .header-wordmark { display: none; }

@media (min-width: 1240px) {
  .funding-page header .logo {
    width: 320px;
    min-width: 320px;
    height: 100%;
    overflow: hidden;
  }

  .funding-page header .header-wordmark {
    display: block;
    width: 320px;
    max-width: none;
    height: 106px;
    margin-block: -5px;
    object-fit: contain;
    object-position: left center;
  }

  .funding-page header .logo-icon,
  .funding-page header .logo > span { display: none; }
  .funding-page header .nav-container { height: 96px; }
}

.funding-hero {
  min-height: 850px;
  display: flex;
  align-items: center;
  position: relative;
  padding: 150px 0 90px;
  background:
    linear-gradient(110deg, rgba(255,255,255,.98) 0%, rgba(255,255,255,.92) 44%, rgba(241,244,250,.82) 100%),
    radial-gradient(circle at 78% 28%, rgba(196,162,97,.18), transparent 36%);
}

.funding-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background-image:
    linear-gradient(rgba(17,27,54,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(17,27,54,.035) 1px, transparent 1px);
  background-size: 76px 76px;
  mask-image: linear-gradient(to right, transparent 0, #000 55%, #000 100%);
}

.funding-orbit {
  position: absolute;
  border: 1px solid rgba(138,109,51,.18);
  border-radius: 50%;
  pointer-events: none;
}

.funding-orbit--one { width: 720px; height: 720px; right: -300px; top: 20px; }
.funding-orbit--two { width: 420px; height: 420px; right: -120px; top: 170px; }

.funding-hero-grid {
  width: 100%;
  display: grid;
  grid-template-columns: minmax(0, .93fr) minmax(520px, .82fr);
  gap: clamp(52px, 7vw, 112px);
  align-items: center;
  z-index: 1;
}

.funding-eyebrow {
  margin: 0 0 24px;
  display: flex;
  align-items: center;
  gap: 13px;
  color: var(--fund-gold-dark);
  font-family: "Space Mono", monospace;
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .085em;
  text-transform: uppercase;
}

.funding-eyebrow > span { width: 30px; height: 1px; background: currentColor; flex: 0 0 auto; }

.funding-title {
  margin: 0;
  max-width: 760px;
  font-family: "Space Grotesk", sans-serif;
  font-size: clamp(4rem, 6.25vw, 6.9rem);
  line-height: .88;
  letter-spacing: -.065em;
  font-weight: 650;
}

.funding-title-line { display: block; }
.funding-title-line--accent { color: var(--fund-gold-dark); position: relative; width: max-content; }
.funding-title-line--accent::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -.06em;
  width: 100%;
  height: 5px;
  background: var(--fund-gold);
  transform-origin: left;
  animation: funding-rule 1s .55s cubic-bezier(.2,.75,.3,1) both;
}

@keyframes funding-rule { from { transform: scaleX(0); } to { transform: scaleX(1); } }

.funding-intro {
  max-width: 670px;
  margin: 34px 0 0;
  color: var(--fund-body);
  font-size: clamp(1.04rem, 1.35vw, 1.25rem);
  line-height: 1.72;
}

.funding-hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 32px; }

.funding-button {
  min-height: 54px;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  padding: 0 22px;
  border: 1px solid transparent;
  border-radius: 7px;
  font-family: "Inter", sans-serif;
  font-weight: 700;
  text-decoration: none;
  transition: transform .22s ease, background .22s ease, color .22s ease, border-color .22s ease;
}

.funding-button:hover { transform: translateY(-2px); }
.funding-button--primary { color: #fff; background: var(--fund-ink); }
.funding-button--primary:hover { background: #1a1b22; }
.funding-button--secondary { color: var(--fund-ink); background: #fff; border-color: var(--fund-line); }
.funding-button--secondary:hover { border-color: var(--fund-gold); }

.funding-proofline {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 22px;
  margin-top: 34px;
  color: #666f83;
  font-family: "Space Mono", monospace;
  font-size: .67rem;
  text-transform: uppercase;
  letter-spacing: .035em;
}

.funding-proofline span { display: flex; align-items: center; gap: 8px; }
.funding-proofline i { width: 7px; height: 7px; border-radius: 50%; background: #2f9e63; box-shadow: 0 0 0 4px rgba(47,158,99,.1); }

.funding-router {
  position: relative;
  padding: 0 24px 24px;
  border: 1px solid rgba(17,27,54,.13);
  border-radius: 18px;
  background: rgba(255,255,255,.9);
  box-shadow: 0 34px 90px rgba(17,27,54,.16);
  backdrop-filter: blur(20px);
}

.funding-router::before {
  content: "";
  position: absolute;
  inset: 14px -14px -14px 14px;
  border: 1px solid rgba(196,162,97,.28);
  border-radius: 18px;
  z-index: -1;
}

.funding-router-top {
  margin: 0 -24px;
  min-height: 54px;
  padding: 0 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid var(--fund-line);
  font-family: "Space Mono", monospace;
  font-size: .65rem;
  font-weight: 700;
  color: #50586c;
}

.funding-live { display: flex; align-items: center; gap: 8px; color: #277a50; }
.funding-live i { width: 7px; height: 7px; border-radius: 50%; background: #2f9e63; animation: funding-pulse 1.8s infinite; }
@keyframes funding-pulse { 50% { box-shadow: 0 0 0 7px rgba(47,158,99,0); } }

.funding-router-question { display: flex; gap: 17px; align-items: center; padding: 26px 0 21px; }
.funding-router-index { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; background: #f2eee5; color: var(--fund-gold-dark); font: 700 .72rem "Space Mono", monospace; }
.funding-router-question p { margin: 0 0 3px; color: var(--fund-muted); font: .68rem "Space Mono", monospace; text-transform: uppercase; }
.funding-router-question h2 { margin: 0; font-size: 1.55rem; letter-spacing: -.035em; }

.funding-router-tabs { display: grid; grid-template-columns: repeat(4, 1fr); gap: 6px; }
.funding-route {
  min-height: 48px;
  border: 1px solid var(--fund-line);
  border-radius: 6px;
  background: #fff;
  color: #5c6375;
  font-size: .76rem;
  font-weight: 700;
  cursor: pointer;
  transition: .2s ease;
}
.funding-route:hover { border-color: var(--fund-gold); color: var(--fund-ink); }
.funding-route.is-active { border-color: var(--fund-ink); background: var(--fund-ink); color: #fff; }

.funding-router-result {
  position: relative;
  min-height: 238px;
  margin-top: 10px;
  padding: 26px;
  overflow: hidden;
  color: #fff;
  border-radius: 10px;
  background: linear-gradient(145deg, #0b1020, #05060f);
}
.funding-router-result::after { content: ""; position: absolute; width: 220px; height: 220px; right: -90px; top: -110px; border: 1px solid rgba(196,162,97,.22); border-radius: 50%; }
.funding-router-path { position: absolute; left: 0; top: 0; width: 100%; height: 100%; pointer-events: none; opacity: .25; }
.funding-router-path span { position: absolute; height: 1px; background: linear-gradient(90deg, transparent, var(--fund-gold), transparent); transform: rotate(-13deg); }
.funding-router-path span:nth-child(1) { width: 75%; top: 23%; left: 23%; }
.funding-router-path span:nth-child(2) { width: 65%; top: 56%; left: -10%; }
.funding-router-path span:nth-child(3) { width: 55%; top: 81%; left: 44%; }

.funding-result-meta { position: relative; z-index: 1; display: flex; justify-content: space-between; gap: 10px; color: #d8bf87; font: 700 .62rem "Space Mono", monospace; letter-spacing: .045em; }
.funding-router-result > strong { position: relative; z-index: 1; display: block; margin: 27px 0 10px; max-width: 88%; font: 600 clamp(1.55rem, 2.2vw, 2.15rem) "Space Grotesk", sans-serif; letter-spacing: -.04em; }
.funding-router-result > p { position: relative; z-index: 1; max-width: 93%; margin: 0; color: #d8dde7; font-size: .9rem; line-height: 1.6; }
.funding-result-footer { position: absolute; z-index: 1; left: 26px; right: 26px; bottom: 20px; display: flex; justify-content: space-between; padding-top: 13px; border-top: 1px solid rgba(255,255,255,.2); font: .61rem "Space Mono", monospace; color: #bdc4d2; }
.funding-result-footer b { color: #d8bf87; }
.funding-router-result.is-switching > * { animation: funding-result-in .34s ease both; }
@keyframes funding-result-in { from { opacity: .2; transform: translateY(5px); } to { opacity: 1; transform: none; } }
.funding-router-note { margin: 14px 0 0; color: var(--fund-muted); font-size: .75rem; line-height: 1.5; }

.funding-alert-section { padding: 0 0 96px; background: #fff; }
.funding-alert { display: grid; grid-template-columns: 52px minmax(280px,.8fr) minmax(350px,1fr); gap: 28px; align-items: center; padding: 28px 32px; border: 1px solid #ded7c8; border-left: 4px solid var(--fund-gold); background: #fbfaf7; }
.funding-alert-icon { display: grid; place-items: center; width: 44px; height: 44px; border: 1px solid var(--fund-gold); border-radius: 50%; color: var(--fund-gold-dark); font: 700 1rem "Space Mono", monospace; }
.funding-alert span { color: var(--fund-gold-dark); font: 700 .67rem "Space Mono", monospace; text-transform: uppercase; letter-spacing: .05em; }
.funding-alert h2 { margin: 6px 0 0; font-size: clamp(1.3rem, 2vw, 1.8rem); letter-spacing: -.035em; }
.funding-alert > p { margin: 0; color: var(--fund-body); font-size: .94rem; line-height: 1.65; }

.funding-programmes, .funding-portfolio, .funding-regional, .funding-role, .funding-sources { padding: 120px 0; }
.funding-programmes { background: var(--fund-surface); }
.funding-section-head { display: grid; grid-template-columns: minmax(0,1.35fr) minmax(300px,.62fr); gap: 80px; align-items: end; margin-bottom: 54px; }
.funding-section-head h2, .funding-sources-head h2, .funding-role-copy h2 { margin: 0; max-width: 850px; font: 600 clamp(2.8rem, 5vw, 5.1rem)/.98 "Space Grotesk",sans-serif; letter-spacing: -.06em; }
.funding-section-head > p, .funding-sources-head > p { margin: 0 0 5px; color: var(--fund-body); font-size: 1rem; line-height: 1.72; }

.funding-feature-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 18px; align-items: stretch; }
.funding-programme-card { min-height: 480px; display: flex; flex-direction: column; padding: 34px; border: 1px solid var(--fund-line); border-radius: 12px; background: #fff; transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease; }
.funding-programme-card:hover { transform: translateY(-4px); border-color: #c9b88f; box-shadow: 0 24px 55px rgba(17,27,54,.08); }
.funding-programme-card--feature { grid-row: span 2; min-height: 978px; padding: 44px; color: #fff; border-color: rgba(196,162,97,.42); background: linear-gradient(155deg, #121b31 0%, #05060f 67%); }
.funding-card-status { display: flex; align-items: center; justify-content: space-between; gap: 15px; margin-bottom: 20px; color: #596174; font: 700 .64rem "Space Mono",monospace; text-transform: uppercase; letter-spacing: .035em; }
.funding-card-status span { display: inline-flex; align-items: center; gap: 8px; }
.funding-card-status i { width: 7px; height: 7px; border-radius: 50%; background: #2f9e63; }
.funding-card-status b { padding: 7px 9px; border: 1px solid var(--fund-line); border-radius: 999px; font: inherit; }
.funding-programme-card--feature .funding-card-status { color: #e1e5ed; }
.funding-programme-card--feature .funding-card-status b { border-color: rgba(255,255,255,.15); }
.funding-card-kicker { margin: 0 0 15px; color: var(--fund-gold-dark); font: 700 .66rem "Space Mono",monospace; text-transform: uppercase; letter-spacing: .05em; }
.funding-programme-card--feature .funding-card-kicker { color: #d3b877; }
.funding-card-scene { position:relative; height:210px; margin:0 0 30px; overflow:hidden; border-radius:8px; background:#e7e9ee; }
.funding-card-scene::after { content:""; position:absolute; inset:0; pointer-events:none; background:linear-gradient(180deg,transparent 58%,rgba(5,6,15,.62)); }
.funding-card-scene img { width:100%; height:100%; display:block; object-fit:cover; object-position:center; transition:transform .55s cubic-bezier(.2,.7,.3,1); }
.funding-programme-card:hover .funding-card-scene img { transform:scale(1.025); }
.funding-card-scene figcaption { position:absolute; z-index:1; left:15px; bottom:12px; color:rgba(255,255,255,.88); font:500 .5rem "Space Mono",monospace; letter-spacing:.035em; }
.funding-programme-card--feature .funding-card-scene { height:330px; border:1px solid rgba(255,255,255,.14); }
.funding-programme-card h3 { margin: 0 0 22px; font: 600 clamp(2.1rem,3vw,3.4rem)/.98 "Space Grotesk",sans-serif; letter-spacing: -.055em; }
.funding-programme-card--feature h3 {
  margin-top: 30px;
  color: #fff;
  font-size: clamp(3.4rem,5vw,5.8rem);
}
.funding-programme-card > p:not(.funding-card-kicker) { margin: 0; max-width: 620px; color: var(--fund-body); font-size: .98rem; line-height: 1.72; }
.funding-programme-card--feature > p:not(.funding-card-kicker) { color: #d9dee8; font-size: 1.04rem; }
.funding-card-facts { display: grid; grid-template-columns: repeat(3,1fr); gap: 1px; margin: 34px 0 30px; background: rgba(255,255,255,.12); border: 1px solid rgba(255,255,255,.12); }
.funding-card-facts--compact { grid-template-columns: repeat(2,1fr); margin-top: auto; background: var(--fund-line); border-color: var(--fund-line); }
.funding-card-facts div { padding: 17px; background: rgba(8,12,24,.84); }
.funding-card-facts--compact div { background: #fff; }
.funding-card-facts dt { color: #c1c7d2; font: .6rem "Space Mono",monospace; text-transform: uppercase; }
.funding-card-facts dd { margin: 7px 0 0; color: #fff; font-size: .9rem; font-weight: 700; }
.funding-card-facts--compact dd { color: var(--fund-ink); }
.funding-source-link { margin-top: auto; display: flex; align-items: center; justify-content: space-between; padding-top: 18px; border-top: 1px solid var(--fund-line); color: var(--fund-ink); font-weight: 700; text-decoration: none; }
.funding-programme-card--feature .funding-source-link { border-color: rgba(255,255,255,.16); color: #fff; }
.funding-source-link span { transition: transform .2s ease; }
.funding-source-link:hover span { transform: translate(3px,-3px); }

.funding-outcome { padding: 120px 0; background: #fff; }
.funding-outcome-grid { display:grid; grid-template-columns:minmax(0,1.12fr) minmax(420px,.88fr); gap:clamp(52px,7vw,110px); align-items:center; }
.funding-outcome-photo { position:relative; min-height:620px; margin:0; overflow:hidden; border-radius:14px; background:#e7e3da; box-shadow:0 28px 70px rgba(17,27,54,.13); }
.funding-outcome-photo::after { content:""; position:absolute; inset:0; pointer-events:none; background:linear-gradient(180deg,transparent 55%,rgba(5,6,15,.54)); }
.funding-outcome-photo img { width:100%; height:100%; min-height:620px; display:block; object-fit:cover; object-position:center; }
.funding-outcome-photo figcaption { position:absolute; z-index:1; left:26px; right:26px; bottom:22px; display:flex; align-items:center; justify-content:space-between; gap:20px; color:#fff; font:700 .66rem "Space Mono",monospace; letter-spacing:.055em; }
.funding-outcome-photo figcaption small { color:rgba(255,255,255,.82); font:500 .54rem "Space Mono",monospace; letter-spacing:.035em; }
.funding-outcome-copy h2 { margin:0; font:600 clamp(3rem,4.8vw,5.15rem)/.96 "Space Grotesk",sans-serif; letter-spacing:-.06em; }
.funding-outcome-copy h2 em { color:var(--fund-gold-dark); font-style:normal; }
.funding-outcome-copy > p:not(.funding-eyebrow) { max-width:660px; margin:30px 0 0; color:#353d50; font-size:1.03rem; line-height:1.75; }
.funding-outcome-points { margin:38px 0 0; border-top:1px solid #cfd4de; }
.funding-outcome-points > div { display:grid; grid-template-columns:42px 1fr; gap:18px; padding:21px 0; border-bottom:1px solid #cfd4de; }
.funding-outcome-points dt { color:var(--fund-gold-dark); font:700 .68rem "Space Mono",monospace; }
.funding-outcome-points dd { margin:0; display:flex; flex-direction:column; gap:3px; }
.funding-outcome-points b { color:var(--fund-ink); font-size:1rem; }
.funding-outcome-points span { color:#4a5264; font-size:.86rem; line-height:1.55; }

.funding-map-section { padding: 120px 0; color: #fff; background: var(--fund-night); position: relative; }
.funding-map-section::before { content:""; position:absolute; inset:0; background: radial-gradient(circle at 10% 0%, rgba(196,162,97,.12), transparent 30%); pointer-events:none; }
.funding-section-head--inverse h2 { color: #fff; }
.funding-section-head--inverse > p { color: #d2d7e1; }
.funding-map { border: 1px solid rgba(255,255,255,.22); background: rgba(10,14,27,.96); }
.funding-map-header { min-height: 56px; display:flex; align-items:center; justify-content:space-between; padding:0 22px; border-bottom:1px solid rgba(255,255,255,.2); color:#c8ceda; font: .64rem "Space Mono",monospace; }
.funding-map-flow { display:grid; grid-template-columns: 1fr 44px 1fr 44px 1fr 44px 1fr; align-items:stretch; }
.funding-map-flow article { min-height:290px; padding:34px 28px; display:flex; flex-direction:column; }
.funding-map-flow article span { color:#d4b871; font:700 .68rem "Space Mono",monospace; }
.funding-map-flow article b { margin-top:auto; color:#fff; font:600 1.6rem "Space Grotesk",sans-serif; }
.funding-map-flow article p { margin:10px 0 0; color:#d4d9e3; font-size:.89rem; line-height:1.65; }
.funding-map-arrow { display:grid; place-items:center; color:#e0c783; border-left:1px solid rgba(255,255,255,.16); border-right:1px solid rgba(255,255,255,.16); }
.funding-map-signal { display:grid; grid-template-columns:1fr 8px 1fr 8px 1fr; gap:5px; align-items:center; padding:0 28px 28px; }
.funding-map-signal span { height:1px; background:linear-gradient(90deg,transparent,#c4a261); }
.funding-map-signal i { width:7px; height:7px; border:1px solid #c4a261; border-radius:50%; box-shadow:0 0 14px rgba(196,162,97,.5); }

.funding-portfolio { background:#fff; }
.funding-portfolio-table { border:1px solid var(--fund-line); }
.funding-portfolio-row { display:grid; grid-template-columns:1.18fr .8fr 1fr; min-height:145px; border-bottom:1px solid var(--fund-line); }
.funding-portfolio-row:last-child { border-bottom:0; }
.funding-portfolio-row > span { display:flex; flex-direction:column; justify-content:center; padding:26px 30px; border-right:1px solid var(--fund-line); color:var(--fund-body); line-height:1.55; }
.funding-portfolio-row > span:last-child { border-right:0; }
.funding-portfolio-row b { color:var(--fund-ink); font-size:1.1rem; }
.funding-portfolio-row small { margin-top:5px; color:var(--fund-muted); }
.funding-portfolio-row em { width:max-content; max-width:100%; margin:3px 0; padding:4px 8px; border:1px solid #ded4bd; border-radius:3px; color:var(--fund-gold-dark); background:#fbf8f1; font:normal 700 .68rem "Space Mono",monospace; }
.funding-portfolio-row--head { min-height:54px; background:#f6f7fa; }
.funding-portfolio-row--head > span { padding:14px 30px; color:#6c7487; font:700 .65rem "Space Mono",monospace; text-transform:uppercase; }

.funding-regional { background:var(--fund-surface); }
.funding-regional-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.funding-regional-card { min-height:360px; display:flex; flex-direction:column; padding:36px; border:1px solid var(--fund-line); background:#fff; }
.funding-regional-card > span { color:var(--fund-gold-dark); font:700 .65rem "Space Mono",monospace; letter-spacing:.05em; }
.funding-regional-card h3 { margin:auto 0 18px; font:600 clamp(2rem,3.2vw,3.5rem)/1 "Space Grotesk",sans-serif; letter-spacing:-.05em; }
.funding-regional-card p { margin:0; max-width:590px; color:var(--fund-body); line-height:1.7; }
.funding-regional-card a { margin-top:28px; color:var(--fund-ink); font-weight:700; text-decoration:none; }
.funding-regional-card--dark { color:#fff; border-color:#21283a; background:linear-gradient(155deg,#111b36,#05060f); }
.funding-regional-card--dark p { color:#d7dce6; }
.funding-regional-card--dark a { color:#fff; }
.funding-regional-card--dark > span { color:#d7bd7d; }

.funding-role { background:#fff; }
.funding-role-grid { display:grid; grid-template-columns:minmax(0,.92fr) minmax(500px,1fr); gap:100px; align-items:start; }
.funding-role-copy > p:not(.funding-eyebrow) { margin:30px 0 0; max-width:650px; color:var(--fund-body); font-size:1.05rem; line-height:1.78; }
.funding-role-boundary { margin-top:34px; padding:22px 24px; border-left:3px solid var(--fund-gold); background:#f7f4ec; }
.funding-role-boundary b { font-size:.85rem; }
.funding-role-boundary p { margin:7px 0 0; color:#5d6373; font-size:.84rem; line-height:1.6; }
.funding-role-steps { list-style:none; margin:0; padding:0; border-top:1px solid var(--fund-line); }
.funding-role-steps li { display:grid; grid-template-columns:54px 1fr; gap:24px; padding:27px 4px; border-bottom:1px solid var(--fund-line); }
.funding-role-steps li > span { color:var(--fund-gold-dark); font:700 .69rem "Space Mono",monospace; }
.funding-role-steps b { font-size:1.08rem; }
.funding-role-steps p { margin:6px 0 0; color:var(--fund-body); font-size:.89rem; line-height:1.55; }

.funding-sources { background:#f3f4f7; }
.funding-sources-head { display:grid; grid-template-columns:1.1fr .65fr; gap:80px; align-items:end; margin-bottom:45px; }
.funding-sources-list { border-top:1px solid #cfd4df; }
.funding-sources-list a { min-height:78px; display:grid; grid-template-columns:64px 1fr auto; gap:18px; align-items:center; border-bottom:1px solid #cfd4df; color:var(--fund-ink); text-decoration:none; transition:background .2s ease,padding .2s ease; }
.funding-sources-list a:hover { padding-left:12px; background:rgba(255,255,255,.62); }
.funding-sources-list span { color:var(--fund-gold-dark); font:700 .66rem "Space Mono",monospace; }
.funding-sources-list b { font-size:1rem; }
.funding-sources-list em { color:var(--fund-muted); font:normal .68rem "Space Mono",monospace; }
.funding-source-date { margin:22px 0 0; color:var(--fund-muted); font-size:.76rem; }

.funding-cta { position:relative; padding:130px 0; overflow:hidden; color:#fff; background:var(--fund-night); text-align:center; }
.funding-cta-grid { position:absolute; inset:0; opacity:.2; background-image:linear-gradient(rgba(196,162,97,.15) 1px,transparent 1px),linear-gradient(90deg,rgba(196,162,97,.15) 1px,transparent 1px); background-size:66px 66px; mask-image:radial-gradient(circle,#000,transparent 70%); }
.funding-cta-inner { display:flex; flex-direction:column; align-items:center; }
.funding-cta h2 { margin:0; font:600 clamp(3rem,6.3vw,6.6rem)/.94 "Space Grotesk",sans-serif; letter-spacing:-.065em; }
.funding-cta h2 em { color:#d4b871; font-style:normal; }
.funding-cta-inner > p:not(.funding-eyebrow) { max-width:720px; margin:30px auto 0; color:#d7dce6; font-size:1.02rem; line-height:1.7; }
.funding-button--gold { background:var(--fund-gold); color:#08090d; }
.funding-button--gold:hover { background:#d2b573; }
.funding-button--light { color:#fff; border-color:rgba(255,255,255,.25); background:transparent; }
.funding-button--light:hover { border-color:#fff; }

@media (max-width: 1180px) {
  .funding-hero-grid { grid-template-columns:1fr; }
  .funding-hero { padding-top:145px; }
  .funding-hero-copy { max-width:860px; }
  .funding-router { max-width:720px; }
  .funding-section-head, .funding-sources-head { gap:42px; }
  .funding-role-grid { gap:60px; }
}

@media (max-width: 900px) {
  .funding-hero { min-height:auto; padding:125px 0 70px; }
  .funding-title { font-size:clamp(3.35rem,12vw,5.9rem); }
  .funding-alert { grid-template-columns:48px 1fr; }
  .funding-alert > p { grid-column:2; }
  .funding-section-head, .funding-sources-head, .funding-role-grid { grid-template-columns:1fr; }
  .funding-section-head { gap:24px; }
  .funding-outcome-grid { grid-template-columns:1fr; }
  .funding-outcome-photo, .funding-outcome-photo img { min-height:540px; }
  .funding-feature-grid, .funding-regional-grid { grid-template-columns:1fr; }
  .funding-programme-card--feature { grid-row:auto; min-height:660px; }
  .funding-map-flow { grid-template-columns:1fr; }
  .funding-map-arrow { min-height:42px; border:0; border-top:1px solid rgba(255,255,255,.08); border-bottom:1px solid rgba(255,255,255,.08); transform:rotate(90deg); }
  .funding-map-flow article { min-height:210px; }
  .funding-portfolio-row { grid-template-columns:1fr; }
  .funding-portfolio-row > span { min-height:72px; border-right:0; border-bottom:1px solid var(--fund-line); }
  .funding-portfolio-row > span:last-child { border-bottom:0; }
  .funding-portfolio-row--head { display:none; }
}

@media (max-width: 620px) {
  .funding-hero { padding-top:110px; }
  .funding-title { font-size:clamp(3rem,15.8vw,4.7rem); }
  .funding-intro { margin-top:26px; }
  .funding-hero-actions { flex-direction:column; }
  .funding-button { width:100%; }
  .funding-proofline { flex-direction:column; }
  .funding-router { padding:0 15px 15px; border-radius:12px; }
  .funding-router-top { margin:0 -15px; padding:0 14px; }
  .funding-router-tabs { grid-template-columns:repeat(2,1fr); }
  .funding-router-result { min-height:270px; padding:22px; }
  .funding-result-footer { left:22px; right:22px; }
  .funding-alert-section { padding-bottom:70px; }
  .funding-alert { grid-template-columns:1fr; padding:24px; }
  .funding-alert > p { grid-column:auto; }
  .funding-programmes, .funding-outcome, .funding-portfolio, .funding-regional, .funding-role, .funding-sources { padding:82px 0; }
  .funding-section-head h2, .funding-sources-head h2, .funding-role-copy h2 { font-size:clamp(2.45rem,12vw,3.7rem); }
  .funding-programme-card, .funding-programme-card--feature { min-height:auto; padding:28px 24px; }
  .funding-programme-card--feature h3 { margin-top:42px; }
  .funding-outcome-photo, .funding-outcome-photo img { min-height:420px; }
  .funding-outcome-photo figcaption { left:18px; right:18px; flex-direction:column; align-items:flex-start; gap:5px; }
  .funding-outcome-copy h2 { font-size:clamp(2.55rem,12vw,3.8rem); }
  .funding-card-status { margin-bottom:18px; align-items:flex-start; }
  .funding-card-scene { height:190px; }
  .funding-programme-card--feature .funding-card-scene { height:260px; }
  .funding-card-facts { grid-template-columns:1fr; }
  .funding-card-facts--compact { grid-template-columns:repeat(2,1fr); }
  .funding-regional-card { min-height:330px; padding:28px 24px; }
  .funding-role-grid { gap:48px; }
  .funding-sources-list a { grid-template-columns:38px 1fr; padding:14px 0; }
  .funding-sources-list em { grid-column:2; }
  .funding-cta { padding:95px 0; }
}

@media (prefers-reduced-motion: reduce) {
  .funding-title-line--accent::after, .funding-live i { animation:none; }
  .funding-button, .funding-programme-card, .funding-source-link span { transition:none; }
}
