/* GEDG — consolidated stylesheet */
:root{
  --contour:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1240 840' fill='none' stroke='white' stroke-opacity='.09' stroke-width='1.2'%3E%3Cpath d='M0,60.0 L24,71.7 L48,82.6 L72,92.1 L96,99.5 L120,104.4 L144,106.8 L168,106.6 L192,104.3 L216,100.2 L240,94.9 L264,89.2 L288,83.8 L312,79.2 L336,75.9 L360,74.1 L384,74.0 L408,75.4 L432,78.0 L456,81.2 L480,84.5 L504,87.2 L528,88.6 L552,88.3 L576,85.8 L600,81.1 L624,74.3 L648,65.4 L672,55.2 L696,44.2 L720,33.2 L744,23.0 L768,14.2 L792,7.5 L816,3.4 L840,2.1 L864,3.5 L888,7.4 L912,13.4 L936,21.0 L960,29.3 L984,37.6 L1008,45.4 L1032,51.9 L1056,56.8 L1080,59.8 L1104,61.1 L1128,60.7 L1152,59.2 L1176,57.1 L1200,54.9 L1224,53.4'/%3E%3Cpath d='M0,151.4 L24,156.2 L48,158.5 L72,158.2 L96,155.8 L120,151.7 L144,146.4 L168,140.8 L192,135.5 L216,131.0 L240,127.8 L264,126.2 L288,126.3 L312,127.8 L336,130.5 L360,133.8 L384,137.1 L408,139.7 L432,141.1 L456,140.7 L480,138.1 L504,133.3 L528,126.2 L552,117.3 L576,107.0 L600,96.0 L624,85.0 L648,74.7 L672,66.0 L696,59.5 L720,55.4 L744,54.2 L768,55.7 L792,59.8 L816,65.8 L840,73.4 L864,81.6 L888,89.9 L912,97.5 L936,103.9 L960,108.6 L984,111.5 L1008,112.6 L1032,112.2 L1056,110.6 L1080,108.4 L1104,106.3 L1128,104.8 L1152,104.6 L1176,106.0 L1200,109.3 L1224,114.5'/%3E%3Cpath d='M0,207.3 L24,203.1 L48,197.9 L72,192.4 L96,187.1 L120,182.8 L144,179.7 L168,178.3 L192,178.6 L216,180.2 L240,183.0 L264,186.4 L288,189.7 L312,192.3 L336,193.6 L360,193.1 L384,190.4 L408,185.4 L432,178.2 L456,169.2 L480,158.8 L504,147.7 L528,136.7 L552,126.5 L576,117.9 L600,111.4 L624,107.5 L648,106.4 L672,108.0 L696,112.1 L720,118.2 L744,125.8 L768,134.0 L792,142.2 L816,149.7 L840,155.9 L864,160.5 L888,163.2 L912,164.2 L936,163.6 L960,162.0 L984,159.8 L1008,157.7 L1032,156.3 L1056,156.1 L1080,157.7 L1104,161.1 L1128,166.5 L1152,173.6 L1176,182.1 L1200,191.2 L1224,200.4'/%3E%3Cpath d='M0,238.8 L24,234.6 L48,231.7 L72,230.4 L96,230.8 L120,232.7 L144,235.5 L168,239.0 L192,242.3 L216,244.9 L240,246.1 L264,245.4 L288,242.6 L312,237.5 L336,230.2 L360,221.1 L384,210.6 L408,199.5 L432,188.4 L456,178.3 L480,169.7 L504,163.3 L528,159.5 L552,158.5 L576,160.3 L600,164.5 L624,170.6 L648,178.2 L672,186.4 L696,194.5 L720,201.8 L744,207.9 L768,212.3 L792,214.9 L816,215.8 L840,215.1 L864,213.4 L888,211.1 L912,209.1 L936,207.7 L960,207.7 L984,209.4 L1008,213.0 L1032,218.5 L1056,225.8 L1080,234.3 L1104,243.5 L1128,252.7 L1152,261.2 L1176,268.2 L1200,273.1 L1224,275.4'/%3E%3Cpath d='M0,283.1 L24,285.1 L48,288.1 L72,291.5 L96,294.9 L120,297.4 L144,298.6 L168,297.8 L192,294.9 L216,289.6 L240,282.2 L264,272.9 L288,262.4 L312,251.2 L336,240.2 L360,230.0 L384,221.6 L408,215.3 L432,211.6 L456,210.7 L480,212.6 L504,216.8 L528,223.0 L552,230.6 L576,238.7 L600,246.7 L624,254.0 L648,259.9 L672,264.2 L696,266.6 L720,267.3 L744,266.6 L768,264.8 L792,262.5 L816,260.4 L840,259.2 L864,259.3 L888,261.1 L912,264.8 L936,270.5 L960,277.9 L984,286.6 L1008,295.8 L1032,305.1 L1056,313.5 L1080,320.5 L1104,325.3 L1128,327.5 L1152,327.0 L1176,323.6 L1200,317.7 L1224,309.6'/%3E%3Cpath d='M0,347.5 L24,350.0 L48,351.0 L72,350.2 L96,347.1 L120,341.7 L144,334.2 L168,324.8 L192,314.1 L216,302.9 L240,291.9 L264,281.8 L288,273.4 L312,267.2 L336,263.7 L360,262.9 L384,264.8 L408,269.2 L432,275.4 L456,283.0 L480,291.1 L504,299.0 L528,306.1 L552,311.9 L576,316.0 L600,318.3 L624,318.9 L648,318.0 L672,316.1 L696,313.9 L720,311.8 L744,310.6 L768,310.8 L792,312.8 L816,316.7 L840,322.6 L864,330.1 L888,338.8 L912,348.2 L936,357.4 L960,365.9 L984,372.7 L1008,377.5 L1032,379.6 L1056,378.9 L1080,375.5 L1104,369.4 L1128,361.3 L1152,351.7 L1176,341.4 L1200,331.0 L1224,321.4'/%3E%3Cpath d='M0,399.3 L24,393.8 L48,386.1 L72,376.6 L96,365.9 L120,354.7 L144,343.6 L168,333.6 L192,325.3 L216,319.2 L240,315.8 L264,315.1 L288,317.1 L312,321.6 L336,327.8 L360,335.4 L384,343.4 L408,351.3 L432,358.3 L456,363.9 L480,367.9 L504,370.0 L528,370.4 L552,369.4 L576,367.5 L600,365.2 L624,363.2 L648,362.1 L672,362.4 L696,364.5 L720,368.6 L744,374.6 L768,382.2 L792,391.1 L816,400.5 L840,409.8 L864,418.2 L888,425.0 L912,429.7 L936,431.7 L960,430.9 L984,427.3 L1008,421.2 L1032,413.0 L1056,403.4 L1080,393.1 L1104,382.8 L1128,373.3 L1152,365.2 L1176,358.9 L1200,354.8 L1224,352.7'/%3E%3Cpath d='M0,417.7 L24,406.4 L48,395.4 L72,385.4 L96,377.1 L120,371.2 L144,367.9 L168,367.3 L192,369.5 L216,373.9 L240,380.3 L264,387.8 L288,395.8 L312,403.5 L336,410.4 L360,415.9 L384,419.7 L408,421.7 L432,422.0 L456,420.9 L480,418.9 L504,416.6 L528,414.6 L552,413.6 L576,414.0 L600,416.3 L624,420.5 L648,426.6 L672,434.4 L696,443.3 L720,452.8 L744,462.1 L768,470.5 L792,477.3 L816,481.8 L840,483.8 L864,482.9 L888,479.2 L912,473.0 L936,464.7 L960,455.1 L984,444.8 L1008,434.6 L1032,425.2 L1056,417.2 L1080,411.1 L1104,407.1 L1128,405.1 L1152,405.0 L1176,406.5 L1200,408.8 L1224,411.4'/%3E%3Cpath d='M0,429.0 L24,423.2 L48,420.0 L72,419.5 L96,421.8 L120,426.3 L144,432.7 L168,440.2 L192,448.1 L216,455.8 L240,462.5 L264,467.9 L288,471.5 L312,473.3 L336,473.5 L360,472.3 L384,470.3 L408,468.0 L432,466.0 L456,465.1 L480,465.6 L504,468.0 L528,472.4 L552,478.6 L576,486.5 L600,495.6 L624,505.2 L648,514.5 L672,522.9 L696,529.6 L720,534.0 L744,535.8 L768,534.8 L792,531.0 L816,524.7 L840,516.4 L864,506.8 L888,496.5 L912,486.4 L936,477.1 L960,469.2 L984,463.3 L1008,459.4 L1032,457.6 L1056,457.6 L1080,459.1 L1104,461.4 L1128,464.0 L1152,466.3 L1176,467.6 L1200,467.4 L1224,465.7'/%3E%3Cpath d='M0,474.1 L24,478.7 L48,485.1 L72,492.6 L96,500.5 L120,508.0 L144,514.6 L168,519.8 L192,523.3 L216,525.0 L240,525.0 L264,523.7 L288,521.6 L312,519.3 L336,517.4 L360,516.6 L384,517.2 L408,519.7 L432,524.3 L456,530.7 L480,538.7 L504,547.9 L528,557.5 L552,566.8 L576,575.2 L600,581.8 L624,586.2 L648,587.9 L672,586.7 L696,582.8 L720,576.5 L744,568.1 L768,558.5 L792,548.2 L816,538.2 L840,529.0 L864,521.3 L888,515.4 L912,511.7 L936,510.0 L960,510.1 L984,511.7 L1008,514.0 L1032,516.6 L1056,518.8 L1080,519.9 L1104,519.7 L1128,517.8 L1152,514.1 L1176,508.9 L1200,502.6 L1224,495.6'/%3E%3Cpath d='M0,552.8 L24,560.3 L48,566.7 L72,571.8 L96,575.1 L120,576.6 L144,576.5 L168,575.2 L192,573.0 L216,570.7 L240,568.8 L264,568.1 L288,568.8 L312,571.5 L336,576.2 L360,582.7 L384,590.9 L408,600.1 L432,609.8 L456,619.2 L480,627.5 L504,634.1 L528,638.3 L552,639.9 L576,638.7 L600,634.7 L624,628.2 L648,619.8 L672,610.2 L696,600.0 L720,590.0 L744,580.9 L768,573.3 L792,567.6 L816,564.0 L840,562.5 L864,562.7 L888,564.3 L912,566.7 L936,569.2 L960,571.3 L984,572.3 L1008,571.9 L1032,569.9 L1056,566.0 L1080,560.7 L1104,554.2 L1128,547.2 L1152,540.2 L1176,534.0 L1200,529.3 L1224,526.7'/%3E%3Cpath d='M0,626.9 L24,628.3 L48,628.1 L72,626.6 L96,624.4 L120,622.1 L144,620.3 L168,619.6 L192,620.5 L216,623.3 L240,628.1 L264,634.8 L288,643.1 L312,652.4 L336,662.1 L360,671.5 L384,679.8 L408,686.3 L432,690.5 L456,691.9 L480,690.6 L504,686.5 L528,680.0 L552,671.5 L576,661.9 L600,651.7 L624,641.8 L648,632.8 L672,625.4 L696,619.8 L720,616.4 L744,614.9 L768,615.3 L792,616.9 L816,619.3 L840,621.8 L864,623.8 L888,624.7 L912,624.2 L936,621.9 L960,618.0 L984,612.5 L1008,605.9 L1032,598.8 L1056,591.8 L1080,585.6 L1104,580.9 L1128,578.4 L1152,578.3 L1176,581.0 L1200,586.3 L1224,594.1'/%3E%3Cpath d='M0,675.8 L24,673.4 L48,671.7 L72,671.1 L96,672.1 L120,675.0 L144,680.0 L168,686.9 L192,695.3 L216,704.7 L240,714.5 L264,723.9 L288,732.1 L312,738.5 L336,742.6 L360,744.0 L384,742.5 L408,738.3 L432,731.7 L456,723.2 L480,713.5 L504,703.4 L528,693.6 L552,684.7 L576,677.4 L600,672.0 L624,668.7 L648,667.4 L672,667.8 L696,669.5 L720,671.9 L744,674.4 L768,676.3 L792,677.1 L816,676.4 L840,674.0 L864,669.9 L888,664.3 L912,657.5 L936,650.3 L960,643.3 L984,637.2 L1008,632.6 L1032,630.1 L1056,630.2 L1080,632.9 L1104,638.4 L1128,646.2 L1152,656.0 L1176,667.0 L1200,678.6 L1224,689.9'/%3E%3Cpath d='M0,723.7 L24,726.8 L48,731.9 L72,738.9 L96,747.5 L120,757.0 L144,766.8 L168,776.2 L192,784.4 L216,790.7 L240,794.7 L264,796.0 L288,794.4 L312,790.1 L336,783.4 L360,774.9 L384,765.2 L408,755.1 L432,745.4 L456,736.7 L480,729.5 L504,724.3 L528,721.1 L552,719.9 L576,720.4 L600,722.1 L624,724.6 L648,727.0 L672,728.8 L696,729.5 L720,728.6 L744,726.1 L768,721.8 L792,716.0 L816,709.2 L840,701.9 L864,694.9 L888,688.7 L912,684.2 L936,681.8 L960,682.0 L984,684.9 L1008,690.4 L1032,698.4 L1056,708.2 L1080,719.3 L1104,730.8 L1128,742.1 L1152,752.3 L1176,760.9 L1200,767.3 L1224,771.3'/%3E%3Cpath d='M0,799.7 L24,809.3 L48,819.1 L72,828.5 L96,836.7 L120,843.0 L144,846.8 L168,848.0 L192,846.3 L216,841.9 L240,835.1 L264,826.6 L288,816.9 L312,806.9 L336,797.2 L360,788.6 L384,781.6 L408,776.5 L432,773.4 L456,772.4 L480,773.0 L504,774.8 L528,777.2 L552,779.6 L576,781.3 L600,781.8 L624,780.8 L648,778.1 L672,773.7 L696,767.8 L720,760.9 L744,753.5 L768,746.4 L792,740.3 L816,735.8 L840,733.5 L864,733.8 L888,736.8 L912,742.5 L936,750.5 L960,760.4 L984,771.5 L1008,783.1 L1032,794.3 L1056,804.4 L1080,812.8 L1104,819.1 L1128,823.1 L1152,824.6 L1176,824.0 L1200,821.6 L1224,818.0'/%3E%3C/svg%3E");
  --ink:#0E2233; --navy:#06263F; --navy-2:#0A3558; --blue:#1263A5; --green:#239B62; --green-d:#17794A;
  --mist:#F3F7FA; --leaf:#E7F4EC; --line:#DCE5EC; --muted:#4F6174; --white:#fff;
  --display:'Bricolage Grotesque','Segoe UI',system-ui,sans-serif;
  --body:'Manrope','Segoe UI',system-ui,-apple-system,sans-serif;
  --r:16px; --shadow:0 18px 40px -22px rgba(6,38,63,.35);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:var(--body);color:var(--ink);line-height:1.7;background:var(--white);font-size:1.0625rem;overflow-x:hidden}
img{max-width:100%;display:block}
a{text-decoration:none;color:inherit}
:focus-visible{outline:3px solid var(--blue);outline-offset:3px;border-radius:6px}
.container{width:min(1200px,92%);margin:auto}
.section-padding{padding:clamp(56px,8vw,104px) 0}
h1,h2,h3,h4{font-family:var(--display);line-height:1.12;letter-spacing:-.02em;color:var(--navy)}
h2{font-size:clamp(1.85rem,3.4vw,2.75rem);font-weight:700}
h2 span{display:block;color:var(--green-d)}
h3{font-size:1.2rem;font-weight:650;line-height:1.25}
p{max-width:68ch}

/* TOP BAR */
.top-bar{background:var(--navy);color:#cfe0ee;font-size:.8rem;padding:8px 0}
.top-content{display:flex;justify-content:space-between;align-items:center;gap:16px}
.top-links a{font-weight:600}.top-links a:hover{color:#8de3b3}

/* HEADER */
.header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.92);backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px);border-bottom:1px solid transparent;transition:box-shadow .25s,border-color .25s}
.header.scrolled{border-color:var(--line);box-shadow:0 8px 24px -16px rgba(6,38,63,.35)}
.navbar{min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:20px;transition:min-height .25s}
.header.scrolled .navbar{min-height:68px}
.logo img{height:62px;width:auto;border-radius:10px;transition:height .25s}
.header.scrolled .logo img{height:50px}
.logo{display:flex;align-items:center;gap:12px}
.logo-text{font-family:var(--display);font-weight:800;font-size:1.9rem;letter-spacing:-.02em;color:var(--navy);line-height:1;transition:font-size .25s}
.header.scrolled .logo-text{font-size:1.6rem}
.nav-menu{display:flex;align-items:center;gap:28px}
.nav-menu a{font-size:.9rem;font-weight:650;color:#3d5164;position:relative;padding:6px 0}
.nav-menu a:not(.nav-button)::after{content:"";position:absolute;left:0;bottom:0;height:2px;width:100%;background:var(--green);transform:scaleX(0);transform-origin:left;transition:transform .25s}
.nav-menu a:not(.nav-button):hover,.nav-menu a.active{color:var(--navy)}
.nav-menu a:not(.nav-button):hover::after,.nav-menu a.active::after{transform:scaleX(1)}
.nav-menu .nav-button{background:var(--blue);color:#fff;padding:11px 22px;border-radius:999px;transition:background .2s}
.nav-menu .nav-button:hover{background:var(--navy)}
.menu-toggle{display:none;background:var(--mist);border:1px solid var(--line);border-radius:10px;width:46px;height:46px;font-size:1.4rem;color:var(--navy);cursor:pointer}

/* BUTTONS & LINKS */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:15px 28px;border-radius:999px;font-weight:700;font-size:.98rem;border:2px solid transparent;transition:background .2s,border-color .2s,transform .2s;cursor:pointer;font-family:var(--body)}
.btn-primary{background:var(--green-d);color:#fff}.btn-primary:hover{background:#12633b;transform:translateY(-2px)}
.btn-outline{border-color:rgba(255,255,255,.55);color:#fff}.btn-outline:hover{background:#fff;color:var(--navy)}
.text-link{font-weight:700;color:var(--blue);white-space:nowrap;border-bottom:2px solid transparent}
.text-link:hover{border-color:var(--blue)}

/* HERO (the one bold moment) */
.hero{position:relative;color:#fff;overflow:hidden;background:var(--contour) center/cover,radial-gradient(900px 500px at 85% 10%,rgba(35,155,98,.45),transparent 60%),radial-gradient(800px 600px at 0% 100%,rgba(18,99,165,.6),transparent 60%),linear-gradient(135deg,#041d33,#0a3558)}
.hero-content{display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(32px,5vw,72px);align-items:center;padding:clamp(56px,9vw,112px) 0}
.hero-label{display:inline-flex;align-items:center;gap:12px;color:#a4e8c2;font-size:.78rem;font-weight:700;letter-spacing:.14em;margin-bottom:22px}
.hero-label span{width:28px;height:2px;background:var(--green)}
.hero h1{color:#fff;font-size:clamp(2.5rem,6vw,4.6rem);font-weight:800;letter-spacing:-.035em;line-height:1.02}
.hero h1 span{display:block;color:#8de3b3}
.hero-copy>p{margin-top:24px;font-size:clamp(1.05rem,1.6vw,1.25rem);color:#d6e5f1;max-width:54ch}
.hero-buttons{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}
.hero-bottom{display:none}
.hero-panel{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:22px;padding:26px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.hero-panel h2{color:#fff;font-size:1.15rem;margin-bottom:10px}
.hero-panel ul{list-style:none}
.hero-panel li+li{border-top:1px solid rgba(255,255,255,.14)}
.hero-panel a{display:block;padding:13px 0}
.hero-panel b{display:block;font-family:var(--display);font-size:1.02rem;font-weight:650;color:#fff}
.hero-panel span{display:block;font-size:.86rem;color:#b9cfe2;line-height:1.45}
.hero-panel a:hover b{color:#8de3b3}
@media (prefers-reduced-motion:no-preference){
 .hero-copy>*,.hero-panel{animation:rise .7s cubic-bezier(.2,.7,.2,1) both}
 .hero-copy>*:nth-child(2){animation-delay:.08s}.hero-copy>*:nth-child(3){animation-delay:.16s}.hero-copy>*:nth-child(4){animation-delay:.24s}.hero-panel{animation-delay:.32s}
 @keyframes rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
}

/* TRUST STRIP */
.trust{background:#fff;border-bottom:1px solid var(--line)}
.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0}
.trust-grid div{padding:26px 24px;border-left:1px solid var(--line)}
.trust-grid div:first-child{border-left:0;padding-left:0}
.trust-grid b{display:block;font-family:var(--display);font-size:1.15rem;color:var(--navy)}
.trust-grid span{font-size:.9rem;color:var(--muted);line-height:1.45;display:block}

/* INNER HERO */
.inner-hero{color:#fff;padding:clamp(56px,8vw,96px) 0;background:var(--contour) center/cover,radial-gradient(700px 400px at 90% 0,rgba(35,155,98,.4),transparent 60%),linear-gradient(135deg,#041d33,#0a3558)}
.inner-hero h1{color:#fff;font-size:clamp(2.1rem,4.6vw,3.5rem);font-weight:800;margin:10px 0 14px}
.inner-hero p{color:#d0e1ee;font-size:1.15rem;max-width:58ch}
.inner-hero .section-label{color:#a4e8c2}.inner-hero .section-label::before{background:#a4e8c2}

/* SECTION LABEL & HEADING */
.section-label{display:inline-flex;align-items:center;gap:10px;color:var(--green-d);font-size:.78rem;font-weight:800;letter-spacing:.12em;margin-bottom:14px}
.section-label::before{content:"";width:24px;height:2px;background:var(--green)}
.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:clamp(32px,4vw,52px)}
.section-heading p{margin-top:14px;color:var(--muted)}
.programs,.news{background:var(--mist)}

/* INTRO */
.intro-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(32px,6vw,80px);align-items:center}
.intro-text p{margin-top:18px;color:var(--muted)}
.intro-text .text-link{display:inline-block;margin-top:22px}
.about-highlight{background:linear-gradient(145deg,var(--navy),var(--navy-2));color:#fff;border-radius:24px;padding:clamp(28px,4vw,48px);position:relative;overflow:hidden}
.about-highlight::after{content:"";position:absolute;inset:0;background:var(--contour) center/cover;opacity:.7;pointer-events:none}
.about-highlight>*{position:relative;z-index:1}
.about-highlight h2{color:#fff;font-size:clamp(1.5rem,2.6vw,2.1rem)}
.about-highlight p{margin-top:14px;color:#cfe0ee}
.about-highlight:has(form){background:#fff;color:var(--ink);border:1px solid var(--line);box-shadow:var(--shadow)}
.about-highlight:has(form)::after{display:none}

/* CARDS */
.program-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));gap:22px}
.program-card{position:relative;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:30px 28px;display:flex;flex-direction:column;gap:12px;transition:border-color .2s,box-shadow .2s}
.program-card:hover{border-color:var(--green);box-shadow:var(--shadow)}
.program-card p{color:var(--muted);font-size:.98rem}
.program-card>a{margin-top:auto;padding-top:6px;font-weight:700;color:var(--blue)}
.program-card>a:hover{text-decoration:underline}
.program-icon{width:50px;height:50px;border-radius:14px;background:var(--leaf);color:var(--green-d);display:grid;place-items:center;font-size:1.4rem}
.card-number{display:none}
.program-card.featured{background:linear-gradient(145deg,var(--navy),var(--navy-2));border-color:transparent;color:#fff}
.program-card.featured h3{color:#fff}.program-card.featured p{color:#cfe0ee}
.program-card.featured .program-icon{background:rgba(255,255,255,.14);color:#8de3b3}
.program-card.featured>a{color:#8de3b3}
.approach-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:20px}
.approach-item{background:var(--mist);border-radius:var(--r);padding:28px;border-top:3px solid var(--green)}
.programs .approach-item{background:#fff}
.approach-item span{display:none}
.approach-item h3{margin-bottom:8px}
.approach-item p{color:var(--muted);font-size:.98rem}

/* IMPACT */
.impact{background:var(--contour) center/cover,linear-gradient(135deg,#041d33,#0a3558);color:#fff}
.impact-content{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(32px,6vw,80px);align-items:center}
.impact h2{color:#fff}.impact h2 span{color:#8de3b3}
.impact p{margin:18px 0 28px;color:#cfe0ee}
.impact-visual{display:grid;place-items:center}
.impact-circle{width:min(300px,70vw);aspect-ratio:1;border-radius:50%;display:grid;place-content:center;text-align:center;border:1px solid rgba(255,255,255,.3);box-shadow:0 0 0 14px rgba(255,255,255,.05),0 0 0 15px rgba(255,255,255,.14),inset 0 0 60px rgba(35,155,98,.25)}
.impact-circle span{font-family:var(--display);font-size:3rem;font-weight:800;letter-spacing:-.03em}
.impact-circle small{font-size:.72rem;letter-spacing:.2em;color:#a4e8c2;line-height:1.9}
.impact-tag{color:#a4e8c2;font-weight:700}

/* EMPTY STATES */
.empty-state{text-align:center;background:#fff;border:2px dashed #c5d3de;border-radius:20px;padding:clamp(32px,5vw,56px) 24px;display:grid;justify-items:center;gap:10px}
.empty-state>div{width:54px;height:54px;border-radius:50%;background:var(--leaf);color:var(--green-d);display:grid;place-items:center;font-size:1.5rem}
.empty-state p{color:var(--muted)}
.empty-state a{color:var(--blue);font-weight:700}

/* CTA */
.cta{background:var(--contour) center/cover,linear-gradient(120deg,var(--blue),var(--green-d));color:#fff;text-align:center}
.cta-content{max-width:760px;margin:auto}
.cta-content>span{display:block;font-size:.78rem;font-weight:800;letter-spacing:.14em;color:#dff7ea;margin-bottom:14px}
.cta h2{color:#fff}.cta p{margin:16px auto 30px;color:#eaf5ff}
.cta .btn-primary{background:#fff;color:var(--navy)}.cta .btn-primary:hover{background:var(--navy);color:#fff}

/* FORMS */
.contact-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:22px}
.form-group{display:flex;flex-direction:column;gap:7px}
.form-group:has(select),.form-group:has(textarea){grid-column:1/-1}
label{font-weight:700;font-size:.9rem;color:var(--navy)}
input,select,textarea{font:inherit;color:var(--ink);background:#fff;border:1.5px solid #c9d6e1;border-radius:12px;padding:13px 15px;width:100%;transition:border-color .2s,box-shadow .2s}
input:hover,select:hover,textarea:hover{border-color:#9fb4c6}
input:focus,select:focus,textarea:focus{outline:0;border-color:var(--blue);box-shadow:0 0 0 4px rgba(18,99,165,.15)}
textarea{resize:vertical;min-height:150px}
.form-note{margin-top:14px;font-size:.88rem;color:var(--muted)}

/* FOOTER */
.footer{background:#04192b;color:#b7c9d9;padding-top:clamp(28px,3.5vw,40px);line-height:1.55}
.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.4fr;gap:clamp(20px,3vw,40px);padding-bottom:24px}
.footer h2{color:#fff;font-size:1.5rem;margin-bottom:8px}
.footer h4{color:#fff;font-size:.95rem;margin-bottom:8px}
.footer p{font-size:.9rem;margin-bottom:8px}
.footer-grid>div:not(:first-child) a{display:block;padding:1px 0;font-size:.9rem}
.footer-grid>div:not(:first-child) p a{display:inline;padding:0}
.footer a:hover{color:#8de3b3}
.footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding:14px 0;font-size:.82rem}.footer-bottom p{margin:0}

.logo{gap:12px}
.logo-text{font-family:var(--display);font-weight:800;font-size:1.7rem;letter-spacing:-.02em;color:var(--navy);line-height:1;transition:font-size .25s}
.header.scrolled .logo-text{font-size:1.45rem}

/* RESPONSIVE */
@media (max-width:1060px){
 .menu-toggle{display:block}
 .nav-menu{position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 24px 30px -20px rgba(6,38,63,.4);padding:8px 5% 22px;display:none}
 .nav-menu.show{display:flex;animation:drop .2s ease-out}
 @keyframes drop{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
 .nav-menu a:not(.nav-button){padding:15px 4px;border-bottom:1px solid var(--line);font-size:1rem}
 .nav-menu a:not(.nav-button)::after{display:none}
 .nav-menu .nav-button{margin-top:16px;text-align:center;padding:14px}
 .footer-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:900px){
 .hero-content,.intro-grid,.impact-content{grid-template-columns:1fr}
 .impact-visual{order:-1}
 .trust-grid{grid-template-columns:1fr 1fr}
 .trust-grid div{border-left:0;padding:20px 0}
 .trust-grid div:nth-child(even){padding-left:20px;border-left:1px solid var(--line)}
}
@media (max-width:640px){
 body{font-size:1rem}
 .top-bar{display:none}
 .navbar{min-height:70px}.logo img{height:50px}.logo-text{font-size:1.5rem}
 .contact-form-grid{grid-template-columns:1fr}
 .footer-grid{grid-template-columns:1fr 1fr}.footer-brand,.footer-grid>div:last-child{grid-column:1/-1}
 .logo-text{font-size:1.35rem}.header.scrolled .logo-text{font-size:1.25rem}
 .hero-buttons .btn{flex:1 1 100%}
 .section-heading{align-items:flex-start}
 .btn{width:100%}
}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
