.core-map{--core-map-grid:#77757008;background:linear-gradient(90deg, var(--core-map-grid) 1px, transparent 1px), linear-gradient(var(--core-map-grid) 1px, transparent 1px), var(--ink);background-size:2cm 2cm;border-block:1px solid #34332f;padding-block:clamp(4rem,8vw,7rem);position:relative;overflow:clip}.core-map__colour-blue{--strand-colour:var(--blue);--station-colour:var(--blue);--detail-colour:var(--blue)}.core-map__colour-purple{--strand-colour:var(--purple);--station-colour:var(--purple);--detail-colour:var(--purple)}.core-map__colour-amber{--strand-colour:var(--amber);--station-colour:var(--amber);--detail-colour:var(--amber)}.core-map__colour-pink{--strand-colour:var(--pink);--station-colour:var(--pink);--detail-colour:var(--pink)}.core-map__colour-green{--strand-colour:var(--green);--station-colour:var(--green);--detail-colour:var(--green)}.core-map__column-1{grid-column-start:1}.core-map__column-2{grid-column-start:2}.core-map__column-3{grid-column-start:3}.core-map__column-4{grid-column-start:4}.core-map__column-5{grid-column-start:5}.core-map__column-6{grid-column-start:6}.core-map__station.core-map__span-1{--station-span:1;grid-column-end:span 1}.core-map__station.core-map__span-2{--station-span:2;grid-column-end:span 2}.core-map__station.core-map__span-3{--station-span:3;grid-column-end:span 3}.core-map__station.core-map__span-4{--station-span:4;grid-column-end:span 4}.core-map__station.core-map__span-5{--station-span:5;grid-column-end:span 5}.core-map__station.core-map__span-6{--station-span:6;grid-column-end:span 6}.core-map__interchange-connector.core-map__span-1,.core-map__interchange-node.core-map__span-1{grid-column-end:span 1}.core-map__interchange-connector.core-map__span-2,.core-map__interchange-node.core-map__span-2{grid-column-end:span 2}.core-map__interchange-connector.core-map__span-3,.core-map__interchange-node.core-map__span-3{grid-column-end:span 3}.core-map__interchange-connector.core-map__span-4,.core-map__interchange-node.core-map__span-4{grid-column-end:span 4}.core-map__interchange-connector.core-map__span-5,.core-map__interchange-node.core-map__span-5{grid-column-end:span 5}.core-map__interchange-connector.core-map__span-6,.core-map__interchange-node.core-map__span-6{grid-column-end:span 6}.core-map__row-1{grid-row:1}.core-map__row-2{grid-row:2}.core-map__row-3{grid-row:3}.core-map__row-4{grid-row:4}.core-map__row-5{grid-row:5}.core-map__row-start-1{grid-row-start:1}.core-map__row-start-2{grid-row-start:2}.core-map__row-start-3{grid-row-start:3}.core-map__row-start-4{grid-row-start:4}.core-map__row-start-5{grid-row-start:5}.core-map__row-span-1{--interchange-inset:50%;grid-row-end:span 1}.core-map__row-span-2{--interchange-inset:25%;grid-row-end:span 2}.core-map__row-span-3{--interchange-inset:16.6667%;grid-row-end:span 3}.core-map__row-span-4{--interchange-inset:12.5%;grid-row-end:span 4}.core-map__row-span-5{--interchange-inset:10%;grid-row-end:span 5}.core-map__delay-1{--strand-delay:0s}.core-map__delay-2{--strand-delay:90ms}.core-map__delay-3{--strand-delay:.18s}.core-map__delay-4{--strand-delay:.27s}.core-map__delay-5{--strand-delay:.36s}.core-map__heading{border-bottom:2px solid color-mix(in srgb, var(--gold) 72%, transparent);max-width:68rem;margin-bottom:1.5rem;padding-bottom:clamp(1.4rem,2.4vw,2rem)}.core-map__heading .eyebrow{margin:0 0 var(--eyebrow-heading-gap);color:var(--gold)}.core-map__heading h2{max-width:60rem;color:var(--chalk);letter-spacing:-.025em;text-transform:uppercase;text-wrap:balance;margin:0;font-size:clamp(2.6rem,5vw,4.8rem);line-height:.95}.core-map__heading .core-map__stats{color:#c5c1b9;font-family:var(--heading);letter-spacing:.035em;margin:1.1rem 0 0;font-size:clamp(.8rem,1.35vw,1rem)}.core-map__heading .core-map__instruction{color:#a4a19a;max-width:38rem;margin:.55rem 0 0;font-size:.9rem}.core-map__line-key{background:#111111c7;border:1px solid #3d3b36;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:clamp(1rem,2vw,2rem);margin-bottom:1rem;padding:.8rem 1rem;display:grid}.core-map__line-key>p{color:var(--gold);font-family:var(--display);letter-spacing:.11em;text-transform:uppercase;margin:0;font-size:.6rem;font-weight:700}.core-map__legend{grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(.6rem,1.5vw,1.2rem);margin:0;padding:0;list-style:none;display:grid}.core-map__legend li{grid-template-columns:clamp(1.2rem,2.2vw,2.4rem) minmax(0,1fr);align-items:center;gap:.5rem;min-width:0;display:grid}.core-map__legend span{background:var(--strand-colour);height:3px}.core-map__legend strong{color:#d0cdc6;font-family:var(--heading);letter-spacing:.025em;font-size:clamp(.58rem,.85vw,.72rem);font-weight:500;line-height:1.25}.core-map__layout{grid-template-columns:minmax(0,3.6fr) minmax(17rem,.9fr);align-items:start;gap:1rem;display:grid}.core-map__network{--map-year-column:clamp(7.5rem, 10vw, 9rem);--map-year-gap:clamp(.7rem, 1.2vw, 1rem);--map-year-pad-inline:clamp(.8rem, 1.35vw, 1.15rem);--map-year-pad-block:.9rem;--map-term-height:.8rem;--map-term-gap:.28rem;--map-row-height:2.7rem;--map-rail-gutter:2.05rem;isolation:isolate;background:#111111db;border:1px solid #3d3b36;min-width:0;position:relative}.core-map__route-rail{z-index:1;top:0;bottom:0;left:calc(var(--map-year-pad-inline) + var(--map-year-column) + var(--map-year-gap));width:var(--map-rail-gutter);pointer-events:none;position:absolute}.core-map__route-rail-line{left:var(--rail-offset);background:var(--strand-colour);opacity:.58;border-radius:999px;width:3px;position:absolute}.core-map__route-rail-line--1,.core-map__row-1{--rail-offset:.08rem}.core-map__route-rail-line--2,.core-map__row-2{--rail-offset:.48rem}.core-map__route-rail-line--3,.core-map__row-3{--rail-offset:.88rem}.core-map__route-rail-line--4,.core-map__row-4{--rail-offset:1.28rem}.core-map__route-rail-line--5,.core-map__row-5{--rail-offset:1.68rem}.core-map__route-rail-line--1{top:calc(var(--map-year-pad-block) + var(--map-term-height) + var(--map-term-gap) + 1.35rem);bottom:calc(var(--map-year-pad-block) + 12.15rem)}.core-map__route-rail-line--2{top:calc(var(--map-year-pad-block) + var(--map-term-height) + var(--map-term-gap) + 4.05rem);bottom:calc(var(--map-year-pad-block) + 9.45rem)}.core-map__route-rail-line--3{top:calc(var(--map-year-pad-block) + var(--map-term-height) + var(--map-term-gap) + 6.75rem);bottom:calc(var(--map-year-pad-block) + 6.75rem)}.core-map__route-rail-line--4{top:calc(var(--map-year-pad-block) + var(--map-term-height) + var(--map-term-gap) + 9.45rem);bottom:calc(var(--map-year-pad-block) + 4.05rem)}.core-map__route-rail-line--5{top:calc(var(--map-year-pad-block) + var(--map-term-height) + var(--map-term-gap) + 12.15rem);bottom:calc(var(--map-year-pad-block) + 1.35rem)}.core-map__year{z-index:2;grid-template-columns:var(--map-year-column) minmax(0, 1fr);gap:var(--map-year-gap);min-width:0;padding:var(--map-year-pad-block) var(--map-year-pad-inline);align-items:start;display:grid;position:relative}.core-map__year+.core-map__year{border-top:1px solid #3d3b36}.core-map__year-heading{min-width:0;padding-top:calc(var(--map-term-height) + var(--map-term-gap) + .25rem)}.core-map__year-heading a{color:var(--gold);font-family:var(--display);letter-spacing:.075em;text-transform:uppercase;font-size:clamp(.9rem,1.25vw,1.05rem);font-weight:700;text-decoration:none}.core-map__year-heading a:hover,.core-map__year-heading a:focus-visible{color:#e4ca78}.core-map__year-heading p{color:#8f8c85;font-family:var(--heading);letter-spacing:.02em;margin:.4rem 0 0;font-size:.65rem;line-height:1.45}.core-map__year-route{min-width:0}.core-map__term-labels{height:var(--map-term-height);padding-left:var(--map-rail-gutter);color:#706d67;font-family:var(--display);letter-spacing:.035em;text-align:center;grid-template-columns:repeat(6,minmax(0,1fr));font-size:.5rem;display:grid}.core-map__track{grid-template-columns:repeat(6,minmax(0,1fr));grid-template-rows:repeat(5, var(--map-row-height));min-width:0;margin-top:var(--map-term-gap);padding-left:var(--map-rail-gutter);display:grid;position:relative}.core-map__strand-line{z-index:0;background:var(--strand-colour);opacity:0;height:3px;transition:opacity .75s var(--ease-reveal) var(--strand-delay);grid-column:1/-1;align-self:center;position:relative}.core-map__strand-line:before{width:calc(var(--map-rail-gutter) - var(--rail-offset));background:var(--strand-colour);content:"";border-radius:999px 0 0 999px;height:3px;position:absolute;top:0;right:100%}.core-map.is-ready .core-map__strand-line{opacity:.34}.core-map__station{z-index:7;--station-span:1;--station-colour:var(--strand-colour,var(--gold));--station-fill:color-mix(in srgb, var(--ink) 94%, var(--station-colour) 6%);color:#dedbd4;text-align:center;width:calc(100% - .35rem);min-width:0;height:100%;min-height:0;transition:color var(--action);background:0 0;border:0;grid-column-end:span 1;align-self:stretch;margin-inline:auto;padding:0;text-decoration:none;display:block;position:relative}.core-map__station:hover,.core-map__station:focus-visible,.core-map__station.is-active{z-index:8;color:var(--white)}.core-map__station:focus-visible{outline:none}.core-map__station:hover .core-map__station-name,.core-map__station:focus-visible .core-map__station-name,.core-map__station.is-active .core-map__station-name{border-color:var(--gold);box-shadow:0 0 0 2px #c5a84e29}.core-map__station-group{display:contents}.core-map__interchange-connector{z-index:1;pointer-events:none;align-self:stretch;position:relative}.core-map__interchange-connector:before{top:var(--interchange-inset);bottom:var(--interchange-inset);content:"";opacity:1;width:0;transition:border-color var(--action), box-shadow var(--action);background:0 0;border:0;border-left:2px solid #bab6ae;border-radius:0;display:block;position:absolute;left:50%;transform:translate(-50%)}.core-map__interchange-node{z-index:6;border:1px solid color-mix(in srgb, var(--strand-colour) 48%, #dedbd5 52%);background:var(--ink);width:.34rem;height:.34rem;box-shadow:0 0 0 .75px color-mix(in srgb, var(--strand-colour) 76%, transparent);pointer-events:none;transition:background var(--action), border-color var(--action), box-shadow var(--action);border-radius:50%;place-self:center;display:block}.core-map__station-group:has(.core-map__station.is-active) .core-map__interchange-connector:before{border-left-color:var(--gold);box-shadow:0 0 0 1px #c5a84e2e}.core-map__station-group:has(.core-map__station.is-active) .core-map__interchange-node{background:var(--gold);box-shadow:0 0 0 1px var(--ink), 0 0 0 1.4px #c5a84e24;border-color:#d2d0cb}.core-map__station-name{z-index:2;border:1px solid color-mix(in srgb, var(--station-colour) 78%, #817c72 22%);background:var(--station-fill);min-height:1.2rem;font-family:var(--heading);text-wrap:balance;transition:border-color var(--action), box-shadow var(--action);border-radius:999px;place-items:center;padding:.16rem .32rem;font-size:clamp(.55rem,.68vw,.68rem);font-weight:500;line-height:1.15;display:grid;position:absolute;left:0;right:0}.core-map__station.core-map__row-1 .core-map__station-name,.core-map__station.core-map__row-3 .core-map__station-name,.core-map__station.core-map__row-5 .core-map__station-name{bottom:calc(50% + .32rem)}.core-map__station.core-map__row-2 .core-map__station-name,.core-map__station.core-map__row-4 .core-map__station-name{top:calc(50% + .32rem)}.core-map__platform{z-index:1;grid-template-columns:repeat(var(--station-span,1), minmax(0, 1fr));align-items:center;height:.65rem;display:grid;position:absolute;top:50%;left:.2rem;right:.2rem;transform:translateY(-50%)}.core-map__platform:before{background:var(--station-colour);height:3px;box-shadow:none;content:"";opacity:.42;transition:opacity var(--action), box-shadow var(--action);position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.core-map__marker{z-index:1;border:1.5px solid var(--station-colour);background:var(--ink);width:.52rem;height:.52rem;box-shadow:none;opacity:.68;transition:opacity var(--action), box-shadow var(--action);border-radius:50%;justify-self:center}.core-map__station.core-map__span-1 .core-map__platform:before{opacity:.3;width:2.5rem;left:50%;right:auto;transform:translate(-50%,-50%)}.core-map__station.core-map__span-1 .core-map__marker{opacity:.9;border-width:2px;width:.62rem;height:.62rem}.core-map__station:hover .core-map__platform:before,.core-map__station:focus-visible .core-map__platform:before,.core-map__station.is-active .core-map__platform:before{box-shadow:0 0 .55rem color-mix(in srgb, var(--station-colour) 76%, transparent);opacity:1}.core-map__station:hover .core-map__marker,.core-map__station:focus-visible .core-map__marker,.core-map__station.is-active .core-map__marker{box-shadow:0 0 .38rem color-mix(in srgb, var(--station-colour) 82%, transparent);opacity:1}.core-map__station-term{display:none}.core-map__onward{z-index:3;grid-row:1/-1;grid-template-rows:repeat(5, var(--map-row-height));color:#cbc8c1;text-align:center;align-self:stretch;width:calc(100% - .45rem);margin-inline:auto;text-decoration:none;display:grid;position:relative}.core-map__onward:before{z-index:0;border:0;border-left:1px solid color-mix(in srgb, var(--ink) 76%, #5c5852 24%);content:"";width:0;transition:background var(--action), box-shadow var(--action);background:0 0;border-radius:0;position:absolute;top:10%;bottom:10%;left:50%;transform:translate(-50%)}.core-map__onward-label{z-index:2;color:#cbc8c1;transition:border-color var(--action), box-shadow var(--action), transform var(--action) var(--ease-reveal);background:#171717;border:1px solid #77736c;border-radius:999px;gap:.06rem;padding:.42rem .3rem .36rem;display:grid;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.core-map__onward:hover .core-map__onward-label,.core-map__onward:focus-visible .core-map__onward-label{border-color:var(--gold);transform:translateY(calc(-50% - 1px));box-shadow:0 0 0 2px #c5a84e33}.core-map__onward:hover:before,.core-map__onward:focus-visible:before{background:var(--gold)}.core-map__onward-label strong{font-family:var(--heading);font-size:.68rem;font-weight:500;line-height:1.2}.core-map__onward-label small{color:#9c9991;font-family:var(--display);letter-spacing:.04em;font-size:.45rem;font-style:normal;line-height:1.2}.core-map__desktop-detail-slot{align-self:stretch;min-width:0}.core-map__detail-host{scrollbar-color:#5b574f #171717;scrollbar-width:thin;background:#171717;border:1px solid #44413b;min-height:22rem;max-height:calc(100vh - 8rem);position:sticky;top:7rem;overflow-y:auto}.core-map__viewer-key{z-index:8;background:#141414f7;border-bottom:1px solid #44413b;padding:.72rem .85rem .78rem;position:sticky;top:0}.core-map__viewer-key>p{color:var(--gold);font-family:var(--display);letter-spacing:.1em;text-transform:uppercase;margin:0 0 .48rem;font-size:.52rem;font-weight:700}.core-map__viewer-key .core-map__legend{grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem .55rem}.core-map__viewer-key .core-map__legend li{grid-template-columns:1rem minmax(0,1fr);gap:.35rem}.core-map__viewer-key .core-map__legend strong{font-size:.53rem;line-height:1.2}.core-map__detail-empty{text-align:center;align-content:center;min-height:22rem;padding:2rem;display:grid}.core-map__detail-empty>span{color:var(--gold);margin-bottom:1rem;font-size:2rem}.core-map__detail-empty strong{color:#cac7c0;font-family:var(--heading);font-size:1rem;font-weight:500}.core-map__detail-empty p{color:#85817a;margin:.6rem 0 0;font-size:.9rem}.core-map__detail{--detail-colour:var(--gold);border-top:4px solid var(--detail-colour);padding:1.5rem}.core-map__detail[hidden],.core-map__detail-empty[hidden]{display:none}.core-map__detail-meta{color:var(--detail-colour);font-family:var(--display);letter-spacing:.08em;text-transform:uppercase;margin:0 0 .5rem;font-size:.62rem;font-weight:700}.core-map__detail h3{color:var(--chalk);margin:0;font-size:clamp(1.65rem,2.4vw,2.25rem)}.core-map__detail-narrative{color:#88847d;font-family:var(--heading);margin:.4rem 0 1.2rem;font-size:.75rem;line-height:1.5}.core-map__detail-facts{border-block:1px solid #3d3a35;grid-template-columns:repeat(3,minmax(0,1fr));margin:0 0 1.2rem;display:grid}.core-map__detail-facts div{min-width:0;padding:.65rem .45rem .7rem 0}.core-map__detail-facts div+div{border-left:1px solid #3d3a35;padding-left:.45rem}.core-map__detail-facts dt{color:#807c75;font-family:var(--display);letter-spacing:.08em;text-transform:uppercase;margin-bottom:.22rem;font-size:.5rem;font-weight:700}.core-map__detail-facts dd{color:#c5c2bb;font-family:var(--heading);margin:0;font-size:.64rem;line-height:1.35}.core-map__detail-note{border:1px solid color-mix(in srgb, var(--detail-colour) 52%, #3d3a35);background:color-mix(in srgb, var(--detail-colour) 7%, transparent);color:#aaa69e;gap:.22rem;margin:0 0 1.2rem;padding:.75rem;font-size:.74rem;line-height:1.45;display:grid}.core-map__detail-note strong{color:var(--detail-colour);font-family:var(--display);letter-spacing:.07em;text-transform:uppercase;font-size:.56rem}.core-map__detail-strands{border-left:3px solid var(--detail-colour);gap:.2rem;margin:-.45rem 0 1.2rem;padding-left:.75rem;display:grid}.core-map__detail-strands strong{color:#8f8b84;font-family:var(--display);letter-spacing:.08em;text-transform:uppercase;font-size:.55rem}.core-map__detail-strands span{color:#c1beb7;font-family:var(--heading);font-size:.68rem;line-height:1.45}.core-map__detail ol{border-top:1px solid #3d3a35;gap:0;margin:0;padding:0;list-style:none;display:grid}.core-map__detail li{border-bottom:1px solid #3d3a35;grid-template-columns:4.7rem minmax(0,1fr);gap:.7rem;padding:.75rem 0;display:grid}.core-map__detail li>span{color:var(--detail-colour);font-family:var(--display);letter-spacing:.06em;font-size:.57rem;font-weight:700}.core-map__detail li p{color:#c1beb7;margin:0;font-size:.88rem;line-height:1.45}.core-map__detail-footer{gap:1rem;margin-top:1.25rem;display:grid}.core-map__detail-footer>span{color:#8b877f;font-family:var(--heading);letter-spacing:.06em;text-transform:uppercase;font-size:.62rem}.core-map__detail-footer>span[data-map-status=published]{color:var(--green)}.core-map__detail-footer .action-button,.core-map__detail-footer .action-button__face{width:100%}.core-map__detail-footer .action-button__face{justify-content:center}.core-map__mobile-detail-slot:empty{display:none}@media (width<=1080px){.core-map__layout{grid-template-columns:minmax(0,2.4fr) minmax(15rem,.9fr)}.core-map__network{--map-year-column:7rem}.core-map__station-name{font-size:.56rem}}@media (width<=900px){.core-map__heading h2{font-size:clamp(2.5rem,11vw,4.6rem)}.core-map__line-key{grid-template-columns:1fr;gap:.65rem}.core-map__legend{grid-template-columns:repeat(5,minmax(0,1fr));gap:.8rem}.core-map__layout{grid-template-columns:1fr}.core-map__desktop-detail-slot{order:-1}.core-map__desktop-detail-slot:empty{display:none}.core-map__detail-host{min-height:0;max-height:none;margin-top:1rem;position:static;overflow-y:visible}.core-map__detail-empty{min-height:0;padding:1.2rem}.core-map__detail-empty>span{display:none}.core-map__network{--mobile-rail-left:1rem;padding-block:.25rem}.core-map__route-rail{z-index:1;top:1rem;bottom:1rem;left:var(--mobile-rail-left);width:1.55rem}.core-map__route-rail-line{opacity:.5;width:2px;top:0;bottom:0}.core-map__route-rail-line--1{left:0}.core-map__route-rail-line--2{left:.3rem}.core-map__route-rail-line--3{left:.6rem}.core-map__route-rail-line--4{left:.9rem}.core-map__route-rail-line--5{left:1.2rem}.core-map__year{grid-template-columns:minmax(0,1fr);gap:0;padding:1rem 1rem 1.15rem 3.1rem}.core-map__year-heading{margin-bottom:1rem;padding-top:0}.core-map__term-labels,.core-map__strand-line,.core-map__interchange-connector,.core-map__interchange-node{display:none}.core-map__track{grid-template-rows:none;grid-template-columns:1fr;gap:.65rem;margin-top:0;padding-left:0;display:grid}.core-map__station,.core-map__onward{width:100%;min-height:3rem;margin:0;grid-area:auto/1!important}.core-map__onward{background:#171717;border:1px solid #76736c;border-radius:999px;padding:.45rem;display:block}.core-map__onward:before{display:none}.core-map__onward-label{color:#cbc8c1;background:0 0;border:0;gap:.15rem;padding:0;position:static;transform:none}.core-map__onward:hover .core-map__onward-label,.core-map__onward:focus-visible .core-map__onward-label{box-shadow:none;transform:none}.core-map__onward-label strong{font-size:.78rem}.core-map__onward-label small{color:#9c9991;font-size:.56rem}.core-map__viewer-key{position:static}.core-map__station-name{white-space:normal;min-height:1.55rem;font-size:.75rem;left:0;right:0;top:.18rem!important;bottom:auto!important}.core-map__platform{top:auto;bottom:.22rem;transform:none}.core-map__mobile-detail-slot .core-map__detail-host{margin:.9rem 0 0}}@media (width<=620px){.core-map__line-key{padding:.85rem}.core-map__legend{grid-template-columns:repeat(2,minmax(0,1fr))}.core-map__detail-facts{grid-template-columns:1fr}.core-map__detail-facts div,.core-map__detail-facts div+div{border-left:0;padding:.55rem 0}.core-map__detail-facts div+div{border-top:1px solid #3d3a35}}@media (prefers-reduced-motion:reduce){.core-map__strand-line{transition:none}.core-map.is-ready .core-map__strand-line{opacity:.34}.core-map__station{transition:none}}
