:root{--green:#08644b;--green-2:#0d7659;--green-dark:#063e31;--gold:#e9ad2f;--cream:#f7f4eb;--ink:#18342c;--muted:#66766f;--line:#e3ebe7;--white:#fff;--shadow:0 18px 55px rgba(5,55,41,.09)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:'DM Sans',sans-serif;color:var(--ink);background:#fff;line-height:1.6}.skip-link{position:absolute;left:-9999px;top:10px;z-index:9999;background:#fff;color:var(--green-dark);padding:10px 16px;border-radius:8px}.skip-link:focus{left:10px}a{text-decoration:none}h1,h2,h3,h4,h5{font-family:'Playfair Display',serif;color:var(--ink)}.top-strip{background:var(--green-dark);color:#eaf3ef;font-size:.8rem}.top-strip-inner{min-height:38px;display:flex;align-items:center;justify-content:space-between}.top-contact{gap:20px}.top-contact a,.top-contact span{color:#d9e8e2}.top-contact i{margin-right:7px;color:var(--gold)}.site-nav{background:rgba(255,255,255,.97);border-bottom:1px solid rgba(20,70,54,.08);backdrop-filter:blur(14px);box-shadow:0 5px 25px rgba(8,61,45,.05)}.nav-inner{min-height:82px}.brand-lockup{display:flex;align-items:center;gap:11px;color:var(--ink);font-weight:700;font-size:1.05rem;letter-spacing:-.02em}.brand-lockup img{width:58px;height:58px;object-fit:contain}.brand-lockup span{max-width:180px;line-height:1.1}.nav-list{gap:2px}.nav-link{font-weight:600;color:#2d4940!important;padding:.75rem .72rem!important;border-radius:10px}.nav-link:hover,.nav-link.active{color:var(--green)!important;background:#eef6f2}.dropdown-menu{border:0;border-radius:14px;padding:.55rem;box-shadow:0 18px 45px rgba(4,48,36,.12)}.dropdown-item{border-radius:9px;padding:.65rem .8rem}.dropdown-item:hover{background:#eef6f2;color:var(--green)}.nav-donate{margin-left:12px;padding:.75rem 1.25rem;border-radius:999px}.nav-toggle{border:0;padding:8px}.nav-toggle span{display:block;width:24px;height:2px;background:var(--ink);margin:5px 0;border-radius:10px}.btn{border-radius:999px;font-weight:700;padding:.75rem 1.25rem;transition:.22s ease}.btn-primary{background:var(--green);border-color:var(--green)}.btn-primary:hover{background:var(--green-dark);border-color:var(--green-dark);transform:translateY(-1px)}.btn-gold{background:var(--gold);border-color:var(--gold);color:#18281f}.btn-gold:hover{background:#d89c1d;border-color:#d89c1d;color:#18281f;transform:translateY(-2px)}.btn-outline-primary{border:1px solid var(--green);color:var(--green)}.btn-outline-primary:hover{background:var(--green);color:#fff}.hero-v2{position:relative;min-height:760px;background-image:var(--hero-image);background-size:cover;background-position:center;display:flex;align-items:center;color:#fff;overflow:hidden}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,37,28,.9) 0%,rgba(2,37,28,.67) 42%,rgba(2,37,28,.16) 100%)}.hero-v2:after{content:'';position:absolute;left:0;right:0;bottom:-1px;height:100px;background:linear-gradient(to top,#fff,transparent);pointer-events:none}.hero-v2-inner{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:end;gap:40px;padding:120px 12px 145px}.hero-v2-copy{max-width:780px}.eyebrow{display:flex;align-items:center;gap:10px;text-transform:uppercase;letter-spacing:.16em;font-size:.76rem;font-weight:800;color:var(--gold)}.eyebrow span{display:inline-block;width:34px;height:2px;background:var(--gold)}.hero-v2 h1{font-size:clamp(3.4rem,7vw,6.5rem);line-height:.98;color:#fff;margin:20px 0 22px;letter-spacing:-.04em}.hero-v2 p{max-width:650px;font-size:1.12rem;color:rgba(255,255,255,.88);line-height:1.8;margin:0}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:25px;margin-top:32px}.hero-text-link{color:#fff;font-weight:700;border-bottom:1px solid rgba(255,255,255,.5);padding-bottom:4px}.hero-text-link:hover{color:var(--gold);border-color:var(--gold)}.hero-note{display:flex;gap:13px;align-items:center;background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(12px);padding:15px 18px;border-radius:18px;min-width:270px}.hero-note-icon{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--gold);color:#173026}.hero-note strong,.hero-note span{display:block}.hero-note span{font-size:.8rem;color:rgba(255,255,255,.72)}.hero-scroll{position:absolute;z-index:3;bottom:34px;left:50%;transform:translateX(-50%);display:flex;gap:12px;align-items:center;color:rgba(255,255,255,.78);font-size:.75rem;text-transform:uppercase;letter-spacing:.13em}.hero-scroll i{font-size:.8rem}.section-pad{padding:100px 0}.section-label{text-transform:uppercase;letter-spacing:.14em;font-size:.75rem;font-weight:800;color:var(--green)}.section-label.light{color:#b9dfd1}.section-title{font-size:clamp(2.25rem,4vw,3.65rem);line-height:1.08;letter-spacing:-.03em;margin:.55rem 0 1rem}.section-intro{font-size:1.06rem;color:var(--muted);line-height:1.9}.section-heading-row{display:flex;align-items:end;justify-content:space-between;gap:30px}.section-link{color:var(--green);font-weight:800;white-space:nowrap}.section-link i,.program-content a i,.child-content a i,.story-content a i,.event-content a i{margin-left:7px;font-size:.8rem;transition:.2s}.section-link:hover i,.program-content a:hover i,.child-content a:hover i,.story-content a:hover i,.event-content a:hover i{transform:translateX(4px)}.intro-section{background:#fff}.image-stack{position:relative;padding:0 35px 35px 0}.image-stack:before{content:'';position:absolute;right:0;bottom:0;width:68%;height:72%;background:var(--cream);border-radius:30px;z-index:0}.image-main{position:relative;z-index:1;width:100%;height:560px;object-fit:cover;border-radius:30px;box-shadow:var(--shadow)}.image-badge{position:absolute;z-index:2;left:10px;bottom:0;background:var(--gold);padding:17px 23px;border-radius:18px;box-shadow:0 12px 30px rgba(121,83,8,.15)}.image-badge span,.image-badge strong{display:block}.image-badge span{text-transform:uppercase;font-size:.67rem;letter-spacing:.14em;font-weight:800}.image-badge strong{font-family:'Playfair Display',serif;font-size:1.25rem}.mini-points{margin:25px 0}.mini-points div{display:flex;gap:12px;align-items:flex-start;margin:13px 0;color:#3e554d}.mini-points i{color:var(--green);margin-top:5px}.programs-section{background:var(--cream)}.program-card-v2,.child-card-v2,.story-card-v2,.event-card-v2{height:100%;background:#fff;border:1px solid rgba(11,72,53,.08);border-radius:24px;overflow:hidden;box-shadow:0 12px 35px rgba(11,67,49,.06);transition:.25s ease}.program-card-v2:hover,.child-card-v2:hover,.story-card-v2:hover,.event-card-v2:hover{transform:translateY(-6px);box-shadow:0 22px 50px rgba(11,67,49,.12)}.program-image,.child-image,.story-image,.event-image{position:relative;overflow:hidden}.program-image{height:280px}.program-image img,.child-image img,.story-image img,.event-image img{width:100%;height:100%;object-fit:cover;transition:.45s}.program-card-v2:hover img,.child-card-v2:hover img,.story-card-v2:hover img,.event-card-v2:hover img{transform:scale(1.045)}.program-number{position:absolute;right:18px;top:18px;background:#fff;color:var(--green);border-radius:999px;padding:6px 10px;font-weight:800;font-size:.75rem}.program-content{padding:25px}.program-icon{width:50px;height:50px;border-radius:15px;background:#e9f4ef;color:var(--green);display:grid;place-items:center;margin-top:-48px;position:relative;z-index:2;border:5px solid #fff;font-size:1rem}.program-content h3{font-size:1.55rem;margin:18px 0 10px}.program-content p{color:var(--muted);font-size:.95rem;line-height:1.75;min-height:54px}.program-content a,.child-content a,.story-content a,.event-content a{color:var(--green);font-weight:800}.impact-band{background:var(--green-dark);position:relative;overflow:hidden}.impact-band:before{content:'';position:absolute;width:420px;height:420px;border-radius:50%;background:rgba(255,255,255,.035);right:-120px;top:-180px}.light-link{color:#dcefe8}.impact-stats{border-top:1px solid rgba(255,255,255,.18);border-bottom:1px solid rgba(255,255,255,.18)}.impact-stat{padding:32px 20px;border-right:1px solid rgba(255,255,255,.15);height:100%}.impact-stat:last-child{border-right:0}.impact-stat strong{display:block;font-family:'Playfair Display',serif;color:#fff;font-size:3.2rem;line-height:1}.impact-stat span{display:block;color:#bcd5cd;margin-top:9px;font-size:.88rem}.children-section{background:#fff}.child-image{height:360px}.child-image span{position:absolute;left:18px;top:18px;background:#fff;color:var(--green);font-size:.72rem;font-weight:800;padding:7px 11px;border-radius:999px}.child-content{padding:24px}.child-content small{color:var(--green);font-weight:700;text-transform:uppercase;letter-spacing:.08em}.child-content h3{font-size:1.65rem;margin:7px 0}.child-content p{color:var(--muted);margin-bottom:18px}.story-section{background:var(--cream)}.story-image{height:260px}.story-image span{position:absolute;left:17px;bottom:17px;background:var(--green);color:#fff;border-radius:999px;padding:6px 11px;font-size:.7rem;font-weight:800}.story-content{padding:24px}.story-content h3{font-size:1.55rem}.story-content p{color:var(--muted);line-height:1.75}.events-section{background:#fff}.event-image{height:230px}.event-date{position:absolute;left:17px;bottom:17px;width:58px;height:65px;background:var(--gold);border-radius:13px;display:grid;place-items:center;text-align:center;padding:6px}.event-date strong{font-family:'Playfair Display',serif;font-size:1.45rem;line-height:1}.event-date span{text-transform:uppercase;font-size:.65rem;font-weight:800}.event-content{padding:22px}.event-content small{color:var(--muted)}.event-content h3{font-size:1.45rem;margin:8px 0 18px}.empty-state{border:1px dashed #cfdcd6;background:#f8fbf9;border-radius:20px;padding:45px;text-align:center;color:var(--muted)}.empty-state i{font-size:2rem;color:var(--green);margin-bottom:14px}.empty-state h3{font-size:1.45rem}.light-empty{background:#fff}.final-cta{background:var(--cream);padding-top:70px}.final-cta-inner{background:linear-gradient(120deg,var(--green-dark),var(--green));color:#fff;border-radius:30px;padding:58px 65px;display:flex;align-items:center;justify-content:space-between;gap:40px;position:relative;overflow:hidden}.final-cta-inner:after{content:'';position:absolute;width:360px;height:360px;border:1px solid rgba(255,255,255,.08);border-radius:50%;right:-120px;top:-150px}.final-cta h2{color:#fff;font-size:clamp(2.2rem,4vw,3.8rem);line-height:1.05;margin:10px 0 12px;max-width:780px}.final-cta p{color:rgba(255,255,255,.75);max-width:760px;margin:0}.final-actions{display:flex;gap:12px;flex-wrap:wrap;position:relative;z-index:2}.btn-light-outline{color:#fff;border:1px solid rgba(255,255,255,.45)}.btn-light-outline:hover{background:#fff;color:var(--green-dark)}.site-footer{background:#072d24;color:#c7d8d1}.footer-main{padding:75px 0}.footer-brand{display:inline-flex;width:64px;height:64px;background:#fff;border-radius:14px;padding:7px;margin-bottom:18px}.footer-brand img{width:100%;height:100%;object-fit:contain}.site-footer h2{color:#fff;font-size:1.5rem;margin-bottom:12px}.site-footer h5{color:#fff;font-family:'DM Sans',sans-serif;font-size:.9rem;text-transform:uppercase;letter-spacing:.1em}.site-footer p{max-width:500px;line-height:1.8}.site-footer a{color:#c7d8d1}.site-footer a:hover{color:#fff}.socials{display:flex;gap:8px;margin-top:22px}.socials a{width:40px;height:40px;border:1px solid rgba(255,255,255,.16);border-radius:50%;display:grid;place-items:center}.footer-contact{display:flex;gap:11px;align-items:flex-start;margin:13px 0}.footer-contact i{color:var(--gold);margin-top:5px;width:16px}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding:18px 0;font-size:.82rem;color:#a9c0b8}@media(max-width:991px){.nav-inner{min-height:72px}.navbar-collapse{padding:15px 0 20px}.nav-list{gap:0}.nav-link{padding:.7rem .8rem!important}.nav-donate{margin:10px 0 0}.hero-v2{min-height:720px}.hero-v2-inner{padding:105px 12px 130px}.hero-note{display:none}.hero-v2 h1{font-size:clamp(3rem,9vw,5rem)}.section-pad{padding:78px 0}.image-main{height:500px}.final-cta-inner{padding:45px 35px;display:block}.final-actions{margin-top:25px}.impact-stat{border-bottom:1px solid rgba(255,255,255,.15)}.impact-stat:nth-child(2n){border-right:0}}@media(max-width:575px){.top-strip{display:none}.brand-lockup span{font-size:.94rem}.brand-lockup img{width:50px;height:50px}.hero-v2{min-height:690px;background-position:58% center}.hero-v2-inner{padding:90px 20px 110px}.hero-v2 h1{font-size:3rem}.hero-v2 p{font-size:1rem}.hero-actions{align-items:flex-start;flex-direction:column;gap:18px}.hero-scroll{display:none}.section-pad{padding:65px 0}.section-heading-row{display:block}.section-heading-row .section-link{display:inline-block;margin-top:17px}.section-title{font-size:2.3rem}.image-stack{padding:0 18px 18px 0}.image-main{height:430px;border-radius:22px}.image-badge{left:0;padding:13px 17px}.program-image{height:235px}.child-image{height:330px}.impact-stat{padding:26px 12px}.impact-stat strong{font-size:2.35rem}.impact-stat span{font-size:.75rem}.final-cta-inner{padding:36px 25px;border-radius:24px}.final-cta h2{font-size:2.35rem}.footer-main{padding:55px 0}}
/* Phase 11 — About + Our Work + Programme detail refinement */
.page-hero-v2{position:relative;overflow:hidden;background:var(--cream);padding:105px 0 95px;border-bottom:1px solid var(--line)}
.page-hero-v2:before{content:'';position:absolute;width:420px;height:420px;border:1px solid rgba(8,100,75,.08);border-radius:50%;right:-120px;top:-190px}
.page-hero-v2:after{content:'';position:absolute;width:260px;height:260px;background:rgba(233,173,47,.12);border-radius:50%;left:-150px;bottom:-170px}
.page-hero-v2 .container{position:relative;z-index:1}
.breadcrumb-v2{display:flex;align-items:center;gap:9px;font-size:.78rem;color:var(--muted);margin-bottom:22px}
.breadcrumb-v2 a{color:var(--green);font-weight:700}.breadcrumb-v2 i{font-size:.65rem;color:#9caea6}
.page-hero-v2 h1{font-size:clamp(3rem,6vw,5.4rem);line-height:1;letter-spacing:-.045em;max-width:950px;margin:0 0 20px}
.page-hero-v2 .lead{font-size:1.12rem;line-height:1.85;color:var(--muted);max-width:760px;margin:0}
.hero-meta-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.hero-meta{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(8,100,75,.12);background:#fff;border-radius:999px;padding:9px 13px;color:#3e554d;font-size:.8rem;font-weight:700}.hero-meta i{color:var(--green)}
.about-story-card{background:#fff;border:1px solid var(--line);border-radius:30px;padding:30px;box-shadow:var(--shadow)}
.about-story-card .story-kicker{display:flex;align-items:center;gap:10px;color:var(--green);font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.13em;margin-bottom:15px}.story-kicker:before{content:'';width:30px;height:2px;background:var(--gold)}
.about-story-card h2{font-size:clamp(2.2rem,4vw,3.6rem);line-height:1.08;margin-bottom:20px}.about-story-card p{color:var(--muted);line-height:1.9}
.about-photo-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:16px;align-items:end}.about-photo-grid img{width:100%;object-fit:cover;border-radius:24px}.about-photo-main{height:560px}.about-photo-side{height:310px}.about-photo-caption{background:var(--green-dark);color:#fff;border-radius:20px;padding:20px;margin-top:16px}.about-photo-caption strong{font-family:'Playfair Display',serif;font-size:1.25rem;display:block}.about-photo-caption span{font-size:.82rem;color:#bdd6cd}
.value-card{height:100%;background:#fff;border:1px solid var(--line);border-radius:24px;padding:30px;transition:.25s ease}.value-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.value-number{width:45px;height:45px;border-radius:14px;background:#e9f4ef;color:var(--green);display:grid;place-items:center;font-weight:800;margin-bottom:25px}.value-card h3{font-size:1.55rem}.value-card p{color:var(--muted);line-height:1.8;margin-bottom:0}
.work-intro{background:#fff}.work-rail{display:grid;grid-template-columns:1fr 1.25fr;gap:55px;align-items:start}.work-sticky{position:sticky;top:115px}.work-sticky .section-title{max-width:500px}.work-sticky p{max-width:500px}.work-note{margin-top:30px;padding:20px;border-left:3px solid var(--gold);background:var(--cream);border-radius:0 16px 16px 0;color:#52645d;font-size:.92rem}.work-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.work-grid .program-card-v2:nth-child(3){grid-column:1/-1}.work-grid .program-card-v2:nth-child(3) .program-image{height:320px}
.program-hero{background:var(--green-dark);color:#fff;padding:95px 0 90px;position:relative;overflow:hidden}.program-hero:before{content:'';position:absolute;width:500px;height:500px;border:1px solid rgba(255,255,255,.08);border-radius:50%;right:-180px;top:-260px}.program-hero .container{position:relative;z-index:1}.program-hero h1{color:#fff;font-size:clamp(3.2rem,6vw,5.6rem);line-height:.98;letter-spacing:-.045em;margin:12px 0 22px}.program-hero .lead{color:#c7ddd5;max-width:800px;font-size:1.12rem;line-height:1.8}.program-hero .eyebrow{color:var(--gold)}
.program-detail-wrap{margin-top:-55px;position:relative;z-index:2}.program-feature-card{background:#fff;border-radius:30px;overflow:hidden;box-shadow:0 25px 70px rgba(3,44,33,.14);border:1px solid rgba(8,100,75,.08)}.program-feature-card .feature-image-v2{height:580px;width:100%;object-fit:cover}.program-feature-copy{padding:42px}.program-feature-copy h2{font-size:clamp(2.1rem,4vw,3.3rem);line-height:1.08}.program-feature-copy p{color:var(--muted);line-height:1.95}.program-feature-copy .content-prose{font-size:1rem}.support-box{margin-top:28px;padding:22px;background:var(--cream);border-radius:20px}.support-box strong{display:block;font-family:'Playfair Display',serif;font-size:1.25rem;margin-bottom:5px}.support-box span{color:var(--muted);font-size:.9rem}
.program-points{padding-top:75px}.program-point{height:100%;padding:27px;border-top:2px solid var(--green);background:#f8faf8;border-radius:0 0 20px 20px}.program-point .point-icon{width:45px;height:45px;border-radius:14px;background:#e9f4ef;color:var(--green);display:grid;place-items:center;margin-bottom:20px}.program-point h3{font-size:1.45rem}.program-point p{color:var(--muted);line-height:1.8;margin-bottom:0}
.program-story-cta{background:var(--cream);margin-top:80px}.program-story-cta .cta{border-radius:30px;padding:55px 60px;background:linear-gradient(120deg,var(--green-dark),var(--green));color:#fff}.program-story-cta h2{color:#fff;font-size:clamp(2.2rem,4vw,3.7rem);line-height:1.05}.program-story-cta p{color:#c8ded6;max-width:720px}
@media(max-width:991px){.work-rail{grid-template-columns:1fr;gap:35px}.work-sticky{position:static}.program-detail-wrap{margin-top:-35px}.program-feature-card .feature-image-v2{height:430px}.program-feature-copy{padding:32px}.about-photo-main{height:480px}}
@media(max-width:767px){.page-hero-v2{padding:78px 0 68px}.page-hero-v2 h1{font-size:3rem}.about-photo-grid{grid-template-columns:1fr}.about-photo-main{height:390px}.about-photo-side{height:260px}.work-grid{grid-template-columns:1fr}.work-grid .program-card-v2:nth-child(3){grid-column:auto}.work-grid .program-card-v2:nth-child(3) .program-image{height:235px}.program-hero{padding:78px 0 78px}.program-hero h1{font-size:3.2rem}.program-feature-card .feature-image-v2{height:330px}.program-feature-copy{padding:26px}.program-story-cta .cta{padding:38px 25px;border-radius:24px}}

/* =========================================================
   Phase 12 — Sponsorship UX
   ========================================================= */
.sponsor-hero-v2{background:linear-gradient(135deg,#075c47 0%,#0c6e55 58%,#084d3d 100%);color:#fff;padding:34px 0 92px;position:relative;overflow:hidden}.sponsor-hero-v2:after{content:"";position:absolute;width:520px;height:520px;border:1px solid rgba(255,255,255,.1);border-radius:50%;right:-160px;bottom:-300px}.sponsor-hero-v2 .breadcrumb-v2{color:rgba(255,255,255,.7);margin-bottom:60px}.sponsor-hero-v2 .breadcrumb-v2 a{color:#fff}.sponsor-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:70px;align-items:end}.sponsor-hero-grid h1{font-family:var(--font-serif,Georgia,serif);font-size:clamp(3rem,6vw,5.6rem);line-height:.98;max-width:850px;margin:14px 0 22px;color:#fff}.sponsor-hero-grid p{font-size:1.12rem;line-height:1.8;color:rgba(255,255,255,.78);max-width:720px}.sponsor-hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:32px}.sponsor-hero-card{background:#f4efe3;color:#103f34;border-radius:24px;padding:30px;box-shadow:0 24px 60px rgba(0,0,0,.16);display:flex;flex-direction:column;gap:10px}.sponsor-hero-card i{font-size:2rem;color:#d99b16}.sponsor-hero-card strong{font-family:var(--font-serif,Georgia,serif);font-size:1.65rem}.sponsor-hero-card span{color:#53645e;line-height:1.65}.sponsor-intro{padding-bottom:38px}.sponsor-filter-wrap{background:#f7f3ea;padding:22px 0;border-top:1px solid #ebe4d6;border-bottom:1px solid #ebe4d6}.sponsor-filter{display:grid;grid-template-columns:minmax(220px,1.5fr) minmax(160px,.8fr) minmax(130px,.6fr) auto auto;gap:12px;align-items:end}.filter-field label{display:block;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#50645d;margin:0 0 7px}.filter-field input,.filter-field select,.sponsor-request-card input,.sponsor-request-card select,.sponsor-request-card textarea{width:100%;border:1px solid #d9ddd7;background:#fff;border-radius:12px;padding:13px 15px;color:#183f35;outline:none;transition:border-color .2s,box-shadow .2s}.filter-field input:focus,.filter-field select:focus,.sponsor-request-card input:focus,.sponsor-request-card select:focus,.sponsor-request-card textarea:focus{border-color:#0b7056;box-shadow:0 0 0 4px rgba(11,112,86,.08)}.input-icon{position:relative}.input-icon i{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#799087}.input-icon input{padding-left:42px}.filter-submit{height:48px;white-space:nowrap}.filter-reset{align-self:center;color:#0a664f;text-decoration:none;font-weight:700;font-size:.9rem;padding:10px}.result-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;color:#53645e;font-size:.9rem}.result-note{color:#9b6e08}.sponsor-card-v2{background:#fff;border:1px solid #ebe7df;border-radius:22px;overflow:hidden;height:100%;box-shadow:0 8px 30px rgba(20,55,44,.06);transition:transform .25s ease,box-shadow .25s ease}.sponsor-card-v2:hover{transform:translateY(-6px);box-shadow:0 20px 50px rgba(20,55,44,.12)}.sponsor-card-image{height:360px;position:relative;overflow:hidden;background:#e7e3d9}.sponsor-card-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}.sponsor-card-v2:hover .sponsor-card-image img{transform:scale(1.04)}.sponsor-card-overlay{position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.42))}.availability-pill,.featured-pill{position:absolute;top:16px;border-radius:999px;padding:7px 11px;font-size:.72rem;font-weight:800;letter-spacing:.04em}.availability-pill{left:16px;background:#e7f6ed;color:#116b4e}.availability-pill i{font-size:.45rem;vertical-align:middle;margin-right:5px}.featured-pill{right:16px;background:#e7a91c;color:#1f271f}.sponsor-card-body{padding:24px 24px 26px}.sponsor-meta{display:flex;justify-content:space-between;gap:12px;color:#7b8983;font-size:.74rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700;margin-bottom:10px}.sponsor-card-body h3{font-family:var(--font-serif,Georgia,serif);font-size:1.85rem;color:#173f34;margin-bottom:9px}.sponsor-card-body p{color:#63736d;line-height:1.7;min-height:54px;margin-bottom:20px}.sponsor-card-link{display:inline-flex;align-items:center;gap:9px;color:#08684f;font-weight:800;text-decoration:none}.sponsor-card-link i{transition:transform .2s}.sponsor-card-link:hover i{transform:translateX(4px)}.sponsor-trust{background:#f7f3ea}.trust-item{height:100%;display:flex;gap:17px;padding:26px;background:#fff;border:1px solid #e8e2d7;border-radius:18px}.trust-item i{font-size:1.5rem;color:#d69b19;margin-top:3px}.trust-item h3{font-family:var(--font-serif,Georgia,serif);font-size:1.35rem;color:#173f34;margin:0 0 7px}.trust-item p{color:#64746e;line-height:1.65;margin:0}.child-profile-hero{background:#f7f3ea;padding:30px 0 12px}.child-profile-section{padding-top:48px}.child-profile-media{position:relative;border-radius:24px;overflow:hidden;background:#e8e3d8;box-shadow:0 18px 50px rgba(20,55,44,.1)}.child-profile-media img{width:100%;aspect-ratio:4/4.7;object-fit:cover;display:block}.profile-status{position:absolute;left:18px;bottom:18px;border-radius:999px;padding:9px 13px;font-size:.78rem;font-weight:800;background:#fff;box-shadow:0 8px 20px rgba(0,0,0,.12)}.profile-status i{font-size:.48rem;margin-right:6px;vertical-align:middle}.profile-status.is-available{color:#0d6b50}.profile-status.is-unavailable{color:#8b4b42}.back-link{display:inline-flex;gap:9px;margin-top:17px;color:#0b6650;text-decoration:none;font-weight:700}.profile-code{display:inline-block;background:#f1eadc;color:#91680f;padding:7px 11px;border-radius:999px;font-size:.75rem;font-weight:800;letter-spacing:.08em;margin:12px 0}.child-profile-title{font-family:var(--font-serif,Georgia,serif);font-size:clamp(3rem,5vw,5rem);line-height:1;color:#173f34;margin:0 0 15px}.profile-facts{display:flex;flex-wrap:wrap;gap:18px;color:#60716b;font-weight:600;margin-bottom:35px}.profile-facts i{color:#d69b19;margin-right:7px}.profile-story,.profile-needs{border-top:1px solid #e4e5df;padding-top:25px;margin-top:25px}.profile-story h2,.profile-needs h2{font-family:var(--font-serif,Georgia,serif);font-size:1.65rem;color:#173f34}.profile-story p,.profile-needs p{color:#63736d;line-height:1.9}.profile-needs{background:#f7f3ea;border:0;border-radius:18px;padding:24px;margin-top:26px}.sponsor-request-card{background:#fff;border:1px solid #e7e4dc;border-radius:24px;padding:34px;box-shadow:0 15px 45px rgba(20,55,44,.07)}.request-heading h2{font-family:var(--font-serif,Georgia,serif);font-size:2.2rem;color:#173f34;margin:6px 0 8px}.request-heading p{color:#64746e;line-height:1.7}.sponsor-request-card label{display:block;color:#3f574f;font-size:.82rem;font-weight:800;margin:0 0 7px}.sponsor-request-card textarea{resize:vertical}.success-panel,.unavailable-panel{display:flex;gap:15px;align-items:flex-start;background:#edf8f1;border:1px solid #cfe9d8;border-radius:16px;padding:18px;margin-bottom:18px}.success-panel i{color:#128157;font-size:1.5rem}.unavailable-panel{background:#fbf1ed;border-color:#efd8ce}.unavailable-panel i{color:#a95d4f;font-size:1.5rem}.success-panel h3,.unavailable-panel h3{font-size:1.1rem;color:#173f34;margin:0 0 4px}.success-panel p,.unavailable-panel p{color:#64746e;margin:0;line-height:1.6}.profile-bottom-cta{padding-top:0}.sponsor-empty{padding:70px 25px}.sponsor-empty i{font-size:2rem;color:#d49a19;margin-bottom:10px}
@media(max-width:991.98px){.sponsor-hero-grid{grid-template-columns:1fr;gap:35px}.sponsor-hero-card{max-width:430px}.sponsor-filter{grid-template-columns:1fr 1fr}.filter-search{grid-column:1/-1}.filter-submit{width:100%}.child-profile-title{font-size:3.5rem}}
@media(max-width:575.98px){.sponsor-hero-v2{padding-bottom:65px}.sponsor-hero-v2 .breadcrumb-v2{margin-bottom:38px}.sponsor-hero-grid h1{font-size:3rem}.sponsor-hero-actions .btn{width:100%}.sponsor-filter{grid-template-columns:1fr}.filter-search{grid-column:auto}.filter-submit{margin-top:5px}.result-row{align-items:flex-start;gap:10px;flex-direction:column}.sponsor-card-image{height:330px}.sponsor-card-body{padding:21px}.child-profile-title{font-size:3rem}.sponsor-request-card{padding:24px 19px}}

/* =========================================================
   Phase 13 — Donation + Volunteer UX
   ========================================================= */
.give-hero,.volunteer-hero{background:linear-gradient(135deg,#075c47 0%,#0c6e55 58%,#084d3d 100%);color:#fff;padding:34px 0 92px;position:relative;overflow:hidden}.give-hero:after,.volunteer-hero:after{content:"";position:absolute;width:580px;height:580px;border:1px solid rgba(255,255,255,.09);border-radius:50%;right:-220px;bottom:-390px}.give-hero .breadcrumb-v2,.volunteer-hero .breadcrumb-v2{color:rgba(255,255,255,.7);margin-bottom:62px}.give-hero .breadcrumb-v2 a,.volunteer-hero .breadcrumb-v2 a{color:#fff}.give-hero-grid,.volunteer-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:70px;align-items:end}.give-hero h1,.volunteer-hero h1{font-family:var(--font-serif,Georgia,serif);font-size:clamp(3.1rem,6vw,5.8rem);line-height:.96;max-width:850px;margin:16px 0 23px;color:#fff;letter-spacing:-.035em}.give-hero p,.volunteer-hero p{max-width:720px;font-size:1.12rem;line-height:1.8;color:rgba(255,255,255,.8)}.give-hero-actions,.volunteer-hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:32px}.give-hero-note,.volunteer-quote{background:#f4efe3;color:#103f34;border-radius:24px;padding:30px;box-shadow:0 24px 60px rgba(0,0,0,.16)}.give-hero-note{display:flex;flex-direction:column;gap:10px}.give-note-icon{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:var(--gold);color:#173026;font-size:1.25rem}.give-hero-note strong{font-family:var(--font-serif,Georgia,serif);font-size:1.55rem}.give-hero-note span{color:#53645e;line-height:1.65;font-size:.91rem}.volunteer-quote{position:relative;padding:34px}.volunteer-quote>i{color:#d89d1b;font-size:1.5rem;margin-bottom:16px}.volunteer-quote p{color:#23483e;font-family:var(--font-serif,Georgia,serif);font-size:1.45rem;line-height:1.35;margin:0 0 15px}.volunteer-quote span{font-size:.78rem;text-transform:uppercase;letter-spacing:.12em;font-weight:800;color:#63736d}.give-intro{background:#fff}.give-benefits{margin-top:28px}.give-benefits>div{display:flex;gap:12px;align-items:flex-start;margin:15px 0;color:#425950}.give-benefits i{color:var(--green);margin-top:5px}.give-purpose-card{background:var(--cream);border:1px solid #e8e1d5;border-radius:28px;padding:34px}.purpose-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:22px}.purpose-grid a{display:flex;align-items:center;gap:13px;padding:19px;background:#fff;border:1px solid #e8e4da;border-radius:17px;color:#194438;font-weight:800;transition:.2s ease}.purpose-grid a:hover{transform:translateY(-3px);border-color:#bdd6cc;box-shadow:0 12px 28px rgba(18,70,55,.08);color:var(--green)}.purpose-grid i{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:#e9f4ef;color:var(--green)}.give-form-section,.volunteer-form-section{background:var(--green-dark);padding:105px 0;position:relative;overflow:hidden}.give-form-section:before,.volunteer-form-section:before{content:"";position:absolute;width:650px;height:650px;border-radius:50%;border:1px solid rgba(255,255,255,.05);left:-330px;top:-250px}.give-form-title{font-family:var(--font-serif,Georgia,serif);font-size:clamp(2.4rem,4vw,4rem);line-height:1.04;color:#fff;margin:.6rem 0 1rem}.give-form-copy{color:#bed6ce;line-height:1.85;max-width:430px}.give-trust-list{margin-top:35px}.give-trust-list>div{display:flex;gap:13px;margin:20px 0;color:#fff}.trust-icon{width:42px;height:42px;flex:0 0 42px;border-radius:12px;background:rgba(255,255,255,.08);display:grid;place-items:center;color:var(--gold)}.give-trust-list strong,.give-trust-list small{display:block}.give-trust-list strong{font-size:.95rem}.give-trust-list small{color:#91b7aa;margin-top:3px}.give-form-card,.volunteer-form-card{background:#fff;border-radius:28px;padding:38px;box-shadow:0 25px 70px rgba(0,0,0,.18);position:relative;z-index:1}.give-form-card label,.volunteer-form-card label{display:block;color:#3f574f;font-size:.82rem;font-weight:800;margin:0 0 7px}.give-form-card label span,.volunteer-form-card label span{font-weight:600;color:#84938e}.give-form-card input,.give-form-card select,.give-form-card textarea,.volunteer-form-card input,.volunteer-form-card select,.volunteer-form-card textarea{width:100%;border:1px solid #d9ddd7;background:#fff;border-radius:12px;padding:13px 15px;color:#183f35;outline:none;transition:border-color .2s,box-shadow .2s}.give-form-card input:focus,.give-form-card select:focus,.give-form-card textarea:focus,.volunteer-form-card input:focus,.volunteer-form-card select:focus,.volunteer-form-card textarea:focus{border-color:#0b7056;box-shadow:0 0 0 4px rgba(11,112,86,.08)}.give-form-card textarea,.volunteer-form-card textarea{resize:vertical}.form-section-heading{display:flex;align-items:center;gap:12px;padding:8px 0 5px;margin-top:8px;border-bottom:1px solid #e8ebe7;margin-bottom:4px}.form-section-heading>span{width:31px;height:31px;display:grid;place-items:center;border-radius:50%;background:#e9f4ef;color:var(--green);font-size:.72rem;font-weight:900}.form-section-heading strong,.form-section-heading small{display:block}.form-section-heading strong{color:#173f34}.form-section-heading small{color:#7a8983;font-size:.78rem}.amount-suggestions{display:flex;flex-wrap:wrap;gap:8px}.amount-suggestions button{border:1px solid #d8e1dc;background:#f7faf8;color:#17604d;border-radius:999px;padding:8px 14px;font-size:.82rem;font-weight:800;cursor:pointer;transition:.2s}.amount-suggestions button:hover{background:#e9f4ef;border-color:#bdd6cc}.form-disclaimer{display:flex;gap:12px;align-items:flex-start;background:#f4f8f6;border:1px solid #dfe9e4;border-radius:14px;padding:14px}.form-disclaimer i{color:var(--green);margin-top:3px}.form-disclaimer p{margin:0;color:#60716b;font-size:.83rem;line-height:1.6}.form-success-panel{display:flex;gap:17px;align-items:flex-start;background:#edf8f1;border:1px solid #cfe9d8;border-radius:18px;padding:22px}.form-success-panel>i{color:#128157;font-size:1.7rem;margin-top:3px}.form-success-panel h2{font-family:var(--font-serif,Georgia,serif);font-size:2rem;color:#173f34;margin:5px 0 7px}.form-success-panel p{color:#64746e;line-height:1.7;margin:0}.success-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.volunteer-ways{background:var(--cream)}.volunteer-heading-copy{max-width:500px}.volunteer-way{height:100%;background:#fff;border:1px solid #e8e2d7;border-radius:22px;padding:29px;position:relative;overflow:hidden;transition:.22s ease}.volunteer-way:hover{transform:translateY(-5px);box-shadow:0 18px 45px rgba(20,55,44,.08)}.volunteer-way>span{position:absolute;right:21px;top:18px;color:#c7d2cd;font-family:var(--font-serif,Georgia,serif);font-size:2rem}.volunteer-way>i{width:48px;height:48px;display:grid;place-items:center;background:#e9f4ef;color:var(--green);border-radius:14px;margin-bottom:20px}.volunteer-way h3{font-family:var(--font-serif,Georgia,serif);font-size:1.5rem;color:#173f34}.volunteer-way p{color:#66766f;line-height:1.75;margin:0}.volunteer-process{margin-top:34px}.volunteer-process>div{display:flex;gap:14px;align-items:flex-start;margin:20px 0}.volunteer-process>div>span{width:33px;height:33px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.18);border-radius:50%;color:var(--gold);font-weight:900;font-size:.78rem}.volunteer-process p{margin:0}.volunteer-process strong,.volunteer-process small{display:block}.volunteer-process strong{color:#fff}.volunteer-process small{color:#8fb4a8;margin-top:3px}.volunteer-form-card .form-section-heading{margin-top:10px}
@media(max-width:991.98px){.give-hero-grid,.volunteer-hero-grid{grid-template-columns:1fr;gap:35px}.give-hero-note,.volunteer-quote{max-width:480px}.give-form-card,.volunteer-form-card{padding:30px}.give-form-section,.volunteer-form-section{padding:85px 0}}
@media(max-width:575.98px){.give-hero,.volunteer-hero{padding-bottom:65px}.give-hero .breadcrumb-v2,.volunteer-hero .breadcrumb-v2{margin-bottom:38px}.give-hero h1,.volunteer-hero h1{font-size:3rem}.give-hero-actions .btn,.volunteer-hero-actions .btn{width:100%}.purpose-grid{grid-template-columns:1fr}.give-form-card,.volunteer-form-card{padding:23px 18px;border-radius:21px}.give-form-title{font-size:2.5rem}.success-actions .btn{width:100%}}
/* =========================================================
   Phase 14 — Impact, News, Events, Gallery & Contact UX
   ========================================================= */
.content-hero-v3{background:var(--cream);padding:34px 0 86px;position:relative;overflow:hidden}.content-hero-v3:after{content:"";position:absolute;width:460px;height:460px;border-radius:50%;border:1px solid rgba(8,100,75,.08);right:-190px;bottom:-270px}.content-hero-v3 .breadcrumb-v2{margin-bottom:56px}.content-hero-v3 h1{font-family:var(--font-serif,Georgia,serif);font-size:clamp(3.1rem,6vw,5.6rem);line-height:.98;color:var(--green-dark);max-width:900px;margin:15px 0 20px;letter-spacing:-.04em}.content-hero-v3 p{max-width:700px;color:#64766e;font-size:1.08rem;line-height:1.85}.content-hero-v3 .eyebrow{color:var(--green)}
.content-toolbar{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-bottom:35px}.content-toolbar-copy strong{display:block;color:var(--ink);font-size:1.05rem}.content-toolbar-copy span{display:block;color:var(--muted);font-size:.9rem;margin-top:3px}.content-filter{display:flex;gap:9px;flex-wrap:wrap}.content-filter a{padding:8px 13px;border:1px solid var(--line);border-radius:999px;color:#416057;font-size:.78rem;font-weight:800;background:#fff}.content-filter a:hover,.content-filter a.active{background:#eaf4ef;border-color:#c7ddd4;color:var(--green)}
.editorial-card{height:100%;background:#fff;border:1px solid rgba(11,72,53,.08);border-radius:25px;overflow:hidden;box-shadow:0 12px 35px rgba(11,67,49,.055);transition:.25s ease}.editorial-card:hover{transform:translateY(-6px);box-shadow:0 24px 55px rgba(11,67,49,.11)}.editorial-media{height:285px;position:relative;overflow:hidden}.editorial-media img{width:100%;height:100%;object-fit:cover;transition:.5s ease}.editorial-card:hover .editorial-media img{transform:scale(1.045)}.editorial-tag{position:absolute;left:17px;top:17px;background:#fff;color:var(--green);padding:7px 11px;border-radius:999px;font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.07em}.editorial-body{padding:26px}.editorial-body h2{font-size:1.6rem;line-height:1.16;margin:8px 0 11px}.editorial-body p{color:var(--muted);line-height:1.75}.editorial-meta{display:flex;align-items:center;gap:12px;color:#81908a;font-size:.77rem;margin-bottom:8px}.editorial-meta i{color:var(--gold)}.editorial-link{display:inline-flex;align-items:center;color:var(--green);font-weight:900;margin-top:8px}.editorial-link i{margin-left:8px;transition:.2s}.editorial-link:hover i{transform:translateX(4px)}
.article-shell{max-width:980px;margin:0 auto}.article-header{max-width:850px;margin:0 auto 38px}.article-kicker{display:flex;align-items:center;gap:10px;color:var(--green);text-transform:uppercase;letter-spacing:.13em;font-size:.72rem;font-weight:900}.article-title{font-family:var(--font-serif,Georgia,serif);font-size:clamp(2.8rem,5vw,5rem);line-height:1.02;color:var(--green-dark);letter-spacing:-.035em;margin:12px 0 18px}.article-meta{color:#71827b;font-size:.86rem;display:flex;gap:16px;flex-wrap:wrap}.article-feature{width:100%;height:min(620px,58vw);min-height:300px;object-fit:cover;border-radius:28px;margin-bottom:42px}.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:55px}.article-content{font-size:1.08rem;line-height:2;color:#435850}.article-content p{margin:0 0 1.4em}.article-side{border-left:1px solid var(--line);padding-left:25px;height:max-content}.article-side strong{display:block;color:var(--ink);font-size:.82rem;text-transform:uppercase;letter-spacing:.1em}.article-side span{display:block;color:var(--muted);font-size:.88rem;margin-top:7px;line-height:1.6}.article-back{display:inline-flex;align-items:center;color:var(--green);font-weight:900;margin-top:35px}.article-back i{margin-right:8px}
.event-list-card{display:grid;grid-template-columns:300px 1fr;min-height:270px;background:#fff;border:1px solid rgba(11,72,53,.08);border-radius:26px;overflow:hidden;box-shadow:0 12px 35px rgba(11,67,49,.055);transition:.25s}.event-list-card:hover{transform:translateY(-4px);box-shadow:0 22px 50px rgba(11,67,49,.1)}.event-list-media{position:relative;min-height:100%}.event-list-media img{width:100%;height:100%;object-fit:cover}.event-list-date{position:absolute;left:18px;top:18px;width:64px;height:70px;background:var(--gold);border-radius:15px;display:grid;place-items:center;text-align:center;box-shadow:0 10px 22px rgba(0,0,0,.12)}.event-list-date strong{font-family:var(--font-serif,Georgia,serif);font-size:1.55rem;line-height:1}.event-list-date span{font-size:.63rem;text-transform:uppercase;font-weight:900}.event-list-body{padding:32px}.event-list-body .event-kicker{color:var(--green);font-size:.73rem;font-weight:900;text-transform:uppercase;letter-spacing:.1em}.event-list-body h2{font-size:2rem;line-height:1.1;margin:10px 0}.event-list-body p{color:var(--muted);line-height:1.75}.event-details{display:flex;flex-wrap:wrap;gap:17px;margin:20px 0;color:#52665d;font-size:.84rem}.event-details i{color:var(--gold);margin-right:5px}.event-page-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:55px;align-items:start}.event-feature{width:100%;height:540px;object-fit:cover;border-radius:28px}.event-info-card{background:var(--cream);border-radius:24px;padding:30px}.event-info-row{display:flex;gap:14px;padding:15px 0;border-bottom:1px solid rgba(15,70,53,.1)}.event-info-row:last-child{border-bottom:0}.event-info-row i{color:var(--green);width:18px;margin-top:4px}.event-info-row strong,.event-info-row span{display:block}.event-info-row strong{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:var(--ink)}.event-info-row span{color:var(--muted);font-size:.9rem;margin-top:3px}.event-gallery-grid{columns:3 220px;column-gap:14px}.event-gallery-grid a{display:block;break-inside:avoid;margin-bottom:14px}.event-gallery-grid img{width:100%;border-radius:18px;display:block}
.album-card{height:100%;background:#fff;border:1px solid rgba(11,72,53,.08);border-radius:24px;overflow:hidden;box-shadow:0 12px 35px rgba(11,67,49,.055);transition:.25s}.album-card:hover{transform:translateY(-6px);box-shadow:0 22px 50px rgba(11,67,49,.11)}.album-cover{height:310px;position:relative;overflow:hidden}.album-cover img{width:100%;height:100%;object-fit:cover;transition:.5s}.album-card:hover .album-cover img{transform:scale(1.05)}.album-count{position:absolute;right:16px;bottom:16px;background:rgba(3,50,37,.88);color:#fff;padding:8px 11px;border-radius:999px;font-size:.72rem;font-weight:900}.album-body{padding:24px}.album-body h2{font-size:1.55rem;margin:6px 0 8px}.album-body p{color:var(--muted);line-height:1.7}.gallery-masonry{columns:4 220px;column-gap:13px}.gallery-masonry-item{break-inside:avoid;margin-bottom:13px;position:relative;overflow:hidden;border-radius:17px}.gallery-masonry-item img{width:100%;display:block;transition:.4s}.gallery-masonry-item:hover img{transform:scale(1.035)}.gallery-caption{position:absolute;left:0;right:0;bottom:0;padding:35px 15px 14px;background:linear-gradient(transparent,rgba(0,0,0,.7));color:#fff;font-size:.76rem;opacity:0;transition:.25s}.gallery-masonry-item:hover .gallery-caption{opacity:1}
.contact-hero{background:var(--green-dark);color:#fff;padding:34px 0 95px;position:relative;overflow:hidden}.contact-hero:after{content:"";position:absolute;width:500px;height:500px;border:1px solid rgba(255,255,255,.07);border-radius:50%;right:-180px;bottom:-310px}.contact-hero .breadcrumb-v2{color:rgba(255,255,255,.65);margin-bottom:58px}.contact-hero .breadcrumb-v2 a{color:#fff}.contact-hero h1{font-family:var(--font-serif,Georgia,serif);font-size:clamp(3.2rem,6vw,5.8rem);line-height:.96;color:#fff;max-width:850px;margin:15px 0 18px}.contact-hero p{max-width:690px;color:#bcd5cd;font-size:1.08rem;line-height:1.8}.contact-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:70px;align-items:start}.contact-info-stack{display:grid;gap:12px;margin-top:28px}.contact-info-card{display:flex;gap:14px;align-items:flex-start;padding:19px;border:1px solid var(--line);border-radius:17px;background:#fff}.contact-info-card>i{width:43px;height:43px;border-radius:13px;background:#e9f4ef;color:var(--green);display:grid;place-items:center;flex:0 0 43px}.contact-info-card strong,.contact-info-card span{display:block}.contact-info-card strong{font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:var(--ink)}.contact-info-card span{font-size:.9rem;color:var(--muted);margin-top:4px;line-height:1.55}.contact-form-shell{background:#fff;border:1px solid var(--line);border-radius:28px;padding:38px;box-shadow:0 18px 50px rgba(8,61,45,.07)}.contact-form-shell label{display:block;color:#3f574f;font-size:.82rem;font-weight:800;margin-bottom:7px}.contact-form-shell input,.contact-form-shell textarea{width:100%;border:1px solid #d9e1dc;border-radius:12px;padding:13px 15px;outline:none;transition:.2s}.contact-form-shell input:focus,.contact-form-shell textarea:focus{border-color:var(--green);box-shadow:0 0 0 4px rgba(8,100,75,.08)}.contact-form-shell textarea{resize:vertical}.contact-note{margin-top:20px;padding:14px 16px;border-radius:14px;background:#f5f8f6;color:#66766f;font-size:.8rem;line-height:1.6}
@media(max-width:991.98px){.article-layout{grid-template-columns:1fr}.article-side{border-left:0;border-top:1px solid var(--line);padding:20px 0 0}.event-list-card{grid-template-columns:1fr}.event-list-media{height:300px}.event-page-grid,.contact-grid{grid-template-columns:1fr;gap:35px}.contact-grid{gap:45px}.gallery-masonry{columns:3 180px}}
@media(max-width:575.98px){.content-hero-v3{padding-bottom:65px}.content-hero-v3 .breadcrumb-v2{margin-bottom:38px}.content-hero-v3 h1{font-size:3rem}.content-toolbar{align-items:flex-start;flex-direction:column}.editorial-media{height:250px}.editorial-body{padding:21px}.article-title{font-size:2.9rem}.article-feature{height:300px;border-radius:20px}.article-content{font-size:1rem}.event-list-media{height:240px}.event-list-body{padding:23px}.event-list-body h2{font-size:1.65rem}.event-feature{height:330px;border-radius:20px}.event-info-card{padding:22px}.gallery-masonry{columns:2 130px}.contact-hero{padding-bottom:65px}.contact-hero .breadcrumb-v2{margin-bottom:38px}.contact-hero h1{font-size:3rem}.contact-form-shell{padding:24px 19px;border-radius:21px}}

/* =========================================================
   Phase 15 - Responsive + Accessibility Layer
   ========================================================= */
/* Phase 15: responsive + accessibility layer. Load after the existing site.css. */
:root{--focus-ring:0 0 0 4px rgba(214,164,47,.32),0 0 0 2px #fff;}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{overflow-x:hidden}
img{max-width:100%;height:auto}
:focus-visible{outline:3px solid var(--gold,#d6a42f);outline-offset:3px}
.btn:focus-visible,.nav-link:focus-visible,.dropdown-item:focus-visible,.section-link:focus-visible,.editorial-link:focus-visible,.hero-text-link:focus-visible{box-shadow:var(--focus-ring);outline:0}
.skip-link{transition:transform .2s ease}.skip-link:focus{transform:translateY(0)}
.nav-toggle{min-width:44px;min-height:44px;display:inline-grid;place-items:center}
.nav-toggle:focus-visible{box-shadow:var(--focus-ring);border-radius:10px}
.btn{min-height:44px}
.contact-form-shell input,.contact-form-shell textarea,.form-control,.form-select{min-height:46px}
/* Prevent decorative media from creating horizontal overflow on narrow devices. */
.hero-v2-inner,.final-cta-inner{width:100%;max-width:100%}
/* Responsive desktop/tablet refinements */
@media (max-width:1199.98px){
 .hero-v2{min-height:690px}.hero-v2-inner{padding:105px 12px 125px}.hero-v2 h1{font-size:clamp(3rem,7vw,5.5rem)}
 .image-main{height:500px}.section-pad{padding:82px 0}.program-image{height:250px}.child-image{height:320px}
 .final-cta-inner{padding:48px 45px}.gallery-masonry{columns:3 190px}
}
@media (max-width:991.98px){
 .top-strip-inner{padding:7px 12px;min-height:38px}.top-contact{gap:12px;flex-wrap:wrap}
 .nav-inner{min-height:72px}.brand-lockup img{width:52px;height:52px}
 .hero-v2{min-height:650px;background-position:55% center}.hero-v2-inner{padding:95px 12px 115px;align-items:flex-start;flex-direction:column}.hero-v2-copy{max-width:680px}.hero-note{min-width:0;width:min(100%,390px)}
 .section-pad{padding:75px 0}.section-heading-row{align-items:flex-start;flex-direction:column}.section-title{font-size:clamp(2.1rem,6vw,3.1rem)}
 .image-stack{padding:0 22px 22px 0}.image-main{height:470px}.impact-stat{border-right:0;border-bottom:1px solid rgba(255,255,255,.15);padding:25px 15px}.impact-stat:last-child{border-bottom:0}
 .final-cta-inner{padding:42px 35px;align-items:flex-start;flex-direction:column}.gallery-masonry{columns:2 200px}
 .content-hero-v3 h1,.contact-hero h1{font-size:clamp(2.8rem,7vw,4.6rem)}
}
@media (max-width:767.98px){
 .top-strip{display:none}.nav-inner{padding:0 10px}.brand-lockup span{font-size:.95rem;max-width:145px}.brand-lockup img{width:48px;height:48px}
 .hero-v2{min-height:610px;background-position:58% center}.hero-overlay{background:linear-gradient(90deg,rgba(2,37,28,.91),rgba(2,37,28,.62))}.hero-v2-inner{padding:82px 10px 105px}.hero-v2 h1{font-size:clamp(2.65rem,11vw,4.1rem);line-height:1.01;margin:16px 0}.hero-v2 p{font-size:1rem;line-height:1.7}.hero-actions{gap:12px;margin-top:25px}.hero-actions .btn{width:auto}.hero-scroll{display:none}
 .section-pad{padding:62px 0}.section-intro{font-size:1rem;line-height:1.75}.image-stack{padding:0 14px 14px 0}.image-main{height:390px;border-radius:22px}.image-badge{left:0;padding:13px 17px;border-radius:14px}
 .program-image{height:235px}.program-content{padding:21px}.program-content p{min-height:0}.child-image{height:300px}.story-image{height:230px}.event-image{height:220px}
 .final-cta{padding-top:48px}.final-cta-inner{padding:34px 24px;border-radius:23px;gap:24px}.final-cta-inner .btn{width:100%}
 .content-hero-v3,.contact-hero{padding-left:10px;padding-right:10px}.content-hero-v3 h1,.contact-hero h1{font-size:clamp(2.65rem,12vw,3.7rem)}.content-hero-v3 p,.contact-hero p{font-size:1rem}
 .content-toolbar{margin-bottom:25px}.content-filter{width:100%;overflow-x:auto;flex-wrap:nowrap;padding-bottom:6px;scrollbar-width:thin}.content-filter a{white-space:nowrap}
 .editorial-media{height:235px}.editorial-body{padding:21px}.editorial-body h2{font-size:1.42rem}
 .article-shell{padding-left:10px;padding-right:10px}.article-title{font-size:clamp(2.4rem,10vw,3.2rem)}.article-feature{height:270px;min-height:0;margin-bottom:30px}.article-content{font-size:1rem;line-height:1.85}.article-layout{gap:30px}.article-side{padding-top:18px}
 .event-list-media{height:220px}.event-list-body{padding:21px}.event-list-body h2{font-size:1.55rem}.event-details{gap:11px;flex-direction:column}.event-page-grid{gap:28px}.event-feature{height:290px}.event-info-card{padding:20px}
 .gallery-masonry{columns:2 135px;column-gap:9px}.gallery-masonry-item{margin-bottom:9px;border-radius:12px}.gallery-caption{opacity:1;padding:28px 10px 9px;font-size:.7rem}
 .contact-grid{gap:30px}.contact-form-shell{padding:22px 17px}.contact-info-card{padding:16px}.contact-hero .breadcrumb-v2{margin-bottom:35px}
}
@media (max-width:479.98px){
 .container{--bs-gutter-x:1.25rem}.brand-lockup span{max-width:125px;font-size:.88rem}.brand-lockup img{width:44px;height:44px}
 .hero-v2-inner{padding-top:70px}.hero-v2 h1{font-size:2.55rem}.hero-actions{align-items:stretch;flex-direction:column}.hero-actions .btn,.hero-actions .hero-text-link{width:100%;text-align:center}.hero-note{width:100%}
 .section-pad{padding:52px 0}.section-title{font-size:2.15rem}.image-main{height:330px}.program-image{height:215px}.child-image{height:270px}.story-image{height:210px}.event-image{height:205px}
 .impact-stat strong{font-size:2.65rem}.final-cta-inner{padding:29px 20px}
 .content-hero-v3 h1,.contact-hero h1{font-size:2.5rem}.content-hero-v3 .breadcrumb-v2,.contact-hero .breadcrumb-v2{margin-bottom:30px}.editorial-media{height:215px}
 .article-title{font-size:2.35rem}.article-feature{height:230px;border-radius:17px}.event-list-media{height:205px}.event-feature{height:240px;border-radius:17px}.gallery-masonry{columns:2 120px}.contact-form-shell{padding:19px 14px}
}
/* Motion accessibility: honor the user's operating-system preference. */
@media (prefers-reduced-motion:reduce){
 html{scroll-behavior:auto!important}
 *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}
/* High-contrast-friendly focus and disabled states. */
.btn:disabled,.btn.disabled{opacity:.6;transform:none!important}
[aria-disabled="true"]{cursor:not-allowed}


/* Phase 15 CSS compatibility fix */
.navbar-brand{display:flex;align-items:center;gap:10px;color:var(--ink,#18342c);font-weight:700;text-decoration:none}
.navbar-brand img{width:58px;height:58px;object-fit:contain;display:block}
.site-nav .navbar-toggler{border:0;padding:.5rem}
.site-nav .navbar-toggler:focus{box-shadow:0 0 0 3px rgba(233,173,47,.25)}
.site-nav .navbar-nav{align-items:center}
.site-nav .navbar-nav .nav-link{white-space:nowrap}
@media(max-width:991.98px){
  .site-nav .navbar-brand img{width:52px;height:52px}
  .site-nav .navbar-nav{align-items:stretch}
  .site-nav .navbar-nav .nav-link{padding:.75rem .8rem!important}
}
@media(max-width:575.98px){
  .site-nav .navbar-brand img{width:46px;height:46px}
  .site-nav .navbar-brand{font-size:.95rem}
}

/* =========================================================
   Impact Hearts Foundation — Final UI Polish
   Fixes container alignment and adds restrained motion.
   ========================================================= */

/* Restore Bootstrap container behavior that was overridden by
   the previous responsive layer. This makes the hero content
   line up with the header/navigation content. */
.hero-v2-inner{
    width:100%;
    margin-left:auto;
    margin-right:auto;
    max-width:540px;
}
@media (min-width:576px){
    .hero-v2-inner{max-width:540px;}
}
@media (min-width:768px){
    .hero-v2-inner{max-width:720px;}
}
@media (min-width:992px){
    .hero-v2-inner{max-width:960px;}
}
@media (min-width:1200px){
    .hero-v2-inner{max-width:1140px;}
}
@media (min-width:1400px){
    .hero-v2-inner{max-width:1320px;}
}

/* Slightly more deliberate desktop breathing room. */
@media (min-width:992px){
    .hero-v2-inner{
        padding-left:24px;
        padding-right:24px;
    }
}

/* Hero entrance animation: subtle, not distracting. */
.hero-v2{
    animation: ih-hero-bg 1.4s ease-out both;
}
.hero-v2-overlay{
    animation: ih-hero-overlay 1s ease-out both;
}
.hero-v2 .hero-v2-copy{
    animation: ih-rise .8s cubic-bezier(.22,1,.36,1) .12s both;
}
.hero-v2 .hero-actions{
    animation: ih-rise .8s cubic-bezier(.22,1,.36,1) .28s both;
}
.hero-v2 .hero-note{
    animation: ih-note-in .85s cubic-bezier(.22,1,.36,1) .38s both;
}

/* Existing markup uses .hero-overlay rather than .hero-v2-overlay. */
.hero-v2 .hero-overlay{
    animation: ih-hero-overlay 1s ease-out both;
}

/* Gentle, purposeful interactions. */
.hero-v2 .btn-gold,
.hero-v2 .hero-text-link{
    transition:
        transform .22s ease,
        color .22s ease,
        background-color .22s ease,
        border-color .22s ease;
}
.hero-v2 .btn-gold:hover{
    transform:translateY(-2px);
}
.hero-v2 .hero-text-link:hover{
    transform:translateX(3px);
}

.hero-note{
    transition:transform .25s ease, background-color .25s ease, border-color .25s ease;
}
.hero-note:hover{
    transform:translateY(-4px);
    background:rgba(255,255,255,.15);
    border-color:rgba(255,255,255,.28);
}

/* Keep image cards lively without making the site feel animated everywhere. */
.program-card-v2,
.child-card,
.editorial-card,
.event-list-card,
.album-card,
.value-card{
    transition:transform .28s cubic-bezier(.22,1,.36,1),
               box-shadow .28s ease;
}

.program-card-v2:hover,
.child-card:hover,
.editorial-card:hover,
.event-list-card:hover,
.album-card:hover,
.value-card:hover{
    transform:translateY(-5px);
}

/* Make navigation feel polished without bouncing. */
.site-nav{
    transition:box-shadow .25s ease, background-color .25s ease;
}
.nav-link{
    transition:color .2s ease, background-color .2s ease;
}
.nav-donate{
    transition:transform .22s ease, box-shadow .22s ease, background-color .22s ease;
}
.nav-donate:hover{
    transform:translateY(-2px);
}

/* Respect accessibility settings. */
@media (prefers-reduced-motion: reduce){
    html{scroll-behavior:auto!important;}
    .hero-v2,
    .hero-v2 .hero-overlay,
    .hero-v2 .hero-v2-copy,
    .hero-v2 .hero-actions,
    .hero-v2 .hero-note{
        animation:none!important;
    }

    *,
    *::before,
    *::after{
        transition-duration:.01ms!important;
        animation-duration:.01ms!important;
        animation-iteration-count:1!important;
    }
}

@keyframes ih-hero-bg{
    from{background-size:106%;}
    to{background-size:100%;}
}
@keyframes ih-hero-overlay{
    from{opacity:.72;}
    to{opacity:1;}
}
@keyframes ih-rise{
    from{opacity:0;transform:translateY(28px);}
    to{opacity:1;transform:translateY(0);}
}
@keyframes ih-note-in{
    from{opacity:0;transform:translate(24px,10px);}
    to{opacity:1;transform:translate(0,0);}
}

@media (max-width:767.98px){
    .hero-v2-inner{
        max-width:100%;
        padding-left:20px;
        padding-right:20px;
    }
    .hero-v2{
        animation:none;
        background-size:cover;
    }
    .hero-v2 .hero-note{
        animation:ih-rise .7s cubic-bezier(.22,1,.36,1) .32s both;
    }
}
