
:root{--bg:#161011;--ink:#ece3d8;--mut:#9a8d84;--acc:#b3122e;--acc2:#e8b34a;--card:#221a1b;--line:#3a2b2d;--hbg:#0d0a0a;--hink:#ece3d8}
*{box-sizing:border-box;margin:0;padding:0}
img{max-width:100%;height:auto}
body{background:var(--bg);color:var(--ink);font-family:'Segoe UI',Helvetica,Arial,sans-serif;line-height:1.65;font-size:16px}
a{color:var(--acc2);text-decoration:none}
.wrap{max-width:1180px;margin:0 auto;padding:0 20px}
header.site{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--hbg) 92%,transparent);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
header.site .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 20px;flex-wrap:wrap}
.logo img{height:42px;width:auto;display:block}
nav.main ul{display:flex;gap:4px;list-style:none;flex-wrap:wrap}
nav.main a{color:var(--hink);padding:8px 14px;font-weight:600;font-size:.9rem;border-radius:999px}
nav.main a:hover{background:var(--acc);color:#fff;text-decoration:none}
.billboard{position:relative;margin:22px 0;overflow:hidden;border-radius:12px}
.billboard img{width:100%;height:420px;object-fit:cover;display:block}
.billboard .cap{position:absolute;inset:auto 0 0 0;padding:60px 28px 24px;background:linear-gradient(transparent,rgba(0,0,0,.9));color:#fff}
.billboard h1{font-family:Georgia,'Times New Roman',serif;font-size:2.1rem;line-height:1.2;max-width:760px}
.billboard h1 a{color:#fff}
.billboard p{opacity:.9;max-width:640px;margin-top:8px}
.kick{display:inline-block;font-size:.72rem;font-weight:800;letter-spacing:1.6px;text-transform:uppercase;background:var(--acc);color:#fff;padding:4px 12px;border-radius:999px;margin-bottom:10px}
.sectitle{font-family:Georgia,'Times New Roman',serif;font-size:1.35rem;margin:34px 0 16px;display:flex;justify-content:space-between;align-items:baseline}
.sectitle a{font-size:.82rem;color:var(--acc2)}
.mason{columns:3;column-gap:18px}
.mason .g{break-inside:avoid;margin-bottom:18px;position:relative;border-radius:10px;overflow:hidden;background:var(--card)}
.mason .g img{width:100%;display:block}
.mason .g .t{position:absolute;inset:auto 0 0 0;padding:34px 16px 14px;background:linear-gradient(transparent,rgba(0,0,0,.88));color:#fff}
.mason .g h3{font-family:Georgia,'Times New Roman',serif;font-size:1.05rem;line-height:1.3}
.mason .g h3 a{color:#fff}
@media(max-width:1000px){.mason{columns:2}}
@media(max-width:620px){.mason{columns:1}.billboard img{height:240px}}
.pagehead{margin:30px 0 20px}
.pagehead h1{font-family:Georgia,'Times New Roman',serif;font-size:2rem}
.pagehead p{color:var(--mut);margin-top:6px;max-width:700px}
article.post{max-width:800px;margin:0 auto 50px}
article.post h1{font-family:Georgia,'Times New Roman',serif;font-size:2.1rem;line-height:1.25;margin:10px 0 12px}
.meta{color:var(--mut);font-size:.85rem;margin-bottom:20px}
.crumbs{font-size:.82rem;color:var(--mut);margin:22px 0 4px}.crumbs a{color:var(--mut)}
.prose p{margin:0 0 1.1rem}
.prose h2{font-family:Georgia,'Times New Roman',serif;font-size:1.5rem;margin:2rem 0 .8rem}
.prose h3{font-family:Georgia,'Times New Roman',serif;font-size:1.2rem;margin:1.5rem 0 .6rem}
.prose ul,.prose ol{margin:0 0 1.1rem 1.4rem}.prose li{margin-bottom:.45rem}
figure{margin:1.8rem 0}figure img{width:100%;border-radius:10px}
figcaption{font-size:.8rem;color:var(--mut);padding-top:6px}
.article-table-wrap{overflow-x:auto;margin:1.3rem 0 1.8rem}
table.article-table{width:100%;border-collapse:collapse;min-width:520px;background:var(--card);font-size:.94rem}
table.article-table th,table.article-table td{border:1px solid var(--line);padding:.62rem .85rem;text-align:left;vertical-align:top}
table.article-table th{background:var(--acc);color:#fff}
table.article-table tr:nth-child(even) td{background:color-mix(in srgb,var(--acc) 8%,transparent)}
table.article-table td.num,table.article-table th.num{white-space:nowrap;text-align:right}
.related{max-width:800px;margin:0 auto 50px}
.related .mini-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}
.related .mini-grid .g{position:relative;border-radius:10px;overflow:hidden}
.related .mini-grid img{width:100%;height:130px;object-fit:cover}
.related .mini-grid h4{font-size:.92rem;padding:10px 12px;background:var(--card)}
.related .mini-grid h4 a{color:var(--ink)}
footer.site{border-top:1px solid var(--line);margin-top:50px;padding:26px 0;background:var(--hbg);color:var(--hink)}
footer.site .wrap{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;font-size:.86rem}
footer.site nav ul{display:flex;gap:14px;list-style:none;flex-wrap:wrap}
footer.site a{color:var(--hink)}footer.site .copy{color:var(--mut)}
