.hero{--hero-height-extra:0rem;--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 .btn{padding:.92rem 1.6rem;font-size:1.1rem}}@media (min-width:1280px){.hero{--hero-height-extra:7.5rem}.hero__copy{gap:1.2rem;padding-top:calc(var(--nav-height) + 1.1rem);padding-bottom:1.8rem}.hero__headline{font-size:clamp(1.55rem,2.25vw,2.4rem)}.hero__lead{font-size:1.38rem;max-width:35rem;line-height:1.58}.hero__pillar-icon{width:3.85rem;height:3.85rem}.hero__pillar-icon svg{width:1.55rem;height:1.55rem}.hero__pillar-label{font-size:clamp(.78rem,.75vw,.9rem)}.hero__actions .btn{padding:1.05rem 1.85rem;font-size:1.2rem}}.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:2;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}.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)}.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;gap:.75rem;margin-top:.15rem}.hero__actions .btn{padding:.8rem 1.4rem;font-size:.95rem}.hero__media{position:relative;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}}@media (max-width:420px){.hero__pillar-icon{width:2.4rem;height:2.4rem}.hero__pillar-label{font-size:.6rem}}@media (min-width:901px){.hero{position:relative;display:block}.hero__media{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;width:38%;min-width:300px;max-width:38%;display:flex;flex-direction:column;justify-content:center;overflow:hidden;padding-top:calc(var(--nav-height) + 1.25rem);padding-right:1.5rem;padding-bottom:2rem;padding-left:clamp(2.5rem,5.5vw,4rem)}}@media (min-width:901px) and (max-width:1279px){.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}}@media (min-width:1280px){.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{padding-top:calc(var(--nav-height) + 1.35rem);padding-bottom:2.15rem}}@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{gap:.6rem}.hero__actions .btn{padding:.65rem 1.15rem;font-size:.92rem}}.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}