
:root{--navy:#102F4F;--coral:#EE777C;--teal:#2E7D78;--gold:#E8DCA8;--goldtx:#9C7A1E;
--ivory:#FBF8EE;--ink:#2B333B;--paper:#FFFFFF;--rule:#E4DCC8;}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
body{font-family:'Noto Sans Devanagari','Noto Sans',system-ui,sans-serif;background:var(--ivory);
color:var(--ink);font-size:19px;line-height:1.9}
.serif{font-family:'Noto Serif Devanagari',Georgia,serif}
a{color:var(--teal);text-decoration:none}
a:hover{color:var(--coral)}
a:focus-visible{outline:3px solid var(--coral);outline-offset:3px;border-radius:2px}
.wrap{max-width:760px;margin:0 auto;padding:0 22px}
.wide{max-width:1060px;margin:0 auto;padding:0 22px}

/* header */
header.site{background:var(--ivory);border-bottom:1px solid var(--rule)}
header.site .bar{display:flex;align-items:center;justify-content:space-between;padding:16px 0;gap:16px;flex-wrap:wrap}
.brand{font-family:'Noto Serif Devanagari',Georgia,serif;font-size:1.6rem;font-weight:700;color:var(--navy);letter-spacing:.02em}
.brand small{display:block;font-family:inherit;font-size:.62rem;letter-spacing:.34em;color:var(--goldtx);font-weight:600;margin-top:-2px}
nav.top{display:flex;gap:22px;flex-wrap:wrap;font-size:.92rem}
nav.top a{color:var(--navy);font-weight:600}
nav.top a:hover{color:var(--coral)}

/* the gate */
.gate{padding:110px 22px 90px;text-align:center;background:var(--ivory)}
.gate .sutra{font-family:'Noto Serif Devanagari',Georgia,serif;color:var(--navy);
font-size:clamp(1.6rem,4.6vw,2.7rem);line-height:1.8;font-weight:600}
.gate .rule{width:74px;height:2px;background:var(--goldtx);margin:38px auto;opacity:.75}
.gate .sub{color:var(--teal);font-size:1.02rem;letter-spacing:.06em}
.gate .enter{display:inline-block;margin-top:44px;color:var(--coral);font-weight:700;font-size:.95rem;letter-spacing:.12em}

/* today */
.today{background:var(--navy);color:#fff;padding:56px 0}
.today .label{font-size:.78rem;letter-spacing:.3em;color:var(--gold);font-weight:700;margin-bottom:14px}
.today h2{font-family:'Noto Serif Devanagari',Georgia,serif;font-size:1.55rem;line-height:1.7;margin-bottom:10px}
.today h2 a{color:#fff}
.today h2 a:hover{color:var(--gold)}
.today .meta{color:#B8C6D6;font-size:.9rem}

/* campus */
.campus{padding:76px 0 66px}
.campus h2{font-family:'Noto Serif Devanagari',Georgia,serif;color:var(--navy);font-size:1.7rem;margin-bottom:8px}
.campus .intro{color:#5A6570;margin-bottom:40px;max-width:640px}
.bhavans{display:grid;grid-template-columns:repeat(auto-fill,minmax(285px,1fr));gap:22px}
.bhavan{background:var(--paper);border:1px solid var(--rule);border-top:6px solid var(--navy);
padding:26px 24px 22px;display:block;color:var(--ink)}
.bhavan:hover{border-top-color:var(--coral);color:var(--ink)}
.bhavan h3{font-family:'Noto Serif Devanagari',Georgia,serif;font-size:1.28rem;color:var(--navy);margin-bottom:6px}
.bhavan .count{color:var(--goldtx);font-size:.85rem;font-weight:700;letter-spacing:.06em}
.bhavan .range{color:#7A828A;font-size:.82rem;margin-top:4px}

/* satsang band */
.satsang{background:var(--teal);color:#fff;padding:52px 0;text-align:center}
.satsang h2{font-family:'Noto Serif Devanagari',Georgia,serif;font-size:1.5rem;margin-bottom:10px}
.satsang p{max-width:560px;margin:0 auto 18px;color:#DCEBE9}
.satsang .links a{color:var(--gold);font-weight:700;margin:0 14px}

/* series page */
.serieshead{padding:64px 0 40px;border-bottom:1px solid var(--rule)}
.crumb{font-size:.82rem;letter-spacing:.14em;color:var(--goldtx);font-weight:700;margin-bottom:12px}
.serieshead h1{font-family:'Noto Serif Devanagari',Georgia,serif;color:var(--navy);font-size:2.1rem;line-height:1.5}
.serieshead .meta{color:#5A6570;margin-top:8px}
ol.eps{list-style:none;padding:34px 0 80px}
ol.eps li{border-bottom:1px solid var(--rule);padding:15px 2px}
ol.eps a{display:block;color:var(--ink);line-height:1.75}
ol.eps a:hover .t{color:var(--coral)}
ol.eps .d{color:#8A8F95;font-size:.8rem;letter-spacing:.05em;display:block}
ol.eps .t{color:var(--navy);font-weight:600}

/* episode page */
article.ep{padding:58px 0 40px}
article.ep h1{font-family:'Noto Serif Devanagari',Georgia,serif;color:var(--navy);
font-size:1.75rem;line-height:1.7;margin:14px 0 10px}
article.ep .meta{color:#7A828A;font-size:.88rem;margin-bottom:34px}
article.ep .meta a{color:var(--teal);font-weight:600}
.yt{position:relative;padding-top:56.25%;background:#000;margin:8px 0 34px}
.yt iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.body p{margin:0 0 1.15em}
.body h2,.body h3,.body h4{font-family:'Noto Serif Devanagari',Georgia,serif;color:var(--teal);
margin:1.7em 0 .6em;line-height:1.6}
.body h2{font-size:1.3rem}.body h3{font-size:1.16rem}
.body strong{color:var(--navy)}
.body em{color:var(--teal)}
.body ul,.body ol{margin:0 0 1.2em 1.4em}
.body img{max-width:100%;height:auto;margin:14px 0}
.body a{border-bottom:1px solid var(--gold)}
.smaran{border:2px solid var(--goldtx);background:#FDFBF2;padding:24px 26px;margin:2.2em 0}
.smaran .cap{font-size:.78rem;letter-spacing:.28em;color:var(--goldtx);font-weight:800;margin-bottom:10px}
.pn{display:flex;justify-content:space-between;gap:18px;border-top:1px solid var(--rule);
padding:26px 0 70px;font-size:.92rem}
.pn a{max-width:46%;line-height:1.7}
.pn .lbl{display:block;font-size:.72rem;letter-spacing:.2em;color:var(--goldtx);font-weight:800}

/* search */
.khoj{padding:60px 0 90px}
.khoj h1{font-family:'Noto Serif Devanagari',Georgia,serif;color:var(--navy);font-size:1.9rem;margin-bottom:22px}
.khoj input{width:100%;font:inherit;font-size:1.05rem;padding:15px 18px;border:2px solid var(--navy);
background:var(--paper);color:var(--ink)}
.khoj input:focus{outline:3px solid var(--coral);outline-offset:2px}
#res{margin-top:26px}
#res .hit{border-bottom:1px solid var(--rule);padding:13px 2px}
#res .hit .d{color:#8A8F95;font-size:.78rem;display:block}
#res .hit a{color:var(--navy);font-weight:600}
#res .hit a:hover{color:var(--coral)}
#res .none{color:#7A828A;padding:20px 0}


.epband{height:7px}
.medal{display:inline-block;min-width:34px;text-align:center;color:#fff;font-weight:800;
padding:3px 9px;margin-right:10px;border-radius:2px;font-size:.82rem;letter-spacing:.02em}
.saar{background:#fff;border-left:5px solid var(--goldtx);padding:16px 20px;margin:6px 0 14px}
.saar .cap{font-size:.72rem;letter-spacing:.3em;color:var(--goldtx);font-weight:800;margin-bottom:6px}
.saar p{color:var(--ink)}
.engsum{margin:0 0 22px;border:1px solid var(--rule);background:#fff}
.engsum summary{cursor:pointer;padding:10px 16px;color:var(--teal);font-weight:700;font-size:.88rem}
.engsum p{padding:0 18px 14px;color:#3D4750;font-size:.95rem;line-height:1.8}
.chintan{background:var(--navy);color:#fff;padding:20px 24px;margin:26px 0}
.chintan .cap{font-size:.72rem;letter-spacing:.3em;color:var(--gold);font-weight:800;margin-bottom:8px}
.chintan p{font-family:'Noto Serif Devanagari',Georgia,serif;font-size:1.06rem;line-height:1.9}

/* v0.3 accessibility + MIHE */
.skip{position:absolute;left:-9999px}.skip:focus{position:fixed;top:8px;left:8px;background:#fff;color:#102F4F;padding:8px 14px;z-index:99}
.a11y{background:#0B2340;color:#DCE6F0;font-size:.78rem;padding:6px 0}
.a11y .wrap{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.a11y span.lbl{color:#E8DCA8;font-weight:700;letter-spacing:.06em}
.a11y button{font:inherit;font-size:.78rem;background:transparent;border:1px solid #3D5A78;color:#fff;padding:3px 10px;cursor:pointer}
.a11y button:hover,.a11y button[aria-pressed="true"]{background:#EE777C;border-color:#EE777C}
html.big{font-size:19px}html.bigger{font-size:22px}
html.contrast body{background:#fff;color:#000}
html.contrast .saar{border-left-color:#000}
html.contrast a{color:#00339B}
html.easy .body p{font-size:1.12rem;line-height:2.1}
html.easy .engsum,html.easy .pn{display:none}
html.easy .saar{font-size:1.15rem}

header.site .nav{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px}
header.site nav{display:flex;gap:22px;flex-wrap:wrap}
header.site nav a{margin:0;font-size:.95rem}
.brandrow>span{display:flex;flex-direction:column;line-height:1.2}
.brandrow .serif{font-size:1.45rem;color:var(--navy)}
.brandrow .tag{display:block;font-size:.66rem;letter-spacing:.24em;color:#9C7A1E;font-weight:700}

.brandrow{display:flex;align-items:center;gap:12px}
.brandrow img{width:46px;height:46px;border-radius:10px}
.footer-mihe{border-top:1px solid #2A4A6B;margin-top:18px;padding-top:16px;font-size:.8rem;color:#9FB4C8;line-height:1.9}

footer.site{background:var(--navy);color:#B8C6D6;padding:46px 0;font-size:.88rem}
footer.site .wide{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
footer.site a{color:var(--gold)}
footer.site .m{color:#8FA3B8}
@media(max-width:640px){.gate{padding:80px 18px 64px}article.ep h1{font-size:1.45rem}}
