/* Aguadze multipage extensions — built to preserve the approved homepage design system */

body{font-size:16px}
main{min-height:50vh}
.soft-section{background:var(--soft)}
.btn-outline{background:#fff;border:1px solid #cfdce7;color:var(--navy);box-shadow:none}
.btn-outline:hover{border-color:var(--blue);color:var(--blue-deep);transform:translateY(-2px)}

/* Inner-page hero */
.page-hero{position:relative;min-height:455px;color:#fff;display:flex;align-items:flex-end;background-image:var(--page-image);background-size:cover;background-position:center;overflow:hidden}
.page-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,24,43,.94) 0%,rgba(5,24,43,.82) 50%,rgba(5,24,43,.42) 100%)}
.page-hero:after{content:"";position:absolute;right:-120px;bottom:-180px;width:440px;height:440px;border:75px solid rgba(255,255,255,.06);border-radius:50%}
.page-hero-inner{position:relative;z-index:2;padding-top:88px;padding-bottom:72px;max-width:1000px;margin-left:max(20px,calc((100vw - var(--container))/2));margin-right:auto}
.page-hero h1{font-size:clamp(44px,6vw,72px);line-height:1.04;letter-spacing:-.045em;margin:7px 0 19px;max-width:900px}
.page-hero p{max-width:760px;font-size:18px;line-height:1.75;color:#dbe9f4;margin:0}
.breadcrumb{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:650;color:#c8d9e7;margin-bottom:31px;flex-wrap:wrap}
.breadcrumb a:hover{color:#fff}.breadcrumb i{font-size:8px;opacity:.7}.breadcrumb span{color:#fff}

/* Shared content layouts */
.content-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:80px;align-items:center}
.content-split.split-reverse .content-photo{order:2}.content-split.split-reverse .content-copy{order:1}
.content-photo{min-height:520px;border-radius:28px;background-size:cover;background-position:center;box-shadow:var(--shadow);position:relative;overflow:hidden}
.content-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(5,27,49,.22))}
.content-copy h2{font-size:clamp(34px,4vw,48px);line-height:1.17;letter-spacing:-.035em;margin:0 0 20px}
.content-copy p{color:var(--muted);font-size:16px}.content-copy .lead{font-size:18px;line-height:1.8;color:#46566a}
.check-list{list-style:none;padding:0;margin:26px 0 31px;display:grid;gap:13px}.check-list li{display:flex;gap:12px;align-items:flex-start;font-size:15px;color:#46566a}.check-list i{width:25px;height:25px;flex:0 0 25px;border-radius:50%;display:grid;place-items:center;background:#edf8fd;color:var(--blue-deep);font-size:10px;margin-top:1px}
.section-heading>p{font-size:16px;line-height:1.8}.section-heading.center{max-width:820px}.section-heading.split{grid-template-columns:1fr .8fr}

/* Cards */
.info-grid{display:grid;gap:22px}.info-grid.cols-3{grid-template-columns:repeat(3,1fr)}.info-grid.cols-4{grid-template-columns:repeat(4,1fr)}
.info-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:30px;min-height:100%;transition:.28s;box-shadow:0 8px 25px rgba(16,45,70,.035)}
.info-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:#d3e4ef}.info-card h3{font-size:20px;line-height:1.35;margin:17px 0 10px}.info-card p{font-size:15px;line-height:1.75;color:var(--muted);margin:0}.info-card ul{padding-left:18px;color:var(--muted);font-size:14px}
.info-icon{width:52px;height:52px;border-radius:15px;background:#edf8fd;color:var(--blue-deep);display:grid;place-items:center;font-size:19px}.info-card:nth-child(3n+2) .info-icon{background:#fff1f7;color:var(--magenta)}.info-card:nth-child(3n+3) .info-icon{background:#fff5e9;color:#e86d00}
.feature-link-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.feature-link{border:1px solid var(--line);border-radius:20px;padding:25px;background:#fff;display:grid;grid-template-columns:52px 1fr 36px;gap:17px;align-items:center;transition:.25s}.feature-link>i{width:52px;height:52px;border-radius:15px;background:#eef8fd;color:var(--blue-deep);display:grid;place-items:center;font-size:18px}.feature-link h3{font-size:18px;margin:0 0 5px}.feature-link p{font-size:14px;color:var(--muted);margin:0}.feature-link>span{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#f4f7fa;color:var(--blue-deep);transition:.2s}.feature-link:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:#d9e8f2}.feature-link:hover>span{background:var(--blue-deep);color:#fff}

/* CTA band */
.cta-band{padding:78px 0;background:linear-gradient(115deg,#071b30 0%,#0c4168 73%,#0876a8 100%);color:#fff;position:relative;overflow:hidden}.cta-band:after{content:"";position:absolute;right:-90px;top:-190px;width:430px;height:430px;border-radius:50%;border:80px solid rgba(255,255,255,.055)}
.cta-band-inner{position:relative;z-index:1;display:grid;grid-template-columns:1fr auto;gap:50px;align-items:center}.cta-band h2{font-size:clamp(34px,4vw,48px);line-height:1.15;margin:5px 0 13px}.cta-band p{font-size:16px;color:#bfd2e2;max-width:680px;margin:0}.cta-band-actions{display:flex;gap:12px;flex-wrap:wrap}

/* About / story / governance */
.story-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,.55fr);gap:70px}.story-layout h2{font-size:40px;line-height:1.2;letter-spacing:-.03em}.story-layout p{font-size:16px;color:var(--muted)}
.story-aside{background:var(--soft);border:1px solid var(--line);border-radius:22px;padding:28px;align-self:start;position:sticky;top:105px}.story-aside h3{font-size:18px}.story-aside p{font-size:14px}.story-aside a{font-weight:800;color:var(--blue-deep);font-size:14px}
.timeline{position:relative;margin:42px 0}.timeline:before{content:"";position:absolute;left:19px;top:6px;bottom:6px;width:2px;background:linear-gradient(var(--blue),var(--magenta),var(--orange))}.timeline-item{display:grid;grid-template-columns:40px 1fr;gap:22px;padding:0 0 35px}.timeline-item:before{content:"";width:16px;height:16px;border:6px solid #fff;border-radius:50%;background:var(--blue);box-shadow:0 0 0 2px #9bd8f5;margin:3px 0 0 12px;z-index:1}.timeline-item:nth-child(2n):before{background:var(--magenta);box-shadow:0 0 0 2px #f1abd0}.timeline-item h3{margin:0 0 7px;font-size:19px}.timeline-item p{margin:0}
.mission-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.mission-card{border-radius:26px;padding:42px;background:#fff;border:1px solid var(--line);min-height:310px;position:relative;overflow:hidden}.mission-card:after{content:"";position:absolute;right:-70px;bottom:-90px;width:230px;height:230px;border-radius:50%;border:45px solid rgba(3,155,229,.07)}.mission-card.vision:after{border-color:rgba(230,0,126,.07)}.mission-card i{font-size:28px;color:var(--blue-deep)}.mission-card.vision i{color:var(--magenta)}.mission-card h2{font-size:33px;margin:20px 0 13px}.mission-card p{color:var(--muted);font-size:16px}
.team-placeholder-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.team-placeholder{border:1px solid var(--line);border-radius:22px;background:#fff;padding:27px;text-align:center}.team-avatar{width:112px;height:112px;border-radius:50%;background:linear-gradient(135deg,#eaf7fd,#f9eef5);margin:0 auto 18px;display:grid;place-items:center;font-size:34px;color:var(--blue-deep)}.team-placeholder h3{font-size:18px;margin:4px}.team-placeholder p{font-size:14px;color:var(--muted);margin:5px 0}
.partner-logos-empty{border:1px dashed #cfdce7;background:#fbfdff;border-radius:24px;padding:55px;text-align:center;color:var(--muted)}.partner-logos-empty i{font-size:34px;color:var(--blue-deep);margin-bottom:16px}.partner-logos-empty h3{color:var(--text);font-size:24px;margin:0 0 9px}
.transparency-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:45px;align-items:start}.transparency-list{display:grid;gap:14px}.transparency-list>div{padding:20px;border:1px solid var(--line);border-radius:17px;background:#fff}.transparency-list strong{display:block;font-size:16px;margin-bottom:4px}.transparency-list span{color:var(--muted);font-size:14px}

/* Program indexes / detail */
.program-index-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.program-index-cols>div{border:1px solid var(--line);border-radius:24px;background:#fff;padding:31px}.program-index-cols h3{font-size:22px;margin:12px 0}.program-index-cols p{font-size:15px;color:var(--muted)}.program-index-cols a{display:flex;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid #edf1f5;color:#4d5a6a;font-size:14px;font-weight:650}.program-index-cols a:last-child{border:0}.program-index-cols a:hover{color:var(--blue-deep)}
.wash-journey{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;align-items:center}.wash-journey>div{padding:27px;border-radius:18px;background:#fff;border:1px solid var(--line);text-align:center;font-weight:800}.wash-journey>i{text-align:center;color:var(--blue);display:none}
.program-detail-intro{display:grid;grid-template-columns:80px 1fr;gap:28px;align-items:start;max-width:950px}.detail-icon{width:78px;height:78px;border-radius:22px;background:linear-gradient(135deg,#edf9ff,#d8f0fb);color:var(--blue-deep);display:grid;place-items:center;font-size:28px}.program-detail-intro h2{font-size:clamp(34px,4vw,48px);line-height:1.17;margin:0 0 16px}.program-detail-intro p{font-size:17px;line-height:1.8;color:var(--muted)}
.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:35px}.process-grid>article{background:#fff;border:1px solid var(--line);border-radius:20px;padding:25px;position:relative}.process-grid>article:before{counter-increment:steps;content:"0" counter(steps);display:inline-flex;color:var(--blue-deep);font-weight:900;font-size:12px;letter-spacing:.1em;margin-bottom:14px}.process-grid{counter-reset:steps}.process-grid h3{font-size:18px;margin:0 0 8px}.process-grid p{font-size:14px;color:var(--muted);margin:0}
.detail-focus{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:30px}.detail-focus>div{border-left:4px solid var(--blue);padding:8px 0 8px 22px}.detail-focus>div:nth-child(2){border-color:var(--magenta)}.detail-focus h3{font-size:19px;margin:0 0 7px}.detail-focus p{font-size:15px;color:var(--muted);margin:0}.detail-note{margin-top:28px;padding:18px 20px;border-radius:14px;background:#fff8ed;border:1px solid #ffe1b7;color:#775526;font-size:14px}.detail-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}

/* Projects / impact / communities */
.filter-bar{background:#fff;border:1px solid var(--line);border-radius:20px;padding:16px 18px;display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap;margin-bottom:32px}.filter-tabs{display:flex;gap:7px;flex-wrap:wrap}.filter-tabs button,.filter-tabs a{border:1px solid var(--line);background:#f8fafc;border-radius:999px;padding:9px 14px;font-size:13px;font-weight:750;cursor:pointer}.filter-tabs .active{background:var(--navy);border-color:var(--navy);color:#fff}.filter-controls{display:flex;gap:10px;flex-wrap:wrap}.filter-controls select,.filter-controls input{border:1px solid var(--line);border-radius:11px;background:#fff;padding:11px 13px;min-width:150px;font-size:13px;color:#4d5d6d}
.project-empty,.funding-catalogue-empty{border:1px dashed #c8d8e5;border-radius:26px;padding:70px 30px;text-align:center;background:#fbfdff}.project-empty i,.funding-catalogue-empty i{font-size:42px;color:#8fcfed}.project-empty h2,.funding-catalogue-empty h2{font-size:29px;margin:16px 0 8px}.project-empty p,.funding-catalogue-empty p{max-width:650px;margin:0 auto 24px;color:var(--muted);font-size:15px}.project-empty-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}
.project-detail-shell{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:50px;align-items:start}.project-detail-main h2{font-size:38px}.project-detail-main p{font-size:16px;color:var(--muted)}.project-facts{display:grid;grid-template-columns:repeat(2,1fr);gap:13px;margin:28px 0}.project-facts>div{padding:18px;background:var(--soft);border-radius:14px}.project-facts span{display:block;color:var(--muted);font-size:12px;text-transform:uppercase;font-weight:800;letter-spacing:.06em}.project-facts strong{display:block;font-size:16px;margin-top:5px}.project-sidebar{display:grid;gap:18px;position:sticky;top:100px}.fund-card,.sidebar-card{border:1px solid var(--line);border-radius:20px;padding:25px;background:#fff;box-shadow:0 8px 25px rgba(16,45,70,.04)}.fund-card h3,.sidebar-card h3{font-size:20px;margin-top:0}.fund-card p,.sidebar-card p{font-size:14px;color:var(--muted)}.progress-track{height:10px;border-radius:999px;background:#eaf0f4;overflow:hidden;margin:18px 0}.progress-track:after{content:"";display:block;width:0;height:100%;background:linear-gradient(90deg,var(--orange),var(--magenta));border-radius:inherit}.update-timeline{border-left:2px solid #dce8f0;padding-left:24px;display:grid;gap:22px}.update-timeline>div{position:relative}.update-timeline>div:before{content:"";position:absolute;left:-31px;top:5px;width:12px;height:12px;border-radius:50%;background:var(--blue);border:3px solid #fff;box-shadow:0 0 0 1px #9bcfe8}
.impact-framework{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.impact-metric-preview{border-radius:22px;padding:32px;background:linear-gradient(145deg,#081c32,#0d3a61);color:#fff}.impact-metric-preview:nth-child(2){background:linear-gradient(145deg,#5d174a,#b20867)}.impact-metric-preview:nth-child(3){background:linear-gradient(145deg,#7a3c00,#f58200)}.impact-metric-preview i{font-size:24px}.impact-metric-preview h3{font-size:21px}.impact-metric-preview p{font-size:14px;color:#d9e6ee}.impact-metric-preview strong{font-size:14px}
.evidence-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:45px}.evidence-list{display:grid;gap:13px}.evidence-list>div{display:flex;gap:14px;align-items:flex-start;border-bottom:1px solid var(--line);padding:0 0 14px}.evidence-list i{color:var(--blue-deep);margin-top:4px}.evidence-list strong{display:block;font-size:15px}.evidence-list span{font-size:13px;color:var(--muted)}
.communities-layout{display:grid;grid-template-columns:360px 1fr;gap:28px}.location-panel{border:1px solid var(--line);border-radius:22px;background:#fff;padding:27px}.location-panel h2{font-size:25px}.location-panel p{font-size:14px;color:var(--muted)}.map-placeholder{min-height:520px;border-radius:24px;background:radial-gradient(circle at 70% 30%,rgba(3,155,229,.2),transparent 24%),linear-gradient(135deg,#eaf6fc,#f5f9fc);border:1px solid #d7e5ef;display:grid;place-items:center;text-align:center;padding:35px;color:#486276}.map-placeholder i{font-size:55px;color:var(--blue-deep);margin-bottom:14px}.map-placeholder strong{display:block;font-size:23px;color:var(--navy)}

/* Stories / editorial */
.story-editorial-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.story-editorial{border:1px solid var(--line);border-radius:24px;overflow:hidden;background:#fff}.story-photo{height:310px;background-size:cover;background-position:center}.story-editorial>div:not(.story-photo){padding:28px}.story-editorial h3{font-size:22px;line-height:1.35;margin:8px 0}.story-editorial p{font-size:14px;color:var(--muted)}.story-filters{margin-bottom:30px}
.article-shell{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:55px;align-items:start}.article-main{max-width:800px}.article-meta{display:flex;gap:15px;flex-wrap:wrap;color:var(--muted);font-size:13px;margin-bottom:22px}.article-lead{font-size:20px!important;color:#394a5d!important;line-height:1.75!important}.article-main p,.article-main li{font-size:16px;line-height:1.85;color:#526173}.article-main h2{font-size:32px;margin-top:42px}.article-image{height:430px;background-size:cover;background-position:center;border-radius:23px;margin:30px 0}.article-sidebar{position:sticky;top:100px;display:grid;gap:18px}.share-row{display:flex;gap:8px;flex-wrap:wrap}.share-row a,.share-row button{border:1px solid var(--line);border-radius:11px;padding:10px 12px;background:#fff;font-size:13px;cursor:pointer;color:var(--navy)}

/* Donation flow */
.donate-page{background:linear-gradient(180deg,#f7fbfe,#fff)}.donation-checkout{max-width:1080px;margin:0 auto}.donation-stepper{display:grid;grid-template-columns:repeat(3,1fr);max-width:760px;margin:0 auto 35px;counter-reset:dstep}.donation-stepper>div{position:relative;text-align:center;font-size:12px;font-weight:800;color:#8a97a4}.donation-stepper>div:before{counter-increment:dstep;content:counter(dstep);width:34px;height:34px;border-radius:50%;margin:0 auto 7px;display:grid;place-items:center;background:#e8eef3;color:#657382}.donation-stepper>div.active{color:var(--blue-deep)}.donation-stepper>div.active:before{background:var(--blue-deep);color:#fff}.donation-stepper>div:not(:last-child):after{content:"";position:absolute;top:17px;left:60%;right:-40%;height:2px;background:#e1e8ee;z-index:-1}
.donation-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:30px;align-items:start}.donation-panel{background:#fff;border:1px solid var(--line);border-radius:25px;padding:34px;box-shadow:0 16px 50px rgba(15,40,65,.07)}.donation-panel h2{font-size:30px;margin-top:0}.donation-panel>p{font-size:15px;color:var(--muted)}.donation-page-step{display:none}.donation-page-step.active{display:block}.amount-grid.large{grid-template-columns:repeat(3,1fr);margin:13px 0}.amount-grid.large button{font-size:14px;padding:15px}.donation-assurance{display:grid;gap:14px;position:sticky;top:100px}.donation-assurance>div{display:flex;gap:13px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:17px;padding:19px}.donation-assurance i{width:36px;height:36px;border-radius:10px;background:#eef8fd;color:var(--blue-deep);display:grid;place-items:center}.donation-assurance strong{font-size:14px}.donation-assurance span{display:block;color:var(--muted);font-size:12px;margin-top:3px}.payment-placeholder{padding:28px;border:1px dashed #bbd1df;background:#f8fcfe;border-radius:17px;text-align:center;color:var(--muted);font-size:14px}.payment-placeholder i{font-size:30px;color:var(--blue-deep);display:block;margin-bottom:10px}.review-box{background:var(--soft);border-radius:16px;padding:20px;margin:18px 0}.review-box p{margin:6px 0;font-size:14px}.success-card{max-width:760px;margin:0 auto;padding:55px;background:#fff;border:1px solid var(--line);border-radius:28px;text-align:center;box-shadow:var(--shadow)}.success-icon{width:85px;height:85px;border-radius:50%;margin:0 auto 22px;display:grid;place-items:center;background:#ebf8f0;color:#2a9863;font-size:35px}.success-card.failure .success-icon{background:#fff1f1;color:#ce4242}.success-card h1,.success-card h2{font-size:36px}.success-card p{color:var(--muted);font-size:15px}.success-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:28px}

/* Forms */
.process-block{display:grid;grid-template-columns:.6fr 1.4fr;gap:55px;align-items:start}.process-row{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.process-row>div{padding:19px 16px;border:1px solid var(--line);border-radius:16px;background:#fff;text-align:center;font-size:13px;font-weight:750}.process-row i{display:block;color:var(--blue-deep);font-size:20px;margin-bottom:9px}
.form-shell{display:grid;grid-template-columns:.65fr 1.35fr;gap:42px;align-items:start}.form-intro{position:sticky;top:100px}.form-intro h2{font-size:34px;line-height:1.2}.form-intro p{font-size:15px;color:var(--muted)}.privacy-note{padding:16px;border-radius:14px;background:#eff8fd;color:#40586b;font-size:13px;margin-top:18px}.privacy-note i{color:var(--blue-deep);margin-right:8px}
.application-form,.contact-form{background:#fff;border:1px solid var(--line);border-radius:24px;padding:35px;box-shadow:0 12px 45px rgba(15,40,65,.055)}.form-section{padding-bottom:28px;margin-bottom:28px;border-bottom:1px solid var(--line)}.form-section:last-of-type{border-bottom:0}.form-section h3{font-size:20px;margin:0 0 17px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.form-field{display:flex;flex-direction:column;gap:7px}.form-field.full{grid-column:1/-1}.form-field label{font-size:13px;font-weight:750;color:#435365}.form-field input,.form-field select,.form-field textarea{width:100%;border:1px solid #d9e3ea;border-radius:11px;background:#fff;padding:13px 14px;outline:0;color:var(--text);font-size:14px;transition:.2s}.form-field textarea{min-height:125px;resize:vertical}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(3,155,229,.1)}.choice-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:11px}.check-field{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:9px!important;font-size:13px!important;font-weight:600!important;padding:11px;border:1px solid var(--line);border-radius:11px}.check-field input{width:auto!important;margin-top:3px}.form-actions{display:flex;gap:12px;justify-content:flex-end;flex-wrap:wrap}.form-message{display:block;font-size:13px;color:#2f7d5d;margin-top:12px}.upload-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.upload-grid>label{border:1px dashed #b8cedc;border-radius:13px;padding:21px;text-align:center;color:var(--muted);font-size:13px;cursor:pointer}.upload-grid i{display:block;font-size:24px;color:var(--blue-deep);margin-bottom:7px}
.contact-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:55px}.contact-details h2{font-size:38px}.contact-details>p{font-size:16px;color:var(--muted)}.contact-method{display:flex;gap:15px;padding:18px 0;border-bottom:1px solid var(--line)}.contact-method i{width:46px;height:46px;flex:0 0 46px;border-radius:13px;background:#eef8fd;color:var(--blue-deep);display:grid;place-items:center}.contact-method strong{display:block;font-size:15px}.contact-method span,.contact-method a{font-size:14px;color:var(--muted)}.map-contact{padding:0 0 100px}.map-contact-inner{min-height:330px;border-radius:24px;background:linear-gradient(135deg,#edf7fc,#f9fbfd);border:1px dashed #c5d7e4;display:grid;place-items:center;text-align:center;padding:30px}.map-contact-inner i{font-size:38px;color:var(--blue-deep);margin-bottom:10px}

/* Sponsor, scholarships, funding */
.sponsor-model{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.sponsor-model>article{border:1px solid var(--line);border-radius:21px;padding:28px;background:#fff}.sponsor-model h3{font-size:20px}.sponsor-model p{font-size:14px;color:var(--muted)}.sponsor-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.sponsor-steps>div{background:var(--soft);border-radius:17px;padding:22px;font-size:14px}.sponsor-steps strong{display:block;color:var(--blue-deep);font-size:12px;text-transform:uppercase;letter-spacing:.07em;margin-bottom:6px}
.project-funding{display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:center}.project-funding-copy h2{font-size:38px}.project-funding-copy p{font-size:16px;color:var(--muted)}
.scholarship-status{display:grid;grid-template-columns:.8fr 1.2fr;gap:35px;align-items:start}.status-examples{display:grid;gap:12px}.status-chip{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:14px;padding:16px;background:#fff;font-size:14px;font-weight:750}.status-chip:before{content:"";width:10px;height:10px;border-radius:50%;background:#8e99a5}.status-chip.open:before{background:#2aa96d}.status-chip.coming:before{background:#f29a24}.status-chip.closed:before{background:#9c9c9c}

/* News, gallery, reports */
.news-publish-ready{border:1px dashed #cbdbe6;border-radius:24px;padding:45px;background:#fbfdff}.news-feature{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center}.news-feature-image{height:310px;border-radius:20px;background-size:cover;background-position:center}.news-feature h2{font-size:31px}.news-feature p{font-size:15px;color:var(--muted)}.news-topic-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:28px}.news-topic-grid a{border:1px solid var(--line);padding:18px;border-radius:14px;background:#fff;font-size:14px;font-weight:750}.news-topic-grid a:hover{border-color:var(--blue);color:var(--blue-deep)}
.gallery-grid{columns:3 280px;column-gap:18px}.gallery-item{break-inside:avoid;margin:0 0 18px;border-radius:20px;overflow:hidden;position:relative;min-height:260px;background-size:cover;background-position:center}.gallery-item:nth-child(3n+2){min-height:390px}.gallery-item:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 58%,rgba(6,24,42,.7))}.gallery-item span{position:absolute;z-index:2;left:18px;bottom:16px;color:#fff;font-size:13px;font-weight:750}.gallery-note{padding:18px;border-radius:15px;background:#fff7eb;border:1px solid #ffe1b5;color:#72532c;font-size:14px;margin-top:25px}
.reports-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.report-card{border:1px solid var(--line);border-radius:21px;padding:28px;background:#fff}.report-icon{width:54px;height:64px;border-radius:9px;background:#edf8fd;color:var(--blue-deep);display:grid;place-items:center;font-size:23px}.report-card h3{font-size:19px}.report-card p{font-size:14px;color:var(--muted)}.availability{font-size:12px;font-weight:800;color:#81735f;background:#fff7e9;padding:6px 9px;border-radius:999px;display:inline-flex}.report-empty-note{grid-column:1/-1;border:1px dashed #c9d9e4;border-radius:19px;padding:30px;text-align:center;color:var(--muted);font-size:14px}

/* Rich text body (program, project, story, article content) */
.rich-copy{font-size:16px;line-height:1.9;color:#4a5768}
.rich-copy br{content:"";display:block;margin-top:16px}
.rich-copy blockquote,.article-body blockquote{margin:30px 0;padding:22px 26px;border-left:4px solid var(--blue);background:var(--soft);border-radius:0 16px 16px 0;font-size:18px;font-style:italic;color:#334252}

/* Status badges (project/scholarship status chips) */
.badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;background:#eaf7fd;color:var(--blue-deep)}
.badge:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
.badge.completed,.badge.published,.badge.open{background:#eaf8f2;color:#11835c}
.badge.fundraising,.badge.upcoming{background:#fff7e4;color:#a87305}
.badge.closed,.badge.archived{background:#fff0f1;color:#b43a45}
.badge.ongoing{background:#eaf7fd;color:#0878b0}

/* Notice / inline callout banners */
.notice{border-radius:16px;padding:18px 20px;display:flex;gap:14px;align-items:flex-start;font-size:14px;line-height:1.7;margin-bottom:28px}
.notice i{margin-top:3px;font-size:16px}
.notice strong{display:block;margin-bottom:3px}
.notice.info{background:#edf8fd;border:1px solid #cbe9f7;color:#225d79}
.notice.success{background:#ecf8f3;border:1px solid #c9ebdd;color:#176846}

/* Project / story card grids */
.project-grid,.story-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.project-card,.story-card{background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden;transition:.28s;box-shadow:0 8px 25px rgba(16,45,70,.035)}
.project-card:hover,.story-card:hover{transform:translateY(-6px);box-shadow:var(--shadow);border-color:#d3e4ef}
.project-card-image,.story-card-image{height:210px;background-size:cover;background-position:center;background-color:var(--soft);background-image:linear-gradient(135deg,#eaf7fd,#f9eef5);position:relative}
.project-card-image .badge{position:absolute;left:16px;top:16px;background:rgba(6,26,46,.55);color:#fff;backdrop-filter:blur(4px)}
.project-card-body,.story-card-body{padding:26px}
.project-card-body small,.story-card-body small{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--blue-deep)}
.project-card-body h3,.story-card-body h3{font-size:20px;line-height:1.35;margin:10px 0 8px}
.project-card-body p,.story-card-body p{font-size:14px;color:var(--muted);margin:0}
.project-meta{display:flex;gap:14px;margin:16px 0 4px;font-size:12px;color:#687586}
.project-meta i{color:var(--blue-deep);margin-right:5px}

/* Team / leadership grid */
.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.team-card{background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden;text-align:center;padding-bottom:26px;transition:.25s}
.team-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:#d3e4ef}
.team-photo{height:230px;background-size:cover;background-position:center;background-image:linear-gradient(135deg,#eaf7fd,#f9eef5)}
.team-body{padding:22px 20px 0}
.team-body small{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--magenta)}
.team-body h3{font-size:18px;margin:10px 0 4px}
.team-body strong{display:block;font-size:12px;color:var(--blue-deep);font-weight:700;margin-bottom:10px}
.team-body p{font-size:13px;color:var(--muted);margin:0}

/* Partner grid */
.partner-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.partner-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:30px;text-align:center;transition:.25s}
.partner-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:#d3e4ef}
.partner-card img{max-width:150px;max-height:70px;object-fit:contain;margin:0 auto 18px}
.partner-card h3{font-size:18px;margin:0 0 5px}
.partner-card small{display:block;font-size:11px;color:var(--blue-deep);font-weight:700;text-transform:uppercase;letter-spacing:.05em;margin-bottom:10px}
.partner-card p{font-size:13px;color:var(--muted);margin:0}

/* Program page intro split (program-page.php) */
.split-story{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:60px;align-items:start}
.story-copy h2{font-size:clamp(30px,4vw,42px);line-height:1.2;letter-spacing:-.03em;margin:10px 0 20px}
.story-panel{background:var(--soft);border:1px solid var(--line);border-radius:22px;padding:28px;position:sticky;top:100px}
.story-panel h3{font-size:18px;margin:0 0 16px}

/* Article reading layout (article.php, story-detail.php) */
.article-layout{max-width:800px;margin:0 auto}
.article-body{background:#fff}

/* Project detail sidebar stats */
.project-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:50px;align-items:start}
.detail-sidebar{display:grid;gap:14px;position:sticky;top:100px}
.stat-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px 20px;box-shadow:0 8px 25px rgba(16,45,70,.04)}
.stat-card small{display:block;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:800}
.stat-card strong{display:block;font-size:17px;margin-top:6px;color:var(--navy)}

/* Public impact metrics grid */
.impact-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.impact-stats .stat{background:#fff;border:1px solid var(--line);border-radius:20px;padding:28px 22px;text-align:center;box-shadow:0 8px 25px rgba(16,45,70,.035)}
.impact-stats .stat strong{display:block;font-size:34px;color:var(--blue-deep);letter-spacing:-.03em}
.impact-stats .stat span{display:block;font-size:13px;color:var(--muted);margin-top:8px;font-weight:650}
.impact-stats .stat small{display:block;font-size:11px;color:#98a6b3;margin-top:4px}

/* Search results list */
.search-results{display:grid;gap:16px;max-width:800px;margin:0 auto}
.search-results article{border:1px solid var(--line);border-radius:16px;padding:22px;background:#fff;transition:.2s}
.search-results article:hover{border-color:#cfe3ee;box-shadow:0 8px 25px rgba(16,45,70,.05)}
.search-results article span{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--blue-deep)}
.search-results article h3{font-size:18px;margin:8px 0 6px}
.search-results article p{font-size:14px;color:var(--muted);margin:0}
.search-result-note h3{font-size:19px;color:var(--text);margin:0 0 8px}

/* Form helper text / wrappers */
.form-note{font-size:12px;color:var(--muted);line-height:1.7;margin-top:14px}
.form-page-wrap{max-width:820px;margin:0 auto}

/* FAQ / search / legal / errors */
.faq-layout{display:grid;grid-template-columns:280px 1fr;gap:45px;align-items:start}.faq-side{position:sticky;top:100px;background:var(--soft);border-radius:20px;padding:23px}.faq-side h3{font-size:18px}.faq-side a{display:block;padding:8px 0;font-size:13px;color:var(--muted);font-weight:650}.faq-side a:hover{color:var(--blue-deep)}.faq-list{display:grid;gap:12px}.faq-list details{border:1px solid var(--line);border-radius:16px;background:#fff;overflow:hidden}.faq-list summary{padding:20px 22px;font-size:15px;font-weight:750;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px}.faq-list summary:after{content:"+";font-size:20px;color:var(--blue-deep)}.faq-list details[open] summary:after{content:"−"}.faq-list details p{padding:0 22px 20px;margin:0;color:var(--muted);font-size:14px;line-height:1.75}
.search-page{max-width:900px;margin:0 auto}.search-page-form{display:grid;grid-template-columns:1fr auto;border:1px solid #cfdae4;border-radius:15px;padding:6px;background:#fff;box-shadow:0 10px 35px rgba(20,50,76,.07)}.search-page-form input{border:0;outline:0;padding:12px;font-size:15px}.search-page-form button{border:0;border-radius:10px;background:var(--navy);color:#fff;padding:12px 20px;font-weight:800}.search-categories{display:flex;gap:8px;flex-wrap:wrap;margin:22px 0}.search-categories a{background:var(--soft);border:1px solid var(--line);border-radius:999px;padding:8px 13px;font-size:12px;font-weight:750}.search-result-note{padding:35px;border:1px dashed #c9d8e3;border-radius:18px;text-align:center;color:var(--muted);font-size:14px}
.legal-layout{display:grid;grid-template-columns:250px 1fr;gap:55px;align-items:start}.legal-layout>aside{position:sticky;top:100px;background:var(--soft);border-radius:18px;padding:20px;font-size:13px}.legal-content{max-width:820px}.legal-content h2{font-size:29px;margin-top:40px}.legal-content h2:first-child{margin-top:0}.legal-content p,.legal-content li{font-size:15px;line-height:1.85;color:#536275}.legal-content .detail-note{color:#775526}
.error-page{min-height:68vh;display:grid;place-items:center;padding:80px 0;background:radial-gradient(circle at 50% 35%,#eef9fe,transparent 40%)}.error-inner{text-align:center;max-width:650px}.error-inner img{width:110px;margin:0 auto 20px}.error-inner strong{display:block;font-size:clamp(80px,15vw,160px);line-height:.85;letter-spacing:-.08em;color:#e7f3f9}.error-inner h1{font-size:36px;margin:20px 0 10px}.error-inner p{font-size:16px;color:var(--muted)}

@media (max-width:1080px){
  .info-grid.cols-4,.process-grid{grid-template-columns:repeat(2,1fr)}
  .program-index-cols{grid-template-columns:1fr 1fr}.program-index-cols>div:last-child{grid-column:1/-1}
  .project-detail-shell,.donation-layout,.project-detail-grid{grid-template-columns:minmax(0,1fr) 310px}
  .team-placeholder-grid,.reports-grid{grid-template-columns:repeat(2,1fr)}
  .news-topic-grid{grid-template-columns:repeat(2,1fr)}
  .project-grid,.story-grid,.team-grid,.partner-grid,.impact-stats{grid-template-columns:repeat(2,1fr)}
  .split-story{grid-template-columns:1fr;gap:30px}
}
@media (max-width:900px){
  .page-hero{min-height:400px}.page-hero-inner{padding:72px 0 58px;margin-left:auto;width:min(calc(100% - 40px),var(--container))}.page-hero p{font-size:16px}
  .content-split,.story-layout,.transparency-grid,.evidence-grid,.project-detail-shell,.communities-layout,.article-shell,.donation-layout,.process-block,.form-shell,.contact-layout,.project-funding,.scholarship-status,.project-detail-grid{grid-template-columns:1fr}
  .content-split.split-reverse .content-photo,.content-split.split-reverse .content-copy{order:initial}.content-photo{min-height:430px}
  .story-aside,.project-sidebar,.article-sidebar,.donation-assurance,.form-intro,.faq-side,.legal-layout>aside,.detail-sidebar,.story-panel{position:static}
  .info-grid.cols-3,.impact-framework,.sponsor-model{grid-template-columns:1fr 1fr}
  .program-index-cols{grid-template-columns:1fr}.program-index-cols>div:last-child{grid-column:auto}
  .project-sidebar{grid-template-columns:1fr 1fr}.donation-assurance{grid-template-columns:repeat(3,1fr)}
  .communities-layout{gap:20px}.map-placeholder{min-height:420px}
  .story-editorial-grid,.news-feature,.project-funding{grid-template-columns:1fr}.news-feature-image{order:-1}
  .process-row,.sponsor-steps{grid-template-columns:repeat(2,1fr)}
  .faq-layout,.legal-layout{grid-template-columns:1fr}.faq-side{display:none}
  .gallery-grid{columns:2 260px}
  .cta-band-inner{grid-template-columns:1fr}.cta-band-actions{justify-content:flex-start}
}
@media (max-width:640px){
  body{font-size:16px}.page-hero{min-height:370px}.page-hero-inner{width:min(calc(100% - 28px),var(--container));padding:55px 0 48px}.page-hero h1{font-size:39px}.page-hero p{font-size:15px}.breadcrumb{font-size:11px;margin-bottom:22px}
  .content-photo{min-height:340px;border-radius:20px}.content-copy .lead{font-size:16px}.check-list li{font-size:14px}
  .info-grid.cols-3,.info-grid.cols-4,.impact-framework,.mission-grid,.team-placeholder-grid,.reports-grid,.sponsor-model,.project-grid,.story-grid,.team-grid,.partner-grid,.impact-stats{grid-template-columns:1fr}.info-card{padding:24px}.feature-link-grid{grid-template-columns:1fr}.feature-link{grid-template-columns:45px 1fr 30px;padding:20px}.feature-link>i{width:45px;height:45px}
  .section-heading.split{grid-template-columns:1fr}.cta-band{padding:60px 0}.cta-band-actions{display:grid;grid-template-columns:1fr;width:100%}.cta-band-actions .btn{width:100%}
  .program-detail-intro{grid-template-columns:1fr}.detail-icon{width:66px;height:66px}.process-grid,.detail-focus{grid-template-columns:1fr}
  .project-sidebar,.donation-assurance{grid-template-columns:1fr}.project-facts{grid-template-columns:1fr 1fr}.project-empty,.funding-catalogue-empty{padding:45px 20px}
  .story-editorial-grid{grid-template-columns:1fr}.story-photo,.article-image{height:270px}.article-lead{font-size:18px!important}.article-main h2{font-size:27px}
  .donation-panel,.application-form,.contact-form{padding:24px 19px}.donation-stepper{font-size:10px}.amount-grid.large{grid-template-columns:repeat(2,1fr)}
  .form-grid,.choice-grid,.upload-grid{grid-template-columns:1fr}.form-field.full{grid-column:auto}.form-actions{display:grid;grid-template-columns:1fr}.form-actions .btn{width:100%}
  .process-row,.sponsor-steps{grid-template-columns:1fr}.gallery-grid{columns:1}.news-topic-grid{grid-template-columns:1fr}
  .search-page-form{grid-template-columns:1fr}.search-page-form button{margin-top:5px}.legal-content h2{font-size:25px}
  .success-card{padding:38px 20px}.success-card h1,.success-card h2{font-size:30px}
}

/* Markup compatibility refinements from cross-page audit */
.donation-stepper{display:grid;grid-template-columns:auto 1fr auto 1fr auto;align-items:center;gap:12px;counter-reset:none}
.donation-stepper>span{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:800;color:#8a97a4;white-space:nowrap}
.donation-stepper>span b{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#e8eef3;color:#657382}
.donation-stepper>span.active{color:var(--blue-deep)}.donation-stepper>span.active b{background:var(--blue-deep);color:#fff}
.donation-stepper>i{height:2px;background:#e1e8ee;border-radius:99px}.donation-stepper>div{display:none}
.review-box>div{display:flex;justify-content:space-between;gap:20px;padding:9px 0;border-bottom:1px solid #dde6ec}.review-box>div:last-child{border-bottom:0}.review-box span{font-size:13px;color:var(--muted)}.review-box strong{font-size:14px}
.form-field>span{font-size:13px;font-weight:750;color:#435365}.choice-grid>label{display:flex;align-items:center;gap:9px;padding:11px;border:1px solid var(--line);border-radius:11px;font-size:13px;font-weight:650;color:#4d5b69}.choice-grid input{accent-color:var(--blue)}
@media(max-width:640px){.donation-stepper{gap:6px}.donation-stepper>span{font-size:0;gap:0}.donation-stepper>span b{font-size:12px;width:32px;height:32px}.donation-stepper>i{min-width:24px}}
