
*{box-sizing:border-box}
:root{--ink:#1c241d;--forest:#1d2a20;--forest2:#26382b;--cream:#f4efe3;--paper:#fffdf8;--gold:#b89050;--gold2:#d8bc89;--muted:#657067;--line:#ded8cb;--shadow:0 22px 70px rgba(26,34,28,.13)}
html{scroll-behavior:smooth}
body{margin:0;font-family:Georgia,"Times New Roman",serif;color:var(--ink);background:var(--paper);line-height:1.7}
a{color:inherit}button,input,select{font:inherit}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.site-header{position:sticky;top:0;z-index:100;color:#fff;background:rgba(21,31,24,.97);backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.08)}
.nav{width:min(1180px,92%);margin:auto;min-height:72px;display:flex;justify-content:space-between;align-items:center;gap:22px}
.brand{font-weight:700;letter-spacing:.02em;text-decoration:none;font-size:1.13rem}.navlinks{display:flex;gap:22px;align-items:center;font-family:Arial,sans-serif;font-size:.9rem}.navlinks a{text-decoration:none;opacity:.9}.nav-download{padding:9px 14px;border:1px solid rgba(255,255,255,.38);border-radius:999px}
.hero{color:#fff;background:radial-gradient(circle at 82% 18%,rgba(184,144,80,.20),transparent 30rem),linear-gradient(135deg,#142018,#273b2b)}
.hero-inner{width:min(1120px,90%);margin:0 auto;padding:78px 0 105px;display:grid;grid-template-columns:minmax(300px,390px) 1fr;gap:clamp(52px,8vw,108px);align-items:center}
.book-card{width:100%;max-width:390px;min-height:520px;padding:56px 38px;overflow:hidden;background:linear-gradient(145deg,#f7f1df,#e5d9bd);color:#1a231c;border-radius:6px 16px 16px 6px;box-shadow:-12px 16px 0 #0d1510,0 28px 70px rgba(0,0,0,.30);display:flex;flex-direction:column;justify-content:center}
.book-kicker{font-family:Arial,sans-serif;font-size:.72rem;letter-spacing:.15em;margin-bottom:30px}.book-card h1{margin:0 0 24px;width:100%;font-size:clamp(2.7rem,4vw,3.6rem);line-height:.98;letter-spacing:-.035em;font-weight:600}.book-card h1 span{display:block;max-width:100%}.book-card p{margin:0;font-size:1.06rem;max-width:275px}.rule{width:64px;height:2px;background:var(--gold);margin:27px 0}
.hero-copy{max-width:625px}.eyebrow{margin:0;font-family:Arial,sans-serif;font-size:.74rem;letter-spacing:.17em;font-weight:700;color:var(--gold)}
.hero h2,.section h2,.book-hero h1{font-size:clamp(2.25rem,5vw,4rem);line-height:1.06;margin:12px 0 22px;font-weight:500}.lead{font-size:1.22rem;color:#e5ebe6;max-width:650px}
.actions,.reader-actions,.share-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.actions{margin-top:32px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 20px;border-radius:4px;border:0;text-decoration:none;font-family:Arial,sans-serif;font-weight:700;font-size:.9rem;cursor:pointer}.primary{background:var(--gold);color:#172019}.ghost{border:1px solid rgba(255,255,255,.48);color:#fff;background:transparent}.outline-dark{border:1px solid #8e938e;color:var(--ink);background:transparent}.small-note{font-family:Arial,sans-serif;font-size:.82rem;opacity:.76;margin-top:14px}
.section{width:min(1080px,90%);margin:auto;padding:92px 0}.intro{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px}.intro-copy{font-size:1.12rem}.stat-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:34px}.stat-row div{border-top:1px solid var(--line);padding-top:18px}.stat-row strong{display:block;font-size:2rem;line-height:1;color:var(--forest)}.stat-row span{font-family:Arial,sans-serif;font-size:.78rem;color:var(--muted)}
.books-section{background:var(--cream)}.books-heading{padding-bottom:38px;display:flex;align-items:end;justify-content:space-between;gap:30px}.section-copy{color:var(--muted);max-width:620px}.search-box{min-width:min(100%,310px)}.search-box input{width:100%;border:1px solid #cbc3b4;background:rgba(255,255,255,.72);border-radius:999px;padding:13px 18px;outline:none}
.testament-wrap{padding-top:0}.testament+.testament{margin-top:70px}.testament-title{display:flex;justify-content:space-between;align-items:baseline;border-bottom:1px solid #cec6b7;margin-bottom:24px}.testament-title p{margin:0 0 12px;font-family:Arial,sans-serif;font-size:.74rem;letter-spacing:.16em;font-weight:700;color:var(--gold)}.testament-title h3{margin:0 0 12px;font-size:1.1rem;font-weight:500;color:var(--muted)}
.book-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.book-link{min-height:58px;padding:12px 14px;border:1px solid #d7cfc0;border-radius:6px;background:rgba(255,255,255,.68);text-decoration:none;display:flex;justify-content:space-between;align-items:center;gap:12px;transition:.15s}.book-link:hover{transform:translateY(-2px);background:#fff;border-color:var(--gold2)}.book-name{font-weight:700}.book-page{white-space:nowrap;font-family:Arial,sans-serif;font-size:.72rem;color:#878b86}
.reader-section{background:var(--paper);padding-bottom:86px}.reader-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;padding-bottom:34px}.reader-wrap{width:min(1240px,94%);height:min(82vh,980px);min-height:620px;margin:auto;background:#d5d0c5;border:1px solid #cbc5b8;box-shadow:var(--shadow)}.pdf-reader{width:100%;height:100%;border:0;background:#eee}
.about-author{display:grid;grid-template-columns:180px 1fr;gap:62px;align-items:center}.author-mark{width:160px;height:160px;border-radius:50%;display:grid;place-items:center;background:var(--forest);color:var(--gold2);font-size:2.4rem;letter-spacing:.08em}.about-author p:last-child{font-size:1.12rem;max-width:760px}
footer{background:#111814;color:#e8ebe8;padding:42px max(5%,calc((100% - 1080px)/2));display:flex;justify-content:space-between;align-items:center;gap:30px;font-family:Arial,sans-serif;font-size:.86rem}footer p{margin:4px 0;opacity:.72}.copyright{text-align:right}
.book-hero{background:linear-gradient(135deg,#17231b,#28392c);color:#fff;padding:64px 0}.book-hero-inner{width:min(980px,90%);margin:auto}.crumbs{font-family:Arial,sans-serif;font-size:.8rem;color:#cbd5cd}.crumbs a{text-decoration:none}.book-meta{display:flex;gap:12px;flex-wrap:wrap;font-family:Arial,sans-serif;font-size:.78rem;color:#d9dfda}.book-meta span{padding:6px 10px;border:1px solid rgba(255,255,255,.18);border-radius:999px}
.web-reader{width:min(820px,90%);margin:0 auto;padding:70px 0 88px}.web-reader .edition-note{padding:18px 20px;background:var(--cream);border-left:3px solid var(--gold);color:#505b52;margin-bottom:42px}.web-reader h1{font-size:2.4rem;line-height:1.15;margin:48px 0 20px}.web-reader h2{font-size:1.8rem;line-height:1.2;margin:42px 0 16px}.web-reader h3{font-size:1.18rem;line-height:1.3;margin:28px 0 8px;color:#28362b}.web-reader p{font-size:1.08rem;margin:0 0 17px}.web-reader ul{margin:0 0 22px;padding-left:1.4rem}.web-reader li{margin:.34rem 0;font-size:1.04rem}.source-quote{font-weight:700;padding:8px 0 8px 18px;border-left:2px solid var(--gold2)}.web-reader strong{font-weight:700}.web-reader em{font-style:italic}
.book-tools{width:min(980px,90%);margin:0 auto;padding:26px 0;display:flex;justify-content:space-between;gap:18px;align-items:center;border-bottom:1px solid var(--line)}.book-tools-left,.book-tools-right{display:flex;gap:10px;flex-wrap:wrap}.book-select{padding:10px 13px;border:1px solid #cfc9bd;background:#fff;border-radius:4px}
.book-nav{width:min(820px,90%);margin:0 auto 88px;display:grid;grid-template-columns:1fr 1fr;gap:18px}.book-nav a{padding:20px;border:1px solid var(--line);border-radius:6px;text-decoration:none}.book-nav a:last-child{text-align:right}.nav-label{display:block;font-family:Arial,sans-serif;font-size:.72rem;color:var(--muted);text-transform:uppercase;letter-spacing:.1em}.nav-title{font-size:1.1rem;font-weight:700}.page-share{background:var(--forest);color:#fff;padding:42px 0}.page-share-inner{width:min(820px,90%);margin:auto;display:flex;justify-content:space-between;gap:22px;align-items:center}.page-share p{margin:0;color:#d9e0da}
@media(max-width:900px){.book-grid{grid-template-columns:repeat(3,1fr)}.book-card{padding:52px 32px}.book-card h1{font-size:clamp(2.65rem,6vw,3.35rem)}}
@media(max-width:760px){.navlinks a:not(.nav-download){display:none}.hero-inner{grid-template-columns:1fr;padding:58px 0 82px}.book-card{max-width:350px;min-height:440px;margin:auto;padding:46px 30px}.book-card h1{font-size:3rem}.hero-copy{text-align:center;margin:auto}.actions{justify-content:center}.intro,.about-author{grid-template-columns:1fr;gap:30px}.books-heading,.reader-heading{align-items:stretch;flex-direction:column}.book-grid{grid-template-columns:repeat(2,1fr)}.section{padding:70px 0}.reader-wrap{min-height:520px;height:72vh}.author-mark{width:120px;height:120px;font-size:1.85rem}.book-tools{align-items:stretch;flex-direction:column}.book-tools-left,.book-tools-right{width:100%}.book-select{width:100%}.book-nav{grid-template-columns:1fr}.book-nav a:last-child{text-align:left}.page-share-inner{align-items:flex-start;flex-direction:column}footer{flex-direction:column;align-items:flex-start}.copyright{text-align:left}}
@media(max-width:430px){.book-card{max-width:320px;padding:42px 27px}.book-card h1{font-size:2.65rem}.book-grid{grid-template-columns:1fr}.stat-row{grid-template-columns:1fr}.button{width:100%}}

.site-search-callout{background:#fff}.search-callout-inner{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.home-site-search{display:flex;gap:10px;padding:12px;background:var(--cream);border:1px solid var(--line);border-radius:8px}
.home-site-search input,.search-page-form input{flex:1;min-width:0;border:1px solid #cbc3b4;background:#fff;border-radius:4px;padding:13px 15px;outline:none;font-family:Arial,sans-serif}
.home-site-search input:focus,.search-page-form input:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(184,144,80,.13)}
.chapter-jump{margin:30px 0 42px;padding:22px 24px;background:var(--cream);border:1px solid var(--line);border-radius:8px}
.chapter-jump-title{margin:0 0 12px!important;font-family:Arial,sans-serif!important;font-size:.78rem!important;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.chapter-jump-links{display:flex;flex-wrap:wrap;gap:8px}.chapter-jump-links a{padding:7px 10px;border:1px solid #d2cabd;border-radius:999px;background:#fff;text-decoration:none;font-family:Arial,sans-serif;font-size:.78rem;line-height:1.2}.chapter-jump-links a:hover{border-color:var(--gold);background:#fffcf5}
.web-reader h2[id],.web-reader h3[id]{scroll-margin-top:95px}
.search-hero{background:linear-gradient(135deg,#17231b,#28392c);color:#fff}.search-hero .section{padding-top:72px;padding-bottom:72px}.search-hero h1{font-size:clamp(2.4rem,6vw,4.2rem);line-height:1.06;margin:12px 0 18px;font-weight:500;max-width:850px}.search-hero p:not(.eyebrow){color:#dce4de;font-size:1.12rem}
.search-page-form{display:flex;gap:10px;max-width:760px;margin-top:28px}.search-results-section{min-height:45vh}.search-results-head{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-bottom:26px;border-bottom:1px solid var(--line)}.search-results-head p{font-family:Arial,sans-serif;color:var(--muted)}
.search-results{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;padding-top:28px}.search-result{padding:26px;border:1px solid var(--line);border-radius:8px;background:#fff}.search-result h2{font-size:1.5rem;margin:5px 0 10px}.search-result h2 a{text-decoration:none}.search-result>p:not(.result-testament){color:#505b52}
.result-testament{margin:0;font-family:Arial,sans-serif;font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--gold)}.result-link{font-family:Arial,sans-serif;font-size:.84rem;font-weight:700;text-decoration:none;color:#39513e}
@media(max-width:760px){.search-callout-inner{grid-template-columns:1fr;gap:28px}.home-site-search,.search-page-form{flex-direction:column}.search-results-head{align-items:stretch;flex-direction:column}.search-results{grid-template-columns:1fr}}

/* v5 private contact + message center */
.footer-links{font-size:.8rem}.footer-links a{color:inherit}
.contact-hero,.message-hero{background:linear-gradient(135deg,#17231b,#28392c);color:#fff}
.contact-hero .section,.message-hero .section{padding-top:68px;padding-bottom:68px}
.contact-hero h1,.message-hero h1{font-size:clamp(2.4rem,6vw,4.1rem);line-height:1.06;margin:12px 0 18px;font-weight:500}
.contact-hero p:not(.eyebrow),.message-hero p:not(.eyebrow){color:#dce4de;font-size:1.12rem;max-width:760px}
.contact-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:start}
.contact-info h2{font-size:2.4rem;margin:10px 0 26px}.contact-steps{display:grid;gap:20px}.contact-steps>div{display:grid;grid-template-columns:42px 1fr;gap:14px;align-items:start}.contact-steps strong{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--forest);color:#fff}.contact-steps p{margin:5px 0}
.privacy-note{margin-top:32px;padding:18px 20px;background:var(--cream);border-left:3px solid var(--gold);font-size:.95rem}
.contact-card,.admin-login-card{padding:34px;border:1px solid var(--line);border-radius:10px;background:#fff;box-shadow:var(--shadow)}
.contact-card form,.admin-login-card form,.reply-form{display:grid;gap:18px}
.contact-card label,.admin-login-card label,.reply-form label{display:grid;gap:7px;font-family:Arial,sans-serif;font-size:.84rem;font-weight:700}
.contact-card input,.contact-card textarea,.admin-login-card input,.reply-form textarea{width:100%;border:1px solid #c9c2b6;border-radius:5px;padding:12px 13px;background:#fff;color:var(--ink);font:inherit}
.contact-card textarea,.reply-form textarea{resize:vertical}.contact-card input:focus,.contact-card textarea:focus,.admin-login-card input:focus,.reply-form textarea:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(184,144,80,.13)}
.turnstile-box{min-height:65px}.form-status{margin:0;color:#8a4b37;font-family:Arial,sans-serif;font-size:.82rem}.form-small{margin:0;color:var(--muted);font-family:Arial,sans-serif;font-size:.76rem}
.message-center{min-height:50vh}.message-center-head,.thread-topbar,.admin-toolbar,.admin-thread-header{display:flex;justify-content:space-between;gap:22px;align-items:center}.message-center-head h2{font-size:2.2rem;margin:0}
.saved-threads{display:grid;gap:10px;margin-top:30px}.saved-thread{width:100%;border:1px solid var(--line);background:#fff;border-radius:7px;padding:18px 20px;text-align:left;display:flex;justify-content:space-between;align-items:center;gap:20px;color:var(--ink);cursor:pointer}.saved-thread:hover{border-color:var(--gold)}.saved-thread span:first-child{display:grid;gap:3px}.saved-thread small{font-family:Arial,sans-serif;color:var(--muted)}
.empty-card,.private-link-open{padding:25px;border:1px solid var(--line);border-radius:7px;background:var(--cream);margin-top:25px}.private-link-open{background:#fff}.private-link-open h3{margin-top:0}
.text-button{border:0;background:none;color:#39513e;font-family:Arial,sans-serif;font-weight:700;cursor:pointer;padding:8px 0}.thread-header{padding:28px 0 20px;border-bottom:1px solid var(--line)}.thread-header h2{font-size:2rem;margin:8px 0}.thread-header p:last-child{color:var(--muted)}
.thread-messages{display:grid;gap:14px;padding:28px 0}.thread-message{max-width:82%;padding:16px 18px;border-radius:10px;border:1px solid var(--line);background:#fff}.thread-message.from-admin{justify-self:start;background:var(--cream);border-color:#d8ccb8}.thread-message.from-visitor{justify-self:end;background:#f7faf7}.message-sender{font-family:Arial,sans-serif;font-size:.76rem;font-weight:700;color:#3c4c40;margin-bottom:6px}.thread-message time{display:block;margin-top:9px;font-family:Arial,sans-serif;font-size:.68rem;color:#8b918c}.reply-form{border-top:1px solid var(--line);padding-top:25px}
.admin-body{background:#f5f3ed}.admin-shell{max-width:1200px}.admin-login-card{max-width:480px;margin:50px auto}.admin-login-card h1{font-size:2.6rem;margin:8px 0 12px}.admin-toolbar{margin-bottom:24px}.admin-toolbar h1{margin:5px 0;font-size:2.7rem}.admin-toolbar-actions{display:flex;gap:10px}
.admin-grid{display:grid;grid-template-columns:350px 1fr;min-height:650px;border:1px solid var(--line);border-radius:10px;background:#fff;overflow:hidden}.admin-grid aside{border-right:1px solid var(--line);background:#fbfaf6}.admin-filter{display:flex;border-bottom:1px solid var(--line)}.admin-filter-btn{flex:1;padding:13px;border:0;background:transparent;font-family:Arial,sans-serif;font-weight:700;cursor:pointer}.admin-filter-btn.active{background:var(--cream);color:#2d4132}
.admin-thread-list{max-height:750px;overflow:auto}.admin-thread-item{display:grid;width:100%;gap:4px;text-align:left;padding:16px;border:0;border-bottom:1px solid var(--line);background:transparent;cursor:pointer}.admin-thread-item:hover,.admin-thread-item.selected{background:var(--cream)}.admin-thread-subject{font-weight:700}.admin-thread-name,.admin-thread-preview,.admin-thread-item time{font-family:Arial,sans-serif;font-size:.72rem;color:var(--muted)}.admin-thread-preview{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-thread-pane{padding:28px;min-width:0}.admin-empty{padding:35px;color:var(--muted);text-align:center}.admin-thread-header h2{margin:5px 0 6px}.admin-thread-header p{margin:0}
@media(max-width:900px){.contact-layout{grid-template-columns:1fr}.admin-grid{grid-template-columns:1fr}.admin-grid aside{border-right:0;border-bottom:1px solid var(--line)}}
@media(max-width:760px){.message-center-head,.thread-topbar,.admin-toolbar,.admin-thread-header{align-items:flex-start;flex-direction:column}.thread-message{max-width:94%}.contact-card{padding:24px}.admin-toolbar-actions{width:100%;flex-direction:column}.admin-grid{border-radius:0;margin-left:-5.5%;margin-right:-5.5%}.admin-thread-pane{padding:20px}}
