:root{--saffron:#F28C28;--marigold:#FFC93C;--blue:#1F4E8C;--tulsi:#3E8E5A;--lotus:#E8667E;--ivory:#FFF9EE;--ink:#3A2A1E;--r:22px}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font:400 1.05rem/1.65 Nunito,system-ui,sans-serif;color:var(--ink);background:var(--ivory)}
h1,h2,h3,.brand b,.btn{font-family:"Baloo 2",system-ui,sans-serif;line-height:1.15}
h1{font-size:clamp(2.2rem,6vw,4rem);margin:.2em 0;font-weight:800}h2{font-size:clamp(1.6rem,3.5vw,2.3rem);color:var(--blue);margin:0 0 .5em}h3{margin:.2em 0;font-size:1.3rem}
a{color:var(--blue)}:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
.wrap{max-width:1080px;margin:0 auto;padding:3rem 1.2rem}.narrow{max-width:640px}
.top{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.5rem 1.2rem;background:#fff;border-bottom:4px solid var(--saffron)}
.brand{display:flex;gap:.6rem;align-items:center;text-decoration:none;color:var(--ink)}.brand span{font-size:2rem}.brand b{display:flex;flex-direction:column;font-size:1.25rem}.brand small{font:600 .75rem Nunito;color:var(--tulsi)}
header nav{display:flex;align-items:center;gap:1.1rem}header nav a:not(.btn){text-decoration:none;font-weight:700;color:var(--ink);padding:.3rem 0;border-bottom:3px solid transparent}header nav a.cur,header nav a:not(.btn):hover{border-color:var(--saffron)}
.burger{display:none;font-size:1.6rem;background:none;border:0;cursor:pointer}
.btn{display:inline-block;background:var(--saffron);color:#fff;text-decoration:none;font-weight:700;border:0;border-radius:999px;padding:.55rem 1.3rem;cursor:pointer;font-size:1rem;box-shadow:0 4px 0 #c76a10;transition:transform .15s}.btn:hover{transform:translateY(-2px)}
.btn.big{font-size:1.25rem;padding:.75rem 1.8rem}.btn.alt{background:#fff;color:var(--blue);box-shadow:0 4px 0 var(--blue);border:2px solid var(--blue)}
.ph{position:relative;margin:0;background:repeating-linear-gradient(45deg,#FFE9C2,#FFE9C2 14px,#FFF3DC 14px,#FFF3DC 28px);border:3px dashed var(--saffron);border-radius:var(--r);min-height:260px;display:grid;place-items:center;text-align:center;overflow:hidden}
.ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.ph figcaption{padding:1rem;font-weight:700;color:#9a5a10}.ph img~figcaption{display:none}
.ph.full{border-radius:0;border-width:3px 0;min-height:clamp(260px,60vh,640px)}.ph.tall{min-height:clamp(280px,70vh,720px);margin-bottom:6px}
.hero{position:relative;color:#fff;min-height:min(88vh,760px);background:var(--blue);overflow:hidden}
.slide{position:absolute;inset:0;opacity:0;transition:opacity 1s}.slide.on{opacity:1}.slide .ph{height:100%;min-height:100%;border:0}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,40,80,.8),rgba(20,40,80,.15) 75%)}
.hero-text{position:relative;z-index:2;max-width:640px;padding:clamp(3rem,12vh,7rem) 1.5rem 5rem 6vw}.hero-text p{font-size:1.2rem}.om{color:var(--marigold);font-weight:700}
.hero .slide .ph figcaption{color:#fff}.dots{position:absolute;z-index:3;bottom:1.2rem;left:6vw;display:flex;gap:.5rem}.dots button{width:14px;height:14px;border-radius:50%;border:2px solid #fff;background:none;cursor:pointer;padding:0}.dots .on{background:var(--marigold)}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.2rem}.cards.four{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.card{background:#fff;border-radius:var(--r);padding:1.4rem;border:2px solid #FFE0A8;margin:0}.card span{font-size:2.2rem}.intro .card:nth-child(2){border-color:#BFE3CB}.intro .card:nth-child(3){border-color:#F8C3CD}.intro .card:nth-child(4){border-color:#BCD3F0}
.intro h2{max-width:700px}.band{background:#FFF0D0;padding:1rem 0 0}.band h2{padding-top:1.5rem}
.rev p{font-size:1.1rem;font-style:italic}.rev footer{font-weight:700;color:var(--tulsi)}.note{font-size:.9rem;color:#8a7a6a}
.cta{text-align:center;padding:4rem 1.2rem;background:var(--saffron);color:#fff}.cta h2{color:#fff}.cta .btn{background:#fff;color:var(--saffron);box-shadow:0 4px 0 #c76a10}
.pagehead{background:linear-gradient(135deg,var(--marigold),var(--saffron));text-align:center;padding:3rem 1rem;color:var(--ink)}.pagehead h1{margin:0}.pagehead p{margin:.3rem 0 0;font-weight:700}
.split{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:center}
.prog{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:center;margin-bottom:2.5rem}.prog:nth-child(even) .ph{order:-1}.prog span{font-size:2.5rem}.sched{background:#EAF6EE;border-color:#BFE3CB}
.form{display:grid;gap:1rem}label{display:grid;gap:.3rem;font-weight:700}input,select,textarea{font:inherit;padding:.7rem .9rem;border:2px solid #E5CFA5;border-radius:14px;background:#fffdf8}
.err{color:#b3261e;font-weight:700;margin:0}.map{min-height:320px}
footer{background:var(--blue);color:#fff;text-align:center;padding:2rem 1rem}.mantra{font-weight:700;color:var(--marigold)}
.wafab{position:fixed;right:16px;bottom:16px;z-index:30;width:58px;height:58px;border-radius:50%;background:#25D366;display:grid;place-items:center;font-size:1.8rem;text-decoration:none;box-shadow:0 4px 14px rgba(0,0,0,.3)}
@media(max-width:800px){.burger{display:block}header nav{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;flex-direction:column;padding:1rem;border-bottom:4px solid var(--saffron)}header nav.open{display:flex}.split,.prog{grid-template-columns:1fr}.prog:nth-child(even) .ph{order:0}.hero-text{padding-left:1.4rem}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto}}

.gal{columns:3 280px;column-gap:10px}.gal .ph{break-inside:avoid;margin-bottom:10px;min-height:240px;border-radius:16px}.gal .ph:nth-child(3n+1){min-height:340px}
.vgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.2rem;margin-bottom:2rem}.vid{aspect-ratio:16/9;border-radius:var(--r);overflow:hidden;border:3px solid var(--saffron);background:#000}.vid iframe{width:100%;height:100%;border:0}.vph{text-align:center;font-size:2.5rem;aspect-ratio:16/9;display:grid;place-items:center}.vph p{font-size:1rem;margin:0}
.social{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem 1.2rem}.social a{color:#fff;font-weight:700}.social.inl{justify-content:flex-start}.social.inl a,.social a.sl{color:var(--blue)}

.dd{position:relative}.dd>button{font:700 1.05rem Nunito,sans-serif;background:none;border:0;border-bottom:3px solid transparent;color:var(--ink);cursor:pointer;padding:.3rem 0}.dd>button.cur,.dd:hover>button{border-color:var(--saffron)}
.sub{display:none;position:absolute;top:100%;left:-.8rem;min-width:190px;background:#fff;border:2px solid var(--saffron);border-radius:16px;padding:.5rem;box-shadow:0 8px 20px rgba(0,0,0,.15)}.dd:hover .sub,.dd:focus-within .sub{display:grid}.sub a{padding:.4rem .7rem!important;border:0!important;border-radius:10px}.sub a:hover{background:#FFF0D0}
.vm{text-align:left}.vm span{font-size:2.6rem}.cards.team{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.member .ph{aspect-ratio:1;min-height:0;border-radius:50%;width:70%;margin:0 auto 1rem}.member{text-align:center}.role{color:var(--tulsi);font-weight:700;margin:0}
.branch .ph{min-height:180px;margin-bottom:1rem}.faq{display:grid;gap:.8rem}details summary{cursor:pointer;font:700 1.15rem "Baloo 2",sans-serif;color:var(--blue)}details p{margin:.6rem 0 0}
@media(max-width:800px){.sub{display:grid;position:static;border:0;box-shadow:none;padding:0 0 0 1rem}.dd>button{text-align:left}}

.bloglay{display:grid;grid-template-columns:1fr 280px;gap:2rem;align-items:start}.posts{display:grid;gap:1.2rem}
.post{display:grid;grid-template-columns:220px 1fr;gap:1.2rem;align-items:start}.post .ph{min-height:150px;aspect-ratio:4/3}.post h3 a{text-decoration:none;color:var(--blue)}.meta{font-size:.9rem;color:var(--tulsi);font-weight:700;margin:0}
.side{position:sticky;top:90px}.arch details{margin-bottom:.4rem}.arch summary{font-weight:700;cursor:pointer;font-family:"Baloo 2",sans-serif}.arch .mo{display:block;padding:.15rem 0 .15rem 1.2rem}
.chip{display:inline-block;margin:0 .4rem .5rem 0;padding:.25rem .8rem;border-radius:999px;background:#fff;border:2px solid var(--saffron);text-decoration:none;font-weight:700;font-size:.9rem}
.ev{display:grid;grid-template-columns:76px 1fr;gap:1rem;margin-bottom:1rem}.badge{background:var(--saffron);color:#fff;border-radius:18px;text-align:center;padding:.5rem;font-family:"Baloo 2",sans-serif;height:fit-content}.badge b{display:block;font-size:1.9rem;line-height:1}.mh{color:var(--tulsi)}
.postpage .ph{min-height:280px;margin:1rem 0}
@media(max-width:800px){.bloglay{grid-template-columns:1fr}.side{position:static}.post{grid-template-columns:1fr}}
