/* fathers.css — the /fathers/ section (Church Fathers). Every class is fa-prefixed
   so nothing here can collide with style.css. Colours and fonts come from the
   site's own variables, so light and dark mode follow the rest of the site. */
.fa-page{padding:0 32px 44px}
.fa-page a{text-decoration:none}
.fa-page h1{font-family:var(--ff);font-size:2rem;color:var(--text);margin:6px 0 8px}
.fa-lede{color:var(--text2);max-width:75ch;margin:0 0 6px;line-height:1.65}
.fa-meta{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}
.fa-chip{font-size:.78rem;padding:4px 10px;border:1px solid var(--gray);border-radius:999px;color:var(--text2);background:var(--light)}

/* ---- single work ---- */
.fa-bar{position:sticky;top:0;z-index:5;background:var(--card-bg);padding:10px 0;border-bottom:1px solid var(--gray);display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;font-size:.9rem}
.fa-bar label{display:inline-flex;gap:6px;align-items:center;cursor:pointer;padding:5px 12px;border:1px solid var(--gray);border-radius:999px;background:var(--light)}
.fa-bar input{accent-color:var(--main)}
.fa-heads,.fa-row{display:grid;grid-template-columns:44px repeat(var(--fa-cols,3),minmax(0,1fr));gap:0 22px}
.fa-heads{padding:12px 0 6px;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--main)}
html.dark .fa-heads{color:var(--accent)}
.fa-heads small{display:block;text-transform:none;letter-spacing:0;font-weight:400;color:var(--text3)}
.fa-chap{margin:28px 0 4px;font-size:.8rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--main);border-bottom:2px solid var(--accent);padding-bottom:4px}
html.dark .fa-chap{color:var(--accent)}
.fa-row{padding:14px 0;border-bottom:1px solid var(--gray);line-height:1.7}
.fa-num a{font-size:.8rem;color:var(--text3)}
.fa-row:target{background:rgba(212,175,55,.12)}
.fa-c-gr.fa-col{font-family:var(--fs);font-size:1.12rem}
.fa-c-md.fa-col{font-size:.98rem}
.fa-c-lk.fa-col{color:var(--text2);font-size:.92rem}
.fa-tn,.fa-rf,.fa-flag{font-family:var(--ff);font-size:.84rem;line-height:1.55;margin:8px 0 0;padding:8px 10px;border-left:3px solid var(--accent);background:var(--light);color:var(--text2)}
.fa-rf{border-left-color:var(--olive)}
.fa-flag{border-left-color:#c0392b}
.fa-tn a,.fa-rf a{color:var(--main);text-decoration:underline}
html.dark .fa-tn a,html.dark .fa-rf a{color:var(--accent)}
.fa-src{margin-top:34px;padding-top:16px;border-top:1px solid var(--gray);font-size:.86rem;line-height:1.65;color:var(--text2)}

/* download box */
.fa-dl{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;margin:14px 0 4px;padding:12px 14px;border:1px solid var(--gray);border-left:4px solid var(--accent);border-radius:6px;background:var(--light);font-size:.9rem}
.fa-dl b{margin-right:6px;color:var(--text)}
.fa-dl a{display:inline-block;padding:5px 12px;border-radius:999px;background:var(--main);color:#fff;font-weight:700;font-size:.84rem}
.fa-dl a:hover{background:var(--olive);color:#fff}
.fa-dl a small{font-weight:400;opacity:.85;margin-left:4px}
html.dark .fa-dl a{background:var(--accent);color:#222}

/* ---- index ---- */
.fa-hero{padding:34px 0 22px;border-bottom:2px solid var(--accent)}
.fa-kick{font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--main)}
html.dark .fa-kick{color:var(--accent)}
.fa-hero h1{font-size:2.5rem;line-height:1.15;margin:8px 0 10px}
.fa-hero p{max-width:72ch;color:var(--text2);line-height:1.7;margin:0 0 8px;font-size:1.02rem}
.fa-cta{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.fa-btn{display:inline-block;padding:10px 20px;border-radius:6px;font-weight:700;font-size:.92rem;background:var(--main);color:#fff}
.fa-btn:hover{background:var(--olive);color:#fff}
.fa-btn.fa-alt{background:transparent;color:var(--main);border:2px solid var(--main)}
html.dark .fa-btn.fa-alt{color:var(--accent);border-color:var(--accent)}
.fa-jump,.fa-pills{display:flex;flex-wrap:wrap;gap:8px}
.fa-jump{margin:18px 0 0}
.fa-pill{display:inline-block;padding:5px 12px;border:1px solid var(--gray);border-radius:999px;font-size:.84rem;background:var(--light);color:var(--text2)}
.fa-h2{font-size:1.45rem;margin:38px 0 4px;color:var(--text)}
.fa-sub{color:var(--text2);margin:0 0 14px;max-width:75ch;line-height:1.6;font-size:.95rem}
.fa-grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.fa-card{border:1px solid var(--gray);border-radius:8px;padding:16px 18px;background:var(--card-bg)}
.fa-card h3{font-size:1.05rem;margin:0 0 2px;color:var(--text)}
.fa-card-sub{font-size:.8rem;font-weight:700;color:var(--main);letter-spacing:.03em;margin-bottom:8px}
html.dark .fa-card-sub{color:var(--accent)}
.fa-card p{font-size:.9rem;line-height:1.6;color:var(--text2);margin:0 0 10px}
.fa-feat{border-top:4px solid var(--accent)}
.fa-st{display:inline-block;font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:3px 8px;border-radius:4px;white-space:nowrap}
.fa-live{background:var(--main);color:#fff}
.fa-soon{background:var(--gray);color:var(--text2)}
html.dark .fa-live{background:var(--accent);color:#222}
.fa-tl{list-style:none;margin:0;padding:0;border-left:3px solid var(--accent)}
.fa-tl-i{display:grid;grid-template-columns:120px 1fr auto;gap:14px;align-items:start;padding:12px 0 12px 16px;border-bottom:1px solid var(--gray);position:relative}
.fa-tl-i::before{content:"";position:absolute;left:-9px;top:20px;width:15px;height:15px;border-radius:50%;background:var(--card-bg);border:3px solid var(--main)}
.fa-tl-i.fa-is-live::before{background:var(--main)}
.fa-tl-d{font-weight:700;color:var(--main);font-size:.9rem}
html.dark .fa-tl-d{color:var(--accent)}
.fa-tl-t{font-weight:700;font-size:1.02rem}
.fa-tl-a{font-size:.88rem;color:var(--text2)}
.fa-tl-u{font-size:.8rem;color:var(--text3);margin-top:2px}
.fa-note{margin-top:14px;padding:12px 14px;border-left:3px solid var(--olive);background:var(--light);font-size:.88rem;line-height:1.6;color:var(--text2)}
.fa-how{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.fa-n{font-size:1.6rem;font-weight:700;color:var(--accent);line-height:1}
.fa-demo{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;font-size:.84rem;line-height:1.5;margin-top:10px}
.fa-demo div{padding:8px 10px;background:var(--light);border-radius:6px;color:var(--text2)}
.fa-demo b{display:block;font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:var(--main);margin-bottom:2px}
html.dark .fa-demo b{color:var(--accent)}
.fa-stat{display:flex;flex-wrap:wrap;gap:22px;margin-top:20px;font-size:.88rem;color:var(--text2)}
.fa-stat b{display:block;font-size:1.4rem;color:var(--text)}

@media(max-width:900px){
 .fa-page{padding:0 16px 30px}
 .fa-grid3,.fa-how,.fa-demo{grid-template-columns:1fr}
 .fa-tl-i{grid-template-columns:1fr;gap:4px}
 .fa-hero h1{font-size:1.9rem}
 .fa-heads{display:none}
 .fa-row{grid-template-columns:1fr;gap:8px}
 .fa-num{order:-1}
 .fa-col::before{content:attr(data-label);display:block;font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--main);margin-bottom:2px}

}

/* parts (e.g. Ignatius's seven letters, the Visions/Mandates/Similitudes of Hermas) and Lake's marginal headings */
.fa-part{margin:46px 0 0;padding:10px 14px;font-size:1.15rem;font-weight:700;color:#fff;background:var(--main);border-radius:6px}
html.dark .fa-part{background:#3d3d1e}
.fa-sh{display:block;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text3);margin-bottom:3px}
.fa-na{color:var(--text3);font-style:italic;font-size:.85rem}
a.fa-st{text-decoration:none}
a.fa-live:hover,a.fa-live:focus{filter:brightness(1.15);text-decoration:underline}
.fa-hero{position:relative;overflow:hidden}
.fa-hero>*:not(.fa-faces){position:relative;z-index:1}
.fa-faces{position:absolute;top:14px;right:0;width:min(46%,430px);display:grid;grid-template-columns:repeat(4,1fr);gap:6px;z-index:0;opacity:.9;pointer-events:none;
  -webkit-mask-image:linear-gradient(to left,#000 35%,transparent 100%);mask-image:linear-gradient(to left,#000 35%,transparent 100%)}
.fa-faces img{width:100%;height:auto;border-radius:6px;display:block;filter:sepia(.25) saturate(.9)}
.fa-faces img:nth-child(even){transform:translateY(10px)}
html.dark .fa-faces{opacity:.55}
@media (max-width:900px){.fa-faces{display:none}}

/* ---- library: breadcrumbs, author pages, A-Z, long single-column works ---- */
.fa-bc{font-size:.82rem;color:var(--text3);margin:10px 0 2px}
.fa-bc a{color:var(--main)}html.dark .fa-bc a{color:var(--accent)}
.fa-bc span{margin:0 4px}
.fa-page.fa-one{max-width:920px}
.fa-toc{margin:14px 0;border:1px solid var(--gray);border-radius:10px;background:var(--light);padding:8px 14px;font-size:.9rem}
.fa-toc summary{cursor:pointer;font-weight:700;color:var(--main)}html.dark .fa-toc summary{color:var(--accent)}
.fa-toc ol{columns:2;column-gap:28px;margin:10px 0 4px;padding-left:22px;max-height:360px;overflow:auto}
.fa-toc li{margin:2px 0;break-inside:avoid;color:var(--text2)}
.fa-toc a{color:var(--text2)}.fa-toc a:hover{color:var(--main)}
.fa-wl{list-style:none;margin:10px 0 18px;padding:0;border-top:1px solid var(--gray)}
.fa-wl li{display:grid;grid-template-columns:minmax(0,1fr) auto 90px;gap:4px 14px;align-items:center;padding:10px 4px;border-bottom:1px solid var(--gray)}
.fa-wl-t{font-weight:600;color:var(--text)}.fa-wl-t:hover{color:var(--main)}
.fa-wl-b{display:flex;gap:6px;flex-wrap:wrap}
.fa-wl-n{font-size:.8rem;color:var(--text3);text-align:right}
.fa-bdg{font-size:.7rem;padding:2px 9px;border:1px solid var(--gray);border-radius:999px;color:var(--text2);background:var(--light);white-space:nowrap}
.fa-bdg-m{border-color:var(--accent);color:var(--text)}
.fa-find{width:100%;max-width:420px;margin:10px 0 14px;padding:10px 14px;border:1px solid var(--gray);border-radius:10px;background:var(--card-bg);color:var(--text);font-size:1rem}
.fa-az{list-style:none;margin:0;padding:0;column-width:340px;column-gap:30px}
.fa-az li{break-inside:avoid;padding:7px 0;border-bottom:1px solid var(--gray);font-size:.92rem;line-height:1.4}
.fa-az a{color:var(--text)}.fa-az a:hover{color:var(--main)}
.fa-az-y,.fa-az-t,.fa-az-n{display:block;font-size:.76rem;color:var(--text3)}
.fa-card h3 a{color:inherit}
@media(max-width:700px){.fa-wl li{grid-template-columns:1fr}.fa-wl-n{text-align:left}.fa-toc ol{columns:1}.fa-page{padding:0 16px 36px}}

.fa-warn{margin:1rem 0 1.4rem;padding:.8rem 1rem;border-left:4px solid #b45309;background:#fef3c7;color:#451a03;border-radius:4px;font-size:.95rem;line-height:1.5}
@media (prefers-color-scheme: dark){.fa-warn{background:#3a2a0a;color:#fde68a;border-left-color:#d97706}}
.fa-bdg-o{border-color:var(--accent);background:transparent;color:var(--text)}
