/* NaijaProfiles / BioHub — editorial theme v2 */
:root{
	--paper:#f6f1e8;--paper-2:#efe6d6;--card:#fffdf9;
	--ink:#17130e;--ink-2:#3e362c;--muted:#7b6f60;--rule:#ddd0ba;--rule-2:#c9b897;
	--accent:#a3321c;--accent-2:#7d2413;--green:#1d4a37;--gold:#b98a32;
	--serif:"Fraunces",Georgia,"Times New Roman",serif;
	--sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
	--w:1200px;--r:4px;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:90px}
body{margin:0;font-family:var(--sans);font-size:17px;line-height:1.65;color:var(--ink);background:var(--paper)}
img{max-width:100%;height:auto;display:block}
a{color:var(--accent);text-decoration:none}
a:hover{color:var(--accent-2)}
h1,h2,h3,h4{font-family:var(--serif);font-weight:700;line-height:1.15;color:var(--ink);margin:1.4em 0 .5em;letter-spacing:-.01em}
h1{font-size:clamp(2rem,1.4rem + 2.6vw,3.3rem)}
h2{font-size:clamp(1.45rem,1.2rem + .9vw,1.85rem)}
h3{font-size:1.2rem}
.wrap{max-width:var(--w);margin:0 auto;padding:0 16px}
.narrow{max-width:760px}
.center{text-align:center}
.muted{color:var(--muted);font-size:.9em}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}
.skip-link{position:absolute;left:-9999px;top:0;background:var(--ink);color:#fff;padding:8px 12px;z-index:100}
.skip-link:focus{left:8px}
.kicker{display:inline-block;font-family:var(--sans);font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}
a.kicker:hover{text-decoration:underline}
.rail-label{font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:0 0 8px}
.dek{font-family:var(--serif);font-weight:500;font-size:1.15rem;line-height:1.45;color:var(--ink-2)}
.read-link{font-weight:600;font-size:.92rem;color:var(--ink);border-bottom:2px solid var(--accent);padding-bottom:1px}
.read-link:hover{color:var(--accent)}

/* Top line + masthead */
.topline{background:var(--ink);color:#d8cdb9;font-size:.78rem}
.topline-inner{display:flex;justify-content:space-between;gap:12px;padding-top:6px;padding-bottom:6px}
.topline-tag{display:none}
@media(min-width:760px){.topline-tag{display:inline}}
.masthead{background:var(--paper);border-bottom:1px solid var(--ink);position:sticky;top:0;z-index:50}
.masthead-inner{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:14px;padding-bottom:10px}
.brand{flex:1;text-align:center;min-width:0}
.brand-name{margin:0;font-family:var(--serif);font-weight:800;font-size:clamp(1.7rem,1.2rem + 2.2vw,2.9rem);letter-spacing:-.03em;line-height:1}
.brand-name a{color:var(--ink)}
.brand-name a:hover{color:var(--ink)}
.custom-logo{max-height:56px;width:auto;margin:0 auto}
.icon-btn{background:none;border:0;padding:8px;color:var(--ink);cursor:pointer;border-radius:50%;display:inline-flex}
.icon-btn:hover{background:var(--paper-2)}
.site-nav{border-top:1px solid var(--rule);display:none}
.site-nav.open{display:block}
.bh-menu{list-style:none;margin:0;padding:6px 0;display:flex;flex-direction:column}
.bh-menu li{position:relative}
.bh-menu a{display:block;padding:9px 4px;color:var(--ink);font-weight:600;font-size:.88rem;letter-spacing:.02em}
.bh-menu a:hover,.bh-menu .current-menu-item>a{color:var(--accent)}
.bh-menu .sub-menu{list-style:none;padding-left:14px;margin:0}
.header-search{border-top:1px solid var(--rule);padding:12px 0;background:var(--paper)}
@media(min-width:960px){
	.nav-toggle{display:none}
	.masthead-inner::before{content:"";width:38px}
	.site-nav{display:block}
	.bh-menu{flex-direction:row;justify-content:center;flex-wrap:wrap;gap:4px 22px;padding:2px 0}
	.bh-menu a{padding:10px 0;text-transform:uppercase;font-size:.76rem;letter-spacing:.1em;border-bottom:2px solid transparent}
	.bh-menu a:hover,.bh-menu .current-menu-item>a{border-bottom-color:var(--accent)}
	.bh-menu .sub-menu{display:none;position:absolute;top:100%;left:-12px;background:var(--card);border:1px solid var(--rule);min-width:240px;padding:6px 12px;box-shadow:0 10px 30px rgba(23,19,14,.12)}
	.bh-menu .sub-menu a{text-transform:none;letter-spacing:0;font-size:.88rem;border:0}
	.bh-menu li:hover>.sub-menu,.bh-menu li:focus-within>.sub-menu{display:block}
}

/* Search */
.search-form{display:flex;max-width:620px;border:1px solid var(--ink);background:var(--card)}
.search-form input[type=search]{flex:1;min-width:0;font:inherit;padding:12px 14px;border:0;background:transparent;color:var(--ink)}
.search-form input[type=search]:focus{outline:none}
.search-form:focus-within{box-shadow:0 0 0 3px rgba(163,50,28,.18)}
.search-form button,.bh-btn{font:inherit;font-weight:700;font-size:.85rem;letter-spacing:.06em;text-transform:uppercase;background:var(--ink);color:var(--paper);border:0;padding:12px 18px;cursor:pointer;display:inline-block}
.search-form button:hover,.bh-btn:hover{background:var(--accent);color:#fff}

/* Intro band */
.intro-band{border-bottom:1px solid var(--rule);padding:30px 0 26px}
.intro-inner{display:grid;gap:10px}
.intro-band h1{margin:0;font-size:clamp(1.7rem,1.3rem + 1.8vw,2.6rem);max-width:760px}
.intro-band p{margin:0 0 6px;color:var(--ink-2);max-width:640px}
@media(min-width:960px){.intro-inner{grid-template-columns:1.2fr 1fr;align-items:end;column-gap:40px}.intro-inner .search-form{grid-column:2;grid-row:1/3;align-self:center}}

/* Lead grid */
.lead-grid{display:grid;gap:28px;padding:30px 0;border-bottom:1px solid var(--ink)}
@media(min-width:900px){.lead-grid{grid-template-columns:2fr 1fr;gap:36px}}
.lead-story{display:grid;gap:20px}
@media(min-width:700px){.lead-story{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center}}
.lead-img{display:block;aspect-ratio:4/5;overflow:hidden;background:var(--paper-2)}
.lead-img img,.lead-img .bh-initials{width:100%;height:100%;object-fit:cover;object-position:top;border-radius:0;font-size:4rem}
.lead-title{font-size:clamp(2rem,1.4rem + 2.4vw,3.2rem);margin:.15em 0 .25em;line-height:1.02;letter-spacing:-.025em}
.lead-title a{color:var(--ink)}
.lead-title a:hover{color:var(--accent)}
.lead-excerpt{color:var(--ink-2);margin:0 0 16px}
.lead-side{border-top:3px solid var(--ink);padding-top:10px}
@media(min-width:900px){.lead-side{border-top:0;border-left:1px solid var(--rule);padding:0 0 0 28px}}
.side-story{display:grid;grid-template-columns:72px 1fr;gap:14px;padding:14px 0;border-bottom:1px solid var(--rule)}
.side-story:last-child{border-bottom:0}
.side-img img,.side-img .bh-initials{width:72px;height:90px;object-fit:cover;object-position:top;border-radius:0;font-size:1.1rem}
.side-story h3{margin:2px 0 4px;font-size:1.1rem}
.side-story h3 a{color:var(--ink)}
.side-story h3 a:hover{color:var(--accent)}
.side-dek{margin:0;font-size:.84rem;color:var(--muted);line-height:1.45}

/* Born today */
.born-today{display:grid;gap:14px;padding:26px 0;border-bottom:1px solid var(--rule)}
@media(min-width:900px){.born-today{grid-template-columns:220px 1fr;align-items:center}}
.born-head h2{margin:0;font-size:1.6rem}
.born-list{list-style:none;margin:0;padding:0;display:flex;gap:14px;overflow-x:auto;scrollbar-width:thin}
.born-list a{display:flex;align-items:center;gap:10px;background:var(--card);border:1px solid var(--rule);padding:8px 14px 8px 8px;color:var(--ink);white-space:nowrap}
.born-list a:hover{border-color:var(--accent)}
.born-year{font-family:var(--serif);font-weight:800;color:var(--accent);font-size:1.1rem}
.born-list img,.born-list .bh-initials{width:44px;height:44px;border-radius:50%;object-fit:cover;object-position:top;font-size:.85rem}
.born-name{font-weight:600;font-size:.9rem;line-height:1.25}
.born-name small{display:block;font-weight:400;color:var(--muted)}

/* Desks (category rows) */
.desk{padding:30px 0 6px}
.desk-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:6px 18px;border-top:3px solid var(--ink);padding-top:10px;margin-bottom:18px}
.desk-head h2{margin:0;font-size:1.7rem}
.desk-head h2 a{color:var(--ink)}
.desk-head h2 a:hover{color:var(--accent)}
.desk-subs{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px 16px}
.desk-subs a{font-size:.8rem;font-weight:600;color:var(--muted)}
.desk-subs a:hover{color:var(--accent)}

/* Grid + cards */
.grid{display:grid;gap:22px 18px}
.grid-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(min-width:700px){.grid-cards{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:1000px){.grid-cards{grid-template-columns:repeat(4,minmax(0,1fr))}}
.bh-card{min-width:0}
.bh-card-img{display:block;aspect-ratio:4/5;overflow:hidden;background:var(--paper-2);margin-bottom:10px}
.bh-card-img img{width:100%;height:100%;object-fit:cover;object-position:top;transition:transform .4s ease,filter .4s ease;filter:saturate(.85)}
.bh-card:hover .bh-card-img img{transform:scale(1.03);filter:saturate(1)}
.bh-card-img .bh-initials{width:100%;height:100%;border-radius:0;font-size:2.4rem}
.bh-card-title{margin:3px 0 4px;font-size:1.12rem;line-height:1.2}
.bh-card-title a{color:var(--ink)}
.bh-card-title a:hover{color:var(--accent)}
.bh-card-dek{margin:0;font-size:.82rem;color:var(--muted);line-height:1.45;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}

/* Initials avatar */
.bh-initials{display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-weight:800;color:var(--paper);background:hsl(var(--h,20) 35% 32%);border-radius:50%;width:52px;height:52px;font-size:1.15rem;flex:0 0 auto}

/* Archive index + manifesto */
.archive-index{margin:40px 0 10px;padding:28px 0;border-top:3px solid var(--ink);border-bottom:1px solid var(--rule)}
.ai-head h2{margin:0 0 8px}
.ai-cols{display:grid;gap:22px;margin-top:22px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}
.ai-col h3{margin:0 0 6px;font-size:1.05rem}
.ai-col h3 a{color:var(--ink)}
.ai-col ul{list-style:none;margin:0;padding:0;font-size:.88rem}
.ai-col li{padding:3px 0}
.ai-col li a{color:var(--ink-2)}
.ai-col li a:hover{color:var(--accent)}
.count{font-size:.72rem;color:var(--muted)}
.manifesto{max-width:820px;margin:34px auto 10px;text-align:center;padding:10px 0 20px}
.manifesto-text{font-family:var(--serif);font-size:clamp(1.2rem,1rem + .8vw,1.55rem);line-height:1.45;color:var(--ink);margin:0 0 16px}
.empty-note{padding:40px 0;color:var(--muted)}

/* Breadcrumbs */
.bh-crumbs ol{list-style:none;margin:0 0 14px;padding:0;display:flex;flex-wrap:wrap;gap:4px;font-size:.78rem;color:var(--muted)}
.bh-crumbs li:not(:last-child)::after{content:"/";margin-left:6px;color:var(--rule-2)}
.bh-crumbs a{color:var(--muted)}
.bh-crumbs a:hover{color:var(--accent)}

/* Story (single) */
.story-head{max-width:900px;padding-top:26px;padding-bottom:18px}
.story-title{margin:.2em 0 .25em;line-height:1.05;letter-spacing:-.025em}
.story-dek{margin:0 0 18px;font-size:clamp(1.1rem,1rem + .5vw,1.35rem)}
.byline{display:flex;align-items:center;gap:12px;font-size:.88rem;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:10px 0}
.byline .bh-initials{width:40px;height:40px;font-size:.9rem}
.byline a{color:var(--ink);font-weight:700}
.byline-meta{display:block;color:var(--muted);font-size:.8rem}
.story-grid{display:grid;gap:28px;padding-bottom:30px}
@media(min-width:1000px){.story-grid{grid-template-columns:minmax(0,1fr) 320px;gap:56px}.factfile{order:2}.story-body{order:1}}
.story-body{min-width:0;max-width:720px}
.entry-hero{margin:0 0 20px}

/* Fact file */
.factfile{background:var(--card);border:1px solid var(--rule);border-top:4px solid var(--accent);padding:14px;align-self:start}
@media(min-width:1000px){.factfile{position:sticky;top:120px}}
@media(max-width:999px){.factfile{display:grid;grid-template-columns:120px 1fr;gap:6px 16px}.ff-photo{grid-row:1/3}.ff-title{margin-top:0!important}}
.ff-photo{margin:0}
.ff-photo img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:top;background:var(--paper-2)}
.ff-photo .bh-initials{width:100%;aspect-ratio:4/5;height:auto;border-radius:0;font-size:3rem}
.ff-photo figcaption{font-size:.7rem;color:var(--muted);margin-top:5px;line-height:1.35}
.ff-photo figcaption a{color:var(--muted);text-decoration:underline}
.ff-title{font-family:var(--sans);font-size:.72rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;margin:14px 0 6px;color:var(--accent)}
.ff-list{margin:0;font-size:.86rem}
.ff-list div{display:grid;grid-template-columns:42% 1fr;gap:8px;padding:7px 0;border-top:1px solid var(--rule)}
.ff-list dt{color:var(--muted);font-weight:600}
.ff-list dd{margin:0;color:var(--ink)}
@media(max-width:560px){.factfile{grid-template-columns:1fr}.ff-photo{grid-row:auto;max-width:220px}}

/* TOC */
.toc{border-top:1px solid var(--ink);border-bottom:1px solid var(--rule);padding:12px 0;margin:0 0 24px}
.toc summary{font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;color:var(--ink)}
.toc ol{margin:10px 0 2px;padding-left:22px;columns:1}

.toc li{margin:3px 0;font-size:.92rem;break-inside:avoid}
.toc a{color:var(--ink-2)}
.toc a:hover{color:var(--accent)}
.toc .toc-l3{list-style:circle;margin-left:14px;font-size:.86rem}

/* Body copy */
.entry-content{font-size:1.08rem;line-height:1.75;color:#221d16}
.entry-content p{margin:0 0 1.15em}
.entry-content>p:first-of-type::first-letter{font-family:var(--serif);font-weight:800;float:left;font-size:4.1em;line-height:.82;padding:.06em .1em 0 0;color:var(--accent)}
.entry-content h2{font-size:1.65rem;margin-top:1.8em;padding-top:.5em;border-top:1px solid var(--rule)}
.entry-content h3{font-size:1.25rem;margin-top:1.4em}
.entry-content ul,.entry-content ol{padding-left:1.3em}
.entry-content li{margin:.35em 0}
.entry-content blockquote{margin:1.6em 0;padding:0 0 0 20px;border-left:3px solid var(--accent);font-family:var(--serif);font-size:1.3rem;line-height:1.45;color:var(--ink)}
.entry-content table{width:100%;border-collapse:collapse;font-size:.95rem;display:block;overflow-x:auto}
.entry-content th,.entry-content td{border-bottom:1px solid var(--rule);padding:8px 10px;text-align:left}
.entry-content th{font-weight:700}
.entry-content figure{margin:1.6em 0}
.entry-content figcaption,.wp-element-caption{font-size:.8rem;color:var(--muted)}
.entry-content a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px}

/* FAQs, sources, notes */
.faqs{margin-top:34px}
.faqs h2,.sources h2{font-size:1.4rem;border-top:3px solid var(--ink);padding-top:10px}
.faqs details{border-bottom:1px solid var(--rule);padding:12px 0}
.faqs summary{font-weight:700;cursor:pointer;font-family:var(--serif);font-size:1.08rem;list-style:none;display:flex;justify-content:space-between;gap:10px}
.faqs summary::-webkit-details-marker{display:none}
.faqs summary::after{content:"+";color:var(--accent);font-family:var(--sans);font-weight:400;font-size:1.4rem;line-height:1}
.faqs details[open] summary::after{content:"−"}
.faqs details p{margin:8px 0 2px;color:var(--ink-2)}
.sources{margin-top:30px}
.sources ol{font-size:.88rem;color:var(--ink-2);padding-left:1.3em}
.sources li{margin:5px 0;word-break:break-word}
.editorial-note{margin-top:26px;font-size:.84rem;color:var(--ink-2);background:var(--paper-2);padding:12px 16px;border-left:3px solid var(--gold)}
.editorial-note p{margin:0}
.author-box{display:flex;gap:14px;align-items:flex-start;margin-top:24px;padding:18px 0;border-top:1px solid var(--rule)}
.author-box p{margin:0 0 4px;font-size:.9rem;color:var(--ink-2)}
.author-name a{font-family:var(--serif);font-weight:700;font-size:1.1rem;color:var(--ink)}
.related{padding-bottom:20px}

/* Archives */
.archive-header{padding:26px 0 20px;border-bottom:1px solid var(--ink);margin-bottom:26px}
.archive-header h1{margin:0 0 .2em}
.archive-desc{font-family:var(--serif);font-size:1.15rem;color:var(--ink-2);max-width:780px}
.archive-desc p{margin:0 0 .6em}
.chips{list-style:none;padding:0;margin:14px 0 0;display:flex;flex-wrap:wrap;gap:8px}
.chip{display:inline-block;font-size:.78rem;font-weight:600;padding:5px 12px;border:1px solid var(--ink);color:var(--ink);background:transparent}
.chip:hover{background:var(--ink);color:var(--paper)}
.author-header{display:flex;gap:18px;align-items:flex-start}
.author-header .bh-initials{width:84px;height:84px;font-size:1.9rem;margin-top:20px}
.entry-meta{color:var(--muted);font-size:.85rem}
.pagination{margin:34px 0}
.nav-links{display:flex;flex-wrap:wrap;gap:6px}
.page-numbers{display:inline-block;padding:8px 13px;border:1px solid var(--rule);color:var(--ink);font-weight:600;background:var(--card)}
.page-numbers.current{background:var(--ink);color:var(--paper);border-color:var(--ink)}

/* Pages */
.entry{padding:10px 0 30px}
.entry-header{padding-top:16px}
.entry-title{margin:.2em 0 .5em}

/* Sidebar (archive/search) */
.sidebar{min-width:0}
.widget{margin-bottom:24px}
.widget-title{font-family:var(--sans);font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;border-top:3px solid var(--ink);padding-top:8px;margin:0 0 10px}
.mini-list{list-style:none;margin:0;padding:0}
.mini-list li{border-bottom:1px solid var(--rule)}
.mini-list a{display:flex;gap:10px;align-items:center;padding:8px 0;color:var(--ink)}
.mini-list img,.mini-list .bh-initials{width:44px;height:44px;border-radius:50%;object-fit:cover;object-position:top;flex:0 0 44px;font-size:.85rem}
.mini-list span{font-weight:600;font-size:.9rem;line-height:1.3}
.mini-list small{display:block;font-weight:400;color:var(--muted);font-size:.78rem}
.cat-list{list-style:none;margin:0;padding:0;font-size:.9rem}
.cat-list ul{list-style:none;padding-left:14px}
.cat-list li{padding:3px 0}

/* A–Z */
.az-nav{display:flex;flex-wrap:wrap;gap:4px;margin:0 0 22px;position:sticky;top:96px;background:var(--paper);padding:8px 0;z-index:5;border-bottom:1px solid var(--rule)}
.az-nav a{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;font-family:var(--serif);font-weight:800;color:var(--ink);border:1px solid var(--rule)}
.az-nav a:hover{background:var(--ink);color:var(--paper)}
.az-group{padding:4px 0 14px;border-top:1px solid var(--ink);margin-bottom:12px}
.az-group h2{margin:.4em 0 .3em;color:var(--accent);font-size:2rem}
.az-group ul{columns:1;padding-left:0;list-style:none;margin:0}
@media(min-width:700px){.az-group ul{columns:2}}
@media(min-width:1000px){.az-group ul{columns:3}}
.az-group li{break-inside:avoid;margin:4px 0}
.az-group li a{color:var(--ink);font-weight:600}

/* Ads */
.bh-ad{margin:26px 0;text-align:center;min-height:100px}
.bh-ad-label{display:block;font-size:.66rem;color:var(--muted);text-transform:uppercase;letter-spacing:.12em;margin-bottom:4px}

/* Forms */
.bh-contact input[type=text],.bh-contact input[type=email],.bh-contact select,.bh-contact textarea{width:100%;font:inherit;padding:10px 12px;border:1px solid var(--rule-2);background:var(--card)}
.bh-hp{position:absolute;left:-9999px}
.bh-alert{padding:10px 14px}
.bh-ok{background:#e6efe8;color:var(--green)}
.bh-err{background:#f6e3df;color:var(--accent-2)}

/* Footer */
.site-footer{background:var(--ink);color:#cfc3ad;margin-top:50px;padding:40px 0 0;font-size:.9rem}
.footer-grid{display:grid;gap:26px;grid-template-columns:1fr}
@media(min-width:800px){.footer-grid{grid-template-columns:2fr 1fr 1fr}}
.site-footer .brand-name{font-size:2rem;color:var(--paper)}
.site-footer .brand-name:hover{color:var(--paper)}
.footer-about p{max-width:420px}
.footer-title{font-family:var(--sans);color:var(--paper);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;margin:0 0 12px}
.bh-footer-links{list-style:none;margin:0;padding:0}
.bh-footer-links li{margin:7px 0}
.site-footer a{color:#cfc3ad}
.site-footer a:hover{color:#fff}
.footer-bottom{border-top:1px solid #3a3228;margin-top:30px;padding:14px 16px;font-size:.78rem;color:#9d917c}
.footer-bottom p{margin:0}
