:root{--ink:#110538;--gold:#ffc641;--teal:#27a9af;--paper:#fffdfa;--white:#fff;--line:rgba(17,5,56,.18)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",sans-serif;font-size:17px;line-height:1.55}a{color:inherit}img{display:block;max-width:100%}.topbar{height:82px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;border-bottom:1px solid var(--line);background:rgba(255,253,250,.94);position:sticky;top:0;z-index:10;backdrop-filter:blur(12px)}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font:800 .8rem/1 Montserrat,sans-serif;letter-spacing:.12em}.brand-mark{width:34px;height:34px;border:7px dotted var(--gold);border-radius:50%;display:grid;place-items:center}.brand-mark i{width:10px;height:10px;background:var(--teal);border-radius:50%}.topbar nav{display:flex;align-items:center;gap:2.2rem}.topbar nav a{text-decoration:none;font-weight:600;font-size:.92rem}.nav-cta{background:var(--ink);color:#fff;padding:.7rem 1rem}.hero{min-height:760px;display:grid;grid-template-columns:49% 51%;background:var(--gold)}.hero-copy{padding:9vw 5vw 6vw;display:flex;flex-direction:column;align-items:flex-start}.eyebrow{text-transform:uppercase;font:800 .78rem/1.2 Montserrat,sans-serif;letter-spacing:.13em}.hero h1{font:900 clamp(4rem,8.2vw,8.3rem)/.83 Montserrat,sans-serif;letter-spacing:-.065em;text-transform:uppercase;margin:2rem 0 1.5rem;max-width:900px}.hero h1 span{color:var(--teal)}.lede{font-size:clamp(1.3rem,2.1vw,2rem);line-height:1.25;max-width:660px;margin:0 0 2.5rem}.button{display:inline-flex;gap:1rem;align-items:center;padding:1rem 1.25rem;text-decoration:none;font-weight:700;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-dark{background:var(--ink);color:#fff}.hero-visual{position:relative;overflow:hidden;min-height:620px}.hero-visual img{width:100%;height:100%;object-fit:cover}.hero-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(17,5,56,0) 55%,rgba(17,5,56,.7))}.goal-badge{position:absolute;z-index:2;right:0;bottom:0;background:var(--teal);color:#fff;width:min(250px,48%);padding:1.5rem}.goal-badge span,.campaign-total span,.levels>span{text-transform:uppercase;font-size:.75rem;font-weight:800;letter-spacing:.1em;display:block}.goal-badge strong{display:block;font:800 3rem/1 Montserrat,sans-serif;margin-top:.4rem}.case{max-width:1280px;margin:auto;padding:9rem 5vw;display:grid;grid-template-columns:100px 1fr;gap:2rem}.section-number{font:700 .78rem/1 Montserrat,sans-serif;letter-spacing:.12em;margin:.55rem 0;color:var(--teal)}h2{font:800 clamp(2.5rem,5vw,5.2rem)/1 Montserrat,sans-serif;letter-spacing:-.055em;margin:0}.case h2{max-width:1020px}.case-grid{display:grid;grid-template-columns:1fr 1fr;gap:5vw;margin-top:3rem;font-size:1.2rem}.case-grid p{margin:0}.quote-band{background:var(--teal);color:#fff;padding:6rem 6vw}.quote-band blockquote{max-width:1100px;margin:auto}.quote-band blockquote p{font:700 clamp(2rem,4vw,4rem)/1.2 Montserrat,sans-serif;letter-spacing:-.035em;margin:0}.quote-band footer{margin-top:2rem;font-weight:700}.quote-band footer span{font-weight:400;margin-left:.65rem;opacity:.8}.builds{padding:9rem 5vw;max-width:1500px;margin:auto}.section-intro{display:grid;grid-template-columns:.7fr 1.5fr 1fr;align-items:start;gap:4vw;margin-bottom:4rem}.section-intro>p{margin:0;font-size:1.12rem}.build-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:1rem}.feature-card{min-height:390px;position:relative;overflow:hidden}.feature-card .card-copy{padding:2rem}.feature-card h3,.backbone h3{font:800 1.55rem/1.08 Montserrat,sans-serif;letter-spacing:-.035em;margin:.65rem 0 1rem}.feature-card p{margin:0}.feature-primary{grid-column:span 3;background:var(--gold);display:grid;grid-template-columns:.65fr 1.35fr}.feature-primary .card-index{font:900 clamp(5rem,11vw,10rem)/1 Montserrat,sans-serif;padding:1.6rem;opacity:.15}.photo-card{grid-column:span 3;background:var(--ink);color:#fff;display:grid;grid-template-columns:42% 58%}.photo-card img{width:100%;height:100%;object-fit:cover}.photo-card span,.text-card span{font-weight:800;color:var(--gold)}.text-card{grid-column:span 2;background:var(--teal);color:#fff}.photo-card.wide{grid-column:span 4}.backbone{background:var(--ink);color:#fff;padding:9rem 5vw}.backbone-head{max-width:1400px;margin:0 auto 5rem}.backbone-head h2{max-width:900px}.backbone-grid{max-width:1400px;margin:auto;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.3)}.backbone-grid article{padding:2rem 2rem 1rem 0;border-right:1px solid rgba(255,255,255,.3);min-height:320px}.backbone-grid article+article{padding-left:2rem}.backbone-grid article:last-child{border-right:0}.backbone-grid span{color:var(--gold);font-weight:800}.backbone-grid p{color:rgba(255,255,255,.78)}.investment{display:grid;grid-template-columns:1.2fr .8fr}.investment-copy{padding:9rem 7vw;background:var(--white)}.investment-copy h2{margin-bottom:2rem}.investment-lede{font-size:1.6rem;line-height:1.35}.investment-panel{background:var(--teal);color:#fff;padding:7rem 5vw;display:flex;flex-direction:column;justify-content:center}.campaign-total{padding-bottom:2.5rem;border-bottom:1px solid rgba(255,255,255,.5)}.campaign-total strong{font:900 clamp(4rem,7vw,7rem)/1 Montserrat,sans-serif;letter-spacing:-.05em;display:block;margin-top:.7rem}.levels{padding:2.5rem 0}.levels>div{display:grid;grid-template-columns:repeat(2,1fr);gap:.4rem 1rem;margin-top:1rem}.levels strong{font:800 1.5rem Montserrat,sans-serif}.button-light{background:#fff;color:var(--ink);margin-top:1.5rem;align-self:flex-start}.closing{text-align:center;background:var(--gold);padding:9rem 8vw}.closing h2{max-width:1150px;margin:2rem auto 3rem}.closing em{color:var(--teal);font-style:normal}.button-gold{background:var(--ink);color:#fff}.site-footer{padding:2rem 5vw;background:var(--ink);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:2rem;font-size:.85rem}.inverse .brand-mark{border-color:var(--gold)}
@media(max-width:960px){.topbar nav a:not(.nav-cta){display:none}.hero{grid-template-columns:1fr}.hero-copy{padding-top:7rem}.hero-visual{min-height:480px}.case{grid-template-columns:1fr;padding-block:6rem}.case-grid,.section-intro{grid-template-columns:1fr}.build-grid{display:block}.feature-card{margin-bottom:1rem}.backbone-grid{grid-template-columns:1fr 1fr}.investment{grid-template-columns:1fr}.investment-panel{padding-block:5rem}.section-intro{margin-bottom:2rem}}
@media(max-width:620px){body{font-size:16px}.topbar{height:68px;padding-inline:1.1rem}.brand-mark{width:30px;height:30px}.topbar nav{gap:0}.nav-cta{padding:.6rem .75rem;font-size:.78rem!important}.hero{min-height:auto}.hero-copy{padding:5rem 1.25rem 3rem}.hero h1{font-size:clamp(3.25rem,17vw,5rem);margin-top:1.4rem}.hero-visual{min-height:390px}.case,.builds,.backbone,.investment-copy,.closing{padding:5rem 1.25rem}.case-grid{font-size:1rem;gap:1rem}.quote-band{padding:4.5rem 1.25rem}.feature-primary,.photo-card{grid-template-columns:1fr}.feature-primary .card-index{position:absolute}.photo-card img{height:220px}.feature-card{min-height:0}.backbone-grid{grid-template-columns:1fr}.backbone-grid article{border-right:0;border-bottom:1px solid rgba(255,255,255,.3);min-height:0;padding:2rem 0!important}.investment-panel{padding:4.5rem 1.25rem}.site-footer{align-items:flex-start;flex-direction:column}.site-footer p{margin:0}.closing h2{font-size:2.5rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
.brand-logo{width:38px;height:38px;object-fit:contain;flex:0 0 auto}
@media(max-width:620px){.brand-logo{width:32px;height:32px}}

/* World Pulse Impact visual system */
:root{--ink:#120638;--surface-accent:#f7824f;--gold:#fec745;--teal:#22a7ab;--mint:#72ddbd;--coral:#f7824f;--paper:#fafafe;--white:#fff;--line:#e9ebf8}
body{background:var(--paper);font-family:"Poppins",sans-serif;color:var(--ink)}
h1,h2,h3,.brand,.eyebrow,.section-number,.goal-badge strong,.campaign-total strong,.levels strong,.feature-primary .card-index{font-family:"Poppins",sans-serif}
.topbar{height:76px;background:rgba(255,255,255,.97);border-bottom:1px solid #e9ebf8;padding-inline:2.3vw;box-shadow:0 3px 10px rgba(18,6,56,.08)}
.topbar:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,#fec745 0%,#72ddbd 54%,#22a7ab 100%)}
.brand{color:var(--coral);font-size:1rem;letter-spacing:.02em}
.brand-logo{width:42px;height:42px}
.topbar nav{gap:2rem}.topbar nav a{font-size:.86rem;font-weight:500}
.nav-cta,.button{border-radius:100px}.nav-cta{background:linear-gradient(135deg,#22a7ab 49%,#72ddbd 100%);padding:.8rem 1.35rem;color:#fff!important}
.hero{background:linear-gradient(110deg,#fec745 0%,#9bcb82 52%,#22a7ab 100%);min-height:720px}
.hero-copy{padding-top:8vw}.hero h1{color:#fff;letter-spacing:-.055em}.hero h1 span{color:var(--coral)}.hero .lede{color:#fff;font-weight:500}.button-dark{background:#fff;color:var(--ink)}
.hero-visual{margin:3rem 3rem 3rem 0;border-radius:32px;min-height:600px;box-shadow:0 24px 60px rgba(18,6,56,.2)}
.goal-badge{right:1.5rem;bottom:1.5rem;border-radius:22px;background:rgba(34,167,171,.94);backdrop-filter:blur(8px)}
.case{background:#fff;max-width:none;padding-inline:max(5vw,calc((100vw - 1280px)/2))}.case h2{font-size:clamp(2.4rem,4.4vw,4.7rem)}
.quote-band{background:linear-gradient(90deg,#fec745 0%,#72ddbd 54%,#22a7ab 100%)}
.quote-band blockquote p{font-family:"Poppins",sans-serif;font-weight:700}
.builds{max-width:1500px}.section-number{color:var(--coral)}
.feature-card{border-radius:24px;box-shadow:0 8px 30px rgba(18,6,56,.08)}.feature-primary{background:linear-gradient(135deg,#fff1cf,#fec745)}.text-card{background:linear-gradient(135deg,#22a7ab,#72ddbd)}
.backbone{background:var(--surface-accent);color:var(--ink)}.backbone-grid article{border-color:rgba(18,6,56,.22)}.backbone-grid p{color:var(--ink)}
.investment-copy{background:#fff}.investment-panel{background:linear-gradient(150deg,#22a7ab 48%,#72ddbd 100%)}.button-light{border-radius:100px}
.closing{background:linear-gradient(90deg,#fff1cf 0%,#fec745 100%)}
.photo-card,.site-footer{background:var(--surface-accent);color:var(--ink)}.button-gold{background:var(--surface-accent);color:var(--ink)}.site-footer .brand{color:var(--ink)}
@media(max-width:960px){.hero-visual{margin:0 1.25rem 2rem;min-height:480px}.topbar nav{gap:.8rem}}
@media(max-width:620px){.topbar{height:70px}.brand-logo{width:38px;height:38px}.brand{font-size:.8rem}.hero-copy{padding-top:5rem}.hero-visual{min-height:390px;border-radius:22px}.goal-badge{right:1rem;bottom:1rem}}
.closing .impact-link{display:block;width:max-content;max-width:100%;margin:1.75rem auto 0;color:var(--ink);font-weight:600;text-underline-offset:.3em;text-decoration-thickness:1px}

/* Outcome bridge: from the case for change to what the fund builds */
.outcome{display:grid;grid-template-columns:1fr 1fr;background:var(--mint);color:var(--ink);padding:7.5rem 6vw;gap:0;align-items:stretch}
.outcome-heading{grid-column:1/-1;text-align:center;max-width:1050px;margin:0 auto 5rem}
.outcome-heading h2{margin:.9rem 0 0;font-size:clamp(2.8rem,5vw,5rem);line-height:1;letter-spacing:-.05em}
.outcome-statement,.outcome-why{padding:3.25rem 4vw;border-top:2px solid var(--ink)}
.outcome-statement{padding-left:0;padding-right:5vw}
.outcome-why{background:var(--gold);border-top-color:var(--gold)}
.outcome-statement>p:last-child{font-size:clamp(1.15rem,1.55vw,1.4rem);line-height:1.55;margin:1.2rem 0 0}
.outcome-why h3{font:800 clamp(1.65rem,2.25vw,2.5rem)/1.15 "Poppins",sans-serif;letter-spacing:-.035em;margin:1rem 0 1.25rem}
.outcome-why p:last-child{font-size:1.05rem;line-height:1.55;margin:0}
@media(max-width:960px){.outcome{grid-template-columns:1fr;padding:6rem 5vw}.outcome-heading{grid-column:auto;margin-bottom:3.5rem}.outcome-statement,.outcome-why{padding:3rem 0}.outcome-why{padding-inline:4vw}}
@media(max-width:620px){.outcome{padding:4.5rem 1.25rem}.outcome-heading{text-align:left;margin-bottom:2.75rem}.outcome-heading h2{font-size:clamp(2.5rem,12vw,3.7rem)}.outcome-statement,.outcome-why{padding:2.5rem 0}.outcome-why{padding-inline:1.25rem}.outcome-why h3{font-size:1.9rem}}

/* Equal-weight navigation links */
.topbar nav a,.topbar nav a.nav-cta{position:relative;background:none;color:var(--ink)!important;padding:.45rem 0;border-radius:0;text-decoration:none;white-space:nowrap}
.topbar nav a::after{content:"";position:absolute;left:0;right:0;bottom:.15rem;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .2s ease}
.topbar nav a:hover::after,.topbar nav a:focus-visible::after{transform:scaleX(1);transform-origin:left}
@media(max-width:960px){.topbar nav a:not(.nav-cta){display:inline-block}.topbar nav{gap:1rem}.topbar nav a{font-size:.75rem}}
@media(max-width:760px){.topbar{height:auto;min-height:70px;flex-wrap:wrap;padding-block:.65rem;gap:.45rem}.topbar nav{width:100%;overflow-x:auto;padding:.15rem 0 .25rem;justify-content:flex-start;scrollbar-width:none}.topbar nav::-webkit-scrollbar{display:none}}
.closing .impact-link:hover{text-decoration-thickness:2px}
.goal-badge{width:min(290px,60%)}.goal-badge strong{font-size:clamp(2rem,3vw,3rem)}
.hero-visual img{object-position:50% 50%}

.outcome-single{display:block}.outcome-single .outcome-heading{margin-bottom:2.75rem}.outcome-copy{max-width:850px;margin:0 auto;font-size:1.125rem;line-height:1.7}.outcome-copy p{margin:0 0 1.5rem}.outcome-image{width:100%;max-width:1280px;height:auto;margin:3rem auto 0}.outcome-single .outcome-heading h2{line-height:1.12}

.outcome-portraits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;max-width:1280px;margin:3rem auto 0}.collage-crop{aspect-ratio:2.98;background-image:url("assets/world-pulse-community-collage.png");background-size:300% 400%;background-repeat:no-repeat}.crop-left{background-position:0% 100%}.crop-middle{background-position:50% 100%}.crop-right{background-position:100% 100%}@media(max-width:620px){.outcome-portraits{grid-template-columns:1fr;gap:.75rem}}

/* Contribution options */
.giving{padding:7rem 6vw;background:#f1f7f6;border-top:1px solid var(--line)}
.giving-heading{max-width:900px;margin:0 auto 3rem;text-align:center}.giving-heading h2{font-size:clamp(2.5rem,4.5vw,4.5rem)}.giving-heading>p:last-child{margin:1.3rem 0 0}
.giving-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;max-width:1320px;margin:auto;align-items:start}
.giving-option{background:#fff;border:1px solid #d9e8e4;border-radius:24px;overflow:hidden;box-shadow:0 8px 24px rgba(18,6,56,.035)}
.giving-option summary{position:relative;list-style:none;cursor:pointer;padding:2rem;min-height:215px}.giving-option summary::-webkit-details-marker{display:none}.giving-option summary:focus-visible{outline:3px solid var(--teal);outline-offset:-5px;border-radius:24px}.giving-option summary:hover{background:#fafdfc}
.giving-number{display:block;color:#16868b;font-size:.8rem;font-weight:700;letter-spacing:.1em;margin-bottom:1.5rem}.giving-option h3{font-size:1.6rem;line-height:1.2;letter-spacing:-.04em;margin:0 0 .65rem}.giving-description{font-size:.88rem;display:block;padding-right:2rem}.giving-toggle{position:absolute;right:1.5rem;bottom:1.65rem;background:var(--mint);border-radius:50%;width:32px;height:32px;display:grid;place-items:center;font-size:1.5rem;line-height:1;transition:transform .2s}.giving-option[open] .giving-toggle{transform:rotate(45deg)}
.giving-details{padding:0 2rem 2rem;font-size:.9rem;overflow-wrap:anywhere}.giving-details:before{content:"";display:block;border-top:1px solid var(--line);margin-bottom:1.5rem}.giving-details p:first-child{margin-top:0}.giving-details address{font-style:normal;line-height:1.8}.giving-details dl{margin:0}.giving-details dt{font-size:.73rem;text-transform:uppercase;letter-spacing:.06em;color:#54516b;margin-top:1.1rem}.giving-details dt:first-child{margin-top:0}.giving-details dd{margin:.2rem 0 0;font-weight:600}.account-number{font-variant-numeric:tabular-nums;letter-spacing:.04em;user-select:all}.giving-note{font-size:.78rem;border-left:3px solid var(--teal);padding-left:.8rem;margin:1.5rem 0 0}.giving-help{text-align:center;font-size:.88rem;margin:2.5rem 0 0}.giving-help a{font-weight:600;text-underline-offset:.25em}
@media(max-width:900px){.giving-options{grid-template-columns:1fr}.giving-option summary{min-height:0;padding:1.5rem}.giving-number{margin-bottom:1rem}.giving-details{padding:0 1.5rem 1.5rem}.giving-toggle{bottom:1.5rem}.giving-help a{display:block;margin-top:.5rem}}
@media(max-width:620px){.giving{padding:4.5rem 1.25rem}.giving-heading{text-align:left}.giving-option h3{font-size:1.5rem}}

.giving-option summary{padding-bottom:4.5rem}.giving-description{padding-right:0}.giving-toggle{width:auto;height:auto;border-radius:100px;padding:.45rem .85rem;font-size:.8rem;font-weight:600;bottom:1.25rem;right:1.5rem}.giving-option[open] .giving-toggle{transform:none}.giving-hide{display:none}.giving-option[open] .giving-view{display:none}.giving-option[open] .giving-hide{display:inline}

.pledge-progress{padding-top:1.75rem}.pledge-total{margin:0 0 .9rem;font-size:1.1rem}.pledge-total strong{font-size:1.65rem;font-weight:800;letter-spacing:-.04em}.pledge-track{height:14px;border-radius:100px;background:rgba(18,6,56,.22);overflow:hidden}.pledge-track>span{display:block;height:100%;background:var(--gold);border-radius:inherit}.pledge-caption{margin:.65rem 0 0;font-size:.85rem}.pledge-date{margin:.4rem 0 0;font-size:.72rem}.pledge-progress+.levels{padding-top:2rem}
