/* Letters from the Trail — original Ant Trail parchment archive. */
.letters-shell{width:min(1230px,calc(100% - 36px));margin:0 auto;padding:40px 0 72px}
.letters-heading{display:flex;align-items:center;gap:23px;margin:24px 0 34px}
.letters-heading>img{flex:0 0 auto;filter:drop-shadow(0 12px 18px #0006)}
.letters-heading h1{font-family:Georgia,"Palatino Linotype",serif;font-size:clamp(2.5rem,5vw,4rem);line-height:1.08;color:#e9c892;letter-spacing:.025em;margin:.18em 0}
.letters-heading p:last-child{max-width:720px;margin:.5rem 0 0;color:#cac9b4}
.letters-layout{display:grid;grid-template-columns:minmax(240px,310px) minmax(0,1fr);gap:24px;align-items:start}
.letters-desk{background:linear-gradient(147deg,#1b231c,#111912);border:1px solid rgba(204,170,103,.32);border-radius:10px;box-shadow:0 22px 48px #0005;overflow:hidden;position:sticky;top:22px;padding:21px}
.letters-desk-heading{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding-bottom:8px}
.letters-desk-heading h2{font:700 1.45rem Georgia,serif;color:#dfc08d;margin:0}
.letters-desk-heading span{font-size:.76rem;color:#c3b28d}
.letters-desk label{display:block;color:#d4c09b;margin:11px 0 5px;font-size:.86rem}
.letters-desk input{width:100%;padding:11px 13px;border:1px solid #8d7853;border-radius:5px;background:#0c130e;color:#f5e8d1;outline-offset:3px}
.letters-desk input:focus-visible{outline:2px solid #eacb92}
.letters-index-note,.letters-status{font-size:.77rem;color:#b9ac92;margin:12px 0 9px}
.letters-list{overflow:auto;max-height:min(63vh,630px);border-top:1px solid #9b835344;padding-top:8px;display:grid;gap:3px}
.letter-index-button{border:1px solid transparent;background:transparent;color:#ddd2b6;cursor:pointer;text-align:left;display:grid;gap:2px;padding:11px;border-radius:4px;width:100%;transition:background .15s,border-color .15s}
.letter-index-button:hover{background:#75603b45;color:#f4dca9}
.letter-index-button:focus-visible{outline:2px solid #e8ca91;outline-offset:-2px}
.letter-index-button.is-current{background:#ac8d502a;border-color:#c7a66b70;color:#fff0c6}
.letter-index-version{font:700 1rem Georgia,serif;letter-spacing:.045em}
.letter-index-title{color:#b7b09a;font-size:.8rem;line-height:1.3}
.letters-parchment{position:relative;overflow:hidden;border-radius:5px;border:8px solid #51391e;box-shadow:0 24px 60px #0009, inset 0 0 0 2px #b39359;background:#cbb085}
.letters-parchment:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.42;background:repeating-linear-gradient(95deg,transparent 0 6px,#805c2b18 7px 8px,transparent 11px 18px),radial-gradient(ellipse at 50% 28%,#eeddb4 0,#d2b68b 58%,#8a6038 100%)}
.letters-parchment-inner{position:relative;color:#392717;padding:clamp(28px,5.5vw,70px) clamp(24px,5.5vw,72px) 40px;background:radial-gradient(ellipse at 55% 35%,#f6e9c39c,transparent 74%),linear-gradient(90deg,#916b3745,#f3dfae15 6%,transparent 94%,#916b3745);min-height:600px}
.letters-seal{display:block;margin:0 auto 13px;filter:sepia(.75) saturate(.65) contrast(.95)}
.letter-kicker,.letter-version{text-align:center;font-family:Georgia,serif;text-transform:uppercase;letter-spacing:.16em}
.letter-kicker{font-size:.73rem;color:#765538;margin:.3rem 0}
.letter-version{font-size:1.15rem;font-weight:bold;color:#6d3c1b;margin:20px 0 9px}
.letters-parchment h2{text-align:center;font:700 clamp(1.8rem,3vw,2.5rem)/1.2 Georgia,"Palatino Linotype",serif;color:#462812;max-width:690px;margin:0 auto}
.letter-rule{text-align:center;color:#956630;font-size:1.2rem;letter-spacing:1rem;margin:16px 0 28px}
.letter-body{list-style:none;margin:0 auto;padding:0;max-width:680px;font:1.08rem/1.75 Georgia,"Palatino Linotype",serif}
.letter-body li{position:relative;padding:0 0 18px 28px;margin:0 0 12px;border-bottom:1px solid #7654372a;overflow-wrap:anywhere}
.letter-body li:before{content:"✦";position:absolute;left:0;top:1px;color:#986c3c;font-size:.85rem}
.letter-signoff{text-align:right;font:italic 1.15rem Georgia,serif;color:#79512d;margin:40px 0 30px}
.letters-paper-footer{border-top:1px solid #8c70464a;padding-top:15px;display:flex;justify-content:space-between;gap:20px;font-size:.75rem;font-weight:bold;letter-spacing:.05em}
.letters-paper-footer a{color:#69431d;text-decoration:underline;text-underline-offset:3px}
.letters-footnote{color:#a5a18f;max-width:780px;font-size:.82rem;line-height:1.6;margin:23px auto 0;text-align:center}
@media(max-width:850px){.letters-layout{grid-template-columns:1fr}.letters-desk{position:static}.letters-list{max-height:280px;grid-template-columns:repeat(2,minmax(0,1fr))}.letters-heading>img{width:72px;height:72px}}
@media(max-width:540px){.letters-heading{align-items:start;gap:10px}.letters-heading>img{width:54px;height:54px}.letters-list{grid-template-columns:1fr}.letters-parchment-inner{min-height:420px}.letters-paper-footer{flex-direction:column;gap:7px}.letter-body{font-size:1rem}}
@media(prefers-reduced-motion:reduce){.letter-index-button{transition:none}}
