:root{--red:#8e1f2d;--green:#163f36;--cream:#f7f1e7;--paper:#fffdf9;--ink:#25221e;--muted:#706b62;--line:#ded6c9}
*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font-family:"DM Sans",sans-serif;line-height:1.75}a{color:inherit}
.article-header{padding:22px clamp(22px,6vw,80px);background:var(--green);color:#fff}.article-header a{font-size:.86rem;font-weight:700;text-decoration:none}.article-header a:hover{color:#f4cf8a}
main{width:min(860px,calc(100% - 40px));margin:clamp(38px,7vw,90px) auto;background:var(--paper);box-shadow:0 22px 60px rgba(54,34,24,.12)}
.article-intro{padding:clamp(34px,7vw,76px) clamp(26px,8vw,86px) clamp(30px,5vw,52px);border-bottom:1px solid var(--line)}
.article-label{margin:0 0 16px;color:var(--red);font-size:.75rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
h1{margin:0;font-family:"Playfair Display",serif;font-size:clamp(2.35rem,6vw,4.7rem);font-weight:600;line-height:1.04;letter-spacing:-.035em}
.dek{margin:20px 0 0;color:var(--muted);font-family:"Playfair Display",serif;font-size:clamp(1.2rem,2.4vw,1.65rem);line-height:1.4}
.byline{margin:28px 0 0;font-size:.88rem}.byline strong,.byline span{display:block}.byline span{color:var(--muted)}
.article-body{padding:clamp(32px,6vw,66px) clamp(26px,8vw,86px)}.article-body p{margin:0 0 1.35em;font-size:clamp(1rem,1.35vw,1.1rem)}
.article-body>p:first-child:first-letter{float:left;margin:.08em .1em 0 0;color:var(--red);font-family:"Playfair Display",serif;font-size:4.5rem;font-weight:700;line-height:.72}
.article-body h2{margin:2em 0 .7em;font-family:"Playfair Display",serif;font-size:1.8rem;line-height:1.2}
.article-source,.transcription-note{margin-top:44px;padding-top:22px;border-top:1px solid var(--line);color:var(--muted);font-size:.82rem}
.transcription-note{margin-top:25px;padding:16px 18px;border:1px solid var(--line);background:var(--cream)}
.article-footer{padding:26px clamp(22px,6vw,80px);background:#102e27;color:rgba(255,255,255,.72);text-align:center;font-size:.82rem}.article-footer a{color:#fff;font-weight:700}
@media(max-width:600px){main{width:100%;margin:0;box-shadow:none}.article-intro,.article-body{padding-left:22px;padding-right:22px}}
