.route-development{max-width:none;padding:88px max(64px,calc((100vw - 1472px)/2)) 72px;background:#f2f3ed}
.route-introduction{display:grid;grid-template-columns:1.2fr 1fr;gap:64px;align-items:end;margin-bottom:40px}
.route-introduction h2{font-size:clamp(36px,4.1vw,60px);line-height:1.06;letter-spacing:-.045em;font-weight:500;margin-top:18px}
.route-introduction>p{font-size:20px;line-height:30px;color:var(--muted);max-width:480px;padding-bottom:4px}
.route-person{display:grid;grid-template-columns:1fr auto;gap:48px;border-top:1px solid #bdc9bd;border-bottom:1px solid #bdc9bd;padding:24px 0}
.route-person span{font-size:12px;line-height:20px;color:var(--muted)}.route-person h3{font-size:24px;line-height:32px;font-weight:500;letter-spacing:-.025em;margin:8px 0}
.route-person p{font-size:15px;line-height:24px;max-width:720px;color:var(--muted)}.route-period{display:flex;flex-direction:column;gap:8px;align-self:center}.route-period b{font-size:16px;line-height:24px;font-weight:500}
.skill-workspace{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:48px;align-items:start;padding-top:32px}
.skill-chart{position:sticky;top:112px;min-width:0}.chart-caption{display:flex;gap:24px;justify-content:space-between;font-size:11px;line-height:20px;color:var(--muted);padding:0 0 12px}
.chart-caption span:first-child{color:var(--green)}.skill-map{position:relative;aspect-ratio:760/650;isolation:isolate;min-width:0}
.skill-geography{position:absolute;inset:0;width:100%;height:100%;color:var(--green);overflow:visible}
.route-underlay{stroke:#dce2d7;stroke-width:14;stroke-linecap:round}.route-known{stroke:var(--ink);stroke-width:4;stroke-linecap:round}.route-future{stroke:var(--ink);stroke-width:3;stroke-dasharray:7 9;stroke-linecap:round}.route-branch{stroke:#8fa28e;stroke-width:2;stroke-dasharray:3 8;stroke-linecap:round}
.route-cursor{fill:var(--green);stroke:#f2f3ed;stroke-width:2}.route-cursor-halo{fill:var(--green);fill-opacity:.1}
.skill-stops{list-style:none;padding:0;margin:0;position:absolute;inset:0}.skill-stop{position:absolute;width:24px;height:24px}.skill-stop.stop-observation{left:14.474%;top:21.538%}.skill-stop.stop-method{left:57.895%;top:50.769%}.skill-stop.stop-check{left:14.474%;top:81.538%}
.skill-stop button{position:absolute;left:-24px;top:-24px;padding:0;width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:none}
.skill-stop button:active{transform:none}.skill-pin{display:flex;align-items:center;justify-content:center;width:44px;height:44px;background:#f2f3ed;border:1px solid #9bad99;border-radius:50%;font-size:12px;line-height:20px;letter-spacing:-.025em;transition:background .25s,color .25s,border-color .25s}
.skill-stop button[aria-pressed=true] .skill-pin{background:var(--ink);color:#fff;border-color:var(--ink)}.stop-check .skill-pin{border-style:dashed}
.skill-label{position:absolute;left:60px;top:0;text-align:left;width:220px}.skill-label small{display:block;font-size:11px;line-height:18px;color:var(--green);margin-bottom:7px}.skill-label strong{display:block;font-size:20px;line-height:27px;font-weight:500;letter-spacing:-.025em;color:var(--ink)}
.skill-stop button[aria-pressed=true] .skill-label strong{text-decoration:underline;text-decoration-color:#8fa28e;text-decoration-thickness:1px;text-underline-offset:7px}
.skill-branch{position:absolute;left:71.053%;top:81.538%;transform:translate(-15px,-15px);display:flex;gap:16px;align-items:flex-start;text-align:left;padding:0;max-width:170px}
.skill-branch:active{transform:translate(-15px,-15px)}.branch-pin{width:30px;height:30px;display:flex;align-items:center;justify-content:center;border:1px solid #8fa28e;border-radius:50%;flex-shrink:0;font-size:16px;background:#f2f3ed}.skill-branch[aria-pressed=true] .branch-pin{background:var(--ink);color:white}.skill-branch small{display:block;color:var(--muted);font-size:10px;line-height:16px;white-space:nowrap}.skill-branch strong{display:block;font-size:16px;line-height:23px;font-weight:500;margin-top:5px}
.route-legend{display:flex;gap:24px;flex-wrap:wrap;border-top:1px solid #d3dccf;padding-top:16px;color:var(--muted);font-size:11px;line-height:18px}.route-legend span{display:flex;gap:10px;align-items:center}.route-legend i{display:inline-block;width:24px;border-top:2px solid var(--ink)}.route-legend i.legend-future{border-top-style:dashed}
.skill-reading{background:#fafaf7;padding:28px 32px 24px;border-top:2px solid var(--ink);min-height:680px;position:relative}
.route-mobile-nav{display:none}
.route-source-crop{display:block;width:100%;padding:0;text-align:left;cursor:zoom-in}.route-crop-zoom{position:absolute;right:6px;bottom:6px;display:block;background:#fafaf7;border:1px solid #bdc9bd;border-radius:2px;padding:2px 7px;font-size:12px;line-height:18px;color:var(--green)}.source-scroll.zoomed[data-region] img{width:2400px}
.route-current{font-size:12px;line-height:20px;color:var(--green);padding-bottom:20px;border-bottom:1px solid var(--line);margin-bottom:24px;font-variant-numeric:tabular-nums}
.skill-panel .panel-kicker{font-size:11px;line-height:18px;color:var(--muted);margin-bottom:14px}
.skill-panel h3{font-size:32px;line-height:37px;font-weight:500;letter-spacing:-.035em;margin-bottom:22px}.skill-panel>p:not(.panel-kicker){font-size:17px;line-height:27px;color:var(--muted)}
.skill-panel>blockquote{font-size:23px;line-height:32px;letter-spacing:-.025em;margin:24px 0}.skill-takeaway{margin:24px 0;padding-top:20px;border-top:1px solid var(--line)}.skill-takeaway>span{font-size:11px;line-height:18px;color:var(--green)}.skill-takeaway>p{font-size:17px;line-height:27px;margin-top:9px}
.route-document{margin-top:24px}.route-source-crop{position:relative;overflow:hidden;background:white;border:1px solid #d9e0d5;height:150px}.route-source-crop img{position:absolute;top:0;left:0;width:3204px;height:auto;max-width:none;transform-origin:0 0}
.route-document figcaption{font-size:11px;line-height:18px;color:var(--muted);margin-top:12px}.skill-panel>.text-button{display:inline-block;font-size:12px;line-height:20px;margin-top:18px}
.skill-next{width:100%;display:flex;justify-content:space-between;gap:20px;align-items:center;font-size:14px;line-height:22px;border-top:1px solid var(--line);padding:20px 0 0;margin-top:24px;text-align:left}.skill-next>span{color:var(--green);white-space:nowrap}
.skill-criteria{margin:20px 0 24px;padding-left:24px;display:grid;gap:12px;font-size:16px;line-height:25px}.skill-criteria li::marker{color:var(--green)}.skill-panel p.skill-result-note{font-size:12px;line-height:21px;border-top:1px solid var(--line);padding-top:18px;margin-top:24px}
.route-scope{display:flex;justify-content:space-between;gap:32px;align-items:center;border-top:1px solid #bdc9bd;padding-top:24px;margin-top:40px}.route-scope p{font-size:12px;line-height:22px;color:var(--muted)}.route-scope b{font-weight:500;color:var(--ink);display:block}.route-scope p>span{display:block}.route-scope>button{font-size:13px;white-space:nowrap}
@media(min-width:1600px){.skill-label strong{font-size:23px;line-height:30px}.skill-label{width:250px}.skill-branch{max-width:200px}}
@media(max-width:1199px){.route-development{padding:72px 40px 56px}.route-introduction{gap:32px}.route-introduction h2{font-size:48px}.route-introduction>p{font-size:18px;line-height:28px}.skill-workspace{gap:28px;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}.skill-reading{padding:24px;min-height:670px}.skill-label{width:170px;left:44px}.skill-label strong{font-size:17px;line-height:23px}.skill-label small{font-size:10px}.skill-pin{width:36px;height:36px}.skill-branch{max-width:140px;gap:9px}.skill-branch small{font-size:9px;white-space:normal}.skill-branch strong{font-size:14px;line-height:21px}.skill-panel h3{font-size:28px;line-height:33px}.skill-panel>p:not(.panel-kicker){font-size:16px;line-height:26px}}
@media(max-width:899px){.skill-workspace{grid-template-columns:minmax(0,1fr)}.skill-chart{position:relative;top:auto}.skill-map{max-width:720px;margin:0 auto}.skill-label{left:60px;width:220px}.skill-label strong{font-size:22px;line-height:29px}.skill-label small{font-size:11px}.skill-pin{width:44px;height:44px}.skill-branch{max-width:180px;gap:16px}.skill-branch small{font-size:10px}.skill-branch strong{font-size:16px;line-height:23px}.skill-reading{min-height:0;padding:28px 32px}.route-person{gap:24px}.route-period{max-width:200px}.route-introduction{grid-template-columns:1fr;gap:24px}.route-introduction>p{max-width:650px}}
@media(max-width:599px){.route-development{padding:48px 20px}.route-introduction h2{font-size:34px;line-height:39px}.route-introduction>p{font-size:17px;line-height:27px}.route-introduction{margin-bottom:28px;gap:20px}.route-person{display:block;padding:20px 0}.route-person h3{font-size:22px;line-height:29px}.route-person p{font-size:15px;line-height:24px}.route-period{max-width:none;margin-top:20px;gap:4px}.route-period b{font-size:14px}.route-person span{font-size:11px}.skill-workspace{padding-top:24px;gap:28px}.chart-caption{font-size:10px}.skill-map{aspect-ratio:auto;min-height:435px;max-width:none}.skill-geography{display:none}.skill-stops{display:grid;gap:24px;position:relative;padding-left:2px}.skill-stops:before{content:'';position:absolute;top:26px;bottom:34px;left:23px;border-left:2px solid var(--ink)}.skill-stop,.skill-stop.stop-observation,.skill-stop.stop-method,.skill-stop.stop-check{position:relative;left:auto;top:auto;width:100%;height:auto;min-height:82px}.skill-stop button{position:relative;left:auto;top:auto;width:100%;height:auto;min-height:78px;display:flex;gap:20px;justify-content:flex-start;align-items:flex-start;border-radius:0;text-align:left}.skill-pin{flex-shrink:0;width:44px;height:44px;margin-top:3px}.skill-label{position:static;display:block;flex:1;width:auto;padding-top:1px}.skill-label small{font-size:11px;line-height:18px;margin-bottom:5px}.skill-label strong{font-size:20px;line-height:27px}.skill-label strong br{display:none}.skill-branch{position:relative;left:auto;top:auto;transform:none;margin:12px 0 0 66px;max-width:240px;padding-top:16px;border-top:1px dashed #a6b5a2}.skill-branch:active{transform:none}.skill-branch strong{font-size:16px;line-height:23px}.skill-branch strong br{display:none}.branch-pin{width:28px;height:28px}.skill-branch small{font-size:10px}.route-legend{font-size:10px;gap:10px 24px;padding-top:14px}.skill-reading{padding:24px 20px;min-height:0}.skill-panel h3{font-size:29px;line-height:35px}.skill-panel>p:not(.panel-kicker){font-size:16px;line-height:26px}.skill-panel>blockquote{font-size:22px;line-height:31px}.route-current{margin-bottom:20px}.route-scope{display:block;margin-top:28px;padding-top:20px}.route-scope>button{margin-top:18px}.route-source-crop{height:130px}.skill-criteria{font-size:16px;line-height:25px}}
@media(prefers-reduced-motion:reduce){.skill-pin{transition:none}}
@media(max-width:599px){.skill-stops:before{display:none}.skill-stop:not(:last-child):before{content:'';position:absolute;z-index:-1;left:21px;top:25px;bottom:-42px;border-left:2px solid var(--ink)}.skill-stop.stop-method:before{border-left-style:dashed}}
@media(max-width:599px){.skill-map{min-height:385px}.skill-stops{gap:16px}.skill-stop,.skill-stop.stop-observation,.skill-stop.stop-method,.skill-stop.stop-check{min-height:74px}.skill-stop button{min-height:72px}.route-mobile-nav{position:sticky;top:80px;z-index:3;display:flex;gap:14px;justify-content:space-between;background:#fafaf7;padding:14px 0 12px;border-bottom:1px solid var(--line);margin:-8px 0 20px;font-size:10px;line-height:18px}.route-mobile-nav button{padding:0;color:var(--muted);text-align:left;font-size:10px;line-height:18px}.route-mobile-nav button[aria-pressed=true]{color:var(--green);text-decoration:underline;text-underline-offset:5px}}
