:root{--pss:#5c2d91;--pss-dark:#3f1f65;--warm:#fff8f3;--ink:#24222a;--muted:#6e6876;--soft:#f5f2f8}
body{background:#fbfafc;color:var(--ink)}
.navbar-brand{color:var(--pss)!important}.brand-dot{color:#e88045}.btn-primary{background:var(--pss);border-color:var(--pss)}.btn-primary:hover{background:var(--pss-dark);border-color:var(--pss-dark)}
.hero{background:linear-gradient(135deg,#f3eafa 0%,#fff8ef 100%);border-bottom:1px solid #eee5f2;padding:72px 0}.hero h1{font-size:clamp(2.2rem,5vw,4.6rem);line-height:1.02;letter-spacing:-.04em}.eyebrow{font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:var(--pss)}
.section-pad{padding:64px 0}.soft-section{background:var(--soft)}.impact-card,.seva-card{border:0;border-radius:20px;overflow:hidden;box-shadow:0 8px 32px rgba(35,22,51,.08);height:100%}.seva-card .card-body{padding:1.35rem}.card-img-top{height:210px;object-fit:cover;background:#e9e3ee}.placeholder-art{height:210px;background:linear-gradient(135deg,#e9dbf5,#ffe4cf);display:flex;align-items:center;justify-content:center;font-size:3rem}.metric{border-radius:18px;background:white;padding:1.35rem;box-shadow:0 5px 20px rgba(30,20,40,.06)}.metric .value{font-size:2rem;font-weight:800;color:var(--pss)}
.status-pill{font-size:.72rem;letter-spacing:.03em}.content-prose{white-space:pre-line}.admin-shell .card{border-radius:16px}.form-label{font-weight:600}.detail-hero{border-radius:24px;overflow:hidden;background:white;box-shadow:0 8px 30px rgba(30,20,40,.08)}

/* Homepage polish */
.home-hero{position:relative;overflow:hidden}.home-hero:after{content:"";position:absolute;right:-180px;top:-180px;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(92,45,145,.12),rgba(92,45,145,0) 68%);pointer-events:none}.home-pillar-card{position:relative;z-index:1}.pillar-row{display:flex;gap:1rem;align-items:flex-start}.pillar-icon{width:48px;height:48px;border-radius:15px;background:var(--soft);display:flex;align-items:center;justify-content:center;font-size:1.35rem;flex:0 0 auto}.section-link{font-weight:700;color:var(--pss);text-decoration:none}.section-link:hover{text-decoration:underline}.home-card{transition:transform .22s ease,box-shadow .22s ease}.home-card:hover{transform:translateY(-6px);box-shadow:0 16px 40px rgba(35,22,51,.13)}.home-card .card-body{display:flex;flex-direction:column}.home-card .card-img-top{height:230px}.section-intro{max-width:720px}.leadership-section{background:linear-gradient(180deg,#fff 0%,#faf7fc 100%)}.testimonial-card{background:#fff;border:1px solid #eee7f2;border-radius:22px;padding:1.75rem;box-shadow:0 8px 28px rgba(34,24,45,.06);position:relative}.quote-mark{font-size:4.5rem;line-height:.8;color:rgba(92,45,145,.2);font-family:Georgia,serif}.testimonial-copy{font-size:1.02rem;line-height:1.7;color:#514b58;min-height:120px}.testimonial-person{display:flex;align-items:center;gap:.8rem;margin-top:1.25rem}.leader-avatar{width:46px;height:46px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--pss),#8b5bb3);color:#fff;font-weight:800}.leader-avatar.compact{width:38px;height:38px;font-size:.9rem}.leaderboard-section{background:linear-gradient(135deg,#f7f1fb,#fff8ef)}.leaderboard-card{background:#fff;border-radius:24px;box-shadow:0 12px 40px rgba(35,22,51,.09);overflow:hidden;border:1px solid #ede6f1}.leaderboard-head{display:flex;justify-content:space-between;align-items:center;padding:1.2rem 1.4rem;background:#4f267c;color:#fff;font-weight:700}.leaderboard-row{display:flex;align-items:center;gap:.9rem;padding:1rem 1.3rem;border-top:1px solid #f0ebf3}.rank-badge{width:34px;height:34px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:#f0ebf5;color:var(--pss);font-weight:800}.rank-1{background:#fff2b8;color:#8d6800}.rank-2{background:#eef1f5;color:#5d6874}.rank-3{background:#f7dfcf;color:#9a5b36}.heart-score{font-weight:800;color:#a43a66;white-space:nowrap}.leaderboard-empty{text-align:center;padding:2.4rem}.empty-heart{font-size:3rem;color:#c59bd7}.employee-cta{background:#fff}.employee-cta-inner{background:linear-gradient(135deg,#f2e8fa,#fff3e8);border:1px solid #eadff0;border-radius:26px;padding:2.25rem 2.5rem}

/* Interactive detail banners */
.detail-page{padding-bottom:64px}.detail-banner{height:470px;border-radius:28px;overflow:hidden;position:relative;box-shadow:0 18px 44px rgba(30,20,40,.13);background:linear-gradient(135deg,#6b3a9d,#d27b47)}.detail-banner img{width:100%;height:100%;object-fit:cover;display:block}.detail-banner-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(21,14,28,.05) 15%,rgba(21,14,28,.78) 100%)}.detail-banner-content{position:absolute;left:0;right:0;bottom:0;padding:2.2rem 2.4rem;color:#fff;max-width:930px}.detail-banner-content h1{font-size:clamp(2rem,4vw,3.8rem);font-weight:800;letter-spacing:-.03em;margin:.5rem 0}.detail-banner-content p{font-size:1.1rem;margin:0;color:rgba(255,255,255,.9)}.eyebrow.light{color:#f7cfaa}.detail-banner-fallback{background:linear-gradient(135deg,#5c2d91,#e88045)}.seva-daan-banner .detail-banner-shade{background:linear-gradient(180deg,rgba(21,14,28,.08),rgba(63,31,101,.82))}.detail-summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#e9e2ed;margin:-34px 28px 0;position:relative;z-index:2;border-radius:20px;overflow:hidden;box-shadow:0 10px 28px rgba(35,22,51,.08)}.detail-summary-item{background:#fff;padding:1.15rem 1.25rem}.detail-summary-item span{display:block;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:#817989;font-weight:700;margin-bottom:.25rem}.detail-summary-item strong{font-size:.95rem}.detail-content-card{background:#fff;border-radius:24px;margin-top:28px;padding:2rem 2.2rem;box-shadow:0 8px 30px rgba(30,20,40,.06);border:1px solid #eee8f1}.action-panel{top:92px;background:linear-gradient(180deg,#f8f4fb,#fff);border:1px solid #e8dfee;border-radius:20px;padding:1.4rem}.action-panel-meta{border-top:1px solid #e5dce9;margin-top:1rem;padding-top:1rem}.action-panel-meta span,.fundraising-target span{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:#85798b}.fundraising-target{padding:1rem;border-radius:14px;background:#fff;border:1px solid #e9e1ee;margin-top:1rem}.fundraising-target strong{display:block;font-size:1.25rem;color:var(--pss);margin-top:.15rem}.donation-option{background:#fff;border:1px solid #e8e1ec;border-radius:14px;padding:.85rem 1rem}.donation-option strong{color:var(--pss);font-size:1.05rem}

@media (max-width:991.98px){.detail-banner{height:390px}.detail-summary-grid{grid-template-columns:repeat(2,1fr);margin:-24px 18px 0}.testimonial-copy{min-height:auto}}
@media (max-width:575.98px){.section-pad{padding:48px 0}.detail-banner{height:350px;border-radius:20px}.detail-banner-content{padding:1.35rem}.detail-summary-grid{grid-template-columns:1fr;margin:-18px 12px 0}.detail-content-card{padding:1.35rem}.employee-cta-inner{padding:1.6rem}.home-card .card-img-top{height:205px}}
