:root{--paper:#f5f0e5;--card:#fffaf0;--ink:#292720;--muted:#716f64;--red:#8c342c;--line:#ddd3bd;--gold:#bd9760}
*{box-sizing:border-box}
html{max-width:100%;overflow-x:hidden}
body{margin:0;background:var(--paper);color:var(--ink);font-family:"Songti SC","Noto Serif SC","STSong",serif;-webkit-font-smoothing:antialiased}
a{color:var(--red)}a:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.shell{max-width:960px;margin:auto;padding:0 24px}
header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 0;border-bottom:1px solid var(--line)}
.brand{text-decoration:none;font-weight:700;letter-spacing:.08em}.brand span{display:inline-grid;place-items:center;width:34px;height:34px;margin-right:10px;border:1px solid var(--red);font-size:19px}
nav{display:flex;gap:18px;flex-wrap:wrap;font-size:13px}nav a{text-decoration:none}nav a:hover{text-decoration:underline}
main{padding:48px 0 72px}.eyebrow{font-size:11px;letter-spacing:.25em;color:var(--red);font-weight:700}.lead{max-width:680px;color:var(--muted);line-height:1.9;font-size:15px}
h1{font-size:clamp(34px,5vw,58px);font-weight:600;line-height:1.3;letter-spacing:.05em;margin:12px 0 18px}h2{font-size:21px;font-weight:600;letter-spacing:.08em;margin:0 0 14px}
.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:38px}.person-card{display:block;min-width:0;background:var(--card);border:1px solid var(--line);text-decoration:none;color:var(--ink);overflow:hidden;box-shadow:0 4px 16px rgba(54,40,26,.05);transition:transform .2s,box-shadow .2s}.person-card:hover{transform:translateY(-3px);box-shadow:0 10px 28px rgba(54,40,26,.1)}.person-card img{display:block;width:100%;height:220px;object-fit:cover;object-position:center 23%;background:#e4ddcc}.person-card .copy{display:block;padding:14px}.person-card strong{display:block;font-size:18px}.person-card small{display:block;margin-top:5px;color:var(--muted);font-size:11px;line-height:1.6}.person-card p{margin:9px 0 0;font-size:12px;line-height:1.7;color:#5a554a}
.detail-hero{display:grid;grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:36px;align-items:center;margin:24px 0 36px}.detail-hero img{display:block;width:100%;aspect-ratio:3/4;object-fit:cover;object-position:center 23%;border:8px solid var(--card);box-shadow:0 14px 30px rgba(54,40,26,.12);background:#e4ddcc}.detail-hero .epithet{color:var(--red);letter-spacing:.12em}.detail-hero p{line-height:1.9;color:#514d42}.button{display:inline-block;margin-top:17px;padding:15px 23px;background:var(--red);color:#fffaf0;text-decoration:none;font-weight:700;letter-spacing:.08em;border-radius:3px}.button:hover{background:#6e2925}
.content{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.section{background:var(--card);border:1px solid var(--line);padding:26px;min-width:0}.section p{margin:0;font-size:14px;line-height:2;color:#514d42}.section.wide{grid-column:1/-1}.section .tag{display:block;margin-bottom:12px;color:var(--red);font-size:11px;letter-spacing:.2em}
.backline{margin-top:30px;font-size:13px}.backline a{text-decoration:none}.backline a:hover{text-decoration:underline}
footer{border-top:1px solid var(--line);padding:20px 0 30px;color:#8d8678;font-size:11px;line-height:1.7}
@media(max-width:700px){.shell{padding:0 16px}header{padding:15px 0;align-items:flex-start}.brand{font-size:13px}.brand span{width:28px;height:28px;margin-right:6px}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:24px}.person-card img{height:160px}.person-card .copy{padding:11px}.person-card strong{font-size:16px}.person-card p{font-size:11px}.detail-hero{grid-template-columns:1fr;gap:18px}.detail-hero img{max-width:320px;margin:auto}.content{grid-template-columns:1fr}.section{padding:19px}.section.wide{grid-column:auto}main{padding:28px 0 48px}}
@media(max-width:360px){.grid{grid-template-columns:1fr}.person-card img{height:230px}}
