/* LINK SITE READABLE V18 — website-scale typography + card/button floors.
   Loaded last. Does not redesign headers or replace content. */
:root{
  --link-v18-body:20px;
  --link-v18-card:18px;
  --link-v18-small:16px;
  --link-v18-button:17px;
  --link-v18-nav:16px;
  --link-v18-line:1.55;
}
html{font-size:18px!important;-webkit-text-size-adjust:100%!important;text-size-adjust:100%!important}
html body{font-size:var(--link-v18-body)!important;line-height:var(--link-v18-line)!important;color:#16344c}
html body main p,
html body main li,
html body main dd,
html body main dt,
html body main label,
html body main legend,
html body main td,
html body main th,
html body main .description,
html body main .summary,
html body main .lead,
html body main .copy,
html body main .note,
html body main .help{font-size:var(--link-v18-body)!important;line-height:var(--link-v18-line)!important}

/* Ordinary cards should read like website cards, not fine print. */
html body main article p,
html body main .card p,
html body main [class*="card"] p,
html body main [class*="tile"] p,
html body main [class*="panel"] p{font-size:var(--link-v18-card)!important;line-height:1.5!important}
html body main h3,
html body main [class*="card"] h2,
html body main [class*="card"] h3{font-size:clamp(22px,1.8vw,28px)!important;line-height:1.18!important}

html body small,
html body main small,
html body footer p,
html body footer a,
html body footer small,
html body main [class*="meta"],
html body main [class*="helper"],
html body main [class*="caption"]{font-size:var(--link-v18-small)!important;line-height:1.45!important}

html body button,
html body input,
html body select,
html body textarea,
html body .btn,
html body [class*="button"],
html body [class*="-btn"],
html body [class*="cta"]{font-size:var(--link-v18-button)!important;line-height:1.3!important}
html body button,
html body .btn,
html body [class*="button"],
html body [class*="-btn"]{min-height:48px!important;padding-top:11px!important;padding-bottom:11px!important}
html body input,
html body select{min-height:50px!important}
html body textarea{min-height:130px!important}
html body header nav a,
html body .main-nav a,
html body [class*="-nav"] a{font-size:var(--link-v18-nav)!important;line-height:1.25!important}

/* Back / LINK Home / Forward */
html body .link-v406-page-controls .link-v406-control,
html body button.link-v406-control,
html body a.link-v406-control,
html body [class*="page-controls"] a,
html body [class*="page-controls"] button{font-size:18px!important;min-height:48px!important;padding:11px 18px!important;font-weight:800!important}

/* HOME — Real Needs cards are a priority section. */
html body .needs-section .needs-intro p{font-size:20px!important;line-height:1.55!important}
html body .needs-section .needs-intro a,
html body .needs-section .needs-intro button{font-size:17px!important;line-height:1.25!important;min-height:48px!important}
html body .needs-section .verified-card,
html body .needs-section .need-card{min-height:390px!important}
html body .needs-section .verified-card .tag,
html body .needs-section .need-card .tag,
html body .needs-section [class*="tag"]{font-size:14px!important;line-height:1.2!important;padding:7px 10px!important}
html body .needs-section .verified-card h3,
html body .needs-section .need-card h3,
html body .needs-section .need-body h3{font-size:24px!important;line-height:1.14!important}
html body .needs-section .verified-card p,
html body .needs-section .need-card p,
html body .needs-section .need-body p{font-size:17px!important;line-height:1.5!important}
html body .needs-section .verified-card small,
html body .needs-section .need-card small,
html body .needs-section .verified-card strong,
html body .needs-section .need-card strong{font-size:15px!important;line-height:1.35!important}
html body .needs-section .verified-card-actions a,
html body .needs-section .verified-card-actions button,
html body .needs-section .verified-card>a,
html body .needs-section .verified-card>button,
html body .needs-section .need-card a,
html body .needs-section .need-card button,
html body .needs-section .need-body button{font-size:15px!important;line-height:1.2!important;font-weight:900!important;min-height:44px!important}

/* HOME — every nonprofit stays visible in the logo area. */
html body .partners-panel{width:calc(100% - 28px)!important;max-width:none!important;height:auto!important;max-height:none!important;overflow:visible!important;margin-left:auto!important;margin-right:auto!important;padding:22px!important}
html body .partners-head strong{font-size:20px!important}
html body .partners-head .launch-card-link{font-size:16px!important}
html body #partnerRail,
html body .partner-rail{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:10px!important;width:100%!important;height:auto!important;max-height:none!important;overflow:visible!important;border:0!important;background:transparent!important}
html body #partnerRail .partner-cell,
html body .partner-rail .partner-cell,
html body .partner-item{min-height:118px!important;padding:12px!important;border:1px solid #d9e4ea!important;border-radius:10px!important;background:#fff!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:8px!important}
html body #partnerRail .partner-cell img,
html body .partner-rail .partner-cell img,
html body .partner-item img{width:auto!important;max-width:90%!important;height:62px!important;max-height:62px!important;object-fit:contain!important}
html body #partnerRail .partner-cell span,
html body .partner-rail .partner-cell span,
html body .partner-item span{display:block!important;font-size:14px!important;line-height:1.25!important;font-weight:800!important;color:#0b2344!important;text-align:center!important}

/* Common public cards generated by older role pages. */
html body .link-v409-funding-card p{font-size:17px!important}
html body .link-v409-funding-card h2{font-size:24px!important}
html body .link-v409-funding-card .foundation{font-size:14px!important}
html body .link-v409-funding-meta div{font-size:15px!important;line-height:1.4!important}
html body .link-v409-funding-meta b{font-size:13px!important}
html body .link-v409-funding-card a.apply{font-size:16px!important;min-height:46px!important;padding:0 16px!important}

@media(max-width:1100px){
  html body #partnerRail,html body .partner-rail{grid-template-columns:repeat(4,minmax(0,1fr))!important}
}
@media(max-width:720px){
  :root{--link-v18-body:18px;--link-v18-card:17px;--link-v18-small:15px;--link-v18-button:16px;--link-v18-nav:15px}
  html body #partnerRail,html body .partner-rail{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  html body .partners-panel{width:calc(100% - 20px)!important;padding:14px!important}
}
