.cp-editorial{--cp-paper:#faf7f0;--cp-ink:#292422;--cp-muted:#594c44;--cp-red:#a71829;--cp-rule:#e4d9ce;margin:0;background:var(--cp-paper);color:var(--cp-ink);font:16px/1.65 system-ui,sans-serif}
.cp-editorial *{box-sizing:border-box}
.cp-frame{width:min(1080px,calc(100% - 32px));margin-inline:auto}
.cp-header,.cp-footer{background:#fff;border-bottom:1px solid var(--cp-rule)}
.cp-header .cp-frame,.cp-footer .cp-frame{display:flex;align-items:center;flex-wrap:wrap;gap:12px 26px;padding-block:14px}
.cp-header img{display:block;object-fit:contain}
.cp-header nav{display:flex;flex-wrap:wrap;gap:6px 20px}
.cp-header nav a{display:inline-block;padding-block:7px;color:var(--cp-ink);font-weight:650}
.cp-editorial a,.cp-about a{color:#a71829;text-underline-offset:.18em}
.cp-editorial a:hover,.cp-about a:hover{text-decoration-thickness:2px}
.cp-editorial :focus-visible,.cp-about :focus-visible{outline:3px solid #a71829;outline-offset:3px}
.cp-skip{position:absolute;top:0;left:12px;transform:translateY(-120%);background:white;padding:8px 12px}
.cp-skip:focus{transform:none}
.cp-hero{padding:clamp(26px,6vw,65px) 0 6px}
.cp-hero h1,.cp-reading h1{line-height:1.12;letter-spacing:-.025em;font-size:clamp(30px,5vw,50px);margin:0 0 14px;text-wrap:balance}
.cp-lead{font-size:1.18em;color:#594c44;max-width:68ch}
.cp-topics ul{list-style:none;display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:12px 0 24px}
.cp-topics a{display:block;color:#782122;background:#fff4d8;border:1px solid #ead5ab;border-radius:6px;padding:7px 12px;font-weight:620}
.cp-group{margin:36px 0;scroll-margin-top:20px}
.cp-group h2,.cp-reading h2,.cp-about h2{line-height:1.25;font-size:clamp(21px,3vw,28px);margin:24px 0 12px}
.cp-card-list{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.cp-card-list li{background:white;border:1px solid var(--cp-rule);border-radius:8px;padding:13px 16px;overflow-wrap:anywhere}
.cp-card-list a{font-weight:680}
.cp-card-list p{margin:4px 0 0;color:var(--cp-muted)}
.cp-reading{max-width:760px;margin:24px auto 46px;background:#fff;border:1px solid var(--cp-rule);border-top:5px solid #e9ad32;border-radius:10px;padding:clamp(16px,5vw,42px);overflow-wrap:anywhere}
.cp-crumb{color:var(--cp-muted);margin-bottom:18px}
.cp-related{margin-top:32px;padding-top:8px;border-top:1px solid var(--cp-rule)}
.cp-footer{border-top:1px solid var(--cp-rule);margin-top:42px}
.cp-about{font-size:16px;line-height:1.7}
.cp-about figure{margin:20px 0}
.cp-about figure img{width:100%;height:auto;border-radius:8px}
.cp-about figcaption{font-size:.9rem;color:#594c44}
.cp-about a.cp-button{display:inline-block;background:#a71829;color:#fff;border-radius:6px;padding:10px 16px;font-weight:700}
.cp-mobile-links{display:none}
@media(max-width:991px){.cp-mobile-links{display:flex;gap:16px;justify-content:center;align-items:center;padding:5px 12px;background:#fff;border-top:1px solid #eee2d7}.cp-mobile-links a{color:#8c1d27;font-weight:650;padding:5px 4px}}
@media(max-width:620px){.cp-card-list{grid-template-columns:1fr}.cp-header .cp-frame{gap:5px}.cp-header nav{gap:2px 14px}}
