/* ==========================================================================
   site.css  -  shared look for every page (header, menu, footer, headings)
   Marathi names, colours and layout are defined once here.  (Comment 11)
   ========================================================================== */
:root{
  --saffron:#a94712;--saffron-dark:#762b08;--gold:#d9a441;--cream:#fff9ed;--paper:#fffdf8;
  --text:#30251f;--muted:#6d625b;--border:#ead8bc;--shadow:0 12px 35px rgba(90,45,15,.12);--radius:20px;
}
html{-webkit-text-size-adjust:100%;scroll-padding-top:var(--header-h,120px)}
body{margin:0;font-family:"Noto Sans Devanagari",sans-serif;color:var(--text);background:var(--paper);line-height:1.75;
  text-rendering:optimizeLegibility;font-kerning:normal;font-variant-ligatures:common-ligatures contextual;
  font-feature-settings:"liga" 1,"clig" 1,"calt" 1,"kern" 1}
.topbar,header,header *,footer,footer *{box-sizing:border-box}
header a,footer a{color:inherit;text-decoration:none}
header img,footer img{max-width:100%;display:block}

/* ---------- top bar ---------- */
.topbar{background:var(--saffron-dark);color:#fff;padding:7px 5%;font-size:14px;display:flex;justify-content:center;gap:15px;flex-wrap:wrap}
.topbar-name{display:inline-flex;align-items:center;gap:8px}
.topbar-logo{height:22px;width:auto;display:block;flex-shrink:0}

/* ---------- sticky header + menu ---------- */
header{position:sticky;top:0;z-index:1000;background:rgba(255,253,248,.96);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);
  display:block;padding:0;color:inherit}
.nav-wrap{max-width:1280px;margin:auto;padding:10px 4% 8px;display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap}
header nav{width:100%;min-width:0}
.site-title{text-align:center;padding:5px 4% 12px;border-top:1px solid rgba(214,165,92,.22);background:rgba(255,253,248,.98)}
.site-title a{color:var(--saffron-dark);font-size:clamp(20px,2.3vw,30px);font-weight:800;line-height:1.25;display:inline-flex;align-items:center;gap:12px;justify-content:center;flex-wrap:wrap}
.site-title a:hover{color:var(--saffron)}
.site-logo{height:52px;width:auto;display:block;flex-shrink:0}
@media(max-width:640px){.site-logo{height:36px}}
header nav ul{list-style:none;display:flex;align-items:center;justify-content:flex-end;gap:4px;margin:0;padding:0;flex-wrap:wrap}
header nav a{display:block;padding:7px 9px;border-radius:8px;white-space:nowrap;font-size:13px;font-weight:700;color:#3e3028;transition:.2s ease}
header nav a:hover,header nav a:focus-visible,header nav a[aria-current="page"]{color:var(--saffron-dark);background:#fff1da}
.menu-btn{display:none;margin-left:auto;border:1px solid var(--border);background:#fff;border-radius:10px;padding:9px 12px;font-size:20px;cursor:pointer;color:var(--text)}
@media(max-width:1150px){header nav a{padding-left:7px;padding-right:7px;font-size:12.5px}}
@media(max-width:850px){
  .topbar{flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:2px;padding:7px 4%;font-size:13px;line-height:1.5}
  .topbar-name{flex-wrap:wrap;justify-content:center}
  .topbar-logo{height:18px}
  .menu-btn{display:block;margin-left:auto;margin-right:0}
  header nav{display:none;width:100%;flex-basis:100%;margin-left:0}
  header nav.open{display:block}
  header nav#mainNav{position:absolute;top:100%;left:0;right:0;width:100%;z-index:1001;background:#fffdf8;border-bottom:1px solid var(--border);box-shadow:0 10px 20px rgba(0,0,0,.15);padding:6px 3% 8px;max-height:none;overflow:visible;touch-action:manipulation}
  header nav#mainNav ul{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:0}
  header nav#mainNav li{width:auto;min-width:0}
  header nav#mainNav a{padding:5px 4px;font-size:13.5px;line-height:1.25;white-space:normal;text-align:center;background:#fff7e8;border:1px solid var(--border);border-radius:10px}
  header nav#mainNav li:last-child{grid-column:1/-1}
  header nav#mainNav li:last-child a{background:var(--saffron-dark);border-color:var(--saffron-dark);color:#fff}
}
@media(max-width:340px){header nav#mainNav ul{grid-template-columns:1fr}}

/* ---------- footer ---------- */
footer{background:#27160d;color:#d9c8b9;padding:45px 5% 20px;line-height:1.75}
.footer-grid{max-width:1180px;margin:auto;display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:28px}
footer h3{color:#fff3d9;margin-top:0;font-size:19px}
footer ul{list-style:none;padding:0;margin:0}
footer li{margin:7px 0}
footer a:hover{color:#fff}
footer p{margin:0 0 8px}
.visitor-count{max-width:1180px;margin:24px auto 0;text-align:center;font-weight:700;color:#fff3d9}
.copyright{max-width:1180px;margin:35px auto 0;padding-top:18px;border-top:1px solid rgba(255,255,255,.12);text-align:center;font-size:13px}
.copyright a{color:#f5c26b;font-weight:700}
@media(max-width:850px){.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.footer-grid{grid-template-columns:1fr}}

/* ---------- common page headings / cards (inner pages) ---------- */
main h1{color:var(--saffron-dark);text-align:center;font-size:clamp(28px,4.2vw,44px);margin:0 0 10px;line-height:1.35}
main .lead{text-align:center;color:#8a6a55;font-weight:700;margin:0 0 28px;font-size:18px;line-height:1.7}
main{padding-top:40px;padding-bottom:55px}
article.card h2{color:var(--saffron-dark);margin:0 0 14px;font-size:22px;line-height:1.4}
@media(max-width:700px){main{padding-top:28px;padding-bottom:40px}main .lead{font-size:16px;margin-bottom:20px}}

/* ---------- chapter index + back to top  (Comment 03) ---------- */
.chapter-index{background:#fff7e8;border:1px solid var(--border);border-left:5px solid var(--gold);border-radius:14px;padding:12px 16px;margin:0 auto 24px;max-width:900px}
.chapter-index strong{display:block;color:var(--saffron-dark);margin-bottom:2px}
.chapter-index ol{margin:0;padding-left:26px;line-height:1.85;list-style:devanagari}
.chapter-index li::marker{color:var(--saffron);font-weight:700}
.chapter-index a{color:var(--saffron-dark);font-weight:700;text-decoration:none}
.chapter-index a:hover{text-decoration:underline}
@media(min-width:760px){.chapter-index ol{columns:2;column-gap:36px}}
.back-top{text-align:right;margin:12px 0 0!important;font-size:14px!important;line-height:1.4!important;clear:both}
.back-top a{display:inline-block;padding:4px 14px;border:1px solid var(--border);border-radius:999px;background:#fff;color:var(--saffron-dark);font-weight:700;text-decoration:none}
.back-top a:hover{background:#fff4df}
main>.back-top{max-width:100%}

@media(max-width:640px){.site-title{padding:6px 3% 8px}.site-title a{flex-wrap:nowrap;gap:8px;font-size:15.5px;line-height:1.3;text-align:center}.site-logo{height:32px;flex:0 0 auto}}
