/* Shared look for every page (loaded after site.css). Palette: Diwali-night indigo, marigold, kumkum red, tulsi green.
   Page-specific styles: home.css (home page) only. Light areas keep using the site tokens so dark mode still works. */
.bc{--ink:#1a1d3a;--ink2:#262a52;--mari:#f4a81d;--mari2:#ffd27a;--kum:#a8242b;--tulsi:#2e6b4e;
  font-family:'Mukta','Noto Sans','Segoe UI',system-ui,sans-serif}
.bc h1,.bc h2,.bc h3{font-family:'Tiro Devanagari Hindi','Noto Serif Devanagari',Georgia,serif;font-weight:400}

/* ---------- Header ---------- */
.hdr{position:sticky;top:0;z-index:60;box-shadow:0 1px 0 var(--border),0 6px 18px rgba(26,29,58,.06)}
.nav a{font-size:1.02rem;padding:10px 12px;border-radius:999px;border-bottom:0}
.nav a.on{background:var(--p100);color:var(--primary);font-weight:700}
.nav .navsignin{display:none}
.signin{background:var(--kum);color:#fff!important;border-radius:999px;padding:10px 20px}
.signin:hover{background:var(--ink)}

/* ---------- Page hero (photo band) ---------- */
.phero{position:relative;color:#fff;background:var(--ink);overflow:hidden;min-height:clamp(250px,36vh,360px);display:flex;align-items:flex-end}
.phero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.phero .shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(26,29,58,.95) 0%,rgba(26,29,58,.62) 55%,rgba(26,29,58,.28) 100%)}
.phero .art{position:absolute;inset:0;background:radial-gradient(ellipse at 82% 30%,#3a3170 0%,var(--ink) 65%)}
.phero .art svg{position:absolute;right:4%;top:50%;transform:translateY(-50%);height:150%;width:auto;opacity:.55}
.phero .wrap{position:relative;max-width:1200px;margin:0 auto;padding:60px 32px 34px;width:100%}
.phero .crumb{font-size:1rem;margin:0 0 10px;color:#d9cdb4}
.phero .crumb a{color:var(--mari2)}
.phero h1{font-size:clamp(2rem,4.6vw,3.4rem);line-height:1.2;color:#fff;max-width:22ch;text-wrap:balance;margin:0}
.phero .sub{font-size:1.15rem;color:#eadfc8;margin:10px 0 0;max-width:62ch}
.phero.short{min-height:clamp(190px,26vh,250px)}

/* ---------- Page body ---------- */
.main{max-width:1200px;padding:52px 32px 72px;gap:56px;font-size:1.125rem;line-height:1.7}
.main .h2,.main h2{font-size:clamp(1.6rem,2.6vw,2.1rem);line-height:1.25;border-left:5px solid var(--mari);padding-left:14px}
.main .h3,.main h3{font-size:1.3rem;line-height:1.3}
.main .sm{font-size:1rem}
.main .eyebrow{text-transform:none;letter-spacing:0;font-size:1rem;color:var(--muted)}
.main a{text-underline-offset:3px}
.sec{gap:18px}
.card{border-radius:18px;box-shadow:0 2px 10px rgba(26,29,58,.07);padding:26px}
.card .photo,.card .portrait{border-radius:12px}
.photo{height:210px}
.btn{height:52px;padding:0 26px;border-radius:999px;font-size:1.05rem}
.btn.pri{background:var(--kum);color:#fff!important}
.btn.pri:hover{background:var(--ink)}
.btn.sec2{border:2px solid var(--border2)}
.pill{height:30px;padding:0 14px;font-size:.9rem}
.pill.p,.pill.ok{font-weight:700}
.cta{background:var(--ink);color:#fdf3df;border:0;border-radius:22px;padding:36px 40px}
.cta .h2{color:#fff;border:0;padding:0}
.cta .muted{color:#d9cdb4}
.cta a:not(.btn){color:var(--mari2)}
.cta .btn.pri{background:var(--mari);color:#2a1a08!important}
.cta .btn.sec2{border-color:#fdf3df;color:#fdf3df!important}
.date{background:var(--kum);color:#fff;border-radius:14px}
.li{padding:18px 22px;gap:18px}
.list{border-radius:18px;overflow:hidden}
.kv{font-size:1.05rem;gap:10px 18px}
.chips span{padding:8px 16px}
.tli:before{background:var(--mari);width:14px;height:14px;left:-8px}
.tl{border-left-color:var(--mari2)}
.empty,.status{border-radius:18px}
.main table{font-size:1.02rem}
.main ul,.main ol{line-height:1.7}

/* ---------- Photo mosaic + viewer (home, gallery) ---------- */
.mosaic{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:170px;grid-auto-flow:dense;gap:12px}
.mosaic a{position:relative;overflow:hidden;border-radius:14px;background:var(--sunk);display:block}
.mosaic a.w2{grid-column:span 2}.mosaic a.h2{grid-row:span 2}
.mosaic img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s ease}
.mosaic a:hover img,.mosaic a:focus-visible img{transform:scale(1.08)}
.mosaic span{position:absolute;left:0;right:0;bottom:0;padding:26px 14px 10px;background:linear-gradient(0deg,rgba(26,29,58,.88),transparent);color:#fff;font-size:1rem;opacity:0;transition:opacity .3s}
.mosaic a:hover span,.mosaic a:focus-visible span{opacity:1}
@media (hover:none){.mosaic span{opacity:1}}
.lb{position:fixed;inset:0;z-index:200;background:rgba(14,16,36,.94);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px;gap:14px}
.lb img{max-width:100%;max-height:78vh;object-fit:contain;border-radius:10px}
.lb p{color:#fdf3df;font-size:1.15rem;margin:0;text-align:center;max-width:60ch}
.lb button{position:absolute;width:56px;height:56px;border-radius:999px;border:2px solid rgba(255,255,255,.7);background:rgba(26,29,58,.7);color:#fff;font-size:1.5rem;cursor:pointer}
.lb button:hover{background:var(--mari);color:#2a1a08;border-color:var(--mari)}
.lb .x{top:16px;right:16px}.lb .pv{left:16px;top:50%}.lb .nx{right:16px;top:50%}

/* ---------- Diya strip (inner pages) ---------- */
.dstrip{background:var(--ink);color:#fdf3df;padding:18px 32px;display:flex;align-items:center;justify-content:center;gap:18px;flex-wrap:wrap;text-align:center}
.dstrip svg{width:42px;height:32px}
.dstrip b{font-family:'Tiro Devanagari Hindi',Georgia,serif;font-weight:400;font-size:1.25rem}
.dstrip a{color:var(--ink);background:var(--mari);padding:10px 22px;border-radius:999px;font-weight:700;text-decoration:none}

/* ---------- Footer ---------- */
.ft{background:var(--ink);color:#d9cdb4;border-top:5px solid var(--mari)}
.ft .ftcol h2{color:#fff;font-family:'Tiro Devanagari Hindi',Georgia,serif;font-weight:400;font-size:1.25rem;border:0;padding:0}
.ft a,.ftcol a{color:#fdf3df}
.ft img{background:#fff;border-radius:10px;padding:8px}
.ftbot{border-top-color:rgba(255,255,255,.2)}

/* ---------- Responsive ---------- */
@media (max-width:980px){.mosaic{grid-template-columns:repeat(2,1fr)}}
@media (max-width:720px){
 .hdr{position:static;gap:6px 8px;padding:10px 14px}
 .hdr .brand{font-size:.92rem;gap:8px;min-width:0}
 .hdr .brand img{width:38px!important;height:38px!important}
 .hdr .tsz button,.hdr .iconbtn{min-width:40px;height:40px}
 .hdr .signin{display:none}
 .nav .navsignin{display:inline-flex;background:var(--kum);color:#fff!important}
 .phero .wrap{padding:44px 16px 24px}
 .phero .art svg{height:120%;right:-20%;opacity:.35}
 .main{padding:32px 16px 52px;gap:40px;font-size:1.0625rem}
 .cta{padding:24px}
 .card{padding:20px}
 .dstrip{padding:16px}
 .lb .pv,.lb .nx{top:auto;bottom:16px}
 .lb .pv{left:calc(50% - 66px)}.lb .nx{right:calc(50% - 66px)}
}
@media (max-width:560px){.grid3,.grid2{grid-template-columns:1fr!important}}
@media (prefers-reduced-motion:reduce){.mosaic img{transition:none}}
