:root{--bg:#120905;--panel:#1d1008;--gold:#d6b44a;--cream:#f2e8c7}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;color:var(--cream);font-family:Georgia,'Times New Roman',serif;background:radial-gradient(circle at 50% -15%,#4a2812 0,#251309 30%,#120905 62%,#090503 100%)}a{color:inherit;text-decoration:none}
.site-header.premium-header{position:sticky;top:0;z-index:40;display:grid;grid-template-columns:minmax(340px,1fr) minmax(420px,1.25fr) auto;gap:26px;align-items:center;padding:17px 4.4vw;background:linear-gradient(180deg,rgba(29,16,8,.985),rgba(15,8,5,.985));border-bottom:1px solid #633b18;box-shadow:0 8px 24px rgba(0,0,0,.34);backdrop-filter:blur(8px)}
.brand-block{display:flex;gap:16px;align-items:center}.brand-icon{font-size:54px;line-height:.8;color:#e6b93f;text-shadow:0 2px 8px #000}.brand{font-size:40px;font-weight:700;color:#f0d98d;letter-spacing:.3px}.tagline{margin-top:3px;color:#c7a45b;letter-spacing:4px;font-size:10px}.header-right{display:flex;flex-direction:column;gap:8px}.search{display:flex;gap:9px}.search input{flex:1;min-width:270px;background:#0d0907;border:1px solid #9b6427;color:#f3e5bf;border-radius:8px;padding:11px 14px;font:16px Georgia,serif}.btn{border:1px solid #9a6426;background:linear-gradient(#7a421f,#4b250f);color:#ffe3a0;padding:10px 16px;border-radius:8px;cursor:pointer;font-weight:700}.btn:hover{filter:brightness(1.12)}
.type-legend{display:flex;gap:16px;align-items:center;justify-content:flex-end;flex-wrap:wrap;padding:7px 12px;border:1px solid #68421c;border-radius:7px;background:rgba(14,8,5,.72);font-size:12px}.type-legend span{display:flex;align-items:center;gap:6px;color:#eadbb8}.dot{width:16px;height:16px;border-radius:50%;display:inline-block;box-shadow:inset 0 1px 2px rgba(255,255,255,.35),0 0 0 1px #111}.dot.pdf{background:#204f8c}.dot.mp3{background:#4b2d61}.dot.mp4{background:#2d2d2d}.dot.custom{background:#214c3a}.dot.custom2{background:#6d2334}.scripture-quote{text-align:right;color:#d7a949;font-style:italic;font-size:14px;line-height:1.25}.scripture-quote small{display:block;margin-top:6px;font-style:normal;letter-spacing:4px;font-size:9px}
.library.premium-library{padding:20px 4.4vw 38px}.collection-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:12px 4px 16px;border-bottom:1px solid #5b3518;margin-bottom:8px}.collection-heading h2{margin:0;color:#edcf72;font-size:28px}.collection-heading p{margin:6px 0 0;color:#cbb98e;font:14px/1.4 Arial,sans-serif}.resource-total{color:#d9bd68;font-weight:700;white-space:nowrap}.book-source{display:none}.shelf-wall{display:flex;flex-direction:column;gap:28px}.shelf-row-shell{position:relative;padding:12px 18px 23px;min-height:186px}.shelf-row{display:flex;align-items:flex-end;gap:4px;min-height:162px;position:relative;z-index:2}.shelf-row-shell:after{content:'';position:absolute;left:0;right:0;bottom:0;height:22px;background:linear-gradient(#8b4d20 0,#553017 16%,#31180b 53%,#160b06 100%);border-radius:3px;box-shadow:0 8px 18px #000,inset 0 2px 2px rgba(255,212,129,.26)}.shelf-row-shell:before{content:'';position:absolute;left:14px;right:14px;bottom:20px;height:8px;background:linear-gradient(90deg,rgba(255,202,106,.08),rgba(255,220,145,.22),rgba(255,202,106,.08));filter:blur(4px);opacity:.55}.shelf-number{position:absolute;right:5px;top:-5px;color:#8f713f;font:11px Arial,sans-serif;letter-spacing:1px}
.book-wrap{position:relative;flex:0 0 auto;padding-top:8px}.book{--book:#204f8c;position:relative;width:46px;height:156px;border-radius:5px 5px 2px 2px;overflow:hidden;cursor:pointer;border:1px solid rgba(255,225,145,.13);background:radial-gradient(circle at 17% 18%,rgba(255,255,255,.08) 0 1px,transparent 2px),radial-gradient(circle at 70% 70%,rgba(0,0,0,.18) 0 1px,transparent 2px),linear-gradient(90deg,rgba(0,0,0,.45),transparent 15%,rgba(255,255,255,.09) 31%,transparent 44%,rgba(0,0,0,.23) 75%,rgba(255,255,255,.06) 88%,rgba(0,0,0,.38)),var(--book);box-shadow:inset 0 0 11px rgba(0,0,0,.7),inset 1px 0 rgba(255,255,255,.08),inset -2px 0 rgba(0,0,0,.45),3px 4px 7px rgba(0,0,0,.7);transition:.15s ease}.book:hover{transform:translateY(-7px);filter:brightness(1.08);box-shadow:inset 0 0 11px rgba(0,0,0,.6),3px 12px 13px rgba(0,0,0,.75)}.book:before,.book:after{content:'';position:absolute;left:3px;right:3px;height:5px;border-top:1px solid #c29e3f;border-bottom:1px solid #72571c}.book:before{top:22px}.book:after{bottom:18px}.badge{position:absolute;top:5px;left:50%;transform:translateX(-50%);font:bold 7px/1 Arial,sans-serif;color:#3d2b00;background:linear-gradient(#f2d65f,#aa821a);border:1px solid #6f5500;border-radius:4px;padding:2px 4px;box-shadow:inset 0 1px #fff3a0}.spine-title{position:absolute;top:34px;bottom:31px;left:4px;right:4px;display:flex;align-items:center;justify-content:center;gap:2px;overflow:hidden;color:#d8b44c;font-size:8px;font-weight:700;text-shadow:0 1px 1px #1a0d00}.spine-title span{writing-mode:vertical-rl;transform:rotate(180deg);white-space:nowrap;display:block;max-height:100%;line-height:1}.spine-title.long{font-size:7.2px}.spine-title.very-long{font-size:6.6px;left:3px;right:3px}.spine-author{position:absolute;bottom:4px;left:2px;right:2px;text-align:center;color:#d6b44a;font:700 5.7px/1 Arial,sans-serif;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hover-card{pointer-events:none;opacity:0;position:fixed;left:0;top:0;z-index:9999;visibility:hidden;width:430px;max-width:min(430px,calc(100vw - 28px));padding:18px;border:1px solid #9d752e;border-radius:10px;background:linear-gradient(180deg,rgba(19,12,8,.995),rgba(12,8,5,.995));box-shadow:0 18px 45px rgba(0,0,0,.9),inset 0 1px rgba(255,225,135,.08);display:grid;grid-template-columns:86px 1fr;gap:18px;transition:opacity .12s ease}.book-wrap:hover .hover-card,.book-wrap:focus-within .hover-card{visibility:visible;opacity:1}.hover-book-mini{--book:#204f8c;position:relative;width:74px;height:230px;border-radius:6px 6px 2px 2px;background:linear-gradient(90deg,rgba(0,0,0,.42),transparent 18%,rgba(255,255,255,.09) 35%,transparent 49%,rgba(0,0,0,.25) 78%),var(--book);box-shadow:inset 0 0 14px rgba(0,0,0,.65),4px 5px 10px #000;border:1px solid rgba(255,225,145,.16)}.hover-book-mini:before,.hover-book-mini:after{content:'';position:absolute;left:6px;right:6px;height:7px;border-top:1px solid #c49c35;border-bottom:1px solid #795b17}.hover-book-mini:before{top:34px}.hover-book-mini:after{bottom:28px}.mini-badge{position:absolute;top:12px;left:50%;transform:translateX(-50%);background:linear-gradient(#efd258,#a47a15);color:#382800;border:1px solid #6b4f00;border-radius:4px;padding:3px 7px;font:bold 10px Arial}.mini-title{position:absolute;top:54px;bottom:43px;left:18px;right:18px;writing-mode:vertical-rl;transform:rotate(180deg);overflow:hidden;color:#d8b44c;font-weight:700;font-size:12px;text-align:center}.hover-copy h3{margin:0 0 8px;color:#f0cf68;font-size:24px;line-height:1.15}.hover-copy .meta{color:#e0cca0;font:600 14px/1.4 Arial,sans-serif;margin-bottom:10px}.hover-copy p{margin:0;color:#eee3c9;font:15px/1.45 Arial,sans-serif}.book-wrap:focus-visible{outline:none}.book-wrap:focus-visible .book{outline:2px solid #d6b44a;outline-offset:3px}.no-results{text-align:center;padding:60px 20px;color:#d8c69a;font-size:20px}
.site-footer{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:15px 3.5vw 18px;border-top:1px solid #503017;background:rgba(13,8,5,.92);color:#c7ad73;font-size:13px}.footer-center{letter-spacing:5px;color:#9a7440}
.viewer-shell{max-width:1200px;margin:24px auto;padding:0 20px}.viewer-head{display:flex;gap:16px;align-items:flex-start;margin-bottom:16px}.viewer-head h1{margin:0;color:#f1d170}.viewer-meta{color:#cdbb91;margin-top:6px}.media-box{background:#070504;border:1px solid #57331b;border-radius:12px;padding:18px;box-shadow:0 20px 50px rgba(0,0,0,.45)}video{width:100%;max-height:75vh;background:#000;border-radius:8px}.audio-cover{min-height:420px;background:#0d0805 center/contain no-repeat;border-radius:8px;display:flex;align-items:flex-end;justify-content:center;padding:18px}.audio-cover audio{width:min(760px,94%)}.book-reader{display:grid;grid-template-columns:1fr 1fr;gap:2px;max-width:1100px;margin:auto;perspective:1600px;background:#6c4b28;padding:13px;border-radius:8px;box-shadow:0 18px 48px #000}.page{background:#f3ecd9;color:#20170f;min-height:70vh;display:flex;align-items:flex-start;justify-content:center;overflow:auto;position:relative;padding:12px;box-shadow:inset 0 0 22px rgba(93,63,31,.18)}.page.left{border-radius:8px 0 0 8px;box-shadow:inset -18px 0 22px rgba(80,50,22,.12)}.page.right{border-radius:0 8px 8px 0;box-shadow:inset 18px 0 22px rgba(80,50,22,.12)}.page canvas{max-width:none;height:auto;flex:0 0 auto;box-shadow:0 2px 9px rgba(0,0,0,.16)}.page-tip{position:absolute;bottom:10px;color:#816d4f;font:12px Arial,sans-serif}.page.left .page-tip{left:12px}.page.right .page-tip{right:12px}.admin{max-width:1100px;margin:28px auto;padding:0 20px}.card{background:#211108;border:1px solid #5e361a;border-radius:12px;padding:20px;margin-bottom:18px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.field label{display:block;color:#d5ba71;margin-bottom:5px}.field input,.field select,.field textarea{width:100%;padding:10px;background:#120b07;color:#f5ead0;border:1px solid #69401f;border-radius:7px}.field textarea{min-height:95px}.full{grid-column:1/-1}.admin-table{width:100%;border-collapse:collapse;font:14px Arial,sans-serif}.admin-table th,.admin-table td{border-bottom:1px solid #4b2a17;padding:10px;text-align:left}.admin-table th{color:#d4b860}.notice{padding:10px 12px;background:#2b3d24;border:1px solid #5f884c;border-radius:8px;margin-bottom:14px}.warn{background:#452517;border-color:#9b5f38}.reader-toolbar{display:flex;align-items:center;justify-content:center;gap:10px;margin:14px auto 0;max-width:760px;color:#d7c79d}.reader-toolbar input[type=range]{width:min(360px,48vw);accent-color:#c89b31}.zoom-btn,.zoom-fit{border:1px solid #785020;background:linear-gradient(#7b411d,#4c250f);color:#ffe7a3;border-radius:8px;cursor:pointer;font-weight:700}.zoom-btn{width:42px;height:38px;font-size:24px;line-height:1}.zoom-fit{padding:9px 13px;font:700 14px Georgia,'Times New Roman',serif}.zoom-label{min-width:52px;text-align:center;font:700 14px Arial,sans-serif;color:#f1d170}.simple-reader-tools{margin-top:14px}.large-reader{max-width:1120px;margin:0 auto;background:#0b0705;border:1px solid #65401f;border-radius:12px;padding:14px;box-shadow:0 20px 50px rgba(0,0,0,.55)}.large-reader-top{position:sticky;top:78px;z-index:9;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;padding:10px 12px;margin-bottom:12px;background:rgba(17,9,5,.96);border:1px solid #5b3519;border-radius:9px;backdrop-filter:blur(7px)}.large-page-status{text-align:center;color:#f1d170;font:700 16px Georgia,serif}.large-reader-nav{justify-self:end;display:flex;gap:8px}.large-page{display:flex;justify-content:center;align-items:flex-start;min-height:70vh;padding:18px;background:#d8c8a3;border-radius:8px;overflow:visible}.large-page canvas{display:block;background:white;box-shadow:0 7px 24px rgba(0,0,0,.42)}.large-reader-bottom{display:flex;align-items:center;justify-content:center;gap:16px;color:#cdbb91;padding:14px 4px 2px;font:14px Arial,sans-serif}
@media(max-width:1180px){.site-header.premium-header{grid-template-columns:1fr 1fr}.scripture-quote{display:none}.brand{font-size:32px}.tagline{letter-spacing:2.5px}}
@media(max-width:760px){.site-header.premium-header{grid-template-columns:1fr;padding:14px 16px;gap:12px}.brand-icon{font-size:40px}.brand{font-size:29px}.tagline{font-size:9px}.search input{min-width:0;width:100%}.type-legend{justify-content:flex-start;gap:10px}.library.premium-library{padding:14px 8px 30px}.collection-heading{align-items:flex-start;flex-direction:column}.shelf-wall{gap:20px}.shelf-row-shell{padding:10px 8px 21px;min-height:174px}.shelf-row{gap:3px;min-height:151px}.book{width:42px;height:148px}.spine-title{font-size:7.3px}.spine-title.long{font-size:6.7px}.spine-title.very-long{font-size:6.1px}.hover-card{display:grid;left:12px!important;right:12px;top:auto!important;bottom:15px;width:auto;max-width:none;grid-template-columns:66px 1fr;visibility:hidden}.book-wrap.mobile-open .hover-card{visibility:visible;opacity:1}.hover-book-mini{width:58px;height:178px}.mini-title{font-size:10px}.site-footer{flex-direction:column;text-align:center}.book-reader{grid-template-columns:1fr;padding:8px}.page.left{display:none}.page.right{border-radius:6px}.grid{grid-template-columns:1fr}.full{grid-column:auto}.large-reader{padding:8px}.large-reader-top{top:126px;grid-template-columns:1fr auto}.large-reader-top .large-page-status{grid-row:2;grid-column:1/-1}.large-page{padding:8px}.large-reader-bottom span{display:none}}

/* --- Customizable site branding --- */
.site-logo{width:58px;height:58px;object-fit:contain;flex:0 0 58px;filter:drop-shadow(0 3px 7px rgba(0,0,0,.55))}
.logo-settings-box{border-top:1px solid #4f2d16;padding-top:14px;margin-top:4px}
.logo-preview-row{display:flex;align-items:center;gap:14px;margin-top:12px;color:#d9c9a3;font:14px Arial,sans-serif}
.logo-preview-row img{width:72px;height:72px;object-fit:contain;border:1px solid #69401f;border-radius:8px;background:#0c0805;padding:6px}
.default-logo-preview{width:72px;height:72px;display:flex;align-items:center;justify-content:center;border:1px solid #69401f;border-radius:8px;background:#0c0805;color:#e6b93f;font-size:42px}
.remove-logo{display:flex!important;align-items:center;gap:8px;margin:0!important;color:#ead8aa!important}.remove-logo input{width:auto!important}
@media(max-width:760px){.site-logo{width:46px;height:46px;flex-basis:46px}}


/* --- Header logo size fix + cache-refresh release 2026-09-15 --- */
.site-header.premium-header .brand-block .site-logo{
  width:92px !important;
  height:92px !important;
  flex:0 0 92px !important;
  max-width:none !important;
  max-height:none !important;
  object-fit:contain !important;
  align-self:center;
}
@media (min-width:761px) and (max-width:1180px){
  .site-header.premium-header .brand-block .site-logo{
    width:82px !important;
    height:82px !important;
    flex-basis:82px !important;
  }
}
@media (max-width:760px){
  .site-header.premium-header .brand-block .site-logo{
    width:62px !important;
    height:62px !important;
    flex-basis:62px !important;
  }
}

/* --- Structured John 14:6 / manuscript quote block --- */
.site-header.premium-header{
  grid-template-columns:minmax(430px,1.1fr) minmax(430px,1fr) minmax(420px,.95fr);
}
.scripture-quote-structured{
  width:100%;
  max-width:560px;
  min-width:0;
  justify-self:end;
  text-align:center;
  color:#d7a949;
  padding:3px 4px;
}
.scripture-quote-structured .quote-verse{
  color:#e1ad3c;
  font-size:17px;
  line-height:1.35;
  font-weight:700;
  font-style:italic;
  text-wrap:balance;
}
.scripture-quote-structured .quote-source-title{
  margin-top:10px;
  color:#e5bd63;
  font-size:12px;
  line-height:1.3;
  font-weight:700;
  font-style:normal;
}
.scripture-quote-structured .quote-source-note{
  margin-top:3px;
  color:#c99c45;
  font-size:11px;
  line-height:1.3;
  font-style:italic;
}
.scripture-quote-structured .quote-reference{
  margin-top:9px;
  color:#e0b754;
  font-size:10px;
  line-height:1;
  font-style:normal;
  font-weight:700;
  letter-spacing:5px;
}
@media(max-width:1380px){
  .site-header.premium-header{grid-template-columns:minmax(360px,1fr) minmax(380px,1fr) minmax(360px,.9fr);gap:18px}
  .scripture-quote-structured .quote-verse{font-size:15px}
  .scripture-quote-structured .quote-source-title{font-size:11px}
  .scripture-quote-structured .quote-source-note{font-size:10px}
}
@media(max-width:1180px){
  .site-header.premium-header{grid-template-columns:1fr 1fr}
  .scripture-quote-structured{display:none}
}

/* --- Balanced two-line John 14:6 header quote --- */
.scripture-quote-structured{
  max-width:690px;
  text-align:left;
  padding:2px 0 0;
}
.scripture-quote-structured .quote-verse{
  text-align:center;
  margin:0 auto;
  color:#e5ad34;
  font-size:18px;
  line-height:1.28;
  font-weight:700;
  font-style:italic;
}
.scripture-quote-structured .quote-line{
  display:block;
  white-space:nowrap;
}
.scripture-quote-structured .quote-source-title,
.scripture-quote-structured .quote-source-note,
.scripture-quote-structured .quote-reference{
  text-align:right;
}
.scripture-quote-structured .quote-source-title{
  margin-top:13px;
  font-size:12.5px;
  line-height:1.25;
}
.scripture-quote-structured .quote-source-note{
  margin-top:4px;
  font-size:11.5px;
  line-height:1.3;
}
.scripture-quote-structured .quote-reference{
  margin-top:10px;
  color:#f2c650;
  font-size:13px;
  line-height:1;
  font-weight:800;
  letter-spacing:6px;
  text-shadow:0 1px 0 #241300,0 0 8px rgba(218,170,55,.18);
}
@media(max-width:1460px){
  .scripture-quote-structured{max-width:620px}
  .scripture-quote-structured .quote-verse{font-size:16px}
  .scripture-quote-structured .quote-source-title{font-size:11.5px}
  .scripture-quote-structured .quote-source-note{font-size:10.5px}
  .scripture-quote-structured .quote-reference{font-size:12px}
}


/* --- Responsive balanced John 14:6 header, release 2026-09-15 21:10 --- */
/* Smaller type, keep quote visible on smaller screens, preserve two scripture lines. */
.site-header.premium-header{
  grid-template-columns:minmax(400px,1.05fr) minmax(390px,1fr) minmax(360px,.88fr);
  gap:18px;
}
.scripture-quote-structured{
  max-width:600px;
  width:100%;
  justify-self:end;
  text-align:left;
  padding:0;
}
.scripture-quote-structured .quote-verse{
  margin:0 auto;
  text-align:center;
  color:#e5ad34;
  font-size:14px;
  line-height:1.24;
  font-weight:700;
  font-style:italic;
}
.scripture-quote-structured .quote-line{
  display:block;
  white-space:nowrap;
}
.scripture-quote-structured .quote-source-title,
.scripture-quote-structured .quote-source-note,
.scripture-quote-structured .quote-reference{
  text-align:right;
}
.scripture-quote-structured .quote-source-title{
  margin-top:9px;
  color:#e5bd63;
  font-size:10.5px;
  line-height:1.22;
  font-weight:700;
  font-style:normal;
}
.scripture-quote-structured .quote-source-note{
  margin-top:2px;
  color:#c99c45;
  font-size:9.5px;
  line-height:1.25;
  font-style:italic;
}
.scripture-quote-structured .quote-reference{
  margin-top:8px;
  color:#f2c650;
  font-size:11.5px;
  line-height:1;
  font-style:normal;
  font-weight:900;
  letter-spacing:5px;
  text-shadow:0 1px 0 #241300,0 0 8px rgba(218,170,55,.18);
}

/* Medium screens: move the scripture block below the title/search instead of hiding it. */
@media (max-width:1180px){
  .site-header.premium-header{
    grid-template-columns:minmax(320px,1fr) minmax(360px,1fr);
    gap:12px 18px;
    align-items:center;
  }
  .scripture-quote-structured{
    display:block !important;
    grid-column:1 / -1;
    max-width:none;
    width:100%;
    justify-self:stretch;
    padding:8px 0 2px;
    border-top:1px solid rgba(120,75,31,.45);
  }
  .scripture-quote-structured .quote-verse{
    font-size:12px;
    line-height:1.2;
  }
  .scripture-quote-structured .quote-source-title{font-size:10px;margin-top:7px}
  .scripture-quote-structured .quote-source-note{font-size:9px}
  .scripture-quote-structured .quote-reference{font-size:11px;letter-spacing:4px;margin-top:6px}
}

/* Small screens: keep the verse visible and still exactly two lines. */
@media (max-width:760px){
  .site-header.premium-header{
    grid-template-columns:1fr;
    padding:12px 14px;
    gap:10px;
  }
  .scripture-quote-structured{
    display:block !important;
    grid-column:1;
    width:100%;
    padding-top:8px;
  }
  .scripture-quote-structured .quote-verse{
    font-size:clamp(9px,2.8vw,11px);
    line-height:1.18;
  }
  .scripture-quote-structured .quote-line{
    white-space:nowrap;
  }
  .scripture-quote-structured .quote-source-title{
    font-size:9px;
    margin-top:6px;
  }
  .scripture-quote-structured .quote-source-note{
    font-size:8.5px;
  }
  .scripture-quote-structured .quote-reference{
    font-size:10.5px;
    letter-spacing:3.5px;
    margin-top:6px;
  }
}

/* Very narrow phones: shrink just enough to keep the two verse lines intact. */
@media (max-width:430px){
  .scripture-quote-structured .quote-verse{
    font-size:8.2px;
  }
  .scripture-quote-structured .quote-source-title{font-size:8.3px}
  .scripture-quote-structured .quote-source-note{font-size:7.8px}
  .scripture-quote-structured .quote-reference{font-size:9.5px;letter-spacing:3px}
}

/* --- Manuscript & Source Guide --- */
.source-guide{
  margin:44px 0 10px;
  border:1px solid rgba(158,105,39,.78);
  border-radius:14px;
  background:linear-gradient(180deg,rgba(34,19,10,.96),rgba(17,9,5,.98));
  box-shadow:0 16px 38px rgba(0,0,0,.42), inset 0 1px rgba(255,226,145,.05);
  overflow:hidden;
}
.source-guide-heading{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:22px 26px 18px;
  border-bottom:1px solid rgba(112,68,27,.72);
  background:linear-gradient(90deg,rgba(67,38,17,.24),transparent 65%);
}
.source-guide-heading h2{
  margin:0;
  color:#efcc6d;
  font-size:26px;
  line-height:1.15;
  letter-spacing:.2px;
}
.source-guide-heading p{
  margin:7px 0 0;
  color:#cdbb91;
  font:14px/1.45 Arial,sans-serif;
  max-width:780px;
}
.source-guide-toggle{
  flex:0 0 auto;
  border:1px solid #795020;
  border-radius:9px;
  background:linear-gradient(#6c3a19,#40200d);
  color:#f1d170;
  padding:10px 13px;
  cursor:pointer;
  font:700 13px/1 Georgia,'Times New Roman',serif;
  white-space:nowrap;
}
.source-guide-toggle:hover{filter:brightness(1.12)}
.source-guide-toggle span{display:inline-block;margin-left:6px;font-size:16px}
.source-guide-body{padding:22px 26px 24px}
.source-guide-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px 20px;
}
.source-guide-item{
  min-width:0;
  padding:14px 16px;
  border:1px solid rgba(107,67,29,.62);
  border-radius:10px;
  background:rgba(10,6,4,.42);
}
.source-guide-item h3{
  margin:0 0 6px;
  color:#e7bf5f;
  font-size:17px;
  line-height:1.2;
}
.source-guide-item p{
  margin:0;
  color:#e5dbc2;
  font:14px/1.5 Arial,sans-serif;
}
.source-guide-note{
  margin-top:18px;
  padding:12px 14px;
  border-left:3px solid #c89b31;
  background:rgba(67,40,15,.32);
  color:#dacaa4;
  font:13.5px/1.45 Arial,sans-serif;
}
.source-guide-note strong{color:#f0cf77}
@media(max-width:820px){
  .source-guide{margin-top:30px}
  .source-guide-heading{align-items:flex-start;padding:18px;gap:14px}
  .source-guide-heading h2{font-size:22px}
  .source-guide-heading p{font-size:13px}
  .source-guide-body{padding:16px 18px 18px}
  .source-guide-grid{grid-template-columns:1fr;gap:10px}
  .source-guide-item{padding:12px 13px}
  .source-guide-item h3{font-size:16px}
  .source-guide-item p{font-size:13px}
  .source-guide-toggle{padding:8px 10px;font-size:12px}
}
@media(max-width:540px){
  .source-guide-heading{display:block}
  .source-guide-toggle{margin-top:14px;width:100%}
}

/* --- Click-to-enlarge site logo --- */
.site-logo-button{
  appearance:none;
  border:0;
  padding:0;
  margin:0;
  background:transparent;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:zoom-in;
  border-radius:10px;
  flex:0 0 auto;
}
.site-logo-button:focus-visible{
  outline:2px solid #d6b44a;
  outline-offset:4px;
}
.site-logo-button .site-logo{display:block}
.logo-lightbox[hidden]{display:none!important}
.logo-lightbox{
  position:fixed;
  inset:0;
  z-index:100000;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:34px;
  background:rgba(4,2,1,.88);
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
}
.logo-lightbox-stage{
  display:flex;
  align-items:center;
  justify-content:center;
  width:min(900px,92vw);
  height:min(760px,84vh);
  padding:26px;
  border:1px solid #8c6228;
  border-radius:16px;
  background:radial-gradient(circle at 50% 40%,rgba(72,41,18,.72),rgba(16,9,5,.96) 68%);
  box-shadow:0 30px 90px rgba(0,0,0,.88),inset 0 1px rgba(255,225,145,.08);
}
.logo-lightbox-stage img{
  display:block;
  max-width:100%;
  max-height:100%;
  width:auto;
  height:auto;
  object-fit:contain;
  filter:drop-shadow(0 12px 24px rgba(0,0,0,.6));
}
.logo-lightbox-close{
  position:fixed;
  top:18px;
  right:22px;
  z-index:100001;
  width:46px;
  height:46px;
  border:1px solid #a4732c;
  border-radius:50%;
  background:rgba(35,19,9,.96);
  color:#f2d276;
  font:400 34px/40px Arial,sans-serif;
  cursor:pointer;
  box-shadow:0 8px 24px rgba(0,0,0,.55);
}
.logo-lightbox-close:hover{filter:brightness(1.16)}
.logo-lightbox-open{overflow:hidden}
@media(max-width:760px){
  .logo-lightbox{padding:18px}
  .logo-lightbox-stage{width:94vw;height:78vh;padding:16px}
  .logo-lightbox-close{top:10px;right:12px;width:42px;height:42px;font-size:30px;line-height:36px}
}

/* Keep book hover previews above neighboring shelves. */
.shelf-row-shell:hover,
.shelf-row-shell:focus-within{
  z-index:50;
}

/* --- Biblical Maps & History special volume --- */
.maps-book{display:grid;gap:18px}.maps-book-intro{padding:4px 2px 8px}.maps-book-intro h2{margin:0 0 7px;color:#f1d170;font-size:30px}.maps-book-intro p{margin:0;color:#d9c9a4;font:15px/1.5 Arial,sans-serif;max-width:900px}.maps-entry{border:1px solid #63401e;border-radius:12px;padding:20px;background:linear-gradient(180deg,rgba(39,24,13,.88),rgba(18,11,7,.94));box-shadow:inset 0 1px rgba(255,230,160,.04)}.maps-entry-featured{border-color:#8b672a;background:linear-gradient(180deg,rgba(47,35,17,.95),rgba(18,12,7,.97))}.maps-entry-kicker{color:#b99643;font:700 10px/1 Arial,sans-serif;letter-spacing:2.2px;margin-bottom:8px}.maps-entry h3{margin:0 0 9px;color:#e9c765;font-size:23px}.maps-entry p{color:#e6dcc5;font:15px/1.55 Arial,sans-serif}.maps-actions{display:flex;gap:10px;flex-wrap:wrap;margin:15px 0 4px}.maps-btn-secondary{background:linear-gradient(#3f3b31,#28251e);border-color:#6f674f}.maps-note{margin:14px 0 0!important;padding:11px 13px;border-left:3px solid #b28b34;background:rgba(95,65,22,.18);color:#cfbf9b!important;font-size:13px!important}.lands-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 14px;margin-top:12px}.lands-grid>div{display:grid;grid-template-columns:130px 1fr;gap:10px;padding:10px 12px;border:1px solid rgba(104,68,31,.55);border-radius:8px;background:rgba(8,5,3,.34)}.lands-grid b{color:#efcd73}.lands-grid span{color:#e3d8be;font:14px/1.35 Arial,sans-serif}.maps-future{border-style:dashed;opacity:.92}
@media(max-width:760px){.maps-entry{padding:15px}.maps-book-intro h2{font-size:25px}.maps-entry h3{font-size:20px}.lands-grid{grid-template-columns:1fr}.lands-grid>div{grid-template-columns:105px 1fr}.maps-actions .btn{width:100%;text-align:center}}

/* --- Rare manuscripts & archives --- */
.dot.rare{background:#6a3d78}.rare-archive{margin:44px 0 12px;border:1px solid #9b6bb2;border-radius:15px;background:linear-gradient(180deg,#1e1025,#100913);box-shadow:0 18px 42px rgba(0,0,0,.48);overflow:hidden}.rare-archive-head{display:flex;justify-content:space-between;gap:22px;align-items:center;padding:24px 26px 20px;border-bottom:1px solid rgba(175,120,196,.42);background:radial-gradient(circle at 85% 20%,rgba(117,65,140,.26),transparent 32%)}.rare-eyebrow{color:#c795dc;font:700 10px/1 Arial,sans-serif;letter-spacing:2.6px}.rare-archive-head h2{margin:6px 0 6px;color:#f2d17d;font-size:28px}.rare-archive-head p{margin:0;color:#d7c8df;font:14px/1.5 Arial,sans-serif;max-width:850px}.rare-seal{font-size:48px;color:#d4a94d;text-shadow:0 0 18px rgba(212,169,77,.3)}.rare-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:22px}.rare-card{border:1px solid rgba(159,104,181,.42);border-radius:11px;padding:16px 17px;background:linear-gradient(180deg,rgba(67,37,79,.42),rgba(18,10,22,.58))}.rare-type{display:block;color:#b985cd;font:700 9px/1.2 Arial,sans-serif;letter-spacing:1.8px;margin-bottom:7px}.rare-card h3{margin:0 0 8px;color:#edca73;font-size:19px}.rare-card p{margin:0;color:#e5dce8;font:13.5px/1.48 Arial,sans-serif}.rare-links{display:flex;flex-wrap:wrap;gap:7px;margin-top:13px}.rare-links a{display:inline-block;border:1px solid #8f64a0;border-radius:7px;padding:7px 10px;background:#3a2145;color:#f3dfaa;text-decoration:none;font:700 11px/1 Arial,sans-serif}.rare-links a:hover{filter:brightness(1.18)}.rare-archive-note{margin:0 22px 22px;padding:12px 14px;border-left:3px solid #d0a44a;background:rgba(86,55,19,.24);color:#d8c8df;font:13px/1.5 Arial,sans-serif}.rare-archive-note strong{color:#f0d17b}@media(max-width:760px){.rare-archive{margin-top:30px}.rare-archive-head{padding:18px;align-items:flex-start}.rare-archive-head h2{font-size:23px}.rare-seal{font-size:34px}.rare-card-grid{grid-template-columns:1fr;padding:15px}.rare-archive-note{margin:0 15px 15px}}

.genealogy-table{display:grid;gap:6px;margin-top:14px}.gene-row{display:grid;grid-template-columns:1.25fr .8fr 1.2fr 1.6fr;gap:10px;align-items:center;padding:9px 11px;border:1px solid rgba(109,72,31,.55);border-radius:7px;background:rgba(9,6,4,.34);color:#e7ddc6;font:13px/1.35 Arial,sans-serif}.gene-row b{color:#efcd73}.gene-head{background:rgba(92,62,23,.34);color:#cdbb91;font-weight:700}.gene-highlight{border-color:#8e6f31;background:rgba(102,74,28,.23)}@media(max-width:760px){.gene-row{grid-template-columns:1.1fr .8fr 1.1fr}.gene-row span:last-child{grid-column:1/-1;color:#cfbf9b;padding-top:2px}.gene-head span:last-child{display:none}}
