.jm{--jm-land:#18392d;--jm-sea:#0c2119;--jm-gold:#d3a264;--jm-ember:#e08a57;--jm-veh:#e8e2d69e;--jm-ink:#f6f1e6;--jm-soft:#e8e2d6a8;--jm-faint:#e8e2d624;--jm-card:#e8e2d60b;color:var(--jm-ink);gap:28px;display:grid}.jm-head{gap:22px;display:grid}@media (min-width:1024px){.jm-head{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:40px}}.jm-eyebrow{color:var(--jm-gold)}.jm-title{font-family:var(--font-story);color:var(--jm-ink);letter-spacing:-.018em;text-wrap:balance;margin-top:14px;font-size:clamp(2rem,4.4vw,3.2rem);font-weight:700;line-height:1.06}.jm-lede{font-family:var(--font-story);color:var(--jm-soft);max-width:40rem;margin-top:16px;font-size:clamp(1.05rem,1.6vw,1.2rem);line-height:1.6}.jm-legend{flex-wrap:wrap;gap:8px;display:flex}.jm-mode{cursor:pointer;border:1px solid var(--jm-faint);color:var(--jm-ink);font:500 14px/1 var(--font-ui);background:0 0;border-radius:999px;align-items:center;gap:10px;padding:9px 15px 9px 12px;transition:opacity .2s,border-color .2s;display:inline-flex}.jm-mode:hover{border-color:#d3a2648c}.jm-mode[aria-pressed=false]{opacity:.4}.jm-sw{flex:none;width:30px;height:10px;overflow:visible}.jm-sw-walk{stroke:var(--jm-gold);stroke-width:4.4px;stroke-linecap:round}.jm-sw-camel{stroke:var(--jm-ember);stroke-width:5px;stroke-linecap:round;stroke-dasharray:0 6.5}.jm-sw-truck{stroke:var(--jm-veh);stroke-width:1.8px;stroke-dasharray:4.5 4}.jm-ribbon-wrap{gap:10px;min-width:0;display:grid}.jm-ribbon{grid-template-columns:repeat(12,minmax(0,1fr));gap:6px;display:grid}.jm-tile{text-align:left;cursor:pointer;border:1px solid var(--jm-faint);color:var(--jm-ink);background:0 0;border-radius:12px;align-content:start;justify-items:start;gap:2px;min-width:0;padding:10px 10px 12px;transition:background-color .25s,border-color .25s,color .25s;display:grid}.jm-tile:hover{border-color:#d3a26480}.jm-tile[aria-selected=true]{background:var(--color-clay);border-color:var(--color-clay);color:var(--color-cedar-deep)}.jm-tile-k{font:500 10.5px/1 var(--font-ui);letter-spacing:.14em;text-transform:uppercase;opacity:.62}.jm-tile-n{font:700 1.55rem/1.05 var(--font-story);font-variant-numeric:tabular-nums}.jm-tile-route .jm-tile-n{font-size:1.2rem;line-height:1.35}.jm-tile-s{font:400 12px/1.25 var(--font-ui);opacity:.72;white-space:nowrap;text-overflow:ellipsis;max-width:100%;overflow:hidden}.jm-bar{border-radius:2px;gap:2px;width:100%;height:3px;margin-top:8px;display:flex;overflow:hidden}.jm-bar i{border-radius:2px;height:100%;display:block}.jm-bar-walk{background:var(--jm-gold)}.jm-bar-camel{background:var(--jm-ember)}.jm-bar-truck{background:#e8e2d659}.jm-tile[aria-selected=true] .jm-bar-truck{background:#122c234d}.jm-tile[aria-selected=true] .jm-bar-walk{background:#b8894a}.jm-dates{font:400 13px/1.5 var(--font-ui);color:var(--jm-soft)}@media (max-width:1023px){.jm-ribbon{scroll-snap-type:x proximity;padding-bottom:6px;scrollbar-width:none;margin-inline:-20px;padding-inline:20px;display:flex;overflow-x:auto}.jm-ribbon::-webkit-scrollbar{display:none}.jm-tile{scroll-snap-align:start;flex:none;width:88px}.jm-tile-route{width:104px}}.jm-body{gap:20px;display:grid}@media (min-width:1024px){.jm-body{grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);align-items:stretch}}.jm-plate{background:var(--jm-sea);box-shadow:0 0 0 1px var(--jm-faint), 0 30px 80px -40px #000000b3;border-radius:18px;height:min(74svh,640px);min-height:380px;position:relative;overflow:hidden}@media (min-width:1024px){.jm-plate{height:760px}}.jm-svg{cursor:grab;-webkit-user-select:none;user-select:none;touch-action:pan-y;width:100%;height:100%;display:block}.jm-svg.is-dragging{cursor:grabbing}.jm-land{fill:var(--jm-land)}.jm-sea{fill:var(--jm-sea)}.jm-coast{fill:none;stroke:#d3a26447;stroke-linejoin:round}.jm-grid{stroke:#e8e2d60d}.jm-gridlbl{fill:#e8e2d652;font-family:var(--font-ui)}.jm-sealbl text{fill:#d3a2646b;font-family:var(--font-story);font-style:italic}.jm-town circle{fill:#e8e2d661}.jm-town text{fill:#e8e2d673;font-family:var(--font-story);paint-order:stroke;stroke:var(--jm-land);stroke-linejoin:round;font-style:italic}.jm-direct{fill:none;stroke:#e8e2d64d;stroke-linecap:round}.jm-leg{fill:none;stroke-linecap:round;stroke-linejoin:round;transition:opacity .45s}.jm-leg-walk{stroke:var(--jm-gold);filter:drop-shadow(0 0 6px #d3a26459)}.jm-leg-camel{stroke:var(--jm-ember)}.jm-leg-truck{stroke:var(--jm-veh)}.jm-leg.is-dim{opacity:.16}.jm-badge{cursor:pointer}.jm-badge circle{fill:var(--jm-land);stroke:#e8e2d673;transition:fill .25s}.jm-badge text{fill:var(--jm-ink);font-family:var(--font-ui);font-weight:600}.jm-badge.is-on circle{fill:var(--jm-gold);stroke:var(--jm-gold)}.jm-badge.is-on text{fill:var(--color-cedar-deep)}.jm-pt{cursor:pointer;outline:none;transition:opacity .35s}.jm-pt.is-dim{opacity:.32}.jm-hit{fill:#0000}.jm-glow{fill:#d3a26429}.jm-pt-station .jm-mark{fill:var(--jm-gold);stroke:var(--jm-land)}.jm-pt-city .jm-mark{fill:var(--jm-land);stroke:var(--jm-ink)}.jm-pt-way .jm-mark{fill:var(--jm-land);stroke:var(--jm-gold)}.jm-pt-camp .jm-mark{fill:#e8e2d6cc;stroke:var(--jm-land)}.jm-pt.is-sel .jm-mark,.jm-pt:focus-visible .jm-mark{stroke:var(--jm-ink)}.jm-pt.is-sel .jm-glow{fill:#d3a26452}.jm-pt:hover .jm-lbl{fill:var(--jm-gold)}.jm-lbl{fill:var(--jm-ink);font-family:var(--font-ui);paint-order:stroke;stroke:var(--jm-land);stroke-linejoin:round;font-weight:500;transition:fill .2s}.jm-pt-station .jm-lbl{font-family:var(--font-story);font-weight:600}.jm-pt-way .jm-lbl,.jm-pt-camp .jm-lbl{fill:var(--jm-soft);font-weight:400}.jm-num{fill:var(--jm-gold);font-family:var(--font-ui);font-weight:700}.jm-ctl{justify-items:end;gap:6px;display:grid;position:absolute;top:14px;right:14px}.jm-ctl button{cursor:pointer;border:1px solid var(--jm-faint);width:38px;height:38px;color:var(--jm-ink);font:400 20px/1 var(--font-ui);-webkit-backdrop-filter:blur(6px);background:#0c2119d1;border-radius:10px;place-items:center;transition:border-color .2s;display:grid}.jm-ctl button:hover{border-color:#d3a26499}.jm-ctl .jm-ctl-fit{letter-spacing:.02em;width:auto;padding:0 12px;font-size:12.5px;font-weight:500}.jm-scale{border:1px solid var(--jm-faint);font:400 11px/1 var(--font-ui);color:var(--jm-soft);font-variant-numeric:tabular-nums;-webkit-backdrop-filter:blur(6px);background:#0c2119d1;border-radius:9px;padding:7px 11px 8px;position:absolute;bottom:14px;right:14px}.jm-scale i{border:1.5px solid var(--jm-soft);border-top:0;height:5px;margin-top:5px;display:block}.jm-panel{min-width:0;scroll-margin-top:90px}@media (min-width:1024px){.jm-panel{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#e8e2d633 transparent;height:760px;overflow-y:auto}}.jm-card{background:var(--jm-card);min-height:100%;box-shadow:inset 0 0 0 1px var(--jm-faint);border-radius:18px;align-content:start;gap:16px;padding:28px 26px 26px;animation:.45s both jm-in;display:grid}@keyframes jm-in{0%{opacity:.3;transform:translateY(6px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.jm-card{animation:none}.jm-leg,.jm-pt{transition:none}}.jm-card-title{font:700 clamp(1.6rem, 2.6vw, 2.1rem)/1.1 var(--font-story);letter-spacing:-.015em;color:var(--jm-ink);text-wrap:balance}.jm-p{font:400 1.04rem/1.65 var(--font-story);color:#f6f1e6d6}.jm-sleep{font:400 14px/1.4 var(--font-ui);color:var(--jm-ink);flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.jm-sleep span{letter-spacing:.14em;text-transform:uppercase;color:var(--jm-gold);font-size:11px}.jm-modes{gap:8px;margin:0;padding:0;list-style:none;display:grid}.jm-modes li{font:400 14px/1.5 var(--font-ui);color:#f6f1e6db;background:#e8e2d60d;border-radius:12px;align-items:flex-start;gap:12px;padding:11px 14px;display:flex}.jm-modes .jm-sw{margin-top:6px}.jm-modes b{color:var(--jm-ink);font-weight:600}.jm-steps{counter-reset:s;gap:10px;margin:0;padding:0;list-style:none;display:grid}.jm-steps li{font:400 15px/1.55 var(--font-ui);color:#f6f1e6db;counter-increment:s;padding-left:30px;position:relative}.jm-steps li:before{content:counter(s);width:20px;height:20px;color:var(--jm-gold);font:600 11px/18px var(--font-ui);text-align:center;border:1px solid #d3a2648c;border-radius:50%;position:absolute;top:1px;left:0}.jm-anchor{border-left:2px solid var(--jm-gold);font:italic 400 1.12rem/1.55 var(--font-story);color:var(--jm-ink);margin:4px 0 0;padding:4px 0 4px 18px}.jm-sub{font:600 11px/1 var(--font-ui);letter-spacing:.16em;text-transform:uppercase;color:var(--jm-soft);margin-top:6px}.jm-stops{margin:-4px 0 0;padding:0;list-style:none;display:grid}.jm-stops li+li{border-top:1px solid #e8e2d614}.jm-stops button{text-align:left;cursor:pointer;width:100%;color:var(--jm-ink);background:0 0;border:0;border-radius:8px;align-items:baseline;gap:12px;padding:11px 6px;transition:background-color .2s;display:flex}.jm-stops button:hover{background:#e8e2d60d}.jm-k{width:26px;font:700 12.5px/1 var(--font-ui);color:var(--jm-gold);flex:none}.jm-n{font:600 1.02rem/1.3 var(--font-story)}.jm-d{text-align:right;font:400 12.5px/1.35 var(--font-ui);color:var(--jm-soft);max-width:50%;margin-left:auto}.jm-nav{justify-content:space-between;gap:10px;margin-top:auto;padding-top:10px;display:flex}.jm-nav button,.jm-dayrefs button{cursor:pointer;font:500 14px/1 var(--font-ui);color:var(--jm-ink);background:0 0;border:1px solid #d3a26480;border-radius:999px;padding:10px 18px;transition:background-color .2s,color .2s}.jm-nav button:hover,.jm-dayrefs button:hover{background:var(--jm-gold);color:var(--color-cedar-deep)}.jm-back{cursor:pointer;color:var(--jm-gold);font:500 14px/1 var(--font-ui);background:0 0;border:0;justify-self:start;padding:0}.jm-ar{font-family:var(--font-arabic,"Amiri"), "Noto Naskh Arabic", "Geeza Pro", serif;color:var(--jm-gold);margin-top:-6px;font-size:1.6rem}.jm-where{font:500 12px/1.4 var(--font-ui);letter-spacing:.1em;text-transform:uppercase;color:var(--jm-soft)}.jm-note{font:italic 400 1.22rem/1.5 var(--font-story);color:var(--jm-ink)}.jm-read{font:500 14.5px/1.3 var(--font-ui);color:var(--jm-gold);text-underline-offset:4px;justify-self:start;-webkit-text-decoration:underline #d3a26466;text-decoration:underline #d3a26466}.jm-read:hover{-webkit-text-decoration-color:var(--jm-gold);text-decoration-color:var(--jm-gold)}.jm-src{font:400 12px/1.4 var(--font-ui);letter-spacing:.02em;color:#e8e2d680}.jm-dayrefs{flex-wrap:wrap;gap:8px;display:flex}.jm-foot{font:400 12.5px/1.5 var(--font-ui);color:#e8e2d673;max-width:46rem}
