.route-room{background:#e5e7e2;color:#263638;padding:55px 5vw 80px}.route-heading{display:grid;grid-template-columns:1.25fr 1fr;column-gap:10vw;max-width:1300px;margin:auto}.route-heading>p:first-child{grid-column:1/-1;font-size:13px;margin-bottom:30px}.route-heading h1{font:600 clamp(48px,5vw,76px)/1.2 var(--serif)}.route-heading>p:last-child{font:20px/1.9 var(--serif);align-self:end;max-width:440px}.route-reading-grid{display:grid;grid-template-columns:1.65fr 1fr;gap:4vw;max-width:1400px;margin:50px auto 0;align-items:start}.route-map{position:relative;aspect-ratio:1000/650;min-width:0;margin-top:15px}.route-map>svg{width:100%;height:100%;overflow:visible}.route-map path{fill:none;stroke:#738581;stroke-width:1.8}.route-map path.analytical_comparison{stroke:#817e73;stroke-dasharray:7 6}.route-map svg text{fill:#5d6964;text-anchor:middle;font:14px var(--sans);paint-order:stroke;stroke:#e5e7e2;stroke-width:10px;stroke-linejoin:round}.route-stop{position:absolute;left:var(--rx);top:var(--ry);transform:translate(-50%,-50%);display:flex;align-items:center;gap:12px;background:#e5e7e2;padding:10px 13px;white-space:nowrap;font:24px var(--serif);min-height:65px}.route-stop img{width:54px;height:68px;object-fit:contain;filter:grayscale(1)}.route-stop small{display:block;font:12px/1.8 var(--sans);margin-top:8px;color:#596864}.route-stop[aria-pressed=true]{color:#173f50}.route-stop[aria-pressed=true]>span{box-shadow:0 3px #526c77;padding-bottom:8px}.route-stop.route-visited:not([aria-pressed=true])>span{border-bottom:1px solid #b0b8b0;padding-bottom:8px}.route-foreman{font-size:32px}.route-legend{position:absolute;bottom:-16px;left:0;font:11px/1.8 var(--sans);color:#596864}.route-note{padding:28px 0 15px;border-top:3px solid #526c77;scroll-margin-top:90px}.route-note:focus,.route-comparison:focus{outline:none}.route-location{font-size:12px;margin-bottom:22px}.route-note h2{font:500 32px/1.5 var(--serif);margin-bottom:25px}.route-note>p:not(.route-location){font:18px/1.95 var(--serif);margin-bottom:18px}.route-outlinks{display:grid;gap:8px;margin:22px 0;font-size:13px}.route-outlinks a,.route-under a,.route-under button,.route-comparison>button{text-decoration:underline;text-underline-offset:6px;min-height:44px;display:flex;align-items:center}.route-evidence{font-size:12px;line-height:1.8}.route-evidence summary{cursor:pointer;padding:15px 0}.route-evidence button{display:block;min-height:44px;text-decoration:underline;text-underline-offset:4px}.route-next{margin-top:25px;padding-top:20px;border-top:1px solid #b4bdb6;font-size:13px}.route-next button{display:block;padding:12px 0;min-height:44px}.route-next>p{font-size:11px;color:#596864}.route-under{display:flex;flex-wrap:wrap;gap:35px;max-width:1400px;margin:65px auto 0;font-size:14px}.route-comparison{background:#f5f4ee;margin:35px auto 0;padding:50px;max-width:1400px;scroll-margin-top:90px}.route-comparison[hidden]{display:none}.route-comparison header{max-width:720px}.route-comparison header>p:first-child{font-size:12px;margin-bottom:20px}.route-comparison h2{font:500 40px/1.5 var(--serif);margin-bottom:20px}.route-comparison header>p:last-child{font:17px/1.9 var(--serif)}.route-comparison>div{display:grid;grid-template-columns:1fr 1fr;gap:8vw;margin-top:40px}.route-comparison h3{font:500 27px/1.6 var(--serif);margin-bottom:15px}.route-comparison section>p{font:17px/1.9 var(--serif);margin-bottom:25px}.route-comparison img{width:100%;height:380px;object-fit:contain;object-position:top;margin-bottom:17px}.route-comparison a>span{display:block;font:12px/1.8 var(--sans);text-decoration:underline;text-underline-offset:4px}.route-comparison>button{margin-top:35px;font-size:13px}
.free-room{background:#eef0eb;color:#283b3b;padding:48px 4.5vw 75px}.free-heading{display:flex;justify-content:space-between;align-items:start;gap:40px;margin-bottom:35px}.free-heading>div:first-child>p:first-child{font-size:12px;margin-bottom:24px}.free-heading h1{font:500 clamp(30px,3.2vw,49px)/1.45 var(--serif);margin-bottom:16px}.free-heading>div>p:last-child{font:17px/1.8 var(--serif)}.net-search{width:310px;position:relative;flex:none}.net-search label{display:block;font-size:12px;margin-bottom:12px}.net-search input{width:100%;font:14px var(--sans);border:0;border-bottom:1px solid #82938c;border-radius:0;background:transparent;padding:12px 0;color:inherit}.net-search input:focus{outline:2px solid #526c77;outline-offset:4px}.net-search #net-results:not(:empty){position:absolute;top:85px;left:0;right:0;z-index:10;background:#f9f8f1;box-shadow:0 5px 20px #26363822;padding:12px;max-height:330px;overflow:auto}.net-search #net-results button{display:flex;justify-content:space-between;gap:12px;width:100%;padding:12px 0;min-height:44px;font-size:14px}.net-search small{font-size:10px;white-space:nowrap}.net-search #net-results p{font-size:13px;line-height:1.8}.net-workspace{display:grid;grid-template-columns:minmax(0,2.2fr) minmax(265px,1fr);gap:30px;align-items:start}.net-drawing{min-width:0}.net-controls{display:flex;gap:20px;align-items:center;flex-wrap:wrap;font-size:12px;padding:0 0 14px;border-bottom:1px solid #bec7bc;min-height:58px}.net-controls button,.net-controls select{min-height:44px;color:inherit;font:inherit}.net-controls select{background:transparent;border:0;border-bottom:1px solid #b5c0b8;padding:5px}.net-controls button:disabled{color:#8d9890;cursor:default}.net-viewport{position:relative;overflow:hidden;height:530px;touch-action:none;cursor:grab;background:#e5e9e1}.net-viewport:active{cursor:grabbing}.net-viewport:focus-visible{outline:3px solid #526c77;outline-offset:2px}#net-world{position:absolute;left:50%;top:50%;transform-origin:center;overflow:visible;user-select:none}.net-wire{fill:none;stroke:#82938b;stroke-width:1.7}.net-wire.analytical_comparison{stroke-dasharray:7 6;stroke:#8f8577}.net-wire.chosen{stroke:#344f61;stroke-width:3}.net-hit{fill:none;stroke:transparent;stroke-width:20;cursor:pointer}.net-wire-label{font:13px var(--sans);fill:#5c6d67;text-anchor:middle;paint-order:stroke;stroke:#e5e9e1;stroke-width:8px;stroke-linejoin:round}.net-label rect{fill:#e5e9e1}.net-label text{text-anchor:middle;fill:#263d3c}.net-label .net-node-type{font:12px var(--sans);fill:#64776d}.net-label .net-node-name{font:500 23px var(--serif)}.net-label.origin .net-node-name{font-weight:700;fill:#233f50}.net-label path{stroke:#b0bdb2;stroke-width:1}.net-label.origin path{stroke:#415f70;stroke-width:3}.net-label:hover .net-node-name{text-decoration:underline}.net-label:focus-visible rect{stroke:#b65c39;stroke-width:3}.net-viewport g[role=button]:focus-visible .net-hit{stroke:#b65c3950}.net-bottom{display:flex;gap:15px;justify-content:space-between;align-items:center;margin-top:14px}.net-bottom>p{font:11px/1.9 var(--sans)}.net-bottom>p>span{color:#6d7e73}.net-bottom>div{display:flex;gap:14px;align-items:center;font-size:12px}.net-bottom button{min-height:44px;min-width:30px;text-align:center}.net-bottom output{min-width:37px;text-align:center;font-size:11px}.net-gesture{font:11px/1.9 var(--sans);color:#6d7e73;margin-top:8px}.net-reading{padding:25px 23px 30px;background:#f8f7f0;border-top:3px solid #526c77}.net-reading>p:first-child{font-size:11px;margin-bottom:26px}.net-reading h2{font:500 32px/1.5 var(--serif);margin-bottom:18px}.net-reading h3{font:500 18px/1.7 var(--serif);margin-bottom:20px}.net-reading>p{font:17px/1.9 var(--serif);margin-bottom:20px}.net-reading>button{font-size:13px;text-decoration:underline;text-underline-offset:5px;min-height:44px}.free-room .source-list{font-size:12px}.net-object-link{display:grid;gap:10px;margin-top:22px;font-size:13px}.net-object-link a{text-decoration:underline;text-underline-offset:5px;padding:10px 0}.net-text-list{margin-top:60px;max-width:1300px}.net-text-list h2{font:500 32px var(--serif);margin-bottom:20px}.net-text-list>p{font-size:13px;margin-bottom:25px}.net-text-list ul{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:0 50px}.net-text-list li{border-top:1px solid #c4cdc3;padding:20px 0}.net-text-list li>button{font:18px/1.8 var(--serif);min-height:44px;width:100%}.net-text-list li>button>span{display:block;font:12px var(--sans);margin-bottom:10px}.net-text-list li>button>small{display:block;font:11px var(--sans);color:#61736b;margin-top:10px}.net-text-list li>button[aria-pressed=true]>span{text-decoration:underline;text-underline-offset:5px}.net-text-list li>div{font-size:12px;margin-top:18px;display:flex;flex-wrap:wrap;gap:12px}.net-text-list a{padding:10px 0;text-decoration:underline;text-underline-offset:4px}
.source-room{padding:50px 7vw 80px;background:#e7e8e1;color:#273a39}.source-room>header{max-width:1000px}.source-room>header>p:first-child{font-size:12px;margin-bottom:30px}.source-room h1{font:500 clamp(32px,3.5vw,53px)/1.5 var(--serif);margin-bottom:25px}.source-room>header>p:last-child{font:16px/1.8 var(--sans)}.source-reading{display:grid;grid-template-columns:1.7fr 1fr;gap:8vw;margin-top:45px;align-items:start}.source-sheet{min-width:0;background:#dddcd0;padding:25px}.source-sheet img{max-height:1100px;object-fit:contain}.source-sheet button{width:100%}.source-reading aside h2{font:500 28px var(--serif);margin-bottom:25px}.source-reading aside>p{font:17px/1.9 var(--serif);margin-bottom:20px}.source-reading aside>p.source-credit{font:12px/1.9 var(--sans);margin-top:25px}.source-reading aside a,.source-reading aside>button{display:block;min-height:44px;font-size:13px;line-height:1.9;text-decoration:underline;text-underline-offset:5px;padding:10px 0}.source-reading aside h3{font:500 22px var(--serif);margin:35px 0 15px}.source-bibliography{padding:40px 20px;min-height:350px}.source-bibliography h2{font:500 30px/1.7 var(--serif);margin:30px 0}.source-bibliography p,.source-bibliography a{font:15px/1.9 var(--sans)}.source-bibliography a{text-decoration:underline;display:block;margin-top:25px}.relation-proof>p{font:17px/1.9 var(--serif);margin:20px 0}.relation-proof h2{font:500 32px/1.6 var(--serif);margin:20px 0}.relation-proof h3{font:500 23px/1.8 var(--serif)}.relation-proof nav{display:grid;gap:15px;margin-top:30px;font:13px/1.9 var(--sans)}.relation-proof nav a{text-decoration:underline;text-underline-offset:5px;min-height:44px}.demo-original>p{font:14px/1.9 var(--sans);margin:20px 0}.demo-original>button,.demo-original>a{display:block;padding:13px 0;min-height:44px;text-decoration:underline;text-underline-offset:5px;font-size:13px}.demo-original-frame{max-height:65vh;overflow:auto;background:#dddcd0;margin:15px 0}.demo-original-frame img{width:100%;height:auto}.demo-original-frame.zoomed img{width:1500px;max-width:none}.demo-source-link{display:block;font-size:11px;line-height:1.9;padding:8px 0;text-decoration:underline;text-underline-offset:4px}.demo-context-links{display:flex;flex-wrap:wrap;gap:20px;margin-top:25px;font:13px/1.9 var(--sans)}.demo-context-links a{padding:10px 0;text-decoration:underline;text-underline-offset:5px}
@media(max-width:1050px){.route-reading-grid{grid-template-columns:1.4fr 1fr;gap:25px}.route-stop{font-size:20px;padding:8px}.route-stop img{width:42px;height:56px}.route-stop small{font-size:10px}.route-foreman{font-size:26px}.route-map svg text{font-size:16px}.net-workspace{grid-template-columns:minmax(0,1.8fr) minmax(245px,1fr);gap:20px}.net-controls{gap:12px}.net-bottom{align-items:start;flex-direction:column}.net-viewport{height:490px}}
@media(max-width:800px){.route-room{padding:32px 24px 55px}.route-heading{display:block}.route-heading>p:first-child{margin-bottom:25px}.route-heading h1{font-size:49px}.route-heading>p:last-child{font-size:18px;line-height:1.9;margin-top:30px}.route-reading-grid{display:block;margin-top:35px}.route-map{aspect-ratio:auto;margin-top:0;min-height:350px;display:grid;grid-template-columns:1fr 1fr;gap:5px 20px;align-items:center;padding-bottom:45px}.route-map>svg{display:none}.route-stop{position:static;transform:none;font-size:20px;white-space:normal;padding:13px 0;gap:9px;justify-content:start;border-bottom:1px solid #bec7bc;min-height:85px}.route-stop img{width:35px;height:50px}.route-stop small{font-size:10px;line-height:1.8}.route-stop.route-foreman{grid-column:1/-1;font-size:27px;justify-content:center}.route-stop.route-taylor{grid-column:1/-1;justify-content:center}.route-legend{bottom:4px;font-size:10px}.route-note{margin-top:25px;scroll-margin-top:75px}.route-note h2{font-size:30px}.route-note>p:not(.route-location){font-size:18px}.route-under{gap:15px;margin-top:30px;font-size:13px}.route-comparison{padding:28px 22px}.route-comparison h2{font-size:30px}.route-comparison>div{grid-template-columns:1fr;gap:40px}.route-comparison img{height:430px}.route-comparison h3{font-size:25px}.free-room{padding:30px 24px 55px}.free-heading{display:block;margin-bottom:25px}.free-heading h1{font-size:34px}.free-heading>div>p:last-child{font-size:16px}.net-search{width:100%;margin-top:28px}.net-workspace{display:block}.net-controls{font-size:11px;gap:15px;padding-bottom:8px}.net-controls button{min-height:44px}.net-viewport{height:460px}.net-bottom{display:block}.net-bottom>div{gap:15px;margin-top:10px}.net-bottom>p{font-size:10px}.net-reading{margin-top:30px;padding:25px 23px}.net-reading h2{font-size:30px}.net-text-list{margin-top:40px}.net-text-list ul{display:block}.net-text-list li>button{font-size:18px}.source-room{padding:30px 24px 50px}.source-reading{display:block;margin-top:30px}.source-sheet{padding:12px}.source-reading aside{margin-top:35px}.source-reading aside>p{font-size:17px}.source-room h1{font-size:31px}.source-bibliography{padding:20px 12px}.relation-proof h2{font-size:25px}.relation-proof>p{font-size:17px}.demo-context-links{display:grid;gap:5px}}
.route-mobile-lines{display:none}
@media(max-width:800px){.route-map{grid-template-rows:80px 120px 120px 100px;min-height:0}.route-map>svg:not(.route-mobile-lines){display:none}.route-map>.route-mobile-lines{display:block;position:absolute;inset:0;width:100%;height:calc(100% - 45px);z-index:0}.route-stop{position:relative;left:auto;top:auto;z-index:1;border:0}.route-foreman{grid-row:1;grid-column:1/-1}.route-lillian{grid-row:2;grid-column:1}.route-command{grid-row:2;grid-column:2}.route-fayol{grid-row:3;grid-column:2}.route-stop.route-taylor{grid-row:4;grid-column:1/-1}.route-stop small{font-size:11px}.route-legend{z-index:1}.route-stop img{flex:none}}
@media(prefers-reduced-motion:reduce){.route-room *,.free-room *{scroll-behavior:auto!important}}
