/* A single route control, with directions held inside the map's lower fade. */
.atlas-step-nav{display:flex;align-items:center;justify-content:center;gap:12px;margin:0 0 18px;min-width:0}
.atlas-step-strip{position:relative;display:flex;gap:7px;overflow-x:auto;max-width:100%;padding:6px 5px 9px;scrollbar-width:thin;scrollbar-color:#796b48 transparent;overscroll-behavior-x:contain}
.atlas-step-nav button{flex-shrink:0;display:grid;place-items:center;width:39px;height:39px;border:1px solid #a88e5052;border-radius:50%;color:#cfbd94;background:#131e18;font:500 17px/1 var(--serif);transition:background .18s,border-color .18s}
.atlas-step-nav .atlas-step-arrow{width:42px;height:42px;background:transparent;border-color:transparent;font:400 23px/1 var(--sans)}
.atlas-step-nav button:hover:not(:disabled){background:#c3a36420;border-color:#c6aa6b}
.atlas-step-nav button[aria-current=step],.atlas-step-nav button[aria-current=step]:hover:not(:disabled){background:#c7aa6c;color:#172019;border-color:#e8cd90;box-shadow:0 0 0 3px #c7aa6c15}
.atlas-step-nav button:disabled{opacity:.25;cursor:default}
.atlas-step-strip::-webkit-scrollbar{height:3px}.atlas-step-strip::-webkit-scrollbar-thumb{background:#796b48;border-radius:4px}
.atlas-map-frame{position:relative;isolation:isolate;overflow:hidden;border:1px solid #a58e5e;border-radius:5px;background:#101914;box-shadow:0 25px 60px #0005}
.atlas-v26 .atlas-plate{isolation:isolate;border:0;border-radius:0;box-shadow:none;padding:clamp(40px,4%,56px) 24px 32px}
.atlas-v26 .atlas-plate-heading{min-height:67px;padding:0 18px 12px;justify-content:center;text-align:center;line-height:1.15}
.atlas-v26 .atlas-plate-heading:has(.atlas-compass){padding-inline:clamp(68px,14%,160px)}
.atlas-v26 .atlas-plate-heading>span{padding-left:0}
.atlas-v26 .atlas-compass{position:absolute;right:7%;top:calc(50% - 6px);transform:translateY(-50%)}
.atlas-v26 .atlas-vestibule .atlas-plate-heading{display:block;padding-inline:0}
.atlas-v26 .atlas-vestibule .atlas-diagram-label{display:block;text-align:center;margin-top:9px}
.atlas-v26 .atlas-geography{isolation:auto;border:0;background:transparent}
/* Let the real parchment supply the colour; preserve dark cartographic ink. */
.atlas-v26 .atlas-geography>img{filter:url('assets/atlas/map-ink-v31.svg#paper-ink');mix-blend-mode:multiply;opacity:.94}
.atlas-v26 .atlas-geography>img{-webkit-mask-image:linear-gradient(to right,transparent,#000 5%,#000 95%,transparent),linear-gradient(to bottom,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(to right,transparent,#000 5%,#000 95%,transparent),linear-gradient(to bottom,transparent,#000 6%,#000 94%,transparent);-webkit-mask-composite:source-in;mask-composite:intersect}
.atlas-map-caption{position:relative;z-index:4;margin-top:-46px;padding:65px 30px 27px;background:linear-gradient(to bottom,transparent,#101914e8 45px,#101914 85px);pointer-events:none}
.atlas-map-caption .atlas-instruction{max-width:none;pointer-events:auto}
.atlas-map-caption .atlas-direction-meta{justify-content:flex-start;align-items:center;flex-wrap:wrap;gap:10px 16px;color:#c6b17e;font-size:12px}
.atlas-map-caption .atlas-direction-meta>span+span{border-left:1px solid #c6b17e4d;padding-left:13px}
.atlas-map-caption .atlas-coordinate{display:inline-flex;align-items:center;gap:10px;margin:0 0 0 auto;padding:5px 0;font-size:12px;color:#e0c88f;font-variant-numeric:tabular-nums}
.atlas-map-caption .atlas-copy-label{font-size:11px;color:#b4baa9;text-decoration:underline;text-underline-offset:3px}
.atlas-map-caption .atlas-coordinate:hover .atlas-copy-label{color:#f3dfb3}
.atlas-map-caption h5{font-size:30px;margin:12px 0 9px;line-height:1.2}
.atlas-map-caption p{max-width:68ch;font-size:14px;line-height:1.75;color:#d2dac8}
.atlas-map-caption .atlas-instruction>h5+p{min-block-size:5.25em}
.atlas-v26 .atlas-marker-group{--pin-size:30px;--pin-width:calc(var(--pin-columns)*var(--pin-size) + (var(--pin-columns) - 1)*3px + 6px);position:absolute;z-index:2;display:grid;grid-template-columns:repeat(var(--pin-columns),var(--pin-size));gap:3px;padding:3px;width:var(--pin-width);left:clamp(calc(var(--pin-width)/2),var(--pin-x),calc(100% - var(--pin-width)/2));top:var(--pin-y);transform:translate(-50%,-50%);border-radius:20px;background:#352b20d9;box-shadow:0 2px 5px #38220f60}
.atlas-v26 .atlas-marker-group:has([aria-pressed=true]){z-index:3}
.atlas-v26 .atlas-marker-group{--pin-height:calc(var(--pin-rows)*var(--pin-size) + (var(--pin-rows) - 1)*3px + 6px);top:clamp(calc(var(--pin-height)/2),var(--pin-y),calc(100% - var(--pin-height)/2))}
.atlas-v26 .atlas-marker-group .atlas-marker{position:relative;left:auto;top:auto;transform:none;width:var(--pin-size);height:var(--pin-size);font-size:14px;border-width:1.5px;box-shadow:none}
.atlas-v26 .atlas-marker-group .atlas-marker[aria-pressed=true]{background:#9b3d2d;border-color:#fff1c6;box-shadow:0 0 0 2px #ffe5ab82}
.atlas-v26 .atlas-marker-group:has(>.atlas-marker:only-child){padding:0;background:transparent;box-shadow:none;--pin-width:var(--pin-size);--pin-height:var(--pin-size)}
.atlas-v26 .atlas-route-details{margin-top:18px;padding-top:14px}
.atlas-v26 .atlas-hall-diagram{margin-bottom:5px}
/* Control numerals share a cap height and baseline, including two-digit steps. */
.atlas-v26 .atlas-step-number,.atlas-v26 .atlas-marker,.atlas-v26 .atlas-passage-number{font-family:var(--sans);font-variant-numeric:lining-nums tabular-nums;font-weight:600;line-height:1}
@media(max-width:560px){
  .atlas-step-nav{gap:3px;margin-bottom:12px}.atlas-step-strip{gap:5px;padding-inline:3px}
  .atlas-step-nav button{width:36px;height:36px;font-size:16px}.atlas-step-nav .atlas-step-arrow{width:32px;height:38px}
  .atlas-v26 .atlas-plate{padding:28px 10px 27px}.atlas-v26 .atlas-plate-heading{min-height:49px;padding:0 12px 8px;font-size:24px}.atlas-v26 .atlas-plate-heading:has(.atlas-compass){padding-inline:52px;font-size:22px}.atlas-v26 .atlas-compass{width:28px;height:34px;top:calc(50% - 4px)}
  .atlas-map-caption{margin-top:-38px;padding:55px 17px 22px;background:linear-gradient(to bottom,transparent,#101914f0 38px,#101914 70px)}
  .atlas-map-caption h5{font-size:26px}.atlas-map-caption p{font-size:14px;line-height:1.7}
  .atlas-map-caption .atlas-instruction>h5+p{min-block-size:5.1em}
  .atlas-map-caption .atlas-direction-meta{gap:8px 12px;font-size:11px}.atlas-map-caption .atlas-coordinate{margin-left:auto;font-size:11px;flex-basis:100%;justify-content:flex-end;flex-grow:0}.atlas-map-caption .atlas-direction-meta>span+span{padding-left:12px}
  .atlas-v26 .atlas-marker-group{--pin-size:26px;gap:2px;--pin-width:calc(var(--pin-columns)*var(--pin-size) + (var(--pin-columns) - 1)*2px + 6px);--pin-height:calc(var(--pin-rows)*var(--pin-size) + (var(--pin-rows) - 1)*2px + 6px)}
  .atlas-v26 .atlas-marker-group .atlas-marker{font-size:12px}.atlas-v26 .atlas-marker-group:has(>.atlas-marker:only-child){--pin-width:var(--pin-size)}
}
@media(prefers-reduced-motion:reduce){.atlas-step-nav button{transition:none}}
@media print{.atlas-step-nav{display:none}.atlas-map-frame{overflow:visible;background:none;box-shadow:none}.atlas-map-caption{margin:0;padding:20px;background:none}.atlas-marker-group{break-inside:avoid}.atlas-map-caption .atlas-instruction{margin:0 0 16px}.atlas-coordinate{display:none}}
