:root{--wal:#2e1f17;--wal2:#47311f;--wal3:#6a4a30;--sage:#8fa58a;--sage2:#dfe7d8;--sage3:#5f7a5b;--amber:#ffb43a;--glow:#ffd27a;--txt:#f7eddc;--ink:#2a1c14;--sub:#5b4a3c;color-scheme:light;
box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
*,*::before,*::after{box-sizing:inherit}html{scroll-behavior:smooth;scroll-padding-top:80px}
body{margin:0;font-family:Hind,'Noto Sans Devanagari',system-ui,sans-serif;font-size:18px;line-height:1.68;color:var(--ink);background:var(--wal)}
h1,h2,h3{font-family:Bitter,'Noto Serif Devanagari',Georgia,serif;font-weight:800;line-height:1.1;margin:0}
a{color:inherit}:focus-visible{outline:3px solid var(--amber);outline-offset:3px}
canvas{position:fixed;inset:0;width:100%;height:100%;z-index:4;pointer-events:none}

header{position:fixed;top:0;left:0;right:0;z-index:20;padding:calc(12px + env(safe-area-inset-top,0px)) 14px 0;pointer-events:none}
nav{pointer-events:auto;max-width:1060px;margin:auto;display:flex;align-items:center;gap:10px;background:#2e1f17e6;backdrop-filter:blur(10px);color:var(--txt);border:1px solid #ffb43a55;border-radius:99px;padding:6px 8px 6px 8px;box-shadow:0 0 30px #ffb43a33}
.brand{display:flex;align-items:center;gap:8px;text-decoration:none;font-family:Bitter,serif;font-weight:800;font-size:19px;padding-right:8px}.brand img{width:38px;height:38px;border-radius:50%;border:2px solid var(--amber)}
nav ul{display:flex;gap:2px;list-style:none;margin:0 auto;padding:0}nav ul a{text-decoration:none;font-size:15px;padding:5px 12px;border-radius:99px}nav ul a:hover{background:var(--amber);color:var(--wal)}
.lang{display:flex;border:1.5px solid var(--amber);border-radius:99px;overflow:hidden}.lang button{border:0;background:none;color:var(--amber);padding:3px 12px;font:inherit;font-size:15px;cursor:pointer}.lang button[aria-pressed=true]{background:var(--amber);color:var(--wal)}
.btn{display:inline-block;padding:13px 30px;border-radius:99px;background:var(--amber);color:var(--wal);font-family:Bitter,serif;font-weight:700;font-size:17px;text-decoration:none;border:2px solid var(--amber);box-shadow:0 0 26px #ffb43a77;cursor:pointer;transition:box-shadow .3s,transform .2s}
.btn:hover{box-shadow:0 0 50px #ffb43acc;transform:translateY(-2px)}.btn.o{background:transparent;color:var(--amber);box-shadow:none}.btn.o:hover{background:var(--amber);color:var(--wal)}.btns{display:flex;gap:12px;flex-wrap:wrap}
main{position:relative;z-index:2}section{padding:100px 22px}.in{max-width:1080px;margin:auto}
h2.t{font-size:clamp(34px,5vw,58px);margin-bottom:14px}.lead{max-width:56ch;font-size:19px}
.hero{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--txt);background:radial-gradient(60vmax 45vmax at 50% 38%,#6a4a30,var(--wal) 70%);padding-top:110px;position:relative;overflow:hidden}
.sun{position:relative;width:min(250px,56vw);aspect-ratio:1}.sun::before{content:"";position:absolute;inset:-60%;border-radius:50%;background:radial-gradient(circle,#ffb43aaa,#ffb43a22 45%,transparent 68%);animation:pu 5s ease-in-out infinite}
.sun img{position:relative;width:100%;border-radius:50%;border:4px solid var(--amber);box-shadow:0 0 60px #ffb43a99}@keyframes pu{50%{transform:scale(1.18);opacity:.75}}
.hero h1{font-size:clamp(46px,8.6vw,112px);margin-top:44px;letter-spacing:-.02em}.hero h1 em{display:block;font-style:normal;color:var(--glow);text-shadow:0 0 36px #ffb43a99}
.hero p{max-width:50ch;font-size:20px;color:#e9dcc6;margin:18px 0 26px}
.about{background:var(--sage2);color:var(--ink)}.sp{display:grid;grid-template-columns:.8fr 1.2fr;gap:50px;align-items:start}.sp>div:first-child{position:sticky;top:100px}
.glow{position:relative;overflow:hidden}
.st{background:#fff;border-radius:26px;padding:26px 28px;margin-bottom:18px;border-left:8px solid var(--sage3);box-shadow:0 10px 30px #2e1f1722}.st h3{font-size:24px;color:var(--wal2);margin-bottom:4px}.st p{margin:0;color:var(--sub)}
.facts{margin:22px 0 0;padding:0;list-style:none;font-size:16.5px}.facts li{padding:10px 0;border-top:1px solid #2e1f1733}
.people{background:var(--wal);color:var(--txt)}.people .lead{color:#d9c8ae}.mg{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:22px;margin-top:40px}
.mem{background:var(--wal2);border:1px solid #ffb43a33;border-radius:26px;padding:28px 22px;text-align:center}.av{width:128px;height:128px;margin:0 auto 14px;border-radius:50%;border:3px solid var(--amber);box-shadow:0 0 28px #ffb43a66;background:var(--sage3);display:grid;place-items:center;overflow:hidden}
.av svg{width:56%;fill:var(--sage2)}.av img{width:100%;height:100%;object-fit:cover}.mem h3{font-size:22px}.mem small{color:var(--amber);font-weight:700}.mem p{margin:6px 0 0;font-size:16px;color:#d9c8ae}
.workw{background:var(--sage);color:var(--wal)}.cols{columns:3 230px;column-gap:18px;margin-top:40px}
.tile{position:relative;break-inside:avoid;margin-bottom:18px;border-radius:30px;background:var(--g);height:var(--h);display:flex;align-items:flex-end;padding:20px;color:var(--txt);overflow:hidden}
.tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.tile i{position:absolute;top:16px;right:18px;font-size:54px;font-style:normal}.tile span{position:relative;font-family:Bitter,'Noto Serif Devanagari',serif;font-weight:700;font-size:21px;line-height:1.15;text-shadow:0 2px 8px #0008}
.partner{background:var(--txt)}.pg{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:22px;margin-top:36px}
.pg div{border:2px solid var(--wal3);border-radius:28px;padding:28px;background:#fffaf0}.pg h3{font-size:25px;color:var(--wal2);margin:6px 0 8px}.pg p{margin:0;color:var(--sub)}.pg b{font-size:36px}
.donate{background:radial-gradient(70vmax 40vmax at 50% 0%,var(--glow),var(--amber) 60%,#e08a14);color:var(--wal);text-align:center}.donate .lead{margin:0 auto 28px}
.donate .btn{background:var(--wal);color:var(--glow);border-color:var(--wal);box-shadow:0 10px 40px #2e1f1766}.donate small{display:block;margin-top:16px;font-size:15px}
.contact{background:var(--wal);color:var(--txt)}.cg{display:grid;grid-template-columns:1fr 1fr;gap:44px}.cl{display:grid;gap:10px;margin:20px 0}.cl a{font-weight:700;color:var(--glow)}
form{display:grid;gap:12px}input,textarea{font:inherit;padding:13px 16px;border-radius:16px;border:1.5px solid #ffb43a66;background:#47311f;color:var(--txt)}input::placeholder,textarea::placeholder{color:#bfae93}
footer{position:relative;z-index:2;background:#1e140e;color:#cdbca2;text-align:center;padding:44px 22px calc(44px + env(safe-area-inset-bottom,0px));font-size:15px}footer img{width:66px;border-radius:50%;border:2px solid var(--amber)}footer b{font-family:Bitter,serif;font-size:21px;color:var(--txt)}
.kick,.eyebrow{font-size:13px;letter-spacing:.18em;text-transform:uppercase;font-weight:700;color:var(--amber);margin-bottom:12px}.about .kick,.partner .kick,.workw .kick{color:var(--sage3)}.donate .kick{color:var(--wal2)}.eyebrow{margin:30px 0 0}
.sun{display:grid;place-items:center;margin:0 auto}.sun img{aspect-ratio:1;object-fit:cover;display:block}.hero h1{font-size:clamp(38px,6.2vw,82px)!important;margin-top:14px!important}
.hero{padding-bottom:70px}
@media(max-width:860px){nav ul{display:none}.lang{margin-left:auto}.sp,.cg{grid-template-columns:1fr}.sp>div:first-child{position:static}}

.soc{display:flex;gap:6px}.soc a{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;border:1.5px solid var(--amber);color:var(--amber);transition:background .2s,color .2s}.soc a:hover{background:var(--amber);color:var(--wal)}.soc svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.mg{display:flex!important;flex-direction:column;align-items:center;gap:26px;margin-top:44px}.row{display:flex;flex-wrap:wrap;justify-content:center;gap:22px;width:100%}
.fc{flex:0 0 min(250px,calc((100% - 66px)/4));height:400px;perspective:1100px;cursor:pointer;border-radius:26px;transition:transform .35s,opacity .35s;outline-offset:6px}
.fi{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform .8s cubic-bezier(.4,.2,.2,1)}.fc.flipped .fi{transform:rotateY(180deg)}
.ff,.fb{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:26px;background:var(--wal2);border:2px solid #ffb43a33;padding:26px 18px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;transition:border-color .3s,background .3s}
.fb{transform:rotateY(180deg);background:#3a2819;overflow:auto}.fb h3{font-size:19px;color:var(--amber);margin-bottom:8px}.fb p{margin:0;font-size:16px;line-height:1.65;color:#eadfca}
.ff h3{font-size:21px}.ff small{color:var(--amber);font-weight:700}.tap{margin-top:14px;font-size:13px;color:var(--amber);opacity:.85}
.mg:has(.fc:hover) .fc:not(:hover){opacity:.5;transform:scale(.96)}.fc:hover,.fc:focus-visible{transform:translateY(-8px) scale(1.04)}
.fc:hover .ff,.fc:hover .fb,.fc:focus-visible .ff,.fc:focus-visible .fb{border-color:var(--amber);background:#5b3d27}.fc:hover .fb,.fc:focus-visible .fb{background:#4a3020}
#fs{margin:0;min-height:1.5em;color:var(--glow);font-size:15px}.contact .btn.o{margin:0 8px 8px 0}
html[lang=hi] body{line-height:1.85;word-spacing:.06em}
html[lang=hi] h1,html[lang=hi] h2,html[lang=hi] h3,html[lang=hi] .brand,html[lang=hi] .btn,html[lang=hi] .tile span{font-family:Hind,'Noto Sans Devanagari',sans-serif;font-weight:700;letter-spacing:0!important;word-spacing:.1em;line-height:1.45}
html[lang=hi] .hero h1{line-height:1.3!important;font-size:clamp(34px,5.4vw,70px)!important}html[lang=hi] h2.t{line-height:1.4}
html[lang=hi] .kick,html[lang=hi] .eyebrow{text-transform:none;letter-spacing:.03em}html[lang=hi] nav ul a{padding:5px 9px;font-size:14.5px;white-space:nowrap}html[lang=hi] .btn{padding:12px 24px;line-height:1.5}
html[lang=hi] .fb p{font-size:15.5px;line-height:1.75}html[lang=hi] .lead,html[lang=hi] .st p,html[lang=hi] .pg p{line-height:1.85}
@media(max-width:860px){.soc{margin-left:auto}.lang{margin-left:0}}
@media(max-width:760px){.fc{flex-basis:calc((100% - 22px)/2)}}@media(max-width:470px){.fc{flex-basis:100%}}
@media(prefers-reduced-motion:reduce){.fi,.fc{transition:none!important}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto}}

/* ===== v2: dialogs, donation form, thank-you, galleries, logo alignment ===== */
dialog{border:0;border-radius:26px;padding:30px;max-width:min(760px,94vw);width:100%;max-height:92vh;overflow:auto;background:#fffaf0;color:var(--ink);box-shadow:0 30px 80px #000a}
dialog::backdrop{background:#1e140ecc;backdrop-filter:blur(3px)}dialog .x{position:absolute;top:10px;right:14px;border:0;background:none;font-size:34px;line-height:1;cursor:pointer;color:var(--wal2)}
dialog h2{font-size:clamp(26px,4vw,36px);margin-bottom:8px;color:var(--wal2)}dialog .sm{font-size:15.5px;color:var(--sub);margin:4px 0 14px}
#df{display:grid;gap:12px}#df label{display:grid;gap:4px;font-weight:600;font-size:15px}#df input:not([type=checkbox]),#df select{font:inherit;padding:11px 14px;border:1.5px solid #6a4a3066;border-radius:12px;background:#fff;color:var(--ink)}
.g2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.g3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}#df .ck{display:flex;gap:10px;align-items:flex-start;font-weight:400;font-size:14.5px}.ck input{margin-top:5px}
.err{color:#a3261a;font-weight:700;min-height:1.3em;margin:0}dialog .btn.o{color:var(--wal2);border-color:var(--wal2)}dialog .btn.o:hover{background:var(--wal2);color:var(--txt)}dialog .btn{margin-top:6px}
#dthanks{position:relative;text-align:center}#conf{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.ty{position:relative}.ty .badge{font-size:64px;animation:pop .8s cubic-bezier(.3,1.6,.5,1)}.ty .big{font-size:21px;margin:4px 0}
@keyframes pop{from{transform:scale(0) rotate(-30deg)}to{transform:scale(1)}}.imp{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin:14px 0}
.imp div{background:#fff;border:2px solid #ffb43a66;border-radius:18px;padding:14px;text-align:center;display:grid;gap:4px;opacity:0;animation:rise .6s forwards}.imp div:nth-child(2){animation-delay:.15s}.imp div:nth-child(3){animation-delay:.3s}.imp div:nth-child(4){animation-delay:.45s}.imp div:nth-child(5){animation-delay:.6s}
@keyframes rise{from{transform:translateY(16px)}to{opacity:1;transform:none}}.imp i{font-size:32px;font-style:normal}.imp span{font-size:14px;color:var(--sub)}.ty .btns{justify-content:center}
.gal{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin-top:14px}.gal .ph{padding:0;border:0;border-radius:14px;overflow:hidden;aspect-ratio:1;cursor:zoom-in;background:var(--sage)}.gal img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s}.gal .ph:hover img{transform:scale(1.06)}
#lb{background:#000;padding:10px;max-width:96vw}#lb img{max-width:100%;max-height:86vh;display:block;margin:auto}button.tile{border:0;font:inherit;text-align:left;cursor:pointer;width:100%}.tile:hover{transform:scale(1.02)}.tile{transition:transform .3s}
/* logo: perfectly concentric inside its outline */
.sun,.brand img,footer img{aspect-ratio:1}.sun img{width:100%;height:100%;display:block;border-radius:50%;object-fit:contain;border:0;box-shadow:0 0 0 4px var(--amber),0 0 60px #ffb43a99}
.brand img{display:block;object-fit:contain;border:0;box-shadow:0 0 0 2px var(--amber)}footer img{display:block;margin:0 auto;border:0;box-shadow:0 0 0 2px var(--amber)}
html[lang=hi] dialog h2,html[lang=hi] dialog h3{font-family:Hind,sans-serif;line-height:1.45}
@media(max-width:620px){.g2,.g3{grid-template-columns:1fr}dialog{padding:22px 16px}}
@media print{body>*:not(dialog){display:none!important}dialog:not([open]){display:none}dialog[open]{position:static;box-shadow:none;max-height:none}.x,.ty .btns,#conf{display:none!important}}
