.hero{--hero-height-extra:0rem;--hero-copy-fraction:0.38;--hero-media-fraction:0.62;display:grid;grid-template-columns:minmax(300px,38%) minmax(0,62%);align-items:stretch;width:100%;max-width:none;margin:0;background:var(--surface);overflow:hidden;box-sizing:border-box}@media (min-width:901px){.hero{height:auto;max-height:none;min-height:0}.hero__copy{gap:1.1rem}.hero__headline{font-size:clamp(1.25rem,2.3vw,2.25rem)}.hero__lead{font-size:1.2rem;max-width:32rem}.hero__pillar-icon{width:3.45rem;height:3.45rem}.hero__pillar-icon svg{width:1.4rem;height:1.4rem}.hero__pillar-label{font-size:clamp(.68rem,.75vw,.86rem)}.hero__actions{flex-wrap:nowrap;gap:.4rem;width:100%}.hero__actions .btn{flex:0 0 auto;min-width:0;padding:.68rem .85rem;font-size:.88rem}}@media (min-width:1280px){.hero{--hero-height-extra:7.5rem}.hero__copy{gap:1.45rem;padding-top:calc(var(--nav-height) + 1.1rem);padding-bottom:1.8rem}.hero__headline{font-size:clamp(1.95rem,2.7vw,2.9rem);gap:.2rem}.hero__lead{font-size:1.55rem;max-width:100%;line-height:1.55}.hero__pillars{max-width:100%;gap:.7rem}.hero__pillar-icon{width:4.5rem;height:4.5rem}.hero__pillar-icon svg{width:1.85rem;height:1.85rem}.hero__pillar-label{font-size:clamp(.92rem,.9vw,1.08rem)}.hero__actions{gap:.45rem}.hero__actions .btn{padding:.72rem .85rem;font-size:.95rem}}.hero__copy{position:relative;display:flex;flex-direction:column;justify-content:center;gap:1rem;padding:1.75rem 1.5rem 1.75rem clamp(2.5rem,5.5vw,4rem);z-index:3;background:var(--surface);box-sizing:border-box}.hero__wave{position:absolute;inset:auto 0 0 0;height:42%;pointer-events:none;background:radial-gradient(ellipse 90% 100% at 0 100%,rgb(67 160 71/16%),transparent 55%),radial-gradient(ellipse 80% 90% at 45% 120%,rgb(0 168 232/12%),transparent 50%)}.hero__actions,.hero__headline,.hero__lead,.hero__pillars{position:relative;z-index:1;margin:0;min-width:0;max-width:100%}.hero__headline{display:flex;flex-direction:column;gap:.12rem;font-family:var(--font-display);font-size:clamp(1.1rem,3vw,1.65rem);font-weight:800;line-height:1.18;letter-spacing:-.02em}.hero__headline-line--blue{color:#0b5f8a}.hero__headline-line--green{color:#1f8a45}.hero__lead{max-width:28rem;font-size:.98rem;line-height:1.55;color:var(--ink-muted);overflow-wrap:break-word}.hero__pillars{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:.45rem;gap:.45rem;list-style:none;padding:0;width:100%;max-width:24rem;margin-top:.15rem}.hero__pillar{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.45rem}.hero__pillar-icon{display:grid;place-items:center;width:3.1rem;height:3.1rem;border-radius:50%;color:#fff;box-shadow:0 6px 16px rgb(15 23 42/12%);transition:transform .25s ease}.hero__pillar:hover .hero__pillar-icon{transform:translateY(-2px)}.hero__pillar-icon svg{width:1.25rem;height:1.25rem}.hero__pillar--blue .hero__pillar-icon{background:linear-gradient(145deg,#0077b6,#00a8e8)}.hero__pillar--green .hero__pillar-icon{background:linear-gradient(145deg,#1b7a3a,#43a047)}.hero__pillar--sun .hero__pillar-icon{background:linear-gradient(145deg,#f57c00,#ffb300)}.hero__pillar--lime .hero__pillar-icon{background:linear-gradient(145deg,#689f38,#8bc34a)}.hero__pillar-label{font-family:var(--font-display);font-size:.78rem;font-weight:600;color:var(--ink-muted);line-height:1.2;white-space:nowrap}.hero__actions{display:flex;flex-wrap:wrap;align-items:stretch;gap:.75rem;margin-top:.15rem}.hero__actions .btn{flex:0 1 auto;padding:.8rem 1.15rem;font-size:.95rem;white-space:nowrap}.hero__donate{font-weight:700}.hero__media{position:relative;z-index:1;aspect-ratio:1024/680;width:100%;height:auto;overflow:hidden;background:var(--surface);align-self:center}.hero__media:before{content:"";position:absolute;inset:0 auto 0 0;width:var(--hero-fade-width);z-index:2;pointer-events:none;background:linear-gradient(90deg,var(--hero-fade-stop-0) 0,var(--hero-fade-stop-1) 22%,var(--hero-fade-stop-2) 48%,var(--hero-fade-stop-3) 72%,var(--hero-fade-stop-4) 100%)}[data-theme=dark] .hero__media:after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgb(15 23 42/35%),rgb(15 23 42/8%) 28%,transparent 55%),linear-gradient(180deg,transparent 55%,rgb(15 23 42/12%))}[data-theme=dark] .hero__headline-line--blue{color:#7dd3fc}[data-theme=dark] .hero__headline-line--green{color:#86efac}[data-theme=dark] .hero__wave{background:radial-gradient(ellipse 90% 100% at 0 100%,rgb(67 160 71/9%),transparent 58%),radial-gradient(ellipse 80% 90% at 45% 120%,rgb(0 168 232/7%),transparent 52%)}.hero__image{display:block;width:100%;height:100%;object-fit:cover;object-position:center center}@media (prefers-reduced-motion:reduce){.hero__pillar-icon{transition:none}}@media (max-width:900px){.hero{grid-template-columns:1fr}.hero__media{order:-1;aspect-ratio:1024/680;max-height:none}.hero__media:before,[data-theme=dark] .hero__media:after{display:none}.hero__copy{justify-content:flex-start;gap:.95rem;padding:1.5rem clamp(1.5rem,5vw,2.5rem) 1.75rem}.hero__pillars{max-width:none}.hero__actions{gap:.65rem}.hero__actions .btn{flex-grow:1;flex-shrink:1;flex-basis:calc(50% - 0.65rem);min-width:9.25rem;justify-content:center}.hero__donate{flex:1 1 100%}}@media (max-width:420px){.hero__pillar-icon{width:2.4rem;height:2.4rem}.hero__pillar-label{font-size:.6rem}.hero__actions .btn{flex:1 1 100%;min-width:0}}@media (min-width:901px){.hero{position:relative;display:block}.hero__media{z-index:1;width:calc(var(--hero-media-fraction) * 100%);margin-left:auto;aspect-ratio:1024/680;height:auto;min-height:calc(100vw * var(--hero-media-fraction) * 680 / 1024 + var(--hero-height-extra));align-self:auto}.hero__image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:65% top}.hero__copy{position:absolute;inset:0 auto 0 0;z-index:3;width:calc(var(--hero-copy-fraction) * 100%);min-width:0;max-width:calc(var(--hero-copy-fraction) * 100%);display:flex;flex-direction:column;justify-content:center;overflow:hidden;padding-top:calc(var(--nav-height) + 1.25rem);padding-right:.85rem;padding-bottom:2rem;padding-left:clamp(1.15rem,3vw,2.5rem)}.hero__headline{font-size:clamp(1.45rem,2.4vw,2.15rem)}.hero__lead{font-size:1.18rem;max-width:100%;line-height:1.55}.hero__pillars{max-width:100%;gap:.55rem}.hero__pillar-icon{width:3.6rem;height:3.6rem}.hero__pillar-icon svg{width:1.45rem;height:1.45rem}.hero__pillar-label{font-size:clamp(.78rem,.85vw,.9rem)}.hero__actions{flex-wrap:nowrap;gap:.4rem;width:100%}.hero__actions .btn{flex:0 0 auto;padding:.68rem .8rem;font-size:.86rem}}@media (min-width:901px) and (max-width:1279px){.hero{--hero-copy-fraction:0.45;--hero-media-fraction:0.55;--hero-section-min:calc(100dvh - var(--nav-height) + 6rem)}.hero,.hero__media{min-height:var(--hero-section-min)}.hero__media{position:relative;aspect-ratio:unset;height:var(--hero-section-min);max-height:none}.hero__image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:65% top}}@media (min-width:1280px){.hero{--hero-copy-fraction:0.4;--hero-media-fraction:0.6}.hero__media{aspect-ratio:1024/680;height:auto;max-height:none;min-height:calc(100vw * var(--hero-media-fraction) * 680 / 1024 + var(--hero-height-extra))}.hero__copy{width:calc(var(--hero-copy-fraction) * 100%);max-width:calc(var(--hero-copy-fraction) * 100%);gap:1.45rem;padding-top:calc(var(--nav-height) + 1.35rem);padding-right:.85rem;padding-bottom:2.15rem;padding-left:clamp(1.75rem,3.5vw,3.25rem)}.hero__headline{font-size:clamp(1.95rem,2.7vw,2.9rem);gap:.2rem}.hero__lead{font-size:1.55rem;max-width:100%;line-height:1.55}.hero__pillars{max-width:100%;gap:.7rem}.hero__pillar-icon{width:4.5rem;height:4.5rem}.hero__pillar-icon svg{width:1.85rem;height:1.85rem}.hero__pillar-label{font-size:clamp(.92rem,.9vw,1.08rem)}.hero__actions{flex-wrap:nowrap;gap:.45rem}.hero__actions .btn{padding:.72rem .85rem;font-size:.95rem}}@media (min-width:1600px){.hero__headline{font-size:clamp(2.15rem,2.5vw,3.15rem)}.hero__lead{font-size:1.68rem}.hero__lead,.hero__pillars{max-width:100%}.hero__pillar-icon{width:4.85rem;height:4.85rem}.hero__pillar-icon svg{width:2rem;height:2rem}.hero__pillar-label{font-size:1.12rem}}@media (min-width:901px) and (max-height:680px){.hero{--hero-section-min:calc(100dvh - var(--nav-height) + 6rem)}.hero,.hero__media{min-height:var(--hero-section-min)}.hero__media{position:relative;aspect-ratio:unset;height:var(--hero-section-min);max-height:none}.hero__image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:65% top}.hero__copy{gap:.9rem;padding-top:calc(var(--nav-height) + .5rem);padding-bottom:.9rem;padding-left:clamp(1.75rem,4vw,2.75rem);padding-right:1.15rem;overflow:visible}.hero__headline{font-size:clamp(1.2rem,2vw,1.85rem)}.hero__lead{font-size:.96rem;line-height:1.48;max-width:30rem}.hero__pillars{gap:.5rem;max-width:23rem}.hero__pillar-icon{width:2.65rem;height:2.65rem}.hero__pillar-icon svg{width:1.1rem;height:1.1rem}.hero__pillar-label{font-size:.68rem}.hero__actions{flex-wrap:nowrap;gap:.4rem}.hero__actions .btn{padding:.55rem .7rem;font-size:.82rem}}.program-card{height:100%;padding:1.75rem;border-radius:var(--radius-md);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);transition:transform .3s cubic-bezier(.22,1,.36,1),box-shadow .3s ease,border-color .3s ease}.program-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-md);border-color:rgb(0 168 232/28%)}.program-card__icon{display:inline-flex;align-items:center;justify-content:center;width:3.1rem;height:3.1rem;border-radius:var(--radius-sm);font-size:1.35rem;margin-bottom:1rem;transition:transform .35s ease}.program-card:hover .program-card__icon{transform:scale(1.08) rotate(-4deg)}.program-card--blue .program-card__icon{background:linear-gradient(135deg,rgb(0 80 157/12%),rgb(0 168 232/18%))}.program-card--green .program-card__icon{background:linear-gradient(135deg,rgb(27 94 32/12%),rgb(139 195 74/22%))}.program-card--sun .program-card__icon{background:linear-gradient(135deg,rgb(245 124 0/14%),rgb(255 214 0/28%))}.program-card h3{font-size:1.2rem;margin-bottom:.5rem}.program-card p{color:var(--ink-muted);font-size:.98rem}.program-card__link{display:inline-flex;margin-top:1rem;font-family:var(--font-display);font-size:.92rem;font-weight:700;text-decoration-thickness:1px;text-underline-offset:.2em}