/*
Theme Name: Lvxian 旅线
Author: Lvxian
Description: 青色轨道导航、旅行站点列表与铁路站牌阅读界面的响应式博客主题。
Version: 1.0.12
Requires at least: 6.2
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: lvxian
Tags: blog, two-columns, right-sidebar, custom-menu, featured-images
*/
:root{--paper:#fcfcfa;--ink:#20252c;--muted:#797d8b;--line:#dce3e5;--teal:#04b3c0;--teal-dark:#008fa5;--teal-pale:#dff7f8;--red:#ff6658;--dark:#252d30;--yellow:#ffbe25;--blue:#529df5;--purple:#ac76f4;--sticky-top:20px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;font-size:16px;line-height:1.6;-webkit-text-size-adjust:100%}
a{color:inherit;text-decoration:none}
button,input,textarea,select{font:inherit}
button{cursor:pointer}
img{max-width:100%}
svg{flex-shrink:0}
.icon{width:22px;height:22px;vertical-align:middle;flex-shrink:0}
a,button,input{touch-action:manipulation}
a:hover{color:var(--teal-dark)}
a:focus-visible,button:focus-visible{outline:2px solid var(--teal-dark);outline-offset:4px}
input:focus-visible,textarea:focus-visible{outline:2px solid var(--teal-dark);outline-offset:-3px}
[hidden]{display:none!important}
.wrap{width:88%;max-width:1160px;margin-inline:auto}
.screen-reader-text,.skip-link:not(:focus){position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.skip-link:focus{position:fixed;top:10px;left:10px;z-index:20;padding:10px 20px;background:white;border:2px solid var(--teal)}
.site-header{border-bottom:1px solid var(--line);padding:20px 0 21px}
.header-inner{display:grid;grid-template-columns:auto minmax(0,1fr) 30%;align-items:center;gap:36px}
.brand{display:flex;align-items:center;gap:13px;min-width:0;max-width:280px;line-height:1.1}
.brand-name{font-size:40px;font-weight:750;letter-spacing:3px;overflow-wrap:anywhere}
.brand .custom-logo{object-fit:contain;width:52px;height:52px}
.train-logo{display:block;flex:0 0 51px;height:51px;border-radius:15px;background-color:var(--teal);background-position:center;background-size:40px;background-repeat:no-repeat}
.desktop-nav{min-width:0}
.track-menu,.track-menu ul,.footer-menu,.mobile-track,.mobile-track ul{list-style:none;margin:0;padding:0}
.track-menu{display:flex;justify-content:center;align-items:flex-start;min-height:61px;padding-bottom:4px}
.track-menu>li{position:relative;flex:1 1 0;text-align:center;min-width:65px}
.track-menu>li:after{content:"";height:5px;background:var(--teal);position:absolute;bottom:13px;left:0;right:0}
.track-menu>li:first-child:after{left:50%}
.track-menu>li:last-child:after{right:50%}
.track-menu>li>a{position:relative;z-index:1;display:block;padding:0 10px 34px;font-size:15px;line-height:22px;font-weight:650;white-space:nowrap}
.track-menu>li>a:before{content:"";position:absolute;bottom:4px;left:50%;width:24px;height:24px;transform:translateX(-50%);border-radius:50%;border:5px solid var(--teal);background:var(--paper)}
.track-menu>li>a:after{content:"";position:absolute;width:3px;height:10px;background:var(--teal);bottom:27px;left:calc(50% - 1.5px)}
.track-menu>li.current-menu-item>a,.track-menu>li.current-menu-ancestor>a,.track-menu>li>a:hover{color:#ff4f40}
.track-menu>li.current-menu-item>a:before,.track-menu>li.current-menu-ancestor>a:before,.track-menu>li>a:hover:before{border-color:var(--red);outline:2px solid var(--red);outline-offset:4px}
.track-menu>li.current-menu-item>a:after,.track-menu>li.current-menu-ancestor>a:after{background:var(--red)}
.track-menu .sub-menu{position:absolute;top:100%;left:0;width:190px;background:var(--paper);border:1px solid var(--line);border-top:3px solid var(--teal);box-shadow:0 8px 16px #22343b0a;z-index:10;text-align:left;display:none}
.track-menu .sub-menu li{position:relative}
.track-menu .sub-menu a{display:block;padding:9px 14px;font-size:14px;overflow-wrap:anywhere}
.track-menu li:hover>.sub-menu,.track-menu li:focus-within>.sub-menu{display:block}
.track-menu .sub-menu .sub-menu{left:100%;top:0}
.track-menu .sub-menu .current-menu-item>a{color:var(--red);background:#fff2ef}
.search-form{display:flex;align-items:center;width:100%;height:42px;border:1.5px solid var(--teal-dark);border-radius:9px;background:transparent;gap:9px;padding:0 11px}
.search-form>.icon{width:22px;height:22px}
.search-form input{width:100%;min-width:0;border:0;background:transparent;padding:5px 0;color:var(--ink);font-size:13px;line-height:24px;height:34px;border-radius:3px}
.search-form input::placeholder{color:var(--muted)}
.search-form input:focus{outline:none;background:var(--teal-pale);box-shadow:inset 0 -2px var(--teal-dark)}
.search-form button{display:grid;place-items:center;border:0;background:none;padding:0;width:28px;height:30px;flex:0 0 28px;color:var(--ink)}
.search-form button:hover{color:var(--teal-dark)}
.mobile-actions,.nojs-access{display:none}
.mobile-panel{border-top:3px solid var(--teal);margin-top:15px;padding:12px 18px 20px;background:#edf9f9}
.panel-head{display:flex;justify-content:space-between;align-items:center;color:var(--teal-dark);font-weight:650;font-size:15px;margin-bottom:12px}
.panel-head>span{display:flex;gap:8px;align-items:center}
.panel-close{border:0;background:transparent;display:grid;place-items:center;width:36px;height:36px;color:var(--ink)}
.site-main{padding-top:34px;padding-bottom:28px}
.site-grid{display:grid;grid-template-columns:minmax(0,2.25fr) minmax(0,1fr);gap:34px;align-items:stretch}
.main-column{min-width:0}
.article-track{border-left:4px solid var(--teal);padding-left:31px;margin-left:8px}
.post-row{display:grid;grid-template-columns:38% minmax(0,1fr);gap:26px;position:relative;padding:0 0 16px;margin-bottom:16px;border-bottom:1px solid var(--line)}
.post-row:last-child{margin-bottom:0}
.post-row:before{content:"";position:absolute;width:25px;height:25px;border:5px solid var(--teal);border-radius:50%;background:var(--paper);left:-45.5px;top:12px}
.post-picture{display:block;aspect-ratio:4/3;overflow:hidden;align-self:start}
.row-copy{min-width:0;display:flex;flex-direction:column;padding:0 0 3px}
.row-copy h2{font-size:19px;line-height:27px;margin:0;font-weight:700}
.row-copy h2 a{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.row-excerpt{font-size:15.5px;line-height:25px;color:var(--muted);margin:12px 0 10px}
.row-excerpt>span{display:none}
.row-excerpt>.excerpt-wide{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.row-meta{display:flex;align-items:center;gap:12px;white-space:nowrap;min-width:0;margin-top:auto;color:var(--muted);font-size:12px;line-height:22px}
.category-chip{display:inline-block;max-width:110px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--teal-dark);background:var(--teal-pale);padding:0 13px;border-radius:4px;font-size:12px;line-height:25px;vertical-align:middle}
.category-chip:hover{background:var(--teal);color:white}
.row-meta time{border-left:1px solid #cbd5da;padding-left:12px}
.row-meta .views{border-left:1px solid #cbd5da;padding-left:12px}
.views{display:inline-flex;align-items:center;gap:6px;min-width:0}
.views .icon{width:16px;height:16px}
.sidebar{min-width:0;border-left:1px solid var(--line);padding-left:15px}
.sidebar-sticky{position:sticky;top:var(--sticky-top);min-width:0}
.sidebar-title{margin:0 0 17px;display:flex;align-items:center;gap:10px;font-size:21px;line-height:30px;font-weight:700;overflow-wrap:anywhere}
.sidebar-title>.icon{width:31px;height:34px;color:var(--teal-dark);stroke-width:2.6}
.sidebar-title>span{min-width:0}
.popular-list{padding:0;margin:0;list-style:none;display:grid;gap:10px}
.popular-card{display:grid;grid-template-columns:42px minmax(0,1fr) 23px;align-items:start;gap:13px;min-height:110px;padding:18px 14px;border-radius:10px;color:#f6f6ef;background:linear-gradient(120deg,#20282b,#293033);border:1px solid #313a3d}
.popular-card:hover{color:white;background:#323e41;box-shadow:inset 3px 0 var(--badge)}
.popular-number{font:600 25px/42px "Arial Narrow","Roboto Condensed",sans-serif;width:42px;text-align:center;border-radius:6px;color:white;background:var(--badge);box-shadow:inset 0 0 0 1px #ffffff28}
.tone-0{--badge:var(--red)}
.tone-1{--badge:var(--teal)}
.tone-2{--badge:var(--yellow)}
.tone-3{--badge:var(--blue)}
.tone-4{--badge:var(--purple)}
.tone-2 .popular-number{color:#20282b}
.popular-copy{min-width:0}
.popular-copy strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:16px;line-height:24px}
.popular-excerpt{font-size:13px;line-height:21px;color:#c6cccd;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-top:4px}
.popular-views{display:flex;align-items:center;gap:5px;font-size:12px;line-height:20px;color:#e3e7e7;margin-top:3px}
.popular-views .icon{width:14px;height:16px;color:var(--red)}
.popular-arrow{padding-top:2px}
.popular-arrow .icon{width:23px;height:23px}
.tags-section{margin-top:27px;padding-top:27px;border-top:1px solid var(--line)}
.tag-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px 12px}
.tag-stop{display:flex;align-items:center;gap:8px;min-width:0;max-width:100%;height:36px;background:var(--tag-bg);border-radius:22px;padding-right:9px;color:#343b43}
.tag-stop>span:first-child{width:36px;height:36px;line-height:36px;text-align:center;border-radius:50%;flex:0 0 36px;color:white;background:var(--tag-color);font-weight:650;font-size:14px;box-shadow:inset -3px 0 7px #ffffff30}
.tag-name{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:13px;line-height:22px}
.tag-color-0,.tag-color-6{--tag-bg:#c2f1f2;--tag-color:#16bfca}
.tag-color-1,.tag-color-5{--tag-bg:#ffc9c0;--tag-color:#ff675a}
.tag-color-2,.tag-color-7{--tag-bg:#ffe29c;--tag-color:#ffb916}
.tag-color-3{--tag-bg:#c2ddff;--tag-color:#57a0fa}
.tag-color-4{--tag-bg:#decafa;--tag-color:#af7af5}
.tag-stop:hover{color:#141c22;box-shadow:inset 0 0 0 2px var(--tag-color)}
.pagination{margin:30px auto 0;display:flex;justify-content:center}
.pagination ul{list-style:none;display:flex;align-items:center;gap:21px;padding:0;margin:0;position:relative}
.pagination ul:before{content:"";position:absolute;left:10px;right:10px;top:50%;height:4px;transform:translateY(-50%);background:var(--teal)}
.pagination li{position:relative}
.pagination li>.page-numbers{width:36px;height:36px;border-radius:50%;border:1.5px solid var(--teal-dark);display:grid;place-items:center;background:var(--paper);font-size:14px;line-height:1}
.pagination li>.current{border-color:var(--red);color:white;background:var(--red);box-shadow:inset 0 0 0 3px #ffffff20}
.pagination a:hover{background:var(--teal-pale);color:var(--teal-dark)}
.pagination li>.prev,.pagination li>.next{font-size:28px;font-family:Arial,sans-serif;padding-bottom:2px}
.pagination li>.dots{border:0;width:20px}
.site-footer{border-top:1px solid var(--line);padding-top:20px}
.footer-top{display:grid;grid-template-columns:1fr auto;align-items:center;gap:25px;position:relative;min-height:40px}
.footer-top nav{padding-left:110px;min-width:0}
.footer-menu{display:flex;justify-content:center;gap:36px;flex-wrap:wrap}
.footer-menu a{font-size:14px;line-height:24px;display:block;padding:4px 0 9px;color:#58616a;position:relative}
.footer-menu .sub-menu{display:none}
.footer-menu a:hover,.footer-menu .current-menu-item>a{color:#ff5748}
.footer-menu .current-menu-item>a:after{content:"";position:absolute;bottom:0;left:0;right:0;height:4px;background:var(--red);border-radius:4px}
.social-icons{display:flex;gap:23px;align-items:center;color:#505963}
.social-icons>a,.social-icons>span{display:grid;place-items:center;width:24px;height:30px}
.social-icons .icon{width:21px;height:21px}
.copyright{display:flex;justify-content:center;flex-wrap:wrap;gap:7px 9px;max-width:780px;margin:12px auto 0;border-top:1px solid var(--line);padding-top:13px;color:var(--muted);font-size:12px}
.copyright>span{border-left:1px solid #b9c4c8;padding-left:12px;margin-left:3px}
.landscape-route{height:103px;margin-top:-4px;background-position:center bottom;background-size:100% auto;background-repeat:no-repeat}
.media-shell{position:relative;display:block;width:100%;height:100%;overflow:hidden;background:#e6f5f4;isolation:isolate}
.media-shell:before{content:"";position:absolute;inset:0;z-index:0;background-position:center;background-repeat:no-repeat;background-size:92px 64px;opacity:.84}
.media-shell:after{content:"";position:absolute;z-index:0;inset:0;background:linear-gradient(100deg,transparent 25%,#ffffff75 48%,transparent 70%);transform:translateX(-110%);animation:rail-shimmer 2.2s linear infinite;pointer-events:none}
.media-shell .lazy{position:relative;z-index:1;display:block;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .22s ease}
.media-shell.is-loaded{background:transparent}
.media-shell.is-loaded:before,.media-shell.is-loaded:after{content:none;animation:none}
.media-shell .lazy.is-loaded{opacity:1}
.media-shell.no-image:after,.media-shell.has-error:after{display:none;animation:none}
.media-shell.has-error:before{opacity:.4}
.nojs-image{position:relative;z-index:1;display:block;width:100%;height:100%;object-fit:cover}
.content-media{display:inline-block;vertical-align:middle;width:min(100%,var(--media-width,100%));height:auto;max-width:100%;aspect-ratio:var(--media-ratio,4/3);overflow:hidden}
.entry-content .content-media img{display:block;width:100%;height:auto;max-width:100%;object-fit:contain;margin:0;float:none}
.content-media:not(.is-loaded) img.lazy{aspect-ratio:var(--media-ratio,4/3)}
.content-media.is-loaded{aspect-ratio:auto}
.content-media.aligncenter{display:block;margin:1.6em auto}
.content-media.alignleft{float:left;margin:5px 22px 15px 0}
.content-media.alignright{float:right;margin:5px 0 15px 22px}
@keyframes rail-shimmer{to{transform:translateX(110%)}}
.route-path{margin:0 0 25px;min-width:0}
.route-path ol{padding:0;margin:0;list-style:none;display:flex;align-items:center;white-space:nowrap;min-width:0;font-size:13px;color:var(--muted)}
.route-path li{display:flex;align-items:center;min-width:0;flex:0 1 auto}
.route-path li:last-child{flex-shrink:2}
.route-path li+li:before{content:"";width:24px;height:12px;flex:0 0 24px;margin:0 9px;background:radial-gradient(circle at 50% 50%,var(--paper) 0 3px,var(--teal) 3.5px 5px,transparent 5.5px),linear-gradient(var(--teal),var(--teal)) center/100% 2px no-repeat}
.route-path a{display:flex;align-items:center;gap:8px;min-width:0}
.route-path li>span,.route-path a>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}
.route-path .icon{width:20px;height:20px;color:var(--teal-dark)}
.route-path [aria-current]{color:var(--ink)}
.entry-title{font-size:24px;line-height:1.5;margin:0;font-weight:700;overflow-wrap:anywhere}
.entry-content{font-size:16px;line-height:1.9;overflow-wrap:anywhere;display:flow-root;min-width:0}
.entry-content>:first-child{margin-top:0}
.entry-content p{margin:0 0 1.4em}
.entry-content h1{font-size:23px;line-height:1.55;margin:1.6em 0 .8em}
.entry-content h2{font-size:22px;line-height:1.55;margin:1.6em 0 .8em;border-left:4px solid var(--teal);padding-left:13px}
.entry-content h3{font-size:19px;margin:1.5em 0 .7em}
.entry-content h4,.entry-content h5,.entry-content h6{font-size:17px}
.entry-content a{color:var(--teal-dark);text-decoration:underline;text-underline-offset:4px}
.entry-content img{max-width:100%;height:auto}
.entry-content img.emoji,.entry-content img.wp-smiley{width:1em!important;height:1em!important;max-width:1em!important;display:inline!important;vertical-align:-.15em;margin:0 .05em!important;box-shadow:none;background:none}
.entry-content blockquote{margin:25px 0;padding:20px 25px 8px 30px;background:#f4ecd9;position:relative;color:#466067;border-left:0}
.entry-content blockquote:before{content:"";position:absolute;left:-9px;top:25px;width:14px;height:14px;background:var(--paper);border:3px solid var(--teal);border-radius:50%}
.entry-content ul,.entry-content ol{padding-left:1.6em}
.entry-content li{padding-left:5px}
.entry-content li::marker{color:var(--teal-dark)}
.entry-content pre{overflow:auto;max-width:100%;background:var(--dark);color:#d7eeeb;border-top:4px solid var(--teal);padding:20px;font-size:13px;line-height:1.75;white-space:pre}
.entry-content code{font-family:ui-monospace,monospace;font-size:.88em;background:#e9f3f1;padding:2px 5px;border-radius:2px;color:#116776}
.entry-content pre code{color:inherit;background:none;padding:0}
.entry-content table{display:block;max-width:100%;overflow:auto;border-collapse:collapse;white-space:normal;margin:24px 0;font-size:14px}
.entry-content td,.entry-content th{border:1px solid #cbdcdc;padding:9px 13px}
.entry-content th{background:#e5f5f3}
.entry-content figure{max-width:100%;margin:1.5em 0}
.entry-content figcaption,.wp-caption-text{color:var(--muted);font-size:13px;line-height:1.7;margin-top:9px;text-align:center}
.entry-content iframe,.entry-content video{max-width:100%}
.entry-content hr{border:0;border-top:2px dashed #acd9db;margin:30px 0}
.content-pages{display:flex;gap:8px;flex-wrap:wrap;margin:25px 0}
.content-pages a,.content-pages>.post-page-numbers{padding:3px 12px;border:1px solid var(--teal);border-radius:20px}
.content-pages .current{background:var(--teal-pale)}
.page-heading{display:flex;gap:14px;align-items:center;border-bottom:3px solid var(--teal);padding-bottom:20px;margin-bottom:25px}
.page-heading>span{color:var(--teal-dark)}
.page-heading .icon{width:30px;height:38px}
.page-heading h1{font-size:24px;margin:0;overflow-wrap:anywhere}
.empty-station{margin:5px 0 40px;padding:40px 8%;border-left:4px solid var(--teal);background:linear-gradient(90deg,#eaf8f4,transparent);position:relative}
.empty-station:before{content:"";position:absolute;left:-11px;top:57px;width:18px;height:18px;border:4px solid var(--teal);border-radius:50%;background:var(--paper)}
.empty-signal{color:var(--teal-dark)}
.empty-signal .icon{width:45px;height:45px}
.empty-station h1,.empty-station h2{font-size:24px;line-height:1.5;margin:15px 0 10px}
.empty-station p{color:var(--muted);font-size:14px}
.empty-station .search-form{max-width:370px;margin:25px 0}
.route-button{display:inline-flex;align-items:center;gap:25px;border-bottom:2px solid var(--teal);padding:7px 0;font-size:14px;color:var(--teal-dark)}
.error-number{font-size:90px;font-weight:650;letter-spacing:12px;line-height:1.2;color:var(--teal-dark)}
.error-number>span{color:var(--red)}
@media(min-width:761px) and (max-width:1179px){.wrap{width:90%}
.header-inner{gap:22px;grid-template-columns:auto minmax(0,1fr) 28%}
.brand-name{font-size:34px;letter-spacing:2px}
.brand{gap:10px}
.train-logo{flex-basis:44px;height:44px;background-size:35px}
.track-menu>li{min-width:56px}
.track-menu>li>a{padding-inline:5px;font-size:14px}
.site-grid{gap:23px;grid-template-columns:minmax(0,2.25fr) minmax(0,1fr)}
.article-track{padding-left:25px}
.post-row{gap:19px}
.post-row:before{left:-39.5px}
.row-copy h2{font-size:18px;line-height:26px}
.row-excerpt{font-size:15px;line-height:23px;margin-top:9px}
.row-excerpt>.excerpt-wide{display:none}
.row-excerpt>.excerpt-desktop{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.row-meta{font-size:11px;gap:8px}
.row-meta time,.row-meta .views{padding-left:8px}
.row-meta .category-chip{padding:0 9px;line-height:23px;font-size:11px;max-width:82px}
.sidebar{padding-left:12px}
.popular-card{grid-template-columns:35px minmax(0,1fr) 19px;padding:15px 11px;gap:10px;min-height:105px}
.popular-number{width:35px;font-size:23px;line-height:39px}
.popular-copy strong{font-size:15px}
.popular-arrow .icon{width:19px}
.tag-grid{gap:10px 8px}
.tag-stop{gap:6px;height:34px}
.tag-stop>span:first-child{width:32px;height:34px;flex-basis:32px;line-height:34px;font-size:13px}
.tag-name{font-size:12px}}
@media(min-width:761px) and (max-width:980px){.wrap{width:93%}
.header-inner{grid-template-columns:auto minmax(0,1fr);gap:18px}
.desktop-search{grid-column:2;width:68%;justify-self:end;margin-top:2px}
.brand{grid-row:1/3;max-width:220px}
.desktop-nav{grid-column:2}
.site-grid{gap:20px;grid-template-columns:minmax(0,2.35fr) minmax(0,1fr)}
.article-track{padding-left:22px;margin-left:5px}
.post-row{grid-template-columns:36% minmax(0,1fr);gap:15px}
.post-picture{aspect-ratio:1}
.post-row:before{left:-36.5px}
.row-copy h2{font-size:16px;line-height:24px}
.row-excerpt{font-size:14px;line-height:22px;margin:8px 0}
.row-excerpt>.excerpt-desktop{display:none}
.row-excerpt>.excerpt-compact{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.row-meta{gap:5px;font-size:10px}
.row-meta time,.row-meta .views{padding-left:5px}
.row-meta .category-chip{font-size:10px;padding:0 7px;line-height:21px;max-width:58px}
.row-meta .views{gap:3px}
.row-meta .views .icon{width:13px;height:13px}
.sidebar{padding-left:10px}
.sidebar-title{font-size:18px;gap:6px}
.sidebar-title>.icon{width:25px;height:29px}
.popular-card{grid-template-columns:30px minmax(0,1fr);gap:9px;padding:12px 10px;min-height:100px}
.popular-number{width:30px;font-size:21px;line-height:35px}
.popular-copy strong{font-size:14px;line-height:22px}
.popular-excerpt{font-size:12px;line-height:20px}
.popular-arrow{display:none}
.tag-grid{grid-template-columns:minmax(0,1fr)}
.tag-stop{gap:12px}
.tag-name{font-size:13px}
.footer-top nav{padding-left:70px}
.footer-menu{gap:27px}}
@media(max-width:760px){.wrap{width:92%}
.site-header{padding:15px 0}
.header-inner{display:flex;justify-content:space-between;gap:14px}
.brand{max-width:calc(100% - 105px);gap:10px}
.brand-name{font-size:30px;letter-spacing:2px}
.train-logo{flex-basis:40px;height:40px;border-radius:12px;background-size:31px}
.brand .custom-logo{width:40px;height:40px}
.desktop-nav,.desktop-search{display:none}
.mobile-actions{display:flex;gap:8px;flex-shrink:0}
.panel-toggle{display:grid;place-items:center;width:39px;height:39px;background:transparent;border:1px solid #a3d9dc;border-radius:50%;color:var(--teal-dark)}
.panel-toggle[aria-expanded=true]{color:white;background:var(--teal);border-color:var(--teal)}
.mobile-track{margin-left:9px;border-left:3px solid var(--teal);padding-left:22px;display:grid;gap:5px}
.mobile-track>li{position:relative;min-width:0}
.mobile-track>li:before{content:"";position:absolute;width:15px;height:15px;background:#edf9f9;border:3px solid var(--teal);border-radius:50%;left:-31px;top:15px}
.mobile-track a{display:block;padding:9px 5px;font-size:15px;line-height:26px;overflow-wrap:anywhere}
.mobile-track .current-menu-item>a{color:#e95646;font-weight:650}
.mobile-track>li.current-menu-item:before{border-color:var(--red)}
.mobile-track ul{border-left:1px dashed #8ac6cb;margin:0 0 9px 3px;padding-left:17px}
.mobile-track ul a{font-size:14px;padding-block:5px}
.search-panel{border-top-color:var(--red);padding-bottom:22px}
.search-panel .search-form{height:45px;background:var(--paper)}
.search-panel .search-form input{font-size:14px}
.nojs-access .footer-menu{gap:15px;margin:12px 0}
.site-main{padding-top:23px;padding-bottom:25px}
.site-grid{display:block}
.sidebar{display:none}
.article-track{margin-left:5px;padding-left:20px;border-left-width:3px}
.post-row{grid-template-columns:144px minmax(0,1fr);gap:18px;padding-bottom:17px;margin-bottom:17px}
.post-row:before{width:19px;height:19px;border-width:4px;left:-31px;top:11px}
.post-picture{aspect-ratio:1}
.row-copy{padding:0;min-height:0}
.row-copy h2{font-size:17px;line-height:25px}
.row-excerpt{font-size:14px;line-height:22px;margin:10px 0}
.row-excerpt>span{display:none!important}
.row-excerpt>.excerpt-tablet{display:-webkit-box!important;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.row-meta{font-size:11px;line-height:21px;gap:9px}
.row-meta time,.row-meta .views{padding-left:9px}
.row-meta .category-chip{font-size:11px;line-height:23px;max-width:95px;padding:0 10px}
.row-meta .views{gap:4px}
.row-meta .views .icon{width:14px;height:14px}
.pagination{margin-top:25px}
.pagination ul{gap:15px}
.pagination li>.page-numbers{width:32px;height:32px;font-size:12px}
.pagination li>.prev,.pagination li>.next{font-size:24px}
.pagination li>.dots{width:16px}
.site-footer{padding-top:15px}
.footer-top{display:flex;flex-direction:column;gap:12px}
.footer-top nav{padding-left:0;width:100%}
.footer-menu{gap:17px 25px}
.footer-menu a{font-size:13px;padding:3px 0 7px}
.social-icons{gap:24px}
.social-icons .icon{width:19px;height:19px}
.social-icons>a,.social-icons>span{height:25px}
.copyright{margin-top:9px;padding-top:11px;font-size:11px;gap:5px}
.copyright>span{padding-left:8px;margin-left:3px}
.landscape-route{height:70px;margin-top:0;background-size:auto 67px;background-position:center bottom}
.route-path{margin-bottom:20px}
.route-path ol{font-size:12px}
.route-path li+li:before{width:17px;flex-basis:17px;margin-inline:6px;background-size:auto,100% 2px}
.route-path .icon{width:17px;height:17px}
.route-path a{gap:5px}
.entry-title{font-size:20px;line-height:1.5}
.entry-content{font-size:15px;line-height:1.85}
.entry-content h1{font-size:20px}
.entry-content h2{font-size:19px}
.entry-content h3{font-size:18px}
.entry-content h4,.entry-content h5,.entry-content h6{font-size:16px}
.entry-content blockquote{padding:16px 17px 3px 22px;margin:20px 0}
.entry-content pre{padding:15px;font-size:12px}
.page-heading h1{font-size:22px}
.empty-station{padding:27px 7%}
.empty-station h1,.empty-station h2{font-size:21px}
.error-number{font-size:70px}}
@media(min-width:461px) and (max-width:600px){.post-row{grid-template-columns:126px minmax(0,1fr);gap:16px}
.row-excerpt>.excerpt-tablet{display:none!important}
.row-excerpt>.excerpt-smalltablet{display:-webkit-box!important}
.row-meta{gap:6px;font-size:10px}
.row-meta time,.row-meta .views{padding-left:6px}
.row-meta .category-chip{font-size:10px;max-width:75px;padding:0 8px}
.row-meta .views{gap:3px}}
@media(max-width:460px){.wrap{width:94%}
.brand-name{font-size:28px}
.site-main{padding-top:21px}
.article-track{padding-left:17px}
.post-row{grid-template-columns:112px minmax(0,1fr);gap:12px;padding-bottom:15px;margin-bottom:15px}
.post-row:before{left:-28px}
.row-copy h2{font-size:15px;line-height:23px}
.row-excerpt{font-size:13.5px;line-height:21px;margin:7px 0}
.row-excerpt>.excerpt-tablet{display:none!important}
.row-excerpt>.excerpt-phone{display:-webkit-box!important}
.row-meta{font-size:10px;gap:5px;line-height:20px}
.row-meta time,.row-meta .views{padding-left:0;border:0}
.row-meta .category-chip{font-size:10px;line-height:21px;padding:0 6px;max-width:56px;flex-shrink:1}
.row-meta .views{gap:3px}
.row-meta .views .icon{width:12px;height:12px}
.pagination ul{gap:13px}
.pagination li>.page-numbers{width:29px;height:29px}
.footer-menu{gap:14px 24px}
.copyright{max-width:94%}
.copyright>span{max-width:100%;overflow-wrap:anywhere}
.landscape-route{height:59px;background-size:auto 54px}}
@media(max-width:380px){.brand-name{font-size:25px;letter-spacing:1px}
.train-logo{flex-basis:36px;height:36px;background-size:29px;border-radius:10px}
.mobile-actions{gap:6px}
.panel-toggle{width:35px;height:35px}
.post-row{grid-template-columns:100px minmax(0,1fr);gap:10px}
.row-copy h2{font-size:14px;line-height:22px}
.row-excerpt{font-size:13px;line-height:20px;margin:5px 0}
.row-excerpt>.excerpt-phone{display:none!important}
.row-excerpt>.excerpt-tiny{display:-webkit-box!important}
.row-meta{gap:4px;font-size:9px}
.row-meta .category-chip{font-size:9px;line-height:20px;padding:0 4px;max-width:40px}
.row-meta .views{gap:2px}
.row-meta .views .icon{width:11px;height:11px}
.pagination ul{gap:10px}
.pagination li>.page-numbers{width:28px;height:28px}
.pagination li>.dots{width:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}
*,*:before,*:after{animation:none!important;transition:none!important}}
.train-logo{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%220%200%2040%2040%22%20fill%3D%22none%22%20stroke%3D%22white%22%20stroke-width%3D%222.3%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%2210%22%20y%3D%224%22%20width%3D%2220%22%20height%3D%2228%22%20rx%3D%225%22%2F%3E%3Cpath%20d%3D%22M14%2011h12v12H14zM17%207h6M14%2036l4-4m8%204-4-4%22%2F%3E%3Ccircle%20cx%3D%2215%22%20cy%3D%2227%22%20r%3D%221%22%2F%3E%3Ccircle%20cx%3D%2225%22%20cy%3D%2227%22%20r%3D%221%22%2F%3E%3C%2Fsvg%3E")}
.media-shell:before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22100%22%20height%3D%2268%22%20viewBox%3D%220%200%20100%2068%22%20fill%3D%22none%22%3E%3Cpath%20d%3D%22M5%2053h22l8-8h28l8%208h24%22%20stroke%3D%22%2305b2bf%22%20stroke-width%3D%223%22%20stroke-linecap%3D%22round%22%2F%3E%3Ccircle%20cx%3D%2214%22%20cy%3D%2253%22%20r%3D%224%22%20fill%3D%22%23e6f5f4%22%20stroke%3D%22%2305b2bf%22%20stroke-width%3D%222%22%2F%3E%3Ccircle%20cx%3D%2287%22%20cy%3D%2253%22%20r%3D%224%22%20fill%3D%22%23e6f5f4%22%20stroke%3D%22%23ff7666%22%20stroke-width%3D%222%22%2F%3E%3Cg%20stroke%3D%22%23009cad%22%20stroke-width%3D%222.3%22%20stroke-linejoin%3D%22round%22%20stroke-linecap%3D%22round%22%3E%3Crect%20x%3D%2239%22%20y%3D%229%22%20width%3D%2223%22%20height%3D%2230%22%20rx%3D%226%22%20fill%3D%22%23ecfbf9%22%2F%3E%3Cpath%20d%3D%22M43%2016h15v12H43zM47%2013h7M44%2043l4-4m10%204-4-4%22%2F%3E%3Ccircle%20cx%3D%2244.5%22%20cy%3D%2233%22%20r%3D%221%22%2F%3E%3Ccircle%20cx%3D%2256.5%22%20cy%3D%2233%22%20r%3D%221%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E")}
.landscape-route{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%22-4%200%201172%20110%22%20fill%3D%22none%22%3E%0A%3Cpath%20d%3D%22M4%2062h91c8%200%2012-20%2022-20h126c10%200%2027%2042%2038%2042h176c10%200%208-27%2019-27h302c9%200%201%2025%2011%2025h118c11%200%2028-33%2042-33h70c15%200%2029%2029%2042%2029h100%22%20stroke%3D%22%2306b4bf%22%20stroke-width%3D%226%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%0A%3Cg%20stroke%3D%22%23049db2%22%20stroke-width%3D%223%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%2236%22%20y%3D%2224%22%20width%3D%2218%22%20height%3D%2225%22%20rx%3D%224%22%20fill%3D%22%2304afc1%22%2F%3E%3Cpath%20d%3D%22M40%2030h10v8H40z%22%20stroke%3D%22white%22%20stroke-width%3D%222%22%2F%3E%3Cpath%20d%3D%22m39%2056%205-7m8%207-5-7%22%2F%3E%3Ccircle%20cx%3D%2242%22%20cy%3D%2243%22%20r%3D%22.8%22%20stroke%3D%22white%22%2F%3E%3Ccircle%20cx%3D%2249%22%20cy%3D%2243%22%20r%3D%22.8%22%20stroke%3D%22white%22%2F%3E%3C%2Fg%3E%0A%3Cg%20fill%3D%22%23fcfcfa%22%3E%3Ccircle%20cx%3D%22226%22%20cy%3D%2242%22%20r%3D%228%22%20stroke%3D%22%23ff6756%22%20stroke-width%3D%225%22%2F%3E%3Ccircle%20cx%3D%22306%22%20cy%3D%2284%22%20r%3D%226%22%20stroke%3D%22%23039db6%22%20stroke-width%3D%223%22%2F%3E%3Ccircle%20cx%3D%22542%22%20cy%3D%2257%22%20r%3D%226%22%20stroke%3D%22%23059cb5%22%20stroke-width%3D%223%22%2F%3E%3Ccircle%20cx%3D%22716%22%20cy%3D%2257%22%20r%3D%226%22%20stroke%3D%22%23ffba22%22%20stroke-width%3D%223%22%2F%3E%3Ccircle%20cx%3D%22911%22%20cy%3D%2282%22%20r%3D%225.5%22%20stroke%3D%22%2300a0b9%22%20stroke-width%3D%223%22%2F%3E%3Ccircle%20cx%3D%22953%22%20cy%3D%2250%22%20r%3D%226.5%22%20stroke%3D%22%23ffba22%22%20stroke-width%3D%223%22%2F%3E%3C%2Fg%3E%0A%3Cpath%20d%3D%22M153%2098V84%22%20stroke%3D%22%239fdadf%22%20stroke-width%3D%224%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M153%2067c-7%200-8%208-8%2012-9%2013%202%2019%208%2011%2010%207%2018-2%209-12%200-6-3-11-9-11Z%22%20fill%3D%22%2386d4db%22%2F%3E%0A%3Cpath%20d%3D%22m362%2044-8%2014h4l-6%2011h8v8h4v-8h8l-6-11h4Z%22%20fill%3D%22%231aa5bb%22%2F%3E%0A%3Cpath%20d%3D%22m810%2068%2022-22%2014%2012%209-8%2027%2028h-78Z%22%20fill%3D%22%2393dce0%22%2F%3E%3Cpath%20d%3D%22m832%2046%208%208-8%208-8-8ZM855%2050l6%206-6%207-7-7Z%22%20fill%3D%22%23d4f3f3%22%2F%3E%3Cpath%20d%3D%22m840%2078%2017-16%2017%2016Z%22%20fill%3D%22%2352c6d0%22%2F%3E%0A%3Cg%20stroke%3D%22%2324afcf%22%20stroke-width%3D%222%22%3E%3Cpath%20d%3D%22M1054%2075V35h10v40m-7-40v-5h4v5m-2-5v-5m8%2050V52h25v23m-20-22v22m6-22v22m6-22v22m-20-16h29m-29%207h29M1114%2076l3-48h3l3%2048m-5-48V9%22%2F%3E%3Ccircle%20cx%3D%221118.5%22%20cy%3D%2224%22%20r%3D%224%22%20fill%3D%22%23fcfcfa%22%2F%3E%3Cpath%20d%3D%22M1057%2040h4m-4%206h4m-4%206h4m-4%206h4m-4%206h4%22%2F%3E%3C%2Fg%3E%0A%3C%2Fsvg%3E")}
@media(min-width:761px){.track-menu>li{min-width:0}
.track-menu>li>a{overflow:hidden;text-overflow:ellipsis}
.header-inner.many-stops .brand{grid-column:1;grid-row:1;max-width:350px}
.header-inner.many-stops .desktop-search{grid-column:3;grid-row:1;width:100%;margin:0}
.header-inner.many-stops .desktop-nav{grid-column:1/-1;grid-row:2}
.header-inner.many-stops .track-menu{max-width:100%;width:100%}
.header-inner.many-stops .track-menu>li{flex:1 1 0}
.header-inner.many-stops{row-gap:18px}
.track-menu>li:last-child>.sub-menu{left:auto;right:0}
.track-menu>li:last-child .sub-menu .sub-menu{left:auto;right:100%}}
@media(min-width:761px) and (max-width:980px){.header-inner.many-stops .desktop-search{grid-column:2;width:80%;justify-self:end}}
@media(min-width:761px){.track-menu>li>a{overflow:visible}
.track-menu>li>a>.menu-label{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}
.post-picture{position:relative}
.post-picture>.media-shell{position:absolute;inset:0}
/* 1.0.3: station names, interchange lines, direction signs and rail carriages. */
.article-station-head{position:relative;padding-left:27px;margin:0 0 28px}
.article-station-head:before{content:"";position:absolute;top:31px;bottom:10px;left:7px;width:4px;background:var(--teal);border-radius:3px}
.article-station-head:after{content:"";position:absolute;left:0;top:26px;width:18px;height:18px;background:var(--paper);border:4px solid var(--red);border-radius:50%}
.destination-sign{position:relative;background:var(--dark);color:#f9fcfa;border-radius:5px;padding:23px 24px;border-right:5px solid var(--teal)}
.destination-sign:before{content:"";position:absolute;left:-20px;top:33px;width:20px;height:4px;background:var(--teal)}
.destination-sign .entry-title{color:inherit;margin:0;font-size:24px;line-height:1.55;overflow-wrap:anywhere;font-weight:700}
.station-facts{position:relative;display:flex;align-items:center;gap:18px;min-width:0;margin-right:38px;padding:15px 0 27px;font-size:12px;line-height:24px;color:#717d83}
.station-facts:before{content:"";position:absolute;bottom:10px;left:-20px;right:0;height:4px;background:var(--teal);border-radius:0 3px 3px 0}
.station-facts:after{content:"";position:absolute;bottom:5px;right:-6px;width:14px;height:14px;border:3px solid var(--red);border-radius:50%;background:var(--paper)}
.station-facts .category-chip{font-size:12px;line-height:25px;padding:0 10px;max-width:27%;flex-shrink:1;border-radius:3px}
.station-facts time{display:inline-flex;align-items:center;gap:5px;flex-shrink:0;white-space:nowrap}
.station-facts time .icon,.station-facts .byline .icon{width:15px;height:15px}
.station-facts .views{gap:5px;flex-shrink:0;white-space:nowrap}
.station-facts .views .icon{width:15px;height:15px}
.station-facts .byline{display:flex;gap:5px;align-items:center;min-width:0;max-width:27%;margin-left:auto}
.station-facts .byline>span{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.station-terminal{position:absolute;right:0;bottom:0;color:var(--teal-dark);width:25px;height:31px;display:flex;align-items:center;justify-content:center}
.station-terminal .icon{width:25px;height:31px}
.rail-section-heading{display:flex;align-items:center;gap:20px;margin:0 0 20px}.rail-section-heading h2{display:flex;align-items:center;gap:9px;margin:0;font-size:20px;line-height:30px;white-space:nowrap}.rail-section-heading h2 .icon{width:26px;height:29px;color:var(--teal-dark)}
.rail-section-heading>span{flex:1;height:9px;position:relative;border-top:2px solid #92d4d6;border-bottom:2px solid #92d4d6}.rail-section-heading>span:after{content:"";width:8px;height:13px;position:absolute;right:0;top:-4px;border-radius:3px;background:var(--teal)}
.recommendation-line{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px 18px;min-width:0}
.recommend-stop{min-width:0;position:relative;padding-bottom:13px;--car-accent:var(--teal)}.recommend-stop:nth-child(3n+2){--car-accent:var(--red)}.recommend-stop:nth-child(3n+3){--car-accent:var(--yellow)}
.recommend-stop:after{content:"";position:absolute;bottom:0;left:0;right:0;height:5px;border-top:1px solid #8dbfc3;border-bottom:1px solid #8dbfc3;pointer-events:none}
.recommend-stop>a{display:block;min-width:0;outline-offset:2px}
.recommend-station{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px;min-width:0}
.recommend-node{display:grid;place-items:center;position:relative;flex:0 0 28px;width:28px;height:28px;border:2px solid var(--car-accent);border-radius:50%;font-size:11px;line-height:1;font-weight:650;color:var(--ink);background:var(--paper)}
.recommend-node:after{content:"";position:absolute;width:14px;height:3px;background:var(--car-accent);left:26px;top:11px}
.recommend-station time{color:#7a868d;font-size:11px;line-height:20px;white-space:nowrap;padding-left:13px}
.recommend-carriage{display:block;position:relative;background:var(--dark);border-radius:12px 12px 5px 5px;padding:8px 8px 0;border-top:3px solid var(--car-accent)}
.recommend-carriage:before,.recommend-carriage:after{content:"";position:absolute;width:12px;height:12px;bottom:-6px;border:3px solid #46585f;background:var(--paper);border-radius:50%;z-index:1}.recommend-carriage:before{left:21px}.recommend-carriage:after{right:21px}
.recommend-window{display:block;position:relative;aspect-ratio:16/10;overflow:hidden;border-radius:6px 6px 2px 2px;background:var(--teal-pale)}
.recommend-window>.media-shell{position:absolute;inset:0;width:100%;height:100%}
.recommend-name{display:flex;gap:7px;align-items:center;min-width:0;padding:10px 1px 13px;color:#f1faf6}
.recommend-name h3{font-size:13px;font-weight:550;line-height:22px;margin:0;min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.recommend-name>.icon{width:16px;height:16px;color:var(--car-accent)}
.recommend-stop>a:hover .recommend-carriage{background:#354449}.recommend-stop>a:hover .recommend-name{color:#b8f7ee}
.archive-gantry{position:relative;border-top:4px solid var(--teal);padding:23px 16px 0;margin:0 0 32px}
.archive-gantry:before,.archive-gantry:after{content:"";position:absolute;top:0;width:4px;height:25px;background:var(--teal);border-radius:0 0 2px 2px}.archive-gantry:before{left:17%}.archive-gantry:after{right:17%}
.gantry-board{position:relative;border:2px solid var(--teal-dark);border-radius:5px;background:#ecf8f4;overflow:hidden}
.gantry-board h1{font-size:26px;line-height:1.5;letter-spacing:.5px;margin:0;padding:21px 22px 22px;text-align:center;overflow-wrap:anywhere;color:#164d58}
.gantry-details{display:flex;align-items:center;justify-content:space-between;gap:20px;background:var(--dark);color:#e4f1ed;padding:9px 18px;font-size:12px;line-height:25px}
.gantry-kind{display:flex;gap:8px;align-items:center;min-width:0}.gantry-kind .icon{width:17px;height:21px;color:#5fd6d6}
.gantry-total{display:flex;align-items:baseline;gap:7px;white-space:nowrap;color:#b8d2d0}.gantry-total b{font-size:23px;line-height:27px;font-weight:500;color:#fff}
.gantry-description{padding:16px 5px 0;font-size:14px;line-height:1.85;color:var(--muted)}.gantry-description p{margin:0 0 9px}.gantry-description>:last-child{margin-bottom:0}
@media(min-width:761px) and (max-width:980px){
.recommendation-line{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 17px}
.station-facts{font-size:11px;gap:11px;margin-right:29px}.station-facts .category-chip{font-size:11px;padding-inline:7px}.station-facts time .icon,.station-facts .byline .icon{width:13px;height:13px}.station-facts .byline{gap:4px;max-width:24%}
.gantry-board h1{font-size:24px;padding:19px 20px}
}
@media(max-width:760px){
.article-station-head{padding-left:21px;margin-bottom:24px}.article-station-head:before{left:5px;top:27px;width:3px}.article-station-head:after{left:0;top:25px;width:13px;height:13px;border-width:3px}
.destination-sign{padding:18px;border-right-width:4px}.destination-sign:before{left:-15px;top:30px;width:15px;height:3px}.destination-sign .entry-title{font-size:20px;line-height:1.55}
.station-facts{font-size:11px;gap:12px;padding-top:13px;padding-bottom:25px;margin-right:32px}.station-facts:before{left:-15px;height:3px}.station-facts:after{width:13px;height:13px;bottom:5px}.station-facts .category-chip{font-size:11px;line-height:23px;padding-inline:8px;max-width:24%}.station-facts time{gap:4px}.station-facts .views{gap:4px}.station-facts time .icon,.station-facts .byline .icon,.station-facts .views .icon{width:13px;height:13px}.station-facts .byline{max-width:26%;gap:4px}
.station-terminal{width:23px;height:29px}.station-terminal .icon{width:23px;height:29px}
.rail-section-heading{gap:17px;margin-bottom:18px}.rail-section-heading h2{font-size:18px;line-height:28px;gap:8px}.rail-section-heading h2 .icon{width:23px;height:26px}
.recommendation-line{grid-template-columns:repeat(2,minmax(0,1fr));gap:21px 16px}.recommend-station{margin-bottom:8px}.recommend-node{width:26px;height:26px;flex-basis:26px;font-size:10px}.recommend-node:after{left:24px;top:10px;width:12px}.recommend-station time{font-size:10px;padding-left:11px}.recommend-carriage{padding:7px 7px 0;border-radius:10px 10px 4px 4px}.recommend-name{padding:9px 1px 12px;gap:6px}.recommend-name h3{font-size:13px;line-height:21px}.recommend-name>.icon{width:15px;height:15px}
.archive-gantry{padding:19px 12px 0;margin-bottom:28px;border-top-width:3px}.archive-gantry:before,.archive-gantry:after{width:3px;height:21px}.gantry-board h1{font-size:23px;padding:19px 17px;letter-spacing:0}.gantry-details{padding:8px 14px;gap:15px;font-size:11px}.gantry-kind{gap:6px}.gantry-kind .icon{width:16px;height:19px}.gantry-total{gap:5px}.gantry-total b{font-size:21px}.gantry-description{font-size:13px;padding:13px 1px 0}
}
@media(max-width:460px){
.destination-sign{padding:17px 14px}.station-facts{font-size:10px;gap:8px;margin-right:24px;padding-bottom:24px;line-height:22px}.station-facts .category-chip{font-size:10px;padding-inline:5px;line-height:22px;max-width:23%}.station-facts time,.station-facts .views,.station-facts .byline{gap:3px}.station-facts time .icon,.station-facts .views .icon,.station-facts .byline .icon{width:12px;height:12px}.station-facts .byline{max-width:24%}.station-terminal,.station-terminal .icon{width:20px;height:27px}
.recommendation-line{gap:20px 12px}.recommend-name{gap:4px;padding:8px 0 11px}.recommend-name h3{font-size:12px;line-height:20px}.recommend-name>.icon{width:14px;height:14px}.recommend-carriage{padding:6px 6px 0}.recommend-station{gap:5px}.recommend-station time{font-size:9px;padding-left:8px}.recommend-node{width:24px;height:24px;flex-basis:24px}.recommend-node:after{left:22px;top:9px;width:10px}
.gantry-board h1{font-size:22px;padding:17px 14px}.gantry-details{padding-inline:12px}
}
@media(max-width:380px){
.article-station-head{padding-left:18px}.article-station-head:before{left:4px}.article-station-head:after{left:-1px}.destination-sign:before{left:-12px;width:12px}.destination-sign{padding:16px 12px}.destination-sign .entry-title{font-size:20px}
.station-facts{gap:5px;margin-right:19px}.station-facts:before{left:-12px}.station-facts .category-chip{max-width:19%;padding-inline:4px}.station-facts .byline{max-width:22%}.station-facts time .icon{display:none}.station-facts .views,.station-facts .byline{gap:2px}.station-facts .views .icon,.station-facts .byline .icon{width:11px;height:11px}.station-terminal,.station-terminal .icon{width:17px;height:25px}
}
/* 1.0.3: restore the reference rail geometry. */
.track-menu>li>a{padding-bottom:38px}
.track-menu>li:after{height:5px;bottom:13.5px}
.track-menu>li>a:before{box-sizing:border-box;width:24px;height:24px;bottom:4px;border-width:5px}
.track-menu>li>a:after{height:9px;width:3px;bottom:28px;left:calc(50% - 1.5px)}
.article-track{--route-gutter:31px;--route-width:4px;--rail-half:2px;--stop-size:24px;--stop-half:12px;--stop-border:4px;--stop-top:12px;--route-tail:17px;position:relative;border-left:0;padding-left:calc(var(--route-gutter) + var(--route-width))}
.article-track:before{content:"";position:absolute;left:0;top:0;bottom:var(--route-tail);width:var(--route-width);background:var(--teal);pointer-events:none}
.post-row:before{box-sizing:border-box;width:var(--stop-size);height:var(--stop-size);border-width:var(--stop-border);left:calc(0px - var(--route-gutter) - var(--rail-half) - var(--stop-half));top:var(--stop-top)}
.pagination>ul.page-numbers{display:flex;flex-flow:row nowrap;align-items:center;justify-content:center;width:auto;height:auto;max-width:100%;flex-shrink:0;list-style:none;padding:0;margin:0;border:0;border-radius:0;background:transparent}
.pagination>ul.page-numbers>li{display:block;flex:0 0 auto;margin:0;padding:0;list-style:none}
@media(min-width:981px) and (max-width:1179px){.article-track{--route-gutter:25px}}
@media(min-width:761px) and (max-width:980px){.article-track{--route-gutter:22px}}
@media(max-width:760px){
.article-track{--route-gutter:20px;--route-width:3px;--rail-half:1.5px;--stop-size:18px;--stop-half:9px;--stop-border:3px;--stop-top:11px;--route-tail:18px}
.landscape-route{width:100%;height:auto;min-height:0;aspect-ratio:1172 / 110;margin-top:10px;background-size:contain;background-position:center bottom}
}
@media(max-width:460px){.article-track{--route-gutter:17px;--route-tail:16px}}
/* Compact station labels use their text width, without filling grid columns. */
.article-route-tags{display:flex;flex-wrap:wrap;align-items:center;gap:11px 15px;margin-top:17px;padding:19px 0 4px}
.article-route-tags>a{--tag-color:#08a9b6;--tag-fill:#e3f7f4;display:inline-flex;align-items:center;gap:8px;flex:0 1 auto;min-width:0;max-width:210px;color:#27545b;font-size:13px;line-height:23px}
.article-route-tags>a:nth-child(5n+2){--tag-color:#ec7967;--tag-fill:#fff0e9;color:#835042}.article-route-tags>a:nth-child(5n+3){--tag-color:#d3a32c;--tag-fill:#fff4d4;color:#746025}.article-route-tags>a:nth-child(5n+4){--tag-color:#639de0;--tag-fill:#eaf2fd;color:#3a5c80}.article-route-tags>a:nth-child(5n+5){--tag-color:#a87ddd;--tag-fill:#f3edff;color:#6f518f}
.tag-terminal{box-sizing:border-box;display:block;position:relative;flex:0 0 13px;width:13px;height:13px;border:3px solid var(--tag-color);border-radius:50%;background:var(--paper)}
.tag-terminal:after{content:"";position:absolute;left:9px;top:2px;width:9px;height:3px;background:var(--tag-color)}
.route-tag-name{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:3px 9px 4px 8px;background:var(--tag-fill);border-top:2px solid var(--tag-color);border-bottom:1px solid var(--tag-color);border-radius:2px}
.article-route-tags>a:hover .route-tag-name{background:var(--tag-color);color:white}
.article-route-tags>a:focus-visible{outline-offset:3px}
@media(max-width:760px){.article-route-tags{gap:9px 12px;margin-top:13px;padding-top:16px}.article-route-tags>a{max-width:min(185px,calc(50% - 6px));font-size:12px;line-height:21px}.route-tag-name{padding:3px 8px 3px 7px}}
@media(max-width:380px){.article-route-tags{column-gap:10px}.article-route-tags>a{max-width:calc(50% - 5px);gap:7px}.route-tag-name{padding-inline:6px}}

/* 1.0.5: one station board, two reading directions, separated from the tags. */
.journey-navigation{border-top:1px solid var(--line);margin:25px 0 32px;padding-top:24px}
.journey-board{display:flex;min-width:0;background:var(--dark);border:1px solid #34464b;border-radius:4px;box-shadow:0 3px 0 #dbe8e7}
.journey-link{--journey-color:#5bd1d3;position:relative;display:grid;grid-template-columns:34px minmax(0,1fr);gap:13px;align-items:center;flex:1 1 0;min-width:0;padding:17px 20px 30px;color:#f4f8f6;border-top:3px solid var(--journey-color)}
.journey-link:first-child{border-radius:3px 0 0 0}
.journey-link:last-child{border-radius:0 3px 0 0}
.journey-link:only-child{border-radius:3px 3px 0 0}
.journey-link+.journey-link{border-left:1px solid #4a5b60}
.journey-next{--journey-color:#ff9b89;grid-template-columns:minmax(0,1fr) 34px}
.journey-next .journey-arrow{grid-column:2;grid-row:1}
.journey-next .journey-copy{grid-column:1;grid-row:1;text-align:right}
.journey-arrow{width:34px;height:34px;display:grid;place-items:center;color:var(--journey-color);border:2px solid currentColor;border-radius:50%}
.journey-arrow svg{width:25px;height:25px;display:block}
.journey-copy{display:block;min-width:0}
.journey-meta{display:flex;align-items:baseline;justify-content:space-between;gap:9px;margin-bottom:5px;font-size:12px;line-height:20px;color:var(--journey-color);white-space:nowrap}
.journey-next .journey-meta{flex-direction:row-reverse}
.journey-meta>span{font-weight:650}
.journey-meta time{font-size:11px;color:#bdcacb;font-variant-numeric:tabular-nums}
.journey-copy strong{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:16px;line-height:25px;font-weight:600}
.journey-route{position:absolute;left:20px;right:20px;bottom:12px;height:3px;background:var(--journey-color);pointer-events:none}
.journey-route:before{box-sizing:border-box;content:"";position:absolute;left:12px;top:-3.5px;width:10px;height:10px;border:2px solid var(--journey-color);border-radius:50%;background:var(--dark)}
.journey-next .journey-route:before{left:auto;right:12px}
.journey-link:hover{color:#fff;background:#304247}
.journey-link:hover .journey-copy strong{color:var(--journey-color)}
.journey-link:focus-visible{outline:2px solid var(--journey-color);outline-offset:-5px}
@media(min-width:981px) and (max-width:1179px){.journey-link{padding-inline:15px;gap:10px}.journey-copy strong{font-size:15px}.journey-meta{gap:6px;font-size:11px}.journey-meta time{font-size:10px}.journey-route{left:15px;right:15px}}
@media(max-width:980px){
.journey-board{flex-direction:column}
.journey-link{padding:13px 16px 25px;gap:13px}
.journey-link+.journey-link{border-left:0;border-top:1px solid #4a5b60}
.journey-link:last-child:not(:only-child){border-radius:0 0 3px 3px}
.journey-link:first-child{border-radius:3px 3px 0 0}
.journey-copy strong{font-size:15px;line-height:24px}
.journey-meta{margin-bottom:3px}
.journey-route{left:16px;right:16px;bottom:10px;height:2px}
.journey-route:before{top:-4px}
}
@media(max-width:760px){.journey-navigation{margin:21px 0 27px;padding-top:20px}.journey-link{grid-template-columns:30px minmax(0,1fr);gap:11px;padding-inline:14px}.journey-next{grid-template-columns:minmax(0,1fr) 30px}.journey-arrow{width:30px;height:30px}.journey-arrow svg{width:22px;height:22px}.journey-copy strong{font-size:14px;line-height:23px}.journey-meta{font-size:11px}.journey-meta time{font-size:10px}.journey-route{left:14px;right:14px}}

/* WordPress centering applies to the image AND its lazy-loading shell. */
.entry-content img.aligncenter:not(.lazy),
.entry-content figure.aligncenter,
.entry-content .wp-caption.aligncenter{display:block;float:none;margin-left:auto!important;margin-right:auto!important}
html:not(.no-js) .entry-content .aligncenter,
html:not(.no-js) .entry-content :is(span,picture,a):has(>img.aligncenter),
html:not(.no-js) .entry-content :is(span,a):has(>picture>img.aligncenter){display:block;float:none;margin-left:auto!important;margin-right:auto!important}
