@font-face{font-family:Big Shoulders Stencil Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/big-shoulders-stencil-vietnamese-wght-normal-DJTbei5Q.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Big Shoulders Stencil Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/big-shoulders-stencil-latin-ext-wght-normal-CpkHxrk6.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Big Shoulders Stencil Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/big-shoulders-stencil-latin-wght-normal-FwBRbnGT.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/assets/archivo-vietnamese-wdth-normal-rJmnGBSt.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/assets/archivo-latin-ext-wdth-normal-7khWdh9v.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/assets/archivo-latin-wdth-normal-DY7AcnAa.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-cyrillic-wght-normal-D73BlboJ.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-greek-wght-normal-Bw9x6K1M.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-vietnamese-wght-normal-Bt-aOZkq.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--ink:#0a0e0a;--ink-2:#101810;--rail:#2e5a37;--board:#c8f7c5;--board-dim:color-mix(in srgb, var(--board) 78%, var(--ink));--mint:#5af78e;--grey:#8a9a8a;--red:#ff5f5f;--stencil:"Big Shoulders Stencil Variable", "Big Shoulders Stencil", sans-serif;--sans:"Archivo Variable", "Archivo", system-ui, sans-serif;--mono:"JetBrains Mono Variable", "JetBrains Mono", ui-monospace, monospace;--gutter:clamp(1rem, 4vw, 4rem);--section:clamp(5rem, 11vw, 9.5rem);--tilt:-2.5deg;--ease:cubic-bezier(.16, 1, .3, 1);--ink-wear:url(/print/ink.png);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}*{margin:0}html{background:var(--ink);color:var(--board);scrollbar-color:var(--rail) var(--ink);-webkit-text-size-adjust:100%;scroll-padding-top:5rem}body{font-family:var(--sans);font-variation-settings:"wdth" 100;text-rendering:optimizelegibility;font-size:1.125rem;line-height:1.55;overflow-x:clip}::selection{background:var(--mint);color:var(--ink)}:focus-visible{outline:3px solid var(--mint);outline-offset:4px}a{color:inherit}img,video,svg{max-width:100%;display:block}code,samp,pre{font-family:var(--mono);font-variant-ligatures:none}p,li,dd,figcaption{text-wrap:pretty}p code,li code,dd code,td code{color:var(--mint);font-size:.88em}.sprite{position:absolute}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skip{left:var(--gutter);z-index:20;background:var(--mint);color:var(--ink);padding:.6rem 1rem;font-weight:700;position:absolute;top:-4rem}.skip:focus{top:.75rem}.stencil{font-family:var(--stencil);text-transform:uppercase;letter-spacing:-.005em;text-wrap:balance;-webkit-mask:var(--ink-wear) 0 0 / 22rem repeat;mask:var(--ink-wear) 0 0 / 22rem repeat;font-weight:800;line-height:.86}.platform{z-index:10;padding:.7rem var(--gutter);background:var(--ink);border-bottom:2px solid var(--rail);grid-template-columns:auto 1fr auto;align-items:center;gap:1.5rem;display:grid;position:sticky;top:0}.brand{font-family:var(--stencil);align-items:center;gap:.6rem;font-size:1.9rem;font-weight:800;line-height:1;text-decoration:none;display:inline-flex}.brand-mark{width:2.2rem;height:2.2rem}.lines{justify-self:center;gap:clamp(1rem,2.4vw,2.2rem);display:flex}.lines a,.rail-link{font-variation-settings:"wdth" 80;text-transform:uppercase;letter-spacing:.06em;text-underline-offset:.35em;font-size:.95rem;font-weight:700;-webkit-text-decoration:underline #0000;text-decoration:underline #0000;text-decoration-thickness:2px;transition:text-decoration-color .2s,color .2s}.lines a:hover,.lines a:focus-visible{-webkit-text-decoration-color:var(--mint);text-decoration-color:var(--mint);color:var(--mint)}.wedge{isolation:isolate;color:var(--ink);font-variation-settings:"wdth" 78;text-transform:uppercase;letter-spacing:.05em;transition:transform .25s var(--ease);align-items:center;gap:.6rem;padding:1rem 2.2rem 1rem 1.4rem;font-size:1.15rem;font-weight:800;text-decoration:none;display:inline-flex;position:relative}.wedge:before{content:"";z-index:-1;background:var(--mint);clip-path:polygon(0 0,100% 0,calc(100% - 1.1rem) 100%,0 100%);transition:background-color .2s, clip-path .3s var(--ease), translate .3s var(--ease);position:absolute;inset:0}.wedge svg{width:1.15em;height:1.15em;transition:transform .25s var(--ease)}.wedge:hover:before{background:var(--board);clip-path:polygon(0 0,100% 0,calc(100% - 1.9rem) 100%,0 100%);translate:.45rem}.wedge:hover svg{transform:translate(.4rem)}.wedge:active{transform:translateY(1px)}.wedge-sm{padding:.55rem 1.6rem .55rem .95rem;font-size:.95rem}.wedge-lg{padding:1.3rem 3rem 1.3rem 1.8rem;font-size:1.4rem}.rail-link{-webkit-text-decoration-color:var(--board);text-decoration-color:var(--board);font-size:1.05rem}.rail-link:hover{color:var(--mint);-webkit-text-decoration-color:var(--mint);text-decoration-color:var(--mint)}.car{isolation:isolate;background:var(--ink-2);color:var(--board);position:relative}[class*=print-]:before{content:"";z-index:-1;pointer-events:none;background:var(--print-ink,color-mix(in srgb, var(--rail) 60%, var(--ink-2)));-webkit-mask:var(--print) var(--print-pos,0 0) / auto repeat;mask:var(--print) var(--print-pos,0 0) / auto repeat;position:absolute;inset:0}.print-seal{--print:url(/print/seal.png);--print-pos:-24px 6px}.print-verify{--print:url(/print/seal.png);--print-pos:-40px -110px}.print-zarf{--print:url(/print/zarf.png);--print-pos:-30px -20px}.print-chat{--print:url(/print/chat.png);--print-pos:-40px -180px}.bogies{z-index:-2;color:var(--ink);--hub:var(--board);pointer-events:none;justify-content:space-between;display:flex;position:absolute;bottom:-1.05rem;left:7%;right:7%}.bogies svg{width:3.4rem;height:1.3rem}.rails{width:100%;height:1rem;display:block}.hero{min-height:clamp(44rem,100svh - 3.9rem,58rem);padding:clamp(2.5rem, 6vh, 4.5rem) var(--gutter) 0;position:relative;overflow:hidden}.hero-copy{z-index:2;max-width:40rem;position:relative}.hero h1{text-transform:none;margin-left:-.04em;font-size:clamp(5.5rem,15.5vw,14rem);line-height:.8}.slogan{font-variation-settings:"wdth" 84;text-wrap:balance;max-width:24ch;margin-top:1.6rem;font-size:clamp(1.4rem,2.3vw,2rem);font-weight:700;line-height:1.2}.lede{color:var(--board-dim);max-width:46ch;margin-top:1rem}.actions{flex-wrap:wrap;align-items:center;gap:1.4rem 2rem;margin-top:2.2rem;display:flex}.track{z-index:1;transform-origin:0 100%;position:absolute;bottom:clamp(7rem,16vh,10.5rem);left:35%;transform:rotate(-9deg)}.track:before{content:"";z-index:-1;background:var(--mint);clip-path:polygon(0 42%,100% 0,100% 100%,0 90%);position:absolute;inset:-42% -40vw -46% -10%}.train{align-items:flex-end;gap:.9rem;display:flex}.track .car{border:2px solid var(--ink);flex:none;width:clamp(10.5rem,13vw,14rem);min-height:clamp(10rem,12.5vw,12.5rem);padding:0 1rem 1.1rem}.track .car h2{background:var(--board);color:var(--ink);margin:0 -1rem;padding:.6rem 1rem .35rem;font-size:clamp(2.3rem,3.3vw,3.2rem)}.station{font-variation-settings:"wdth" 75;text-transform:uppercase;letter-spacing:.1em;color:var(--mint);margin-top:.7rem;font-size:.85rem;font-weight:800}.spec{font-family:var(--mono);grid-template-columns:auto minmax(0,1fr);gap:.15rem .7rem;margin-top:.55rem;font-size:.8rem;line-height:1.4;display:grid}.spec dt{color:var(--grey)}.spec dd{overflow-wrap:break-word;font-variant-numeric:tabular-nums}.plate{font-family:var(--mono);color:var(--ink);background:var(--mint);-webkit-mask:var(--ink-wear) 37px 11px / 14rem repeat;mask:var(--ink-wear) 37px 11px / 14rem repeat;padding:0 .3rem;font-size:.78rem;font-weight:700;position:absolute;top:-1.8rem;right:.6rem}.note{font-family:var(--mono);color:var(--ink);width:calc(100% - 1rem);padding-left:.55rem;font-size:.74rem;font-weight:700;line-height:1.2;position:absolute;top:calc(100% + 2.6rem);left:1rem}.note:before{content:"";background:var(--ink);width:2px;height:2.85rem;position:absolute;bottom:.15rem;left:0}.car-verify .note{text-align:right;padding:0 .55rem 0 0;left:auto;right:.6rem}.car-verify .note:before{left:auto;right:0}.engine{background:var(--ink);flex-direction:column;justify-content:center;align-items:center;display:flex;border:3px solid var(--board)!important;width:clamp(8.5rem,10.5vw,11.5rem)!important;min-height:clamp(11.5rem,14.5vw,14rem)!important;padding:1rem!important}.engine-mark{aspect-ratio:1;width:68%;height:auto}.gap-gate{border-inline:3px dashed var(--ink);flex:none;align-self:stretch;place-items:center;width:3.4rem;margin:-2.5rem .2rem -1.6rem;display:grid}.gap-gate span{writing-mode:vertical-rl;font-variation-settings:"wdth" 75;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);font-size:.85rem;font-weight:800;transform:rotate(180deg)}.track>.rails{width:104%;position:absolute;bottom:-1.9rem;left:-4%}.scan{z-index:2;background:var(--mint);border-inline:2px solid var(--ink);opacity:0;pointer-events:none;width:.35rem;position:absolute;top:0;bottom:0;left:0}.stamp{z-index:3;font-family:var(--stencil);text-transform:uppercase;letter-spacing:.06em;-webkit-mask:var(--ink-wear) 120px 40px / 16rem repeat;mask:var(--ink-wear) 120px 40px / 16rem repeat;padding:.35rem .75rem .3rem;font-weight:900;line-height:1;position:absolute;transform:rotate(-12deg)}.stamp-pass{color:var(--mint);border:4px solid var(--mint);background:var(--ink);font-size:clamp(1.8rem,2.6vw,2.5rem);bottom:-3.1rem;left:-2.2rem}.stamp-refuse{color:var(--ink);background:var(--red);font-size:clamp(1.5rem,2.2vw,2.1rem);top:-1.2rem;right:.9rem;transform:rotate(-6deg)}.board{z-index:2;left:var(--gutter);background:var(--ink);width:min(23rem,40%);position:absolute;bottom:clamp(2rem,5vh,3.5rem)}.board:before{content:"";pointer-events:none;border:2px solid var(--board);-webkit-mask:var(--ink-wear) 210px 90px / 20rem repeat;mask:var(--ink-wear) 210px 90px / 20rem repeat;position:absolute;inset:0}.board-row{border-top:1px solid var(--rail);grid-template-columns:6.2rem 1fr;align-items:baseline;gap:.8rem;padding:.55rem .9rem;display:grid}.board-row:first-child{border-top:0}.board-row span{font-variation-settings:"wdth" 75;text-transform:uppercase;letter-spacing:.1em;color:var(--grey);font-size:.8rem;font-weight:800}.board-row b{font-size:1rem;font-weight:700;display:grid}.board-row b>i{grid-area:1/1;font-style:normal}.board-row .ok{color:var(--mint);align-items:center;gap:.4rem;display:inline-flex}.board-row .wait{color:var(--grey);visibility:hidden}.ok svg{flex:none;width:1.05rem;height:1.05rem}.route{position:relative}.route-rail{top:var(--section);bottom:0;left:calc(var(--gutter) / 2 - 2px);background:var(--rail);view-timeline:--route block;width:4px;position:absolute}.route-rail:before{content:"";background:var(--mint);transform-origin:50% 0;position:absolute;inset:0}.route-rail:after{content:"";background:var(--board);width:calc(1.4rem + 4px);height:.45rem;position:absolute;bottom:0;left:-.7rem}.bundle{z-index:1;background:var(--board);outline:3px solid var(--ink);width:1.05rem;height:1.05rem;margin:-.52rem 0 0 calc(2px - .52rem);display:block;position:sticky;top:50vh}.station-stop{position:relative}.station-stop:before{content:"";left:calc(var(--gutter) / 2 - .8rem);top:calc(var(--section) + .6rem);background:var(--mint);width:1.6rem;height:.5rem;position:absolute}section:not(.hero){padding:var(--section) var(--gutter) 0}.heading{max-width:14ch;transform:rotate(var(--tilt));transform-origin:0 100%;margin-bottom:clamp(2.5rem,5vw,4rem);font-size:clamp(3rem,8.4vw,7.5rem)}.intro{max-width:58ch;color:var(--board-dim);margin:-1.5rem 0 2.5rem}.consist{--gap:clamp(1.2rem, 2.4vw, 2.2rem);transform:rotate(var(--tilt));transform-origin:0 100%;margin-top:clamp(3rem,6vw,5rem)}.stops{gap:var(--gap);grid-template-columns:repeat(3,1fr);padding:0;list-style:none;display:grid}.stop{border:2px solid var(--rail);padding:0 1.5rem 1.9rem}.stop h3{background:var(--board);color:var(--ink);margin:0 -1.5rem;padding:.9rem 1.5rem .45rem;font-size:clamp(3.4rem,6vw,5.6rem)}.stop .station{margin-top:.9rem}.stop .plate{color:var(--ink)}.stop .station code{color:var(--mint);text-transform:none;letter-spacing:0;font-size:.95em}.stop ul{gap:.7rem;margin-top:1.1rem;padding:0;list-style:none;display:grid}.stop li{padding-left:1.3rem;line-height:1.45;position:relative}.stop li:before{content:"";background:var(--mint);width:.55rem;height:.55rem;position:absolute;top:.5em;left:0}.stop-gap{background:var(--ink);border:3px dashed var(--board)}.stop-gap h3{color:var(--board);background:0 0}.route .bogies{color:var(--rail);--hub:var(--grey)}.stops .car:not(:last-child) .bogies:after{content:"";width:calc(var(--gap) + 16%);background:var(--rail);height:5px;position:absolute;top:.2rem;left:100%}.consist>.rails{width:calc(100% + 3rem);margin:.7rem 0 0 -1.5rem}.manifest{margin-top:clamp(3.5rem,7vw,5.5rem);overflow-x:auto}.manifest table{border-collapse:collapse;width:100%}.manifest th{text-align:left;font-variation-settings:"wdth" 75;text-transform:uppercase;letter-spacing:.1em;color:var(--grey);border-bottom:3px solid var(--board);padding:0 1.2rem .7rem 0;font-size:.85rem;font-weight:800}.manifest td{border-bottom:1px solid var(--rail);vertical-align:baseline;padding:.95rem 1.2rem .95rem 0}.manifest td:first-child{white-space:nowrap}.manifest td:first-child code{font-size:1rem}.manifest td:nth-child(2){font-variation-settings:"wdth" 75;text-transform:uppercase;letter-spacing:.08em;color:var(--board-dim);white-space:nowrap;font-size:.9rem;font-weight:800}.departures{grid-template-columns:1.55fr 1fr;align-items:start;gap:1.5rem;display:grid}.code{background:var(--ink-2);border-top:6px solid var(--board);min-width:0;padding:1.1rem 1.3rem 1.4rem;position:relative}.code figcaption{font-variation-settings:"wdth" 75;text-transform:uppercase;letter-spacing:.1em;color:var(--grey);margin-bottom:.9rem;font-size:.85rem;font-weight:800}.code pre{color:var(--board);scrollbar-color:var(--rail) transparent;padding-bottom:.4rem;font-size:.92rem;line-height:1.7;overflow-x:auto}.copy{font:inherit;font-variation-settings:"wdth" 80;text-transform:uppercase;letter-spacing:.06em;color:var(--board);background:var(--ink);border:2px solid var(--rail);cursor:pointer;align-items:center;gap:.4rem;padding:.35rem .7rem;font-size:.85rem;font-weight:700;transition:border-color .2s,color .2s;display:inline-flex;position:absolute;top:.7rem;right:.8rem}.copy svg{width:1rem;height:1rem}.copy:hover{border-color:var(--mint);color:var(--mint)}.copy[data-state=done]{border-color:var(--mint);color:var(--mint);clip-path:polygon(0 0,100% 0,100% 32%,calc(100% - .45rem) 50%,100% 68%,100% 100%,0 100%)}.copy[data-state=error]{border-color:var(--board);color:var(--board)}.frames{grid-template-columns:1fr 1fr;align-items:start;gap:clamp(1.5rem,3vw,3rem);display:grid}.frame{transform:rotate(-1.2deg)}.frame-alt{margin-top:3.5rem;transform:rotate(1.1deg)}.frame video{background:var(--ink-2);border:3px solid var(--board);width:100%;height:auto}.frame figcaption{max-width:52ch;color:var(--board-dim);margin-top:1rem}.siding{transform:rotate(var(--tilt));transform-origin:0 100%;view-timeline:--siding block;margin-top:4.5rem;padding-right:4.2rem;position:relative}.refused{grid-template-columns:1fr 1fr 1fr 1.4fr;align-items:stretch;gap:1.1rem;padding:0;list-style:none;display:grid}.reject{border:2px solid var(--rail);padding:0 1.2rem 1.7rem}.reject h3{background:var(--board);color:var(--ink);margin:0 -1.2rem;padding:2rem 1.2rem .4rem;font-size:clamp(1.7rem,2.3vw,2.4rem);line-height:.92}.reject p{color:var(--board-dim);margin-top:.9rem;font-size:1rem}.reject samp{color:var(--red);background:var(--ink);border:1px solid color-mix(in srgb, var(--red) 55%, var(--ink));overflow-wrap:anywhere;margin-top:1rem;padding:.7rem .8rem;font-size:.8rem;line-height:1.5;display:block}.refused .car:not(:last-child) .bogies:after{content:"";background:var(--rail);width:calc(1.1rem + 16%);height:5px;position:absolute;top:.2rem;left:100%}.reject-poison{--print-ink:color-mix(in srgb, var(--red) 40%, var(--ink-2));--drift:6px}.reject-poison:after{content:"";z-index:2;pointer-events:none;border:2px solid var(--red);translate:var(--drift) calc(var(--drift) * .6);mix-blend-mode:screen;position:absolute;inset:0}.reject-poison h3{text-shadow:calc(var(--drift) * .6) calc(var(--drift) * .35) 0 color-mix(in srgb, var(--red) 70%, transparent)}.flaps{font-family:var(--mono);gap:.35rem;margin-top:1rem;display:grid}.flaps p{color:var(--board);grid-template-columns:4.2rem 1fr;align-items:center;margin:0;font-size:.8rem;display:grid}.flaps p>span{color:var(--grey);text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;font-family:var(--sans);font-variation-settings:"wdth" 75;font-weight:800}.flap{gap:2px;font-size:1.05rem;font-weight:700;display:flex}.flap .cell{background:var(--ink);text-align:center;width:1.15em;height:1.5em;line-height:1.5em;display:block;position:relative;overflow:hidden}.flap .cell:after{content:"";background:var(--ink-2);height:1px;position:absolute;top:50%;left:0;right:0}.flap .strip{display:block}.flap .strip i{height:1.5em;font-style:normal;display:block}.flap-bad{color:var(--red)}.flap .cells{gap:2px;display:flex}.flap .strip{translate:0 calc(var(--n) * -1.5em)}.flipping .strip{animation:flip calc(.5s + var(--n) * 70ms) steps(var(--n), end) calc(var(--i) * 60ms) both}.flipping .flap-bad .strip{animation-delay:calc(.5s + var(--i) * 60ms)}@keyframes flip{0%{translate:0}}.barrier{border-inline:3px dashed var(--grey);place-items:center;width:3rem;display:grid;position:absolute;top:-2.4rem;bottom:-1.1rem;right:0}.barrier span{writing-mode:vertical-rl;font-variation-settings:"wdth" 75;letter-spacing:.14em;text-transform:uppercase;color:var(--grey);font-size:.85rem;font-weight:800;transform:rotate(180deg)}.siding>.rails{width:calc(100% + 1.5rem);margin:.7rem 0 0 -1.5rem}.zarf{grid-template-columns:1fr 1.1fr;align-items:end;gap:clamp(2rem,5vw,4.5rem);display:grid}.zarf .heading{margin-bottom:2rem}.zarf-copy p{max-width:54ch}.zarf-copy p+p{margin-top:1rem}.timetable{border-top:3px solid var(--board);grid-template-columns:1fr 1fr;column-gap:clamp(2rem,5vw,4rem);display:grid}.timetable div{border-bottom:1px solid var(--rail);grid-template-columns:minmax(9rem,13rem) 1fr;gap:1rem;padding:.95rem 0;display:grid}.timetable dt{font-variation-settings:"wdth" 82;font-weight:700}.timetable dd{color:var(--board-dim)}.more{margin-top:2.2rem}.close{margin-top:var(--section);background:var(--mint);color:var(--ink);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:2rem;display:flex;padding-block:clamp(4rem,9vw,7rem)!important}.close h2{transform-origin:0 100%;font-size:clamp(3.4rem,9vw,8.5rem);transform:rotate(-3deg)}.close .wedge{color:var(--mint)}.close .wedge:before{background:var(--ink)}.close .wedge:hover:before{background:var(--ink-2)}.close :focus-visible{outline-color:var(--ink)}.depot{padding:1.6rem var(--gutter) 2rem;color:var(--board-dim);align-items:center;gap:.9rem;font-size:.95rem;display:flex}.depot .brand-mark{width:1.8rem;height:1.8rem}.depot a{text-underline-offset:.25em}.depot a:hover{color:var(--mint)}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}.train{animation:pull-in 1.5s var(--ease) both}@supports (animation-timeline:scroll()){.track{animation:linear both depart;animation-timeline:scroll(root);animation-range:34vh 110vh}.scan{animation:linear both scan;animation-timeline:scroll(root);animation-range:3vh 24vh}.tick .wait{visibility:visible;animation:linear both hide;animation-timeline:scroll(root)}.tick .ok{animation:linear both print;animation-timeline:scroll(root)}.board .tick-1 i{animation-range:9vh 10vh}.board .tick-2 i{animation-range:15vh 16vh}.board .tick-3 i{animation-range:21vh 22vh}.stamp-pass{animation:linear both stamp;animation-timeline:scroll(root);animation-range:25vh 31vh}.route-rail:before{animation:linear both draw;animation-timeline:--route;animation-range:cover 50vh cover calc(100% - 50vh)}.station-stop:before{animation:linear both lit;animation-timeline:view();animation-range:cover}.heading{animation:linear both slide-in;animation-timeline:view();animation-range:entry entry 90%}.refused{animation:linear both roll;animation-timeline:--siding;animation-range:entry 10% contain 15%}.reject-poison{animation:linear both drift;animation-timeline:--siding;animation-range:entry 10% contain 15%}.reject .stamp-refuse{animation:linear both stamp;animation-timeline:--siding;animation-range:contain 15% contain 22%}}}@keyframes pull-in{0%{transform:translate(-42%)}}@keyframes stamp{0%{opacity:0;scale:1.7}}@keyframes print{0%{opacity:0}}@keyframes hide{to{opacity:0}}@keyframes scan{0%{opacity:1;left:0}90%{opacity:1}to{opacity:0;left:calc(100% - .35rem)}}@keyframes depart{to{translate:7vw -1.1vw}}@keyframes draw{0%{transform:scaleY(0)}}@keyframes lit{0%,49%{background:var(--rail)}50%,to{background:var(--mint)}}@keyframes slide-in{0%{translate:-3.5rem .15rem}}@keyframes roll{0%{translate:-70vw}88%{animation-timing-function:var(--ease);translate:.9rem}to{translate:0}}@keyframes drift{0%{--drift:0px}}@property --drift{syntax:"<length>";inherits:true;initial-value:6px}@media (width>=961px) and (width<=1359px){.hero-copy{max-width:min(40rem,41vw)}.hero h1{font-size:clamp(5.5rem,13vw,12rem)}.track{left:43%;transform:rotate(-9deg)scale(.8)}.reject{padding-inline:1rem}.reject h3{margin-inline:-1rem;padding-inline:1rem}}@media (width>=961px) and (width<=1180px){.track{left:45%;transform:rotate(-9deg)scale(.66)}}@media (width<=960px){.hero{min-height:0;padding-bottom:3rem}.track{width:max-content;margin:5.5rem 0 7rem;position:relative;bottom:auto;left:0;right:auto;transform:rotate(-6deg)}.board{width:100%;max-width:26rem;position:relative;bottom:0;left:0}.route>section{padding-left:calc(var(--gutter) + 1.2rem)}.route-rail{left:calc(var(--gutter) / 2)}.station-stop:before{left:calc(var(--gutter) / 2 - .6rem);width:1.2rem}.consist,.siding{transform:none}.stops,.refused{grid-template-columns:1fr;gap:2.4rem}.stops .car .bogies:after,.refused .car .bogies:after,.consist>.rails,.siding>.rails{display:none}.siding{padding-bottom:4.5rem;padding-right:0}.barrier{border-inline:0;border-block:3px dashed var(--grey);width:auto;height:2.6rem;inset:auto 0 0}.barrier span{writing-mode:horizontal-tb;transform:none}.refused{animation:none!important}.reject .stamp-refuse{animation-timeline:view();animation-range:entry 40%}.departures,.frames,.zarf,.timetable{grid-template-columns:1fr}.frame-alt{margin-top:0}}@media (width<=640px){body{font-size:1.0625rem}.platform{grid-template-columns:1fr auto;gap:.6rem 1rem}.lines{grid-area:2/1/auto/-1;justify-self:start;gap:.95rem;padding-bottom:.2rem;overflow-x:auto}.lines a{white-space:nowrap;font-size:.8rem}.track{transform-origin:50%;width:calc(100% - 1.2rem);margin:4rem .6rem 3.5rem;transform:rotate(-3deg)}.track:before{clip-path:polygon(0 3%,100% 0,100% 97%,0 100%);inset:-1.5rem -1.5rem -2.5rem}.train{flex-direction:column;align-items:stretch;gap:1.7rem}.track .car,.engine{width:100%!important;min-height:0!important}.engine{flex-direction:row;justify-content:flex-start;padding:.7rem 1rem!important}.engine-mark{width:3.2rem}.plate{color:var(--ink);background:var(--board);top:.7rem;right:.8rem}.note{color:var(--grey);white-space:normal;margin-top:.6rem;padding:0;position:static}.note:before,.track .bogies,.track>.rails{display:none}.gap-gate{border-inline:0;border-block:3px dashed var(--ink);width:auto;height:3rem;margin:-.5rem 0}.gap-gate span{writing-mode:horizontal-tb;transform:none}.stamp-pass{bottom:-1.3rem;left:auto;right:.6rem}.car-verify .note{text-align:left}html{scroll-padding-top:7rem}.manifest thead{display:none}.manifest tr{border-bottom:1px solid var(--rail);grid-template-columns:1fr auto;gap:.2rem 1rem;padding:.9rem 0;display:grid}.manifest td{border:0;padding:0}.manifest td:last-child{grid-column:1/-1}.timetable div{grid-template-columns:1fr;gap:.2rem}.close{flex-direction:column;align-items:flex-start}}
