@font-face{font-family:Cormorant;src:url(/assets/fonts/Cormorant-Bold.woff2) format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:Cormorant;src:url(/assets/fonts/Cormorant-SemiBold.woff2) format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:Cormorant;src:url(/assets/fonts/Cormorant-MediumItalic.woff2) format("woff2");font-weight:500;font-style:italic;font-display:swap}
@font-face{font-family:Garamond;src:url(/assets/fonts/EBGaramond-Regular.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:Garamond;src:url(/assets/fonts/EBGaramond-SemiBold.woff2) format("woff2");font-weight:600 700;font-display:swap}
@font-face{font-family:Garamond;src:url(/assets/fonts/EBGaramond-Italic.woff2) format("woff2");font-style:italic;font-display:swap}
:root{--navy:#080E22;--navy2:#0B1A3A;--gold:#C7A248;--cream:#F0E8D4;--olive:#4F6B32;--brown:#6B3F1F;--bg:#FBF8F1;--ink:#1E1A16;--panel:#F6EFDF;--green:#EEF3E6;--goldt:#FBF3DC;--rule:#E3D8BE;--fs:19px}
[data-theme=sepia]{--bg:#F1E6CF;--ink:#2B2117;--panel:#E8DABB;--green:#E2E5CF;--goldt:#F0E2BF;--rule:#D3C29C}
[data-theme=night]{--bg:#0D1222;--ink:#E7E0CF;--panel:#18213A;--green:#16261E;--goldt:#221F17;--rule:#2C3550;--navy2:#E9D9A8;--olive:#A9C285;--brown:#D9A97A}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--ink);font:400 var(--fs)/1.62 Garamond,Georgia,serif}
a{color:var(--navy2);text-decoration-color:var(--gold);text-underline-offset:3px}a:hover{color:var(--brown)}
:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.bar{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.55rem 1rem;padding-top:max(.55rem,env(safe-area-inset-top));background:var(--navy);color:var(--cream);font-size:16px}
.brand{color:var(--cream);text-decoration:none;font:700 1.25rem Cormorant,Georgia,serif;letter-spacing:.02em;white-space:nowrap}
.tools{display:flex;gap:.3rem;flex-wrap:wrap;justify-content:flex-end}.tb{background:none;border:1px solid rgba(199,162,72,.45);color:var(--cream);border-radius:999px;padding:.25rem .7rem;font:600 .82rem Garamond,serif;cursor:pointer;text-decoration:none}
.tb:hover{background:rgba(199,162,72,.18);color:var(--cream)}.install{background:var(--gold);color:var(--navy);border-color:var(--gold)}
.prog{position:absolute;left:0;right:0;bottom:0;height:3px}.prog i{display:block;height:100%;width:0;background:var(--gold)}
.hero{position:relative;background:var(--navy);color:var(--cream);overflow:hidden}.hbg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.28}
.hin{position:relative;max-width:1080px;margin:0 auto;padding:3.5rem 1.25rem 3rem;display:grid;grid-template-columns:minmax(200px,330px) 1fr;gap:2.6rem;align-items:center}
.cov{width:100%;height:auto;box-shadow:0 22px 50px rgba(0,0,0,.55);border:1px solid rgba(199,162,72,.5)}
.hero h1{font:700 clamp(2.6rem,7vw,4.6rem)/1 Cormorant,Georgia,serif;margin:.2rem 0 .5rem;color:var(--cream)}.hero .sub{font:500 italic 1.35rem Cormorant,serif;color:#E9DDBD;margin:0}
.by{font:700 1.1rem Cormorant,serif;letter-spacing:.08em;color:var(--gold);text-transform:uppercase}.blurb{max-width:36rem}
.lab{font:700 .8rem Cormorant,serif;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin:0}
.cta{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.2rem}.btn{display:inline-block;background:var(--gold);color:var(--navy);border:1px solid var(--gold);padding:.65rem 1.3rem;border-radius:999px;font:600 1rem Garamond,serif;text-decoration:none;cursor:pointer}
.btn.ghost{background:transparent;color:var(--cream)}.btn:hover{filter:brightness(1.08);color:var(--navy)}.btn.ghost:hover{color:var(--cream);background:rgba(199,162,72,.15)}
.resume a{color:var(--gold)}
.wrap,.reader{max-width:42rem;margin:0 auto;padding:1.5rem 1.15rem 3rem}
.pull{font:500 italic 1.55rem/1.35 Cormorant,serif;color:var(--navy2);border-left:4px solid var(--gold);margin:1.5rem 0;padding:.2rem 0 .2rem 1.1rem}.pull cite{display:block;font:700 .85rem Cormorant,serif;letter-spacing:.14em;color:var(--gold);margin-top:.4rem;font-style:normal}
h1{font:700 clamp(2rem,5.5vw,2.8rem)/1.08 Cormorant,Georgia,serif;color:var(--navy2);margin:.2rem 0 .8rem;border-bottom:2px solid var(--gold);padding-bottom:.35rem}
h2{font:700 1.55rem/1.2 Cormorant,serif;color:var(--olive);margin:2rem 0 .5rem}h2::before,h3::before,.dia{content:"";display:inline-block;width:.38em;height:.38em;background:var(--gold);transform:rotate(45deg);margin-right:.6em;vertical-align:.2em}
h3{font:700 1.3rem Cormorant,serif;color:var(--olive);margin:2rem 0 .45rem}h3 a{color:inherit;text-decoration:none}
p{margin:0 0 1em;hyphens:auto}.reader article p{text-align:justify}.kt{color:var(--brown)}
.kjv{margin:.2rem 0 1.1rem;background:var(--panel);border-left:4px solid var(--gold);padding:.85rem 1.1rem;border-radius:0 6px 6px 0}.kjv sup{color:#A9852F;font:700 .62em Garamond,serif;margin:0 .15em 0 .35em}
.fig{margin:1.2rem 0 1.4rem}.fig img{width:100%;height:auto;border:2px solid var(--gold);border-radius:4px;display:block}figcaption{text-align:center;font-style:italic;color:var(--brown);font-size:.85em;margin-top:.4rem}
.part{position:relative;margin:.5rem -1.15rem 1.2rem;background:var(--navy);color:var(--cream)}.part img{width:100%;height:auto;display:block;opacity:.72;max-height:52vh;object-fit:cover}
.part div{position:absolute;left:0;right:0;bottom:0;padding:2.5rem 1.2rem 1.1rem;background:linear-gradient(transparent,var(--navy))}.part .pn{font:700 3.4rem/1 Cormorant,serif;margin:.2rem 0 0;color:var(--cream)}
h2.first{margin-top:.8rem}.lab.chap{margin-top:2.6rem}
.walk{background:var(--green);border:1.5px solid var(--gold);border-radius:8px;margin:2.2rem 0 1rem;overflow:hidden}.walk h2{margin:0;padding:.7rem 1.1rem;background:var(--goldt);color:var(--navy2)}
.walk .kv{background:var(--goldt);padding:0 1.1rem .8rem;margin:0}.walk .kv b{color:var(--brown)}.walk ol{margin:.8rem 0;padding:0 1.1rem 0 2.6rem}.walk li{margin:.45rem 0}
.walk .pr{background:var(--panel);padding:.8rem 1.1rem;margin:0}
.tw{overflow-x:auto;margin:.6rem 0 1.4rem}table{border-collapse:collapse;width:100%;font-size:.86em;border:1px solid var(--gold)}th{background:#0B1A3A;color:var(--cream);text-align:left;padding:.45rem .5rem}td{padding:.45rem .5rem;vertical-align:top;border-top:1px solid var(--rule)}tbody tr:nth-child(even) td{background:var(--panel)}
.player{display:flex;align-items:center;gap:.8rem;background:var(--navy);color:var(--cream);border-radius:12px;padding:.7rem .9rem;margin:.6rem 0 1.4rem;font-size:16px}
.play{width:46px;height:46px;flex:none;border-radius:50%;border:none;background:var(--gold);color:var(--navy);font-size:1.15rem;cursor:pointer}.pmeta{flex:1;display:flex;flex-direction:column;min-width:0}.pmeta span{font-size:.82rem;opacity:.75}
.seek{width:100%;accent-color:#C7A248}.rate{background:transparent;color:var(--cream);border:1px solid rgba(199,162,72,.5);border-radius:6px;padding:.2rem}
.rate option{color:#000}
.pager{display:flex;justify-content:space-between;gap:1rem;margin-top:2.5rem;padding-top:1.1rem;border-top:1px solid var(--rule);font:600 1.05rem Cormorant,serif}.pager a{text-decoration:none;max-width:48%}
.crumbs{font-size:.82rem;color:#7a705e;margin-bottom:.4rem}.crumbs a{color:inherit}
.toc{list-style:none;padding:0;margin:.6rem 0 2rem}.toc li{padding:.45rem 0;border-bottom:1px dotted var(--rule);display:flex;justify-content:space-between;gap:1rem}.toc a{font:700 1.15rem Cormorant,serif;text-decoration:none}
.toc .bk{display:block;font:700 1.35rem Cormorant,serif;color:var(--olive);border-bottom:none;padding-top:1.1rem}.toc .bk span{font:italic .9rem Garamond,serif;color:var(--brown)}.dur{font-size:.82rem;color:var(--brown);white-space:nowrap}
.ins{padding-left:1.1rem}.ins li::marker{color:var(--gold)}
.dl{display:grid;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:.8rem}.dl a,.dl button{display:block;text-align:left;background:var(--panel);border:1px solid var(--gold);border-radius:8px;padding:.85rem 1rem;font:700 1.15rem Cormorant,serif;color:var(--navy2);text-decoration:none;cursor:pointer}
.dl span{display:block;font:400 .85rem Garamond,serif;color:var(--ink);opacity:.8}
.bigplayer{background:var(--navy);color:var(--cream);border-radius:12px;padding:1rem;margin:1rem 0;font-size:16px}.bigplayer audio{width:100%}.now{font:700 1.2rem Cormorant,serif;margin:0 0 .5rem}.bigplayer select{margin-left:.4rem}
.tracks{list-style:none;padding:0}.tracks li{display:flex;align-items:center;gap:.7rem;padding:.55rem 0;border-bottom:1px dotted var(--rule)}.tracks li.on span{color:var(--brown);font-weight:700}
.tracks button{width:36px;height:36px;border-radius:50%;border:none;background:var(--navy);color:var(--gold);cursor:pointer;flex:none}.tracks span{flex:1}.tracks em{font-size:.85rem;color:var(--brown)}.tracks a{text-decoration:none}
.soli{text-align:center;margin-top:2rem}
.foot{background:var(--navy);color:#cfc5ad;text-align:center;padding:2rem 1rem 2.4rem;font-size:15px}.foot a{color:var(--gold)}.foot .fine{font-size:12.5px;opacity:.7}
.modal{position:fixed;inset:0;background:rgba(8,14,34,.7);display:grid;place-items:center;z-index:50;padding:1rem}.modal[hidden]{display:none}.box{background:var(--bg);color:var(--ink);border-radius:12px;padding:1.4rem;max-width:24rem;border:2px solid var(--gold)}
@media (max-width:760px){.hin{grid-template-columns:1fr;gap:1.4rem;padding-top:2rem}.cov{max-width:210px;margin:0 auto}.htx{text-align:center}.cta{justify-content:center}.brand{font-size:.98rem}.tools{flex-wrap:nowrap;gap:.2rem}.tb{padding:.18rem .42rem;font-size:.72rem}.reader article p{text-align:left}}
@media (max-width:440px){.tools a[href="/contents/"]{display:none}.brand{font-size:.92rem}}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}