/* Editorial biography, research questions, and agentic work loop. */
.narrative-section .narrative-kicker{display:block;font:11px/1.6 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}
.narrative-section h3{letter-spacing:-.035em}
.journey-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(32px,7vw,112px)}
.journey-intro{align-self:start;position:sticky;top:130px}
.journey-intro h2{font-family:var(--display);font-size:clamp(44px,5.6vw,76px);font-weight:500;line-height:1.04;letter-spacing:-.055em;margin:16px 0 24px}
.journey-intro>p{max-width:34ch;color:var(--muted)}
.journey-year{font-family:var(--display);font-size:clamp(90px,12vw,170px);line-height:1.2;letter-spacing:-.075em;color:var(--accent);font-variant-numeric:tabular-nums;margin-top:36px}
.journey-intro .journey-footnote{font-size:12px;max-width:30ch}
.journey-track{--journey-progress:0;list-style:none;padding:0 0 0 35px;margin:0;position:relative}
.journey-track::before,.journey-track::after{content:"";position:absolute;left:5px;top:12px;bottom:20px;width:1px;background:var(--line-strong)}
.journey-track::after{background:var(--accent);transform:scaleY(var(--journey-progress));transform-origin:top;transition:transform .45s ease}
.journey-stop{position:relative;padding:0 0 42px;opacity:1;transition:opacity .4s}
.journey-stop:last-child{padding-bottom:0}
.journey-stop.is-current,.journey-stop:hover{opacity:1}
.journey-dot{position:absolute;left:-35px;top:6px;width:11px;height:11px;border:1px solid var(--accent);background:var(--bg);border-radius:50%;z-index:1}
.journey-stop.is-current .journey-dot{background:var(--accent);box-shadow:0 0 0 6px var(--accent-soft)}
.journey-stop time{font:12px var(--mono);color:var(--muted)}
.journey-now{margin-left:12px;font:9px var(--mono);letter-spacing:.12em;background:var(--accent-soft);color:var(--accent);padding:4px 7px;border-radius:3px}
.journey-stop h3{font-size:clamp(23px,2.6vw,32px);font-weight:500;line-height:1.2;margin:14px 0}
.journey-stop p{color:var(--muted);max-width:55ch;font-size:15px;line-height:1.75;margin:0 0 17px}
.journey-skills{font:11px/1.7 var(--mono);color:var(--accent);padding-top:13px;border-top:1px solid var(--line)}
.research-papers{border-top:1px solid var(--line-strong)}
.research-paper{display:grid;grid-template-columns:44px minmax(0,1fr) 31%;gap:28px;align-items:center;padding:38px 0;border-bottom:1px solid var(--line-strong)}
.research-index{align-self:start;font:12px var(--mono);color:var(--subtle);padding-top:4px}
.research-copy h3{font-family:var(--display);font-size:clamp(27px,3.1vw,41px);line-height:1.12;font-weight:500;margin:13px 0 17px}
.research-copy p{color:var(--muted);font-size:14px;line-height:1.8;max-width:64ch;margin:0}
.research-copy .research-question{color:var(--text);font-size:16px;line-height:1.6;margin-bottom:12px}
.research-paper figure{margin:0;overflow:hidden;border-radius:5px;background:var(--surface)}
.research-paper img{width:100%;height:210px;object-fit:cover;display:block;filter:saturate(.75);transition:filter .3s}
.research-paper:hover img{filter:saturate(1)}
.agent-loop{border-top:1px solid var(--line-strong);border-bottom:1px solid var(--line-strong);padding:28px 0 24px}
.loop-control{display:grid;grid-template-columns:170px 1fr 1fr;gap:25px;align-items:center;padding:0 0 30px}
.loop-control h3{font-size:23px;line-height:1.4;font-weight:500;margin:0}
.loop-control p{font-size:14px;color:var(--muted);margin:0}
.loop-stages{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;position:relative}
.loop-stage{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:23px;align-self:start}
.loop-stage:not(:last-child)::after{content:"→";position:absolute;right:-23px;top:32px;font:18px var(--mono);color:var(--accent)}
.loop-stage summary{display:flex;gap:12px;align-items:center;cursor:pointer;list-style:none;line-height:1.3;min-height:42px}
.loop-stage summary::-webkit-details-marker{display:none}
.loop-stage summary:focus-visible{outline:2px solid var(--accent);outline-offset:7px;border-radius:2px}
.loop-number{font:11px var(--mono);color:var(--accent)}
.loop-title{font-size:20px;font-weight:500;letter-spacing:-.04em}
.loop-toggle{margin-left:auto;color:var(--muted);font:16px var(--mono)}
.loop-stage:not([open]) .loop-toggle{font-size:0}
.loop-stage:not([open]) .loop-toggle::after{content:"+";font-size:16px}
.loop-stage>p{font-size:14px;line-height:1.75;color:var(--muted);margin:15px 0}
.loop-stage .loop-lead{font-size:15px;color:var(--text);min-height:48px}
.loop-artifact{font:10px/1.7 var(--mono);color:var(--accent);border-top:1px solid var(--line);padding-top:15px;margin-top:20px}
.loop-return{position:relative;height:76px;margin-top:0;text-align:center}
.loop-return svg{position:absolute;inset:0;width:100%;height:54px;fill:none;stroke:var(--accent);stroke-width:1;vector-effect:non-scaling-stroke;opacity:.6}
.loop-return span{position:relative;display:inline-block;top:28px;padding:4px 15px;background:var(--bg);font:11px/1.6 var(--mono);color:var(--accent)}
.loop-output{display:flex;gap:30px;align-items:center;justify-content:center;text-align:center}
.loop-output p{font-size:13px;color:var(--muted);margin:0}
@media(max-width:900px){.loop-control{grid-template-columns:1fr 2fr}.loop-control p{grid-column:2}.loop-stages{gap:20px}.loop-stage{padding:17px}.loop-stage:not(:last-child)::after{right:-19px}.loop-title{font-size:18px}.research-paper{grid-template-columns:28px minmax(0,1fr) 28%;gap:18px}.research-paper img{height:180px}}
@media(max-width:650px){.journey-layout{grid-template-columns:1fr;gap:30px}.journey-intro{position:static}.journey-year{display:none}.journey-intro .journey-footnote{max-width:none}.journey-intro h2{margin-top:10px}.journey-track{padding-left:28px}.journey-dot{left:-28px}.research-paper{grid-template-columns:24px minmax(0,1fr);gap:15px;padding:28px 0}.research-paper figure{grid-column:2}.research-paper img{height:180px;object-position:center}.loop-control{display:block;padding-bottom:22px}.loop-control h3{margin:10px 0}.loop-control p{max-width:45ch}.loop-stages{grid-template-columns:1fr;gap:23px}.loop-stage{padding:21px}.loop-stage:not(:last-child)::after{content:"↓";top:auto;bottom:-23px;left:50%;right:auto}.loop-stage .loop-lead{min-height:0}.loop-output{display:block}.loop-output p{margin-top:8px}.loop-return{height:70px}}
@media(prefers-reduced-motion:reduce){.journey-track::after,.journey-stop,.research-paper img{transition:none}.journey-stop{opacity:1}}

.loop-return svg{stroke-width:1.6;opacity:.85}
.loop-return svg path:first-child{stroke-dasharray:11 7}
.agent-loop.is-in-view .loop-return svg path:first-child{animation:feedback-trace 5s linear infinite}
@keyframes feedback-trace{to{stroke-dashoffset:72}}
@media(prefers-reduced-motion:reduce){.agent-loop.is-in-view .loop-return svg path:first-child{animation:none;stroke-dasharray:none}}

.journey-stop.is-current h3{color:var(--accent)}
