/* Community NGO Legend 4.0 — NGO institutional refinement.
   All colors honor Design Studio / Core custom properties, including ten presets. */
body.legend-site {
  --ngo-deep: var(--ngo-brand-secondary, #173e34);
  --ngo-primary: var(--ngo-brand-primary, #08705b);
  --ngo-accent: var(--ngo-brand-accent, #ed9a3c);
  --ngo-page: var(--ngo-design-surface, #ffffff);
  --ngo-soft: var(--ngo-design-wash, #f4f8f5);
  --ngo-ink: var(--ngo-design-ink, #173e34);
  --ngo-rule: var(--ngo-design-line, #dce5dd);
  --ngo-elevation: 0 18px 48px rgba(13,41,33,.07);
  font-family: var(--legend-body-font, "Hind Siliguri", "Noto Sans Bengali", sans-serif);
  background: var(--ngo-page);
  color: var(--ngo-ink);
  font-size: 16px;
  line-height: 1.74;
  overflow-wrap: break-word;
}
body.legend-site :is(h1,h2,h3,h4,h5,h6){font-family:var(--legend-display-font,var(--legend-body-font,sans-serif));font-weight:700;text-wrap:balance}
body.legend-site .cngo-container{width:min(var(--cngo-container,1240px),calc(100% - 56px))}
body.legend-site :is(.cngo-prose,.legend-story-body){font-size:1rem;line-height:1.88}
body.legend-site .cngo-prose :is(h2,h3){margin-top:1.7em;margin-bottom:.65em}
body.legend-site :is(.legend-section-head,.cngo-section-heading){margin-bottom:clamp(22px,3vw,42px)}
body.legend-site .legend-kicker,
body.legend-site .cngo-eyebrow{font-weight:760;letter-spacing:.08em}
body.legend-site :is(.legend-header,.legend-hero,.cngo-page-hero,.legend-footer-cta,.legend-footer){box-shadow:none}
body.legend-site .legend-topbar{background:var(--ngo-deep);color:#fff;min-height:38px}
body.legend-site .legend-topbar a{color:#f1fbf4}
body.legend-site .legend-header{
  background:rgba(255,255,255,.99);border-bottom:1px solid var(--ngo-rule);
  box-shadow:0 8px 25px rgba(12,48,36,.045);
}
body.legend-site .legend-header-inner{min-height:76px;gap:12px}
body.legend-site .legend-brand{min-width:0;max-width:350px;gap:12px}
body.legend-site .legend-brand-copy strong{font-size:clamp(15px,1.3vw,19px);font-weight:800;line-height:1.2;color:var(--ngo-ink)}
body.legend-site .legend-brand-copy small{font-size:10px;letter-spacing:0;color:var(--muted);font-weight:550}
body.legend-site .legend-logo{max-height:54px;width:auto;object-fit:contain}
body.legend-site .legend-logo-mark{border-radius:12px;box-shadow:none}
body.legend-site .legend-nav-list{gap:0}
body.legend-site .legend-nav-list>li>a{
  display:flex;align-items:center;font-size:12.5px;line-height:1.45;font-weight:700;
  color:var(--ngo-ink);border-radius:7px;padding:11px 8px;transition:color .18s, background .18s;
}
body.legend-site .legend-nav-list>li:hover>a,
body.legend-site .legend-nav-list>li.current-menu-item>a,
body.legend-site .legend-nav-list>li.current-menu-ancestor>a{
  color:var(--ngo-primary);background:color-mix(in srgb,var(--ngo-primary) 9%,white);transform:none;box-shadow:none;
}
body.legend-site .legend-nav-list>.cngo-essential-menu>a{font-weight:800}
body.legend-site .legend-submenu,
body.legend-site .legend-nav-list .sub-menu{
  border:1px solid var(--ngo-rule);background:var(--ngo-page);box-shadow:0 20px 38px rgba(14,43,33,.12);
  border-radius:12px;min-width:230px;transform:none;
}
body.legend-site :is(.legend-submenu,.legend-nav-list .sub-menu) a{font-size:13px!important;line-height:1.5;padding:12px 14px!important}
body.legend-site :is(.legend-submenu,.legend-nav-list .sub-menu) a:hover{background:var(--ngo-soft);color:var(--ngo-primary);box-shadow:none;transform:none}
body.legend-site .legend-header-actions{gap:9px}
body.legend-site .legend-donate-btn{background:var(--ngo-primary);color:white!important;border-radius:8px;font-weight:750;box-shadow:none;min-height:43px}
body.legend-site .legend-donate-btn:hover{filter:brightness(.91);background:var(--ngo-primary);box-shadow:none}
body.legend-site .legend-hero{
  margin:0;width:100%;border:0;border-bottom:1px solid var(--ngo-rule);
  background:linear-gradient(110deg,color-mix(in srgb,var(--ngo-soft) 78%,white),var(--ngo-soft));
  overflow:hidden;padding:clamp(38px,5vw,72px) 0 30px;
}
body.legend-site .legend-hero:after,
body.legend-site .legend-hero-line,
body.legend-site .legend-hero-orb{display:none!important}
body.legend-site .legend-hero-grid{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(22px,4vw,72px);min-height:0;align-items:center}
body.legend-site .legend-hero-copy{padding:25px 0 44px}
body.legend-site .legend-kicker{border:0;border-left:3px solid var(--ngo-primary);padding:7px 13px;border-radius:2px;background:color-mix(in srgb,var(--ngo-primary) 9%,white);color:var(--ngo-primary);font-size:12px;box-shadow:none}
body.legend-site .legend-hero-copy h1{font-size:clamp(40px,4.6vw,66px);line-height:1.23;letter-spacing:-.025em;color:var(--ngo-ink);margin:24px 0 21px;max-width:770px}
body.legend-site .legend-hero-line-text-2,
body.legend-site .legend-hero-line-text-3{color:var(--ngo-primary)}
body.legend-site .legend-hero-copy>p{color:var(--muted);font-size:16px;line-height:1.82;max-width:650px}
body.legend-site .legend-hero-actions{gap:11px;margin-top:26px}
body.legend-site .legend-btn{border-radius:8px;min-height:48px;font-weight:700;box-shadow:none;transform:none}
body.legend-site .legend-btn-primary{background:var(--ngo-primary);box-shadow:none}
body.legend-site .legend-btn-ghost{background:transparent;border:1px solid color-mix(in srgb,var(--ngo-primary) 35%,white);color:var(--ngo-ink)}
body.legend-site .legend-hero-collage{perspective:none;transform:none;filter:none}
body.legend-site .legend-collage-main,
body.legend-site .legend-collage-small{box-shadow:var(--ngo-elevation);border-radius:13px;border:5px solid var(--ngo-page);overflow:hidden;transform:none!important}
body.legend-site .legend-hero-collage img{transform:none!important;object-fit:cover}
body.legend-site .legend-visual-badge{box-shadow:var(--ngo-elevation);border-radius:9px;animation:none!important}
body.legend-site .legend-hero-stats{
  margin:30px auto 0;max-width:var(--cngo-container,1240px);width:min(var(--cngo-container,1240px),calc(100% - 56px));
  border-radius:10px;border:1px solid var(--ngo-rule);box-shadow:var(--ngo-elevation);overflow:hidden;
}
body.legend-site .legend-hero-stats>div{background:var(--ngo-page);border-color:var(--ngo-rule);padding:19px 15px}
body.legend-site .legend-hero-stats strong{color:var(--ngo-primary);font-size:clamp(25px,2.7vw,36px);font-weight:800}
body.legend-site .legend-hero-stats span{color:var(--muted);font-size:12px;letter-spacing:0}
body.legend-site .legend-identity-band{margin:0;width:100%;border-radius:0;background:var(--ngo-deep);color:#fff}
body.legend-site .cngo-section{padding-block:clamp(68px,7.5vw,105px)}
body.legend-site :is(.cngo-card,.legend-focus-card,.cngo-service-card,.cngo-message-card,.legend-impact-story,.cngo-event-row){
  border-radius:11px;background:var(--ngo-page);border:1px solid var(--ngo-rule);
  box-shadow:none;transform:none!important;transition:border-color .2s,box-shadow .2s;
}
body.legend-site :is(.cngo-card,.legend-focus-card,.cngo-service-card,.legend-impact-story):hover{
  border-color:color-mix(in srgb,var(--ngo-primary) 42%,white);box-shadow:var(--ngo-elevation);transform:none!important;
}
body.legend-site .cngo-card img{transition:transform .25s ease}
body.legend-site .cngo-card:hover img{transform:scale(1.015)}
body.legend-site .cngo-card-body{padding:24px}
body.legend-site .cngo-card-body h3{line-height:1.4;font-size:clamp(17px,1.8vw,22px)}
body.legend-site .cngo-card-body p{font-size:14px;line-height:1.82}
body.legend-site :is(.cngo-btn,.legend-btn,.legend-donate-btn){transition:filter .2s ease,background .2s ease}
body.legend-site .cngo-page-hero{
  margin:0;width:100%;border:0;border-bottom:1px solid var(--ngo-rule);border-radius:0;
  padding:clamp(42px,6vw,78px) 0;background:var(--ngo-soft);
}
body.legend-site .cngo-page-hero h1{font-size:clamp(31px,4.4vw,58px);line-height:1.26}
body.legend-site .cngo-page-content{padding-block:clamp(38px,5vw,66px) clamp(60px,7vw,105px)}
body.legend-site .cngo-prose a:not(.cngo-btn){color:var(--ngo-primary);text-decoration:underline}
body.legend-site .cngo-prose blockquote{border-left:4px solid var(--ngo-primary);background:var(--ngo-soft);padding:22px 26px;margin:28px 0}
body.legend-site .cngo-prose img{border-radius:8px}
body.legend-site .legend-footer-cta{margin:0;width:100%;border-radius:0;background:var(--ngo-primary)}
body.legend-site .legend-footer{margin:0;width:100%;border-radius:0;background:var(--ngo-deep)}
body.legend-site .legend-footer :is(h2,h3,.legend-footer-brand strong){color:#fff}
body.legend-site .legend-footer a{color:#e6f3ed}
body.legend-site .legend-footer p{color:#d0e1d7}
body.legend-site .cngo-form-shell{gap:28px}
body.legend-site .cngo-premium-form{border-radius:11px!important;box-shadow:none!important}
body.legend-site .cngo-form-shell .cngo-form-aside{border-radius:11px!important;background:var(--ngo-deep)!important}
body.legend-site .cngo-form-section{border-color:var(--ngo-rule)}
body.legend-site .ngo-registration-fallback{padding:30px 0 80px}
body.legend-site .ngo-registration-fallback .cngo-form-shell{margin-inline:auto}
body.legend-site .cngo-site-search-empty{padding:3rem;text-align:center}
body.legend-site :is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid var(--ngo-accent);outline-offset:3px}
@media(min-width:981px) and (max-width:1250px){
  body.legend-site .legend-header-inner{gap:7px}
  body.legend-site .legend-brand{max-width:210px;gap:7px}
  body.legend-site .legend-brand-copy strong{font-size:14px}
  body.legend-site .legend-brand-copy small{font-size:9px}
  body.legend-site .legend-logo{max-width:45px;max-height:45px}
  body.legend-site .legend-nav-list>li>a{padding:9px 5px;font-size:11px}
  body.legend-site .legend-header-search{display:none}
  body.legend-site .legend-lang{display:none}
  body.legend-site .legend-donate-btn{padding:8px 10px;font-size:11px}
}
@media(max-width:980px){
  body.legend-site .legend-header-inner{min-height:68px}
  body.legend-site .legend-navigation{background:var(--ngo-page)}
  body.legend-site .legend-nav-list>li>a{font-size:15px;padding:13px 10px}
  body.legend-site .legend-nav-list>li:hover>a{transform:none}
  body.legend-site .legend-hero-grid{grid-template-columns:1fr;gap:8px}
  body.legend-site .legend-hero-copy{text-align:left;padding:24px 0 20px}
  body.legend-site .legend-hero-actions{justify-content:flex-start}
  body.legend-site .legend-hero-copy>p{margin-inline:0}
  body.legend-site .legend-hero{padding:34px 0}
  body.legend-site .legend-hero-visual{max-width:680px;margin:0 auto;width:100%}
  body.legend-site .legend-hero-stats{width:calc(100% - 44px);margin:25px auto 0}
}
@media(max-width:680px){
  body.legend-site .cngo-container{width:calc(100% - 34px)}
  body.legend-site .legend-hero-copy h1{font-size:clamp(32px,9vw,48px)}
  body.legend-site .legend-hero-copy>p{font-size:14px;line-height:1.8}
  body.legend-site .legend-kicker{font-size:11px}
  body.legend-site .legend-hero-collage{height:clamp(290px,95vw,425px)}
  body.legend-site .legend-hero-stats{width:calc(100% - 32px);grid-template-columns:repeat(2,minmax(0,1fr))}
  body.legend-site .legend-hero-stats>div{padding:16px 10px}
  body.legend-site .legend-hero-stats strong{font-size:29px}
  body.legend-site .legend-hero-stats span{font-size:11px}
  body.legend-site .legend-hero-actions .legend-btn{min-height:45px;font-size:13px}
  body.legend-site .legend-brand-copy strong{font-size:15px}
  body.legend-site .legend-brand-copy small{font-size:9px}
  body.legend-site .legend-header-inner{min-height:65px}
  body.legend-site .cngo-page-hero{padding:42px 0}
  body.legend-site .cngo-page-hero h1{font-size:32px}
  body.legend-site .cngo-card-body{padding:19px}
}
@media(prefers-reduced-motion:reduce){
  body.legend-site *,body.legend-site *:before,body.legend-site *:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}
}
