.route-drawing{margin:0 0 24px;border:1px solid var(--line-soft);border-radius:10px;overflow:hidden;background:#f2ede3;position:relative}
.route-drawing__label{padding:14px 22px;border-bottom:1px solid var(--line-soft);font-family:var(--f-mono);font-size:11px;text-transform:uppercase;letter-spacing:.15em;color:var(--forest)}
.route-drawing img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;max-height:650px}
.route-drawing figcaption{padding:14px 22px;border-top:1px solid var(--line-soft);font-size:12px;line-height:1.6;color:var(--ink-soft)}
.route-drawing:has(img[src*="cad-v2"]){background:#fff}
.route-drawing:has(img[src*="cad-v2"]) .route-drawing__label{background:#f7f7f4}
.route-drawing__zoom{display:inline-block;margin:0 22px 16px;color:var(--forest);font-size:13px;text-underline-offset:4px}
.route .stages.stages--illustrated{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:stretch}
.route .stages.stages--illustrated>.stage{grid-column:auto;padding:22px;opacity:1;transform:none;background:var(--cream)}
.route .route-summary h3{font-size:20px;line-height:1.3;margin-bottom:14px}
.route-summary__numbers{list-style:none;display:flex;flex-wrap:wrap;gap:6px;padding:0;margin:20px 0 0}
.route-summary__numbers li{font-family:var(--f-mono);font-size:11px;display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--line-soft);border-radius:5px;color:var(--forest)}
@media(max-width:900px){.route .stages.stages--illustrated{grid-template-columns:1fr;gap:12px}}
@media(max-width:560px){.route-drawing__label,.route-drawing figcaption{padding:12px 16px}.route .stages.stages--illustrated>.stage{padding:18px}.route .route-summary h3{font-size:18px}}
