:root{--blue:#0d47b5;--deep:#052f78;--orange:#ff7a00;--green:#138a45;--cream:#fffaf2;--text:#1e2a3a}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:Arial,Helvetica,sans-serif;color:var(--text);line-height:1.65}
.topbar{background:linear-gradient(90deg,var(--blue),var(--deep));color:#fff;padding:7px 0;font-size:.86rem}
.topbar a{color:#fff;text-decoration:none}
.navbar-brand img{width:min(310px,55vw);height:58px;object-fit:contain}
.navbar{padding:.7rem 0}
.nav-link{font-weight:600;color:#1e2733!important;margin:0 .35rem;position:relative}
.nav-link:after{transition:.25s}
.nav-link:hover{color:var(--blue)!important}
.dropdown-menu{border:0;border-radius:12px;box-shadow:0 15px 35px rgba(8,39,90,.13);padding:.6rem}
.dropdown-item{border-radius:8px;padding:.6rem .8rem}
.dropdown-item:hover{background:#eef4ff;color:var(--blue);transform:translateX(3px)}
.donate-btn{background:linear-gradient(135deg,#ff9a00,var(--orange));border:0;color:#fff!important;font-weight:800;padding:.78rem 1.25rem;border-radius:9px;box-shadow:0 8px 20px rgba(255,122,0,.3);animation:donatePulse 2.2s infinite}
.donate-btn:hover{transform:translateY(-3px) scale(1.03);box-shadow:0 13px 30px rgba(255,122,0,.42)}
@keyframes donatePulse{0%,100%{box-shadow:0 0 0 0 rgba(255,122,0,.35)}
50%{box-shadow:0 0 0 10px rgba(255,122,0,0)}
}
.hero .carousel-item{height:610px;background-size:cover;background-position:center;position:relative}
.hero .carousel-item:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,35,92,.92),rgba(2,35,92,.16))}
.hero-content{position:relative;color:#fff;padding-top:145px}
.hero h1{font-family:Georgia,serif;font-size:clamp(2.5rem,5vw,4.8rem);font-weight:700;line-height:1.05;max-width:800px}
.hero p{font-size:1.12rem;max-width:620px;margin:1.3rem 0}
.hero .btn{padding:.85rem 1.35rem;font-weight:700}
.hero .carousel-control-prev,.hero .carousel-control-next{width:7%}
.section{padding:85px 0}
.section h2,.section-title h2,.inner-hero h1,.final-cta h2{font-family:Georgia,serif;color:var(--deep);font-weight:700}
.section h2,.section-title h2{font-size:clamp(2rem,4vw,3rem)}
.eyebrow,.section-title span{color:var(--orange);font-weight:800;letter-spacing:.08em;font-size:.82rem}
.section-title{text-align:center;margin-bottom:40px}
.section-image{height:420px;width:100%;object-fit:cover;box-shadow:0 18px 45px rgba(7,42,99,.16);transition:.35s}
.section-image:hover{transform:translateY(-7px) scale(1.015)}
.mini-card,.service-card,.program-card,.content-card,.testimonial{height:100%;background:#fff;border:1px solid #e5ebf5;border-radius:16px;padding:24px;box-shadow:0 8px 25px rgba(7,42,99,.07);transition:transform .3s,box-shadow .3s,border-color .3s}
.mini-card:hover,.service-card:hover,.program-card:hover,.content-card:hover,.testimonial:hover{transform:translateY(-9px);box-shadow:0 18px 38px rgba(7,42,99,.15);border-color:#b6cbf4}
.mini-card i,.content-card>i{font-size:2rem;color:var(--orange);margin-bottom:15px}
.mini-card h5{color:var(--blue);font-weight:700}
.bg-light-blue{background:linear-gradient(180deg,#f6f9ff,#fff)}
.service-card{text-align:center}
.service-icon{width:68px;height:68px;border-radius:50%;display:grid;place-items:center;background:var(--blue);color:#fff;font-size:1.8rem;margin:-5px auto 18px;transition:.35s}
.service-card:hover .service-icon{background:var(--orange);transform:rotateY(180deg)}
.service-card h4,.program-card h4,.content-card h4{color:var(--deep);font-family:Georgia,serif;font-weight:700}
.service-card a,.program-card a{color:var(--orange);font-weight:700;text-decoration:none}
.impact{padding:45px 0;background:#eef5ff}
.impact-item{border-right:1px solid #b7c9e8;transition:.3s}
.impact .col-lg-3:last-child .impact-item{border:0}
.impact-item:hover{transform:scale(1.08)}
.impact-item strong{display:block;color:var(--blue);font:700 3rem Georgia,serif}
.impact-item span{font-weight:700}
.program-card{padding:0;overflow:hidden}
.program-card img{width:100%;height:210px;object-fit:cover;transition:.5s}
.program-card:hover img{transform:scale(1.08)}
.program-card>div{padding:22px}
.testimonial{margin:0}
.testimonial i{color:var(--orange);font-size:2rem}
.testimonial strong,.testimonial small{display:block}
.testimonial strong{color:var(--blue)}
.gallery-img{width:100%;height:210px;object-fit:cover;border-radius:12px;transition:.35s}
.gallery-img:hover{transform:scale(1.04);filter:saturate(1.2)}
.gallery-control{width:46px;height:46px;top:50%;transform:translateY(-50%);background:var(--blue);border-radius:50%;opacity:1}
.gallery-control.carousel-control-prev{left:-22px}
.gallery-control.carousel-control-next{right:-22px}
.inner-hero{min-height:390px;background-size:cover;background-position:center;display:flex;align-items:center;color:#fff}
.inner-hero h1{color:#fff;font-size:clamp(2.8rem,5vw,5rem)}
.inner-hero p{font-size:1.15rem;max-width:700px}
.inner-hero span{color:#ffd39b;font-weight:800;letter-spacing:.1em}
.content-card .avatar,.avatar{width:90px;height:90px;border-radius:50%;background:#eaf1ff;color:var(--blue);display:grid;place-items:center;font-size:2.5rem;margin:0 auto 20px}
.contact-form{display:grid;gap:14px}
.contact-map-card{overflow:hidden;background:#fff;border:1px solid #e5ebf5;border-radius:20px;box-shadow:0 16px 42px rgba(7,42,99,.12)}
.contact-map-heading{padding:28px 30px 20px}
.contact-map-heading h3{margin:5px 0 8px;color:var(--deep);font-family:Georgia,serif;font-weight:700}
.contact-map-heading p{margin:0;color:#607086}
.contact-map-frame{position:relative;width:100%;height:450px;background:#eaf1ff}
.contact-map-frame iframe{display:block;width:100%;height:100%;border:0}
.final-cta{background:linear-gradient(90deg,#0d47b5,#06347f);color:#fff;padding:30px 0}
.final-cta h2{color:#fff;margin:0}
.final-cta p{opacity:.9}
footer{background:#062f7a;color:#fff}
footer p,footer li{color:#dbe7ff;font-size:.92rem}
.footer-logo{width:240px;max-width:100%;height:60px;object-fit:contain;background:#fff;border-radius:8px;padding:4px}
.socials{display:flex;gap:10px}
.socials a{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:#1a57b6;color:#fff;text-decoration:none;transition:.3s}
.socials a:hover{background:var(--orange);transform:translateY(-5px) rotate(8deg)}
footer h5{font-size:.9rem;font-weight:800}
.footer-links,.contact-list{list-style:none;padding:0;margin:0}
.footer-links a{color:#fff;text-decoration:none}
.footer-links li{margin:.35rem 0;transition:.25s}
.footer-links li:before{content:'→';color:#ff9b2f;margin-right:8px}
.footer-links li:hover{transform:translateX(6px)}
.contact-list li{margin:.65rem 0}
.contact-list i{width:25px;color:#fff}
.footer-bottom{border-top:1px solid rgba(255,255,255,.18);padding:18px 0;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:.86rem}
.footer-bottom a{color:#ffad4f;text-decoration:none;font-weight:800}
.whatsapp-widget{position:fixed;right:18px;bottom:42px;z-index:1055;display:flex;align-items:center;background:#fff;border-radius:14px 40px 40px 14px;padding-left:18px;text-decoration:none;box-shadow:0 10px 35px rgba(0,0,0,.2);transition:.3s}
.whatsapp-widget span{display:flex;flex-direction:column;color:#172132;padding-right:14px}
.whatsapp-widget small{color:#6f7b8c}
.whatsapp-widget b{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:#1ec968;color:#fff;font-size:2.1rem;border:7px solid #c9f5dc;animation:whatsPulse 1.8s infinite}
.whatsapp-widget:hover{transform:translateY(-6px) scale(1.02)}
@keyframes whatsPulse{0%,100%{box-shadow:0 0 0 0 rgba(30,201,104,.35)}
50%{box-shadow:0 0 0 12px rgba(30,201,104,0)}
}
@media(min-width:992px){.navbar .dropdown:hover .dropdown-menu{display:block;margin-top:0}
}
@media(max-width:991px){.navbar-collapse{padding:18px 0}
.donate-btn{display:inline-block;margin-top:10px}
.hero .carousel-item{height:530px}
.hero-content{padding-top:120px}
.section{padding:65px 0}
}
@media(max-width:767px){.topbar .container{justify-content:center!important;text-align:center}
.navbar-brand img{height:48px}
.hero .carousel-item{height:520px}
.hero h1{font-size:2.5rem}
.section{padding:52px 0}
.section-image{height:300px}
.impact-item{border:0}
.gallery-control.carousel-control-prev{left:2px}
.gallery-control.carousel-control-next{right:2px}
.whatsapp-widget span{display:none}
.whatsapp-widget{padding-left:0;border-radius:50%;right:12px;bottom:25px}
.whatsapp-widget b{width:58px;height:58px}
.footer-bottom{justify-content:center;text-align:center}
.inner-hero{min-height:310px}
.contact-map-heading{padding:22px 20px 16px}
.contact-map-frame{height:360px}
}
.topbar-right,.top-social{display:flex;align-items:center;gap:13px}
.top-social{padding-left:13px;border-left:1px solid rgba(255,255,255,.35)}
.top-social a{width:27px;height:27px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.14);transition:.3s}
.top-social a:hover{background:var(--orange);transform:translateY(-3px)}
.dropdown-item{transition:.25s}
.dropdown-item i{width:27px;color:var(--orange);transition:.25s}
.dropdown-item:hover i{color:var(--blue);transform:scale(1.12)}
.about-image-wrap{position:relative}
.experience-badge{position:absolute;right:-25px;bottom:28px;min-width:155px;padding:16px 20px;background:linear-gradient(135deg,var(--orange),#ffad31);color:#fff;border:7px solid #fff;border-radius:18px;display:flex;align-items:center;gap:10px;box-shadow:0 14px 32px rgba(255,122,0,.32);animation:experienceFloat 2.8s ease-in-out infinite}
.experience-badge strong{font:700 2.4rem Georgia,serif;line-height:1}
.experience-badge span{font-weight:800;line-height:1.15}
@keyframes experienceFloat{0%,100%{transform:translateY(0)}
50%{transform:translateY(-10px)}
}
.testimonial-carousel{padding:0 55px 45px}
.testimonial-carousel .carousel-indicators{bottom:0}
.testimonial-carousel .carousel-indicators button,.gallery-dots button{width:9px;height:9px;border-radius:50%;background-color:var(--blue)}
.testimonial-control{width:43px;height:43px;top:42%;background:var(--blue);border-radius:50%;opacity:1}
.testimonial-control.carousel-control-prev{left:0}
.testimonial-control.carousel-control-next{right:0}
.gallery-dots{bottom:-38px}
.gallery-img{cursor:zoom-in}
.gallery-modal .modal-content{background:transparent;border:0;position:relative}
.gallery-modal .modal-content img{max-height:86vh;width:100%;object-fit:contain;border-radius:14px;background:#fff}
.gallery-modal .btn-close{position:absolute;right:8px;top:8px;z-index:2;background-color:#fff;opacity:1;padding:12px;border-radius:50%}
.gallery-modal-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:50px;height:50px;border:0;border-radius:50%;display:grid;place-items:center;background:rgba(13,71,181,.92);color:#fff;font-size:1.25rem;box-shadow:0 8px 24px rgba(0,0,0,.28);transition:.25s}
.gallery-modal-nav:hover{background:var(--orange);transform:translateY(-50%) scale(1.08)}
.gallery-modal-prev{left:14px}
.gallery-modal-next{right:14px}
@media(min-width:992px){.navbar .dropdown-menu{display:block;visibility:hidden;opacity:0;transform:translateY(13px);pointer-events:none;margin-top:0}
.navbar .dropdown:hover>.dropdown-menu,.navbar .dropdown:focus-within>.dropdown-menu{visibility:visible;opacity:1;transform:translateY(0);pointer-events:auto}
}
@media(max-width:991px){.dropdown-menu{transition:none}
.experience-badge{right:12px}
}
@media(max-width:767px){.topbar-right{width:100%;justify-content:center;flex-wrap:wrap}
.testimonial-carousel{padding:0 38px 45px}
.experience-badge{right:8px;bottom:12px;min-width:130px;padding:12px}
.experience-badge strong{font-size:2rem}
}
.navbar .dropdown-menu{transition:opacity .28s ease,transform .28s ease,visibility .28s ease}
.gallery-page-img{height:290px}
.gallery-intro{max-width:760px;margin:12px auto 0;color:#607086}
.gallery-filters{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin:0 0 34px}
.gallery-filter{border:1px solid #bfd0ec;background:#fff;color:var(--deep);font-weight:800;padding:11px 21px;border-radius:30px;transition:.25s;box-shadow:0 5px 16px rgba(7,42,99,.06)}
.gallery-filter:hover,.gallery-filter.active{background:var(--blue);border-color:var(--blue);color:#fff;transform:translateY(-2px);box-shadow:0 9px 22px rgba(13,71,181,.22)}
.gallery-grid .gallery-item{transition:opacity .25s,transform .25s}
.gallery-grid .gallery-item.is-hidden{display:none}
.gallery-page-img{height:270px;background:#e7eef9}
.gallery-page-img:focus{outline:4px solid rgba(255,122,0,.45);outline-offset:3px}
.team-member-photo{width:145px;height:145px;object-fit:cover;object-position:45% center;border-radius:50%;margin:0 auto 18px;border:6px solid #eef4ff;box-shadow:0 10px 25px rgba(7,42,99,.16)}
.team-role{color:var(--orange);font-weight:800;margin:-5px 0 10px}
@media(max-width:767px){.gallery-filter{padding:9px 15px;font-size:.88rem}.gallery-page-img{height:210px}.gallery-modal-nav{width:42px;height:42px;font-size:1rem}.gallery-modal-prev{left:6px}.gallery-modal-next{right:6px}}
