:root{--ink:#1d1b1a;--mut:#6b6562;--line:#e4dfdb;--bg:#fbfaf8;--card:#fff;--acc:#a4243b}
.clips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0 24px;padding:12px;background:#efebe4;border-radius:8px}
.clips::before{content:"Video";grid-column:1/-1;font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--mut)}
figure.clip{margin:0;padding:10px;background:var(--card);border-radius:6px;min-width:0}
figure.clip:only-child{grid-column:1/-1;width:100%;max-width:560px;margin:0 auto}
figure.clip video{display:block;width:100%;aspect-ratio:16/9;background:#000;border-radius:4px;cursor:pointer}
figure.clip figcaption{margin:8px 0 0;text-align:left;font-size:15px;font-weight:600;line-height:1.4;color:var(--ink)}
.clipmeta{display:block;margin-bottom:2px;font-size:12.5px;font-weight:400;color:var(--mut);font-variant-numeric:tabular-nums}
.clipnote{display:block;margin-top:3px;font-size:12.5px;font-weight:400;font-style:italic;color:var(--mut)}
figure.clip p.cliptext{margin:6px 0 0;text-align:left;font-size:13.5px;font-weight:400;line-height:1.5;color:var(--mut)}
@media(max-width:640px){.clips{grid-template-columns:minmax(0,1fr);padding:8px}figure.has-record{display:block}aside.record{margin-top:14px}.toc ol{columns:1}}
@media print{.toc{display:none}}
figure.clip p.clipwhy{margin:6px 0 0;padding-left:8px;border-left:2px solid var(--acc);font-size:13.5px;font-weight:400;line-height:1.45;color:var(--ink)}
.docwhy{margin-top:4px;color:var(--ink)}
.kicker{margin:0 0 6px;font-size:12.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--acc)}
#article .headline{margin:0 0 10px;padding:0;border:0;font-size:32px;line-height:1.15;letter-spacing:-.02em}
#article .dek{margin:0 0 24px;font-size:19px;line-height:1.5;color:var(--mut)}
#article blockquote{font-size:17px}
.letter{margin:36px 0 10px;padding:28px 30px 24px;background:var(--card);border:1px solid var(--line);border-top:4px solid var(--acc);border-radius:10px;box-shadow:0 2px 14px rgba(29,27,26,.06)}
.person .mono{display:flex;align-items:center;justify-content:center;width:92px;height:92px;margin:0 auto 8px;border-radius:50%;background:var(--ink);color:#fff;font-size:26px;font-weight:700}
.letter-share{margin:16px 0 0;padding-top:14px;border-top:1px solid var(--line)}
#article .letter h3{margin:2px 0 20px;font-size:28px;line-height:1.2;letter-spacing:-.01em}
#article .letter p{margin:0 0 14px;font-size:17px;line-height:1.55;color:var(--ink)}
#article .letter .lto{margin:0;font-size:12.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--acc)}
.people{margin:0 0 24px;border-top:1px solid var(--line)}
.person{display:grid;grid-template-columns:64px minmax(0,1fr);gap:16px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}
.person img{display:block;width:64px;height:64px;border-radius:50%;object-fit:cover}
#article .letter .pname{margin:0;font-size:16px;font-weight:700;line-height:1.3}
#article .letter .pname .prole-in{font-weight:400;color:var(--mut)}
#article .letter .prole{margin:0 0 3px;font-size:13px;line-height:1.3;color:var(--mut)}
#article .letter .pline{margin:0;font-size:15.5px;line-height:1.45;color:var(--ink)}
#article .letter blockquote{margin:0 0 20px;padding:2px 0 2px 16px;border-left:3px solid var(--acc);font-size:18px;line-height:1.5;color:var(--ink)}
#article .letter .lask{margin:26px 0 10px;font-size:22px;font-weight:700;line-height:1.3}
.rights{border-top:1px solid var(--line)}
.right{display:grid;grid-template-columns:150px minmax(0,1fr);gap:16px;padding:13px 0;border-bottom:1px solid var(--line)}
.rlabel{padding-top:3px;font-size:12.5px;font-weight:700;line-height:1.35;color:var(--acc)}
#article .letter .rquote{margin:0 0 3px;font-size:16.5px;font-weight:600;line-height:1.4}
#article .letter .rcase{margin:0;font-size:13px;line-height:1.4;color:var(--mut)}
#article .letter .rnote{margin:5px 0 0;font-size:14px;line-height:1.45;color:var(--mut)}
.lfinal{margin:26px 0 0;padding:24px 26px;background:var(--ink);border-radius:8px}
#article .letter .lfinal p{margin:0 0 12px;font-size:20px;font-weight:700;line-height:1.35;color:#fff}
#article .letter .lfinal .lend{margin:16px 0 0;padding-top:14px;border-top:1px solid #5a5450;font-size:17px;font-weight:500;color:#e9e3db}
#article .letter .lfinal .lsign{margin:16px 0 0;font-size:16px;font-weight:400;font-style:italic;line-height:1.4;color:#e9e3db}
#article .letter .lfinal .lsign span{font-size:18px;font-weight:700;color:#fff}
#article .letter .lcredit{margin:8px 0 0;font-size:12px;color:var(--mut)}
@media(max-width:640px){.letter{padding:22px 16px 18px}.right{grid-template-columns:minmax(0,1fr);gap:4px}.lfinal{padding:20px 18px}}
.share{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:14px 0 22px}
.slabel{font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--mut)}
.share a,.share button{appearance:none;display:inline-block;padding:7px 14px;border:1px solid var(--ink);border-radius:999px;background:transparent;color:var(--ink);font:inherit;font-size:14px;font-weight:600;line-height:1.2;text-decoration:none;cursor:pointer}
.share a:hover,.share button:hover{background:var(--ink);color:#fff}
.tip{margin:24px 0 8px;padding:18px 22px;background:#efebe4;border-radius:8px}
#article .tip h3{margin:0 0 6px;font-size:19px;line-height:1.3}
#article .tip p{margin:0;font-size:16px;line-height:1.55}
#article .tip a{font-weight:700;color:var(--acc)}
body{padding-top:0!important}
.crtabs{position:sticky;top:0;z-index:50;display:flex;flex-wrap:wrap;justify-content:center;gap:4px;padding:8px 12px 0;background:var(--bg);border-bottom:2px solid var(--ink)}
.crtabs a,.crtabs button{appearance:none;border:0;background:none;padding:10px 14px;border-radius:4px 4px 0 0;font:inherit;font-size:15.5px;font-weight:600;line-height:1.3;color:var(--mut);text-decoration:none;cursor:pointer}
.crtabs a:hover,.crtabs button:hover{color:var(--ink)}
.crtabs a[aria-current="page"],.crtabs button[aria-selected="true"]{background:var(--ink);color:#fff}
@media(max-width:640px){body{padding-top:46px!important}.crtabs{position:fixed;top:0;left:0;right:0;z-index:1000;flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;touch-action:pan-x;overscroll-behavior-x:contain;scrollbar-width:none;padding:6px 8px 0}.crtabs::-webkit-scrollbar{display:none}.crtabs a,.crtabs button{flex:0 0 auto;padding:9px 11px;font-size:14px;touch-action:pan-x}}
.page-head h1{font-size:clamp(1.7rem,3.1vw,2.5rem);line-height:1.1;letter-spacing:-.02em}
