/* Shared expandable project stories: theme-neutral and accessible. */
.behind-project{margin-top:22px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-family:var(--sans)}
.behind-project summary{list-style:none;cursor:pointer;padding:16px 0;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;font-weight:700;color:var(--ink);transition:color .2s ease}
.behind-project summary::-webkit-details-marker{display:none}
.behind-project summary:hover{color:var(--sage)}
.behind-project summary:focus-visible{outline:2px solid var(--sage);outline-offset:3px}
.behind-chevron{color:var(--sage);font-size:18px;transition:transform .25s ease}
.behind-project[open] .behind-chevron{transform:rotate(45deg)}
.behind-body{padding:4px 0 22px;color:var(--ink);animation:behind-appear .25s ease both}
.behind-title{display:block;font-family:var(--serif);font-size:21px;line-height:1.3;margin:2px 0 18px;font-weight:600}
.behind-meta{display:grid;grid-template-columns:1fr;gap:9px;margin:0 0 20px}
.behind-meta span{border-left:2px solid var(--sage);padding:3px 0 3px 10px;font-size:11px;line-height:1.6;color:var(--ink)}
.behind-meta b{display:block;font:10px var(--mono);letter-spacing:.6px;color:var(--sage);margin-bottom:2px}
.project-copy .behind-body>p{font-size:12px;line-height:1.85;margin:0 0 15px;color:var(--ink)}
.behind-timeline{list-style:none;margin:18px 0;padding:0 0 0 18px;border-left:1px solid var(--line)}
.behind-timeline li{position:relative;padding:0 0 18px 14px}
.behind-timeline li::before{content:'';position:absolute;top:4px;left:-22px;width:7px;height:7px;border:2px solid var(--sage);background:var(--paper);border-radius:50%}
.behind-timeline li>span{font:10px var(--mono);letter-spacing:.5px;color:var(--sage)}
.project-copy .behind-timeline p{font-size:12px;line-height:1.75;margin:6px 0 0;color:var(--muted)}
.project-copy .behind-body .behind-footnote{font-size:10px;line-height:1.65;color:var(--muted);margin-top:12px}
@keyframes behind-appear{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.behind-body{animation:none}.behind-chevron{transition:none}}
