.funding-page { display: grid; gap: 1.1rem; min-width: 0; }
.funding-page h1, .funding-page h2, .funding-page h3 { margin-top: 0; }
.funding-page p { max-width: 75ch; }
/* This is page navigation, not the sticky application header styled by site.css. */
.funding-page .funding-nav {
    position: static;
    inset: auto;
    z-index: auto;
    display: grid;
    grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
    align-items: stretch;
    justify-content: normal;
    gap: .4rem;
    width: 100%;
    max-width: 36rem;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: inherit;
    box-shadow: none;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
}
.funding-page .funding-nav a {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 0;
    min-height: 44px;
    margin: 0;
    padding: .55rem .65rem;
    border: 1px solid rgba(47,111,78,.4);
    border-radius: 8px;
    background: white;
    color: #2f6f4e;
    font-size: .875rem;
    font-weight: 650;
    line-height: 1.3;
    text-align: center;
    text-decoration: none;
    white-space: normal;
    overflow-wrap: break-word;
    text-wrap: balance;
}
.funding-page .funding-nav a[aria-current="page"] { background: var(--color1, #2f6f4e); border-color: var(--color1, #2f6f4e); color: white; }
.funding-actions { display: flex; flex-wrap: wrap; align-items: stretch; gap: .65rem; }
.funding-page form { min-width: 0; max-width: 100%; margin: 0; }
.funding-page :is(button, a.primary-button, a.secondary-button) {
    box-sizing: border-box;
    min-width: 0;
    min-height: 44px;
    max-width: 100%;
    margin: 0;
    padding: .625rem .875rem;
    border-radius: 8px;
    font-size: .9375rem;
    font-weight: 650;
    line-height: 1.3;
    text-align: center;
    white-space: normal;
    overflow-wrap: break-word;
}
.funding-page .primary-button { border: 1px solid transparent; }
.funding-actions > form { display: flex; align-items: stretch; }
.funding-actions > form > button { height: 100%; }
.funding-card { display: grid; gap: .85rem; min-width: 0; }
.funding-pending, .funding-selection { display: grid; gap: .85rem; min-width: 0; }
.funding-pending > p, .funding-pending > h3, .funding-selection > p, .funding-selection > h3 { margin: 0; }
.funding-page :is(#next-funding, #funding-offers-title, #selected-funding, #current-funding-title, #funding-message) { scroll-margin-top: 6rem; }
.funding-card > p, .funding-card > h2, .funding-card > h3 { margin-bottom: 0; }
.funding-card__head { display: flex; justify-content: space-between; align-items: flex-start; gap: .8rem; flex-wrap: wrap; }
.funding-facts { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 190px), 1fr)); gap: .8rem; margin: 0; }
.funding-facts > div { padding: .85rem; border: 1px solid rgba(31,48,42,.16); border-radius: 14px; }
.funding-facts dt { font-size: .9rem; opacity: .8; margin-bottom: .35rem; }
.funding-facts dd { margin: 0; font-weight: 650; overflow-wrap: anywhere; }
.funding-badge { display: inline-block; justify-self: start; max-width: 100%; padding: .25rem .65rem; border-radius: 999px; background: rgba(47,111,78,.12); font-size: .9rem; font-weight: 700; }
.funding-note { padding: .85rem 1rem; border-radius: 14px; border: 1px solid rgba(37,99,235,.2); background: rgba(37,99,235,.05); }
.funding-warning { border-color: #a76c13; background: #fff8e8; color: #533c12; }
.funding-list { display: grid; gap: .8rem; list-style: none; margin: 0; padding: 0; }
.funding-list > li { padding: .9rem; border: 1px solid rgba(31,48,42,.16); border-radius: 14px; min-width: 0; }
.funding-list p { margin: .35rem 0; }
.funding-list strong, .funding-page small { overflow-wrap: anywhere; }
.funding-form { display: grid; gap: .55rem; min-width: 0; }
.funding-form label { display: block; width: auto; max-width: none; font-weight: 650; }
.funding-form input[type="checkbox"] { width: 1.1rem; max-width: none; margin: 0 .4rem 0 0; vertical-align: middle; }
.funding-form select { width: 100%; min-width: 0; max-width: 100%; min-height: 44px; padding: .55rem .7rem; border: 1px solid rgba(31,48,42,.3); border-radius: 8px; color: inherit; background: white; font: inherit; }
.funding-form button { justify-self: start; }
.funding-plans { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr)); gap: 1rem; }
.funding-plans article { min-width: 0; display: flex; flex-direction: column; gap: .7rem; }
.funding-plans article h3, .funding-plans article p { margin: 0; }
.funding-plans article form { margin-top: auto; }
.funding-price { font-size: 1.4rem; }
.funding-details > summary { cursor: pointer; font-weight: 700; padding: .3rem 0; }
.funding-details[open] > summary { margin-bottom: .8rem; }
.funding-usage { display: grid; gap: .45rem; }
.funding-usage progress { width: 100%; accent-color: var(--color1, #2f6f4e); }
.funding-page :focus-visible { outline: 3px solid #1b669b; outline-offset: 3px; }
@media (max-width: 480px) {
 .funding-page form { width: 100%; }
 .funding-page :is(button, a.primary-button, a.secondary-button) { width: 100%; justify-self: stretch; }
 .funding-actions > * { width: 100%; }
 .funding-card { padding: 1rem; }
}
