:root { --navy: #002d56; --button-blue: #004f83; --cream: #fbfaf0; }
* { box-sizing: border-box; }
html { font-family: "Montserrat", Arial, sans-serif; }
body { margin: 0; color: var(--navy); }
.skip-link { position: fixed; top: 10px; left: 10px; z-index: 100; padding: 10px 14px; color: #fff; background: var(--navy); transform: translateY(-150%); }
.skip-link:focus { transform: translateY(0); }
.site-header { min-height: 235px; background-color: var(--cream); background-image: radial-gradient(circle at 18% 24%, rgba(231,224,193,.22) 0 1px, transparent 1.5px), radial-gradient(circle at 75% 66%, rgba(228,220,187,.16) 0 1px, transparent 1.5px); background-size: 9px 11px, 13px 15px; }
.site-header__inner { display: flex; align-items: center; width: min(100% - 80px, 880px); min-height: 235px; margin: 0 auto; }
.site-brand { flex: 0 0 190px; width: 190px; height: 205px; overflow: hidden; }
.site-brand__crop { position: relative; display: block; width: 100%; height: 100%; overflow: hidden; }
.site-brand img { position: absolute; top: -1px; left: -116px; width: 427px; max-width: none; height: auto; }
.primary-nav { flex: 1; margin-left: 33px; }
.primary-nav__list { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin: 0; padding: 0; list-style: none; }
.primary-nav a { color: #002746; font-size: 12px; font-weight: 500; line-height: 1.25; text-decoration: none; white-space: nowrap; }
.primary-nav a:hover, .primary-nav a:focus-visible, .primary-nav a[aria-current="page"] { text-decoration: underline; text-underline-offset: 4px; }
.primary-nav .primary-nav__donate { display: inline-block; padding: 10px 13px; border-radius: 6px; color: #fff; background: var(--button-blue); box-shadow: inset 0 0 0 1px rgba(0,31,58,.35), 0 1px 2px rgba(0,26,52,.2); font-weight: 500; text-transform: uppercase; }
.primary-nav .primary-nav__donate:hover, .primary-nav .primary-nav__donate:focus-visible { background: #003f6a; text-decoration: none; }
.primary-nav .primary-nav__support { text-decoration: underline; text-underline-offset: 2px; text-transform: uppercase; }
.nav-toggle { display: none; }
.hero { position: relative; display: grid; min-height: 650px; overflow: hidden; place-items: center; padding: 80px 24px; color: #fff; background: linear-gradient(120deg,#002d56 0%,#005f78 58%,#28a68f 100%); text-align: center; }
.hero::after { position: absolute; right: -8%; bottom: -28%; width: 75%; height: 60%; border: 22px solid rgba(255,255,255,.13); border-radius: 50% 50% 0 0; content: ""; transform: rotate(-4deg); }
.hero__glow { position: absolute; border-radius: 50%; filter: blur(3px); }
.hero__glow--one { top: -180px; left: -100px; width: 500px; height: 500px; background: rgba(0,181,225,.2); }
.hero__glow--two { right: -120px; bottom: -180px; width: 520px; height: 520px; background: rgba(135,215,122,.18); }
.hero__content { position: relative; z-index: 2; max-width: 850px; }
.eyebrow { margin: 0 0 18px; color: #148b7d; font-size: 12px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.hero .eyebrow, .cta-band .eyebrow { color: #a9ead9; }
.hero h1 { max-width: 820px; margin: 0 auto 24px; font-size: clamp(2.5rem,6vw,5rem); line-height: 1.04; letter-spacing: -.045em; }
.hero p:not(.eyebrow) { max-width: 680px; margin: 0 auto 34px; font-size: clamp(1rem,2vw,1.2rem); line-height: 1.75; }
.home-purpose{padding:95px 24px 105px;overflow:hidden;background-color:#f8f5e9;background-image:radial-gradient(circle at 18% 22%,rgba(202,190,145,.2) 0 1px,transparent 1.5px);background-size:9px 11px}.purpose-cards{display:grid;width:min(100%,920px);margin:auto;grid-template-columns:1fr 1fr;gap:45px;align-items:center}.purpose-card{position:relative;min-height:480px;padding:47px 48px 55px;overflow:hidden;border:1px solid #d8d2bb;border-radius:24px;background:linear-gradient(145deg,#fffef7,#f2f0e7);box-shadow:0 20px 22px rgba(44,51,45,.22),inset 0 0 0 7px #f9f8ef,inset 0 0 0 9px #ddd7c3}.purpose-card--mission{transform:rotate(-3deg)}.purpose-card--vision{transform:rotate(1.5deg)}.purpose-card__top{display:flex;align-items:center;justify-content:space-between;margin-bottom:52px;padding-bottom:14px;border-bottom:1px solid #d9ddda;color:#005a72;font-size:.67rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.purpose-card__top img{width:56px;height:31px;object-fit:cover;object-position:center}.purpose-card .eyebrow{margin-bottom:12px}.purpose-card h2{max-width:390px;margin:0 0 22px;color:#002f58;font-size:clamp(1.75rem,3vw,2.45rem);line-height:1.08;letter-spacing:-.035em}.purpose-card>p:last-of-type{position:relative;z-index:2;margin:0;color:#253b49;font-size:1rem;line-height:1.65}.purpose-card__mark{position:absolute;right:21px;bottom:17px;width:74px;height:42px;object-fit:cover;object-position:center;opacity:.9}
.button-row { display: flex; flex-wrap: wrap; justify-content: center; gap: 14px; }
.button { display: inline-block; padding: 14px 21px; border: 1px solid transparent; border-radius: 6px; font-size: 12px; font-weight: 700; letter-spacing: .04em; text-decoration: none; text-transform: uppercase; }
.button--primary { color: #fff; background: var(--button-blue); }
.button--light { color: var(--navy); background: #fff; }
.button--outline { border-color: rgba(255,255,255,.7); color: #fff; }
.section { width: min(100% - 40px,1100px); margin: 0 auto; padding: 105px 0; }
.section-heading { max-width: 720px; margin: 0 auto 50px; text-align: center; }
.section-heading h2, .story-feature h2, .cta-band h2, .content-page h2 { margin: 0 0 18px; font-size: clamp(1.8rem,4vw,3rem); line-height: 1.15; letter-spacing: -.035em; }
.section-heading p:last-child, .story-feature p, .content-page p, .content-page li { color: #466073; line-height: 1.8; }
.impact-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 15px; }
.impact-card { display: flex; min-height: 185px; padding: 28px; border: 1px solid #dce8e4; flex-direction: column; justify-content: center; background: #f8fbf8; }
.impact-card strong { color: #168d7d; font-size: 2.4rem; }.impact-card span { margin: 7px 0; font-weight: 700; }.impact-card small { color: #748690; }
.story-feature { display: grid; grid-template-columns: 1fr 1fr; background: #eff5f1; }
.story-feature__visual { display: grid; min-height: 560px; padding: 50px; place-items: end start; color: #fff; background: linear-gradient(150deg,rgba(0,45,86,.3),rgba(0,45,86,.88)),linear-gradient(25deg,#0aa5c2,#8ac48b); font-size: 1.5rem; font-weight: 700; }
.story-feature__content { align-self: center; max-width: 560px; padding: 70px; }.privacy-note { padding-left: 18px; border-left: 3px solid #21a28c; font-size: .85rem; }
.text-link, .program-card a { color: #006985; font-size: .8rem; font-weight: 700; text-decoration: none; text-transform: uppercase; }
.section-heading--split { display: grid; max-width: none; grid-template-columns: 1.2fr .8fr; gap: 60px; text-align: left; }
.card-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 18px; }.program-card { padding: 35px 28px; border-top: 4px solid #168d7d; background: #f5f8f5; }.program-card>span { color: #168d7d; font-size: .75rem; font-weight: 700; }.program-card h3 { min-height: 48px; margin: 16px 0 10px; font-size: 1.15rem; }.program-card p { min-height: 105px; color: #557080; font-size: .9rem; line-height: 1.65; }
.cta-band { padding: 90px 24px; color: #fff; background: var(--navy); text-align: center; }
.site-footer { padding: 32px max(24px,calc((100% - 1100px)/2)) 18px; color:#002d56; background-color:#f5f6f3; background-image:radial-gradient(circle at 20% 30%,rgba(0,45,86,.035) 0 1px,transparent 1.5px); background-size:8px 9px; border-top:1px solid #d8dfdc; }.site-footer__grid { display:grid; grid-template-columns:170px 140px 1.25fr 1.25fr 170px; align-items:start; gap:28px; }.footer-brand { display:block; height:145px; overflow:hidden; }.footer-brand img { display:block; width:215px; max-width:none; margin:-2px 0 0 -23px; }.site-footer h3 { margin:4px 0 10px; color:#172d3e; font-size:.82rem; line-height:1.25; }.site-footer p { margin:0; color:#273c4d; font-size:.76rem; line-height:1.45; }.site-footer a { color:#002d56; text-decoration:none; }.footer-links a,.footer-actions a { display:block; margin:0 0 14px; font-size:.9rem; }.footer-contact>a { display:inline-block; margin-top:12px; font-size:.72rem; font-weight:700; text-decoration:underline; }.social-links { display:flex; gap:13px; margin-bottom:15px; }.social-links span { display:grid; width:20px; height:20px; border-radius:50%; place-items:center; color:#fff; background:#00466e; font-size:.68rem; font-weight:700; }.newsletter-form label { display:block; margin-bottom:7px; color:#172d3e; font-size:.75rem; font-weight:700; text-transform:uppercase; }.newsletter-form input { width:100%; height:34px; padding:0 10px; border:1px solid #aeb8bb; border-radius:5px; background:#fff; font:inherit; }.newsletter-form button { width:100%; height:32px; margin-top:7px; border:2px solid #00466e; border-radius:18px; color:#002d56; background:transparent; font-size:.72rem; font-weight:700; text-transform:uppercase; }.newsletter-form small { display:block; margin-top:7px; color:#60727a; font-size:.6rem; line-height:1.35; }.footer-actions span { display:inline-block; width:23px; color:#00577e; }.site-footer__bottom { display:flex; justify-content:center; gap:30px; margin-top:20px; padding-top:14px; border-top:1px solid #d6dedb; color:#324651; font-size:.62rem; }
.page-hero { padding: 100px 24px; color:#fff; background:linear-gradient(120deg,#00335d,#087d7c); }.page-hero>div { width:min(100%,1000px); margin:auto; }.page-hero h1 { max-width:800px; margin:0 0 22px; font-size:clamp(2.3rem,5vw,4.5rem); line-height:1.07; letter-spacing:-.04em; }.page-hero p:last-child { max-width:720px; line-height:1.75; }.content-page { width:min(100% - 40px,1000px); margin:auto; padding:90px 0; }.content-page>section+section { margin-top:80px; }.prose-grid,.option-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:22px; }.prose-grid article,.option-grid article,.transparency-list article { padding:38px; background:#f3f7f3; }.option-grid { grid-template-columns:repeat(3,1fr); }.option-grid .button { margin-top:15px; }.value-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; }.value-grid span { padding:22px; border:1px solid #d7e7e2; color:#005d6e; background:#f8fbf8; font-weight:700; }.notice { padding:45px; border-left:5px solid #15937f; background:#edf6f2; }.program-list article { display:grid; grid-template-columns:90px 1fr; gap:30px; padding:45px 0; border-bottom:1px solid #dce6e2; }.program-number { color:#15937f; font-size:1.7rem; font-weight:700; }.program-list ul { display:flex; flex-wrap:wrap; gap:9px; padding:0; list-style:none; }.program-list li { padding:8px 12px; border-radius:20px; background:#edf5f2; font-size:.85rem; }.empty-state { max-width:680px; margin:auto; padding:70px 30px; background:#f3f7f3; text-align:center; }.empty-state>span { color:#15937f; font-size:2rem; }.transparency-list { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
@media (max-width: 900px) {
    .site-header, .site-header__inner { min-height: 112px; }
    .site-header__inner { position: relative; justify-content: space-between; width: min(100% - 32px, 720px); }
    .site-brand { width: 92px; height: 78px; flex-basis: 92px; }
    .site-brand img { top: -2px; left: -54px; width: 201px; }
    .nav-toggle { display: flex; align-items: center; gap: 10px; border: 0; color: var(--navy); background: transparent; font: 600 13px/1 "Montserrat", sans-serif; text-transform: uppercase; cursor: pointer; }
    .nav-toggle__icon, .nav-toggle__icon i { display: block; }
    .nav-toggle__icon i { width: 24px; height: 2px; margin: 5px 0; background: currentColor; transition: transform .2s ease, opacity .2s ease; }
    .nav-toggle[aria-expanded="true"] .nav-toggle__icon i:first-child { transform: translateY(7px) rotate(45deg); }
    .nav-toggle[aria-expanded="true"] .nav-toggle__icon i:nth-child(2) { opacity: 0; }
    .nav-toggle[aria-expanded="true"] .nav-toggle__icon i:last-child { transform: translateY(-7px) rotate(-45deg); }
    .primary-nav { position: absolute; top: 100%; right: -16px; left: -16px; z-index: 20; display: none; margin: 0; padding: 20px 16px 28px; border-top: 1px solid rgba(0,45,86,.12); background: var(--cream); box-shadow: 0 12px 20px rgba(0,38,70,.12); }
    .primary-nav.is-open { display: block; }
    .primary-nav__list { align-items: stretch; flex-direction: column; gap: 4px; }
    .primary-nav a { display: block; padding: 11px 8px; font-size: 14px; }
    .primary-nav .primary-nav__donate { margin-top: 8px; padding: 12px 14px; text-align: center; }
    .hero { min-height: 570px; }.purpose-cards{gap:25px}.purpose-card{min-height:490px;padding:40px 34px 52px}.impact-grid,.card-grid { grid-template-columns:1fr 1fr; }.story-feature { grid-template-columns:1fr; }.story-feature__visual { min-height:350px; }.story-feature__content { max-width:none; padding:55px 28px; }.section-heading--split { grid-template-columns:1fr; gap:5px; }.program-card p { min-height:80px; }.site-footer__grid { grid-template-columns:150px 1fr 1fr; }.footer-connect,.footer-actions { margin-top:12px; }.option-grid { grid-template-columns:1fr; }.value-grid { grid-template-columns:1fr 1fr; }
}
@media (max-width: 560px) {
    .hero { min-height:540px; padding-top:65px; }.hero h1 { font-size:2.55rem; }.home-purpose{padding:70px 22px}.purpose-cards{grid-template-columns:1fr;gap:34px}.purpose-card{min-height:440px;padding:38px 30px 50px}.purpose-card--mission{transform:rotate(-1.5deg)}.purpose-card--vision{transform:rotate(1deg)}.purpose-card__top{margin-bottom:34px}.section { padding:75px 0; }.impact-grid,.card-grid,.prose-grid,.transparency-list { grid-template-columns:1fr; }.impact-card { min-height:145px; }.program-card p { min-height:0; }.site-footer { padding-top:28px; }.site-footer__grid { grid-template-columns:1fr 1fr; }.footer-brand { grid-column:1/-1; width:160px; }.footer-contact,.footer-connect,.footer-actions { grid-column:1/-1; }.site-footer__bottom { align-items:center; flex-direction:column; gap:5px; text-align:center; }.value-grid { grid-template-columns:1fr; }.page-hero { padding:70px 22px; }.content-page { padding:65px 0; }.program-list article { grid-template-columns:1fr; gap:5px; }.notice,.prose-grid article,.option-grid article { padding:28px; }
}
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { transition-duration: .01ms !important; } }

/* About page */
.about-intro{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;align-items:start}.about-intro h2{font-size:clamp(2rem,4vw,3.4rem)}.about-intro p{margin-top:0}.mission-vision{display:grid;grid-template-columns:1fr 1fr;gap:20px}.mission-vision article{position:relative;min-height:390px;padding:45px;overflow:hidden;color:#fff;background:linear-gradient(145deg,#00345f,#006b79)}.mission-vision article:last-child{background:linear-gradient(145deg,#087d75,#20a17e)}.mission-vision article>span{position:absolute;right:20px;bottom:-30px;color:rgba(255,255,255,.1);font-size:9rem;font-weight:700}.mission-vision .eyebrow{color:#a9ead9}.mission-vision p:last-child{position:relative;color:#e4f0f1}.mission-vision h2{position:relative}.founder-message{display:grid;grid-template-columns:1fr 1.15fr;min-height:620px;background:#f6f3e8}.founder-message__photo{min-height:620px;overflow:hidden}.founder-message__photo img{width:100%;height:100%;object-fit:cover;object-position:center}.founder-message__copy{align-self:center;padding:65px}.founder-message blockquote{margin:0}.founder-message blockquote p{color:#203747;font-size:1.03rem;line-height:1.75}.founder-signature{display:flex;margin-top:28px;flex-direction:column}.founder-signature span{margin-top:4px;color:#168d7d;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.values-section>.section-heading{margin-bottom:40px}.values-detailed{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.values-detailed article{padding:28px;border-top:3px solid #168d7d;background:#f3f7f3}.values-detailed strong{color:#003d63}.values-detailed p{margin-bottom:0;font-size:.82rem;line-height:1.6}.inclusive-statement{display:grid;grid-template-columns:1fr 1fr;gap:60px;padding:55px;background:#edf6f2}.inclusive-statement p:last-child{margin:0}.about-cta{margin-bottom:-90px;padding:80px 30px;color:#fff;background:linear-gradient(120deg,#002d56,#087d7c);text-align:center}.about-cta .eyebrow{color:#a9ead9}.about-cta>p:not(.eyebrow){color:#e1eff0}
@media(max-width:900px){.about-intro{grid-template-columns:1fr;gap:20px}.founder-message{grid-template-columns:1fr}.founder-message__photo{min-height:500px}.values-detailed{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.mission-vision,.values-detailed,.inclusive-statement{grid-template-columns:1fr}.mission-vision article{min-height:350px;padding:32px}.founder-message__photo{min-height:380px}.founder-message__copy{padding:42px 25px}.inclusive-statement{gap:10px;padding:35px 25px}.about-cta{margin-bottom:-65px}}
