*,*::before,*::after{box-sizing:border-box}
html,body{margin:0}
[hidden]{display:none!important}
img{max-width:100%}
:root{padding-top:env(safe-area-inset-top,0px)}

/* Layout: a pinned illustrated stage driven by scroll (one continuous village world), then paper "pamphlet" sections. Single committed paper-and-ink look. */
:root{
  --blue:#2456C6; --yellow:#F6C744; --terra:#C96743; --leaf:#5C9157; --coral:#F07865;
  --cream:#FFF1D5; --paper:#FBEBC8; --ink:#202B48; --sky:#82D8E8; --muted:#5b5f72;
  --display:"Anek Telugu","Noto Sans Telugu",system-ui,sans-serif;
  --body:"Noto Sans Telugu","Anek Telugu",system-ui,sans-serif;
  --note:"Mandali","Noto Sans Telugu",system-ui,sans-serif;
  color-scheme:light;
}
html{scroll-behavior:smooth}
body{background:var(--cream);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.65;overflow-x:hidden}
a{color:var(--blue)}
:focus-visible{outline:3px solid var(--blue);outline-offset:3px;border-radius:4px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:fixed;left:16px;top:-60px;z-index:50;background:var(--ink);color:var(--cream);padding:8px 14px;border-radius:6px}
.skip:focus{top:calc(env(safe-area-inset-top,0px) + 8px)}

/* header */
.top{position:fixed;inset:0 0 auto 0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:calc(env(safe-area-inset-top,0px) + 10px) 20px 10px;
  background:linear-gradient(rgba(255,241,213,.92),rgba(255,241,213,0));pointer-events:none}
.top>*{pointer-events:auto}
.brand{font-family:var(--display);font-weight:800;font-stretch:90%;font-size:clamp(14px,1.6vw,19px);color:var(--ink);text-decoration:none;white-space:nowrap}
.brand b{color:var(--blue)}
.nav{display:flex;gap:4px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.nav a,.nav button{font-family:var(--body);font-size:14px;font-weight:600;color:var(--ink);text-decoration:none;padding:6px 10px;border-radius:999px;border:0;background:none;cursor:pointer}
.nav a:hover,.nav button:hover{background:rgba(36,86,198,.12)}
.nav a.join{background:var(--blue);color:#fff}
.nav .snd{border:1.5px solid var(--ink)}


/* story */
#story{position:relative;height:720vh}
@media (max-width:720px){#story{height:620vh}}
.stage{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden;background:var(--cream)}
#cv{position:absolute;inset:0;width:100%;height:100%;display:block}
.ov{position:absolute;pointer-events:none;opacity:0;will-change:opacity,transform}
.word{font-family:var(--display);font-weight:800;font-stretch:88%;line-height:1;color:var(--ink);font-size:clamp(58px,11vw,172px);letter-spacing:-.01em;
  text-shadow:3px 3px 0 var(--cream),-2px -2px 0 var(--cream),2px -2px 0 var(--cream),-2px 2px 0 var(--cream),6px 7px 0 rgba(32,43,72,.18);
  clip-path:inset(-30% calc((1 - var(--r,1)) * 100%) -30% -4%);display:inline-block;position:relative}
.word::after{content:"";position:absolute;left:-2%;right:-4%;bottom:.06em;height:.2em;background:var(--yellow);z-index:-1;transform:skew(-12deg) scaleX(var(--r,1));transform-origin:left;border-radius:3px}
.word.blue{color:var(--blue)}
.sub{font-family:var(--display);font-weight:700;font-size:clamp(19px,2.3vw,32px);line-height:1.3;color:var(--ink);margin-top:.35em;text-wrap:balance;
  text-shadow:0 0 6px var(--cream),0 0 12px var(--cream),0 0 2px var(--cream)}
.en{font-family:var(--body);font-size:clamp(13px,1.15vw,16px);letter-spacing:.06em;text-transform:uppercase;font-weight:600;color:var(--muted);margin-top:.5em;text-shadow:0 0 8px var(--cream),0 0 3px var(--cream)}
#o0{left:max(16px,5vw);top:22%;max-width:46vw}
#o1{left:max(16px,4vw);top:13%;max-width:min(560px,90vw)}
#o2{left:max(16px,4vw);top:11%;max-width:min(620px,92vw)}
#o3{left:0;right:0;top:9%;text-align:center}
#o3 .ph{display:inline-block;margin:0 .35em;opacity:.12;transition:opacity .4s}
#o3 .ph.on{opacity:1}
#o4{left:0;right:0;top:8%;text-align:center;padding-inline:16px}
#o4 .word{line-height:1.4;padding-top:.08em;font-size:clamp(32px,4.4vw,70px);margin:0 .12em .04em}
#o4 .box,#o1,#o2{background:rgba(255,241,213,.8);border:2px solid var(--ink);border-radius:18px;box-shadow:5px 5px 0 rgba(32,43,72,.25);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}
#o1,#o2{padding:14px 22px 16px}
#o1 .word,#o2 .word,#o3 .word{font-size:clamp(42px,6vw,92px)}
#o4 .box{display:inline-block;max-width:min(980px,100%);padding:22px 26px 22px}
#o4 .cta{pointer-events:auto;display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:22px}
.btn{font-family:var(--body);font-weight:700;font-size:15px;border:2px solid var(--ink);background:var(--cream);color:var(--ink);padding:10px 18px;border-radius:999px;text-decoration:none;box-shadow:3px 3px 0 var(--ink);display:inline-flex;gap:.4em;align-items:center}
.btn:hover{transform:translate(-1px,-1px);box-shadow:4px 4px 0 var(--ink)}
.btn.primary{background:var(--blue);color:#fff}
@media (max-width:720px){
  #o0{left:16px;right:16px;top:auto;bottom:16%;max-width:none}
  #o0 .word{font-size:64px}
  #o1,#o2{top:74px}
  #o3{top:70px}
  #o4{top:66px}
  #o4 .word{font-size:30px}
}
.chap{position:absolute;left:20px;top:calc(env(safe-area-inset-top,0px) + 58px);font-family:var(--display);font-weight:700;font-size:15px;letter-spacing:.04em;color:var(--ink);background:rgba(255,241,213,.85);border:1.5px solid var(--ink);padding:3px 12px;border-radius:999px;opacity:0;transition:opacity .4s;font-variant-numeric:tabular-nums}
.hint{position:absolute;left:50%;bottom:calc(env(safe-area-inset-bottom,0px) + 22px);transform:translateX(-50%);font-family:var(--display);font-weight:700;font-size:17px;color:var(--ink);text-align:center;background:rgba(255,241,213,.88);padding:6px 16px 8px;border-radius:999px;border:1.5px solid var(--ink)}
.hint small{display:block;font-family:var(--body);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:600}
.hint span{display:inline-block;animation:nudge 1.6s ease-in-out infinite}
@keyframes nudge{50%{transform:translateY(5px)}}
.bar{position:absolute;left:0;bottom:0;height:4px;background:var(--blue);width:0}
@media (prefers-reduced-motion:reduce){.hint span{animation:none}html{scroll-behavior:auto}}

/* pamphlet sections */
.paper{background:var(--paper);background-image:radial-gradient(rgba(32,43,72,.05) 1px,transparent 1.2px);background-size:7px 7px;border-top:3px solid var(--ink)}
.wrap{max-width:1080px;margin:0 auto;padding-inline:20px;padding-block:72px}
.eyebrow{font-family:var(--body);font-weight:700;font-size:13px;letter-spacing:.04em;line-height:1.6;text-transform:uppercase;color:var(--terra)}
h2{font-family:var(--display);font-weight:800;font-stretch:90%;font-size:clamp(34px,5vw,58px);line-height:1.4;margin:.45em 0 .4em;padding-top:.1em;text-wrap:balance}
h2 small{display:block;font-family:var(--body);font-weight:600;font-size:.36em;color:var(--muted);letter-spacing:.02em;margin-top:.3em}
h3{font-family:var(--display);font-weight:800;font-size:24px;line-height:1.2;margin:0 0 .3em}
p{max-width:65ch;margin:0 0 1em}
.lead{font-size:19px}
.cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));gap:22px}
.cols>*{min-width:0}
.card{background:var(--cream);border:2px solid var(--ink);border-radius:14px;padding:22px;box-shadow:5px 5px 0 var(--ink)}
.tag{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.06em;padding:2px 10px;border-radius:999px;border:1.5px solid var(--ink);margin-bottom:10px}
.t1 .tag{background:var(--yellow)} .t2 .tag{background:var(--blue);color:#fff} .t3 .tag{background:var(--leaf);color:#fff}
.card ul{margin:.4em 0 0;padding-left:1.1em}
.mission{display:grid;grid-template-columns:1.2fr 1fr;gap:40px;align-items:start}
@media (max-width:820px){.mission{grid-template-columns:1fr}}
.steps{display:grid;gap:14px;margin:0;padding:0;list-style:none}
.steps li{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:baseline;border-bottom:1.5px dashed rgba(32,43,72,.35);padding-bottom:12px}
.steps b{font-family:var(--display);font-size:28px;color:var(--blue);font-weight:800}
.rights{display:grid;gap:0;border:2px solid var(--ink);border-radius:14px;overflow:hidden;background:var(--cream)}
.right{display:grid;grid-template-columns:150px 1fr;gap:18px;padding:18px 20px;border-bottom:1.5px solid rgba(32,43,72,.25)}
.right:last-child{border-bottom:0}
.right .art{font-family:var(--display);font-weight:800;font-size:20px;color:var(--blue);line-height:1.2}
.right .art small{display:block;font-family:var(--body);font-size:12px;color:var(--muted);font-weight:600}
.right p{margin:0}
@media (max-width:600px){.right{grid-template-columns:1fr;gap:4px}}
.help{margin-top:22px;background:var(--ink);color:var(--cream);border-radius:14px;padding:20px 22px;display:flex;flex-wrap:wrap;gap:12px 28px;align-items:center}
.help .num{font-family:var(--display);font-weight:800;font-size:44px;color:var(--yellow);line-height:1;font-variant-numeric:tabular-nums}
.help p{margin:0;color:var(--cream)}
.note{font-family:var(--note);font-size:14px;color:var(--muted)}
form{display:grid;gap:14px}
.row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media (max-width:600px){.row{grid-template-columns:1fr}}
label{display:grid;gap:4px;font-weight:600;font-size:14px}
input,select,textarea{font:inherit;font-size:16px;padding:10px 12px;border:2px solid var(--ink);border-radius:10px;background:#fffaf0;color:var(--ink);min-width:0}
textarea{min-height:96px;resize:vertical}
.ok{border:2px solid var(--leaf);background:#e7f2df;border-radius:10px;padding:12px 14px;font-weight:600}
footer{background:var(--ink);color:var(--cream)}
footer .wrap{padding-block:40px;display:flex;flex-wrap:wrap;gap:16px 40px;justify-content:space-between;align-items:center}
footer .words{font-family:var(--display);font-weight:800;font-size:clamp(22px,3vw,30px)}
footer .words span{color:var(--yellow)}
footer p{margin:0;color:#d9d4c4;font-size:14px}

.brand{display:inline-flex;align-items:center;gap:8px}
.brand img{width:38px;height:38px;border-radius:50%;flex:none}
.lead-wrap{display:grid;grid-template-columns:minmax(0,360px) 1fr;gap:44px;align-items:center}
@media (max-width:820px){.lead-wrap{grid-template-columns:1fr}}
.roundimg{width:100%;max-width:360px;aspect-ratio:1;border-radius:50%;object-fit:cover;border:4px solid var(--ink);box-shadow:8px 8px 0 var(--blue);background:#fff}
.sig{font-family:var(--display);font-weight:800;font-size:22px;margin-top:6px}
.sig small{display:block;font-family:var(--body);font-weight:600;font-size:14px;color:var(--muted)}
.facts{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}
.fact{border:2px solid var(--ink);border-radius:12px;background:var(--cream);padding:10px 14px;min-width:0}
.fact b{display:block;font-family:var(--display);font-size:24px;color:var(--blue);line-height:1.3}
.fact span{font-size:13px;color:var(--muted)}
.ninety{background:linear-gradient(135deg,#1d4fb8,#2b7fd6);color:#fff;border-top:3px solid var(--ink)}
.ninety .wrap{display:grid;grid-template-columns:minmax(0,420px) 1fr;gap:40px;align-items:center}
@media (max-width:820px){.ninety .wrap{grid-template-columns:1fr}}
.ninety h2,.ninety p{color:#fff}.ninety h2 small{color:#dbe7ff}.ninety .eyebrow{color:var(--yellow)}
.ninety img{width:100%;max-width:420px;filter:drop-shadow(0 12px 24px rgba(0,0,0,.35))}
.icons-img{width:100%;max-width:560px;margin:0 auto;display:block}
.names{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:14px}
.names span{border:1.5px solid var(--ink);border-radius:999px;padding:3px 12px;font-weight:600;font-size:14px;background:var(--cream)}
.donate{display:grid;grid-template-columns:minmax(0,300px) 1fr;gap:36px;align-items:start}
@media (max-width:760px){.donate{grid-template-columns:1fr}}
.qrcard{background:#fff;border:3px solid var(--ink);border-radius:16px;padding:16px;box-shadow:6px 6px 0 var(--ink);text-align:center;max-width:300px}
.qrcard img{width:100%;image-rendering:pixelated;display:block}
.qrcard p{margin:10px 0 0;font-size:13px;color:var(--muted);max-width:none}
.bank{border:2px solid var(--ink);border-radius:14px;background:var(--cream);overflow:hidden}
.bank .row2{display:grid;grid-template-columns:150px 1fr auto;gap:12px;align-items:center;padding:14px 18px;border-bottom:1.5px solid rgba(32,43,72,.2)}
.bank .row2:last-child{border-bottom:0}
.bank .k{font-size:13px;font-weight:700;color:var(--muted)}
.bank .v{font-family:var(--display);font-weight:800;font-size:20px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;min-width:0}
.cp{font:inherit;font-size:13px;font-weight:700;border:1.5px solid var(--ink);background:#fff;border-radius:999px;padding:4px 12px;cursor:pointer}
@media (max-width:520px){.bank .row2{grid-template-columns:1fr auto}.bank .k{grid-column:1/-1}}
footer .flogo{width:64px;height:64px;border-radius:50%}

/* ---- multi-page additions ---- */
.top.solid{position:sticky;background:rgba(255,241,213,.96);border-bottom:2px solid var(--ink);pointer-events:auto}
.nav a.cur{text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:2px}
.nav a.donate-btn{background:var(--yellow);color:var(--ink);border:2px solid var(--ink);box-shadow:2px 2px 0 var(--ink)}
@media (max-width:720px){.nav a.donate-btn{display:inline-block}}
.pagehead{background:linear-gradient(135deg,#1d4fb8,#2b7fd6);color:#fff;border-bottom:3px solid var(--ink)}
.pagehead .wrap{padding-block:56px 48px}
.pagehead h1{font-family:var(--display);font-weight:800;font-size:clamp(36px,5.5vw,64px);line-height:1.4;margin:0;text-wrap:balance}
.pagehead p{color:#e4ecff;margin:.4em 0 0;font-size:18px}
.pagehead .eyebrow{color:var(--yellow)}
.crumb{font-size:14px;margin-bottom:10px}.crumb a{color:#fff}
.msg p{font-size:18px;line-height:1.85}
.timeline{list-style:none;margin:0;padding:0;border-left:3px solid var(--blue);display:grid;gap:22px}
.timeline li{position:relative;padding-left:24px}
.timeline li::before{content:"";position:absolute;left:-10px;top:8px;width:15px;height:15px;border-radius:50%;background:var(--yellow);border:2.5px solid var(--ink)}
.timeline time{font-family:var(--display);font-weight:800;color:var(--blue);font-size:18px;font-variant-numeric:tabular-nums}
.timeline h3{font-size:21px;margin:.1em 0 .1em}
.timeline .en{font-size:13px;letter-spacing:.04em;margin:0 0 4px;text-transform:none}
.timeline p{margin:0}
.statrow{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:14px}
.gal{columns:4 260px;column-gap:14px}
.gal button{display:block;width:100%;margin:0 0 14px;padding:0;border:2px solid var(--ink);border-radius:12px;overflow:hidden;background:#fff;cursor:zoom-in;break-inside:avoid;box-shadow:4px 4px 0 var(--ink)}
.gal img{width:100%;height:auto;display:block}
.lb{position:fixed;inset:0;z-index:60;background:rgba(15,20,40,.92);display:grid;place-items:center;padding:20px}
.lb img{max-width:100%;max-height:84vh;border-radius:10px;box-shadow:0 10px 40px rgba(0,0,0,.6)}
.lb .ctl{position:absolute;top:calc(env(safe-area-inset-top,0px) + 14px);right:14px;display:flex;gap:8px}
.lb button{font:inherit;font-weight:700;background:var(--cream);border:2px solid var(--ink);border-radius:999px;padding:6px 14px;cursor:pointer}
.lb .prev,.lb .next{position:absolute;top:50%;transform:translateY(-50%)}
.lb .prev{left:12px}.lb .next{right:12px}
.teaser{display:grid;grid-template-columns:minmax(0,220px) 1fr;gap:32px;align-items:center}
@media (max-width:700px){.teaser{grid-template-columns:1fr}}
.donate-band{background:var(--yellow);border-bottom:3px solid var(--ink);border-top:3px solid var(--ink)}
.donate-band .wrap{padding-block:22px;display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center;justify-content:space-between}
.donate-band b{font-family:var(--display);font-size:24px}
.links{display:flex;gap:2px;align-items:center;flex-wrap:wrap}
.menu-btn{display:none;width:42px;height:38px;border:2px solid var(--ink);border-radius:10px;background:var(--cream);flex-direction:column;justify-content:center;align-items:center;gap:4px;cursor:pointer;padding:0}
.menu-btn span{display:block;width:18px;height:2.5px;background:var(--ink);border-radius:2px;transition:transform .2s,opacity .2s}
.nav.open .menu-btn span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
.nav.open .menu-btn span:nth-child(2){opacity:0}
.nav.open .menu-btn span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}
.nav{flex-wrap:nowrap}
@media (max-width:1100px){.nav a{padding:6px 7px;font-size:13px}.donate-btn .lg{display:none}}
@media (max-width:860px){
  .top{padding:calc(env(safe-area-inset-top,0px) + 8px) 12px 8px;background:rgba(255,241,213,.95);border-bottom:2px solid var(--ink);pointer-events:auto}
  .brand{font-size:13px;gap:6px;white-space:nowrap}.brand img{width:32px;height:32px}
  .menu-btn{display:inline-flex}
  .nav .snd{display:none}
  .nav{gap:8px;position:static}
  .links{display:none;position:absolute;left:12px;right:12px;top:calc(100% + 6px);flex-direction:column;align-items:stretch;gap:0;background:var(--cream);border:2px solid var(--ink);border-radius:14px;box-shadow:5px 5px 0 var(--ink);padding:6px;z-index:30}
  .nav.open .links{display:flex}
  .links a{font-size:16px!important;padding:12px 14px!important;border-radius:10px}
  .nav a.donate-btn{padding:7px 12px;font-size:14px}
  .chap{display:none}
  #o1,#o2{left:12px;right:12px;top:78px;max-width:none;padding:10px 14px 12px}
  #o3{top:78px;padding-inline:12px}
  #o4{top:72px}
  #o1 .word,#o2 .word,#o3 .word{font-size:40px}
  .sub{font-size:17px}
  .en{font-size:11px}
  #o4 .box{padding:14px 14px 16px}
  #o4 .word{font-size:30px;line-height:1.45}
  #o4 .cta{gap:8px;margin-top:14px}
  #o4 .btn{font-size:13px;padding:8px 12px}
  .hint{font-size:15px}
  .wrap{padding-block:52px}
  h2{font-size:32px}
  .pagehead .wrap{padding-block:36px 30px}
  .pagehead h1{font-size:34px}
  .roundimg{max-width:260px;margin-inline:auto}
  .lead-wrap,.teaser{text-align:left}
  .msg p{font-size:16.5px}
  .gal{columns:2 150px;column-gap:10px}.gal button{margin-bottom:10px;box-shadow:3px 3px 0 var(--ink)}
  .ninety img{max-width:300px;margin-inline:auto;display:block}
  .help .num{font-size:36px}
  footer .wrap{flex-direction:column;align-items:flex-start}
}
@media (max-width:380px){.brand{font-size:11.5px}.brand img{width:28px;height:28px}}
