/* Home: quote, ribbon teaser, station bar, works intro */
.quote{padding-block:clamp(80px,12vw,170px)}
.quote figure{margin:0}
.quote blockquote{margin:0;font-family:var(--display);font-weight:600;font-stretch:100%;font-size:clamp(30px,4.6vw,68px);line-height:1.12;letter-spacing:-.015em;max-width:24ch}
.quote .w{color:var(--text-dim);transition:color .3s ease}
.quote .w.on{color:var(--text)}
.quote a.k{text-decoration:none;border-bottom:.08em solid currentColor}
.quote a.k.id.on,.quote a.k.id:hover,.quote a.k.id:focus-visible{color:var(--red-on-ink)}
.quote a.k.le.on,.quote a.k.le:hover,.quote a.k.le:focus-visible{color:var(--yellow)}
.quote a.k.wo.on,.quote a.k.wo:hover,.quote a.k.wo:focus-visible{color:var(--blue-on-ink)}
.quote figcaption{margin-top:28px}
.quote .note{margin-top:56px;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:32px;max-width:980px;color:var(--text-dim)}
.quote .note strong{color:var(--text);display:block;margin-bottom:6px;font-weight:700}

.ribbon{position:relative;overflow:hidden;background:var(--ink-2)}
.ribbon > video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ribbon::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,13,11,.92) 0%,rgba(13,13,11,.6) 46%,rgba(13,13,11,.05) 100%);pointer-events:none}
.ribbon .wrap{position:relative;z-index:2;padding-block:clamp(96px,12vw,170px);display:grid;gap:26px}
.ribbon h2{font-size:clamp(40px,7vw,120px);max-width:11ch}
.route{position:relative;z-index:3;border-top:1px solid var(--line-2);background:rgba(13,13,11,.86)}
.route ol{list-style:none;margin:0 auto;max-width:var(--wrap);display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-left:var(--gut);padding-right:var(--gut-r)}
.route li{flex:0 0 auto;scroll-snap-align:start;margin-right:28px;border-right:1px solid var(--line-2)}
.route a{display:grid;gap:2px;min-width:170px;padding:18px 28px 20px 0;text-decoration:none}
.route a:hover b{text-decoration:underline;text-decoration-color:var(--green);text-decoration-thickness:2px}
.route b{font-weight:700;font-size:15px}
.route .mono{color:var(--text-dim)}

.works-intro{display:grid;gap:18px;justify-items:start}
.rail-foot{margin-top:28px}
.rail-foot .more{border-color:var(--text-on-paper)}
