/* Story frames: route, quote, key phrase, year fill, part number, pie */
.vf .rt-side{position:absolute;left:140px;top:120px;width:620px;bottom:150px;display:flex;flex-direction:column;gap:22px}
.rt-k{font-size:32px;letter-spacing:.1em;text-transform:uppercase;color:var(--t-accent);font-weight:600}
.rt-h{margin:0;font-size:80px;line-height:1}
.rt-mi{display:flex;align-items:baseline;gap:16px;margin-top:10px}.rt-mi .n{font-size:120px;font-weight:700;line-height:1;font-family:var(--t-fd)}.rt-mi small{font-size:36px;color:var(--t-muted)}
.rt-list{list-style:none;margin:auto 0 0;padding:0;display:flex;flex-direction:column;gap:0;border-top:2px solid var(--t-chartBase)}
.rt-list li{display:grid;grid-template-columns:36px 1fr auto;align-items:center;gap:20px;height:72px;border-bottom:2px solid var(--t-chartBase);font-size:40px;color:var(--t-muted)}
.rt-list li i{width:18px;height:18px;border-radius:50%;border:4px solid var(--t-muted)}
.rt-list li.on{color:var(--t-ink)}.rt-list li.on i{background:var(--t-chartHi);border-color:var(--t-chartHi)}
.rt-list li.cur span{font-weight:700}.rt-list li b{font-weight:500;font-size:36px}
.vf .rt-panel{position:absolute;left:840px;top:110px;width:940px;height:810px;background:var(--t-surface);border-radius:var(--t-r);box-shadow:0 0 0 2px var(--t-chartBase);overflow:hidden}
.rt-map{position:absolute;inset:0;width:100%;height:100%;font-family:var(--t-ft)}
.vf .qt-ph{position:absolute;left:0;top:0;bottom:0;width:820px;overflow:hidden}
.vf .qt{position:absolute;left:940px;right:140px;top:0;bottom:0;display:flex;flex-direction:column;justify-content:center;gap:34px}
.qt-mark{font-size:220px;line-height:.6;height:110px;color:var(--t-accent)}
.qt blockquote{margin:0;font-size:78px;line-height:1.12;text-wrap:pretty}
.qt-by{display:flex;flex-direction:column;gap:8px;padding-left:28px;border-left:6px solid var(--t-accent)}.qt-by b{font-size:42px}.qt-by span{font-size:34px;color:var(--t-muted)}
.vf .kp{position:absolute;left:140px;right:260px;top:0;bottom:0;display:flex;flex-direction:column;justify-content:center;gap:40px}
.kp-k{font-size:34px;letter-spacing:.1em;text-transform:uppercase;color:var(--t-muted);font-weight:600}
.kp-t{margin:0;font-size:124px;line-height:1.08;text-wrap:balance}
.kp-t mark{color:inherit;background:linear-gradient(var(--t-accent),var(--t-accent)) 0 88%/calc(var(--p,1)*100%) .34em no-repeat;-webkit-box-decoration-break:clone;box-decoration-break:clone;padding:0 .06em}
.vf .yf{position:absolute;left:120px;right:140px;top:110px;bottom:110px;display:flex;flex-direction:column;justify-content:center;gap:40px}
.yf-n{font-size:500px;align-self:flex-start;line-height:.82;font-weight:900;letter-spacing:-.04em;background-size:cover;background-position:center;-webkit-background-clip:text;background-clip:text;color:transparent;filter:var(--t-grade);flex:none}
.yf-c{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:40px;row-gap:12px;align-items:baseline;max-width:1500px;padding-left:20px}.yf-c i{grid-row:1/3;align-self:start;margin-top:30px}.yf-c i{width:90px;height:8px;background:var(--t-accent)}.yf-c b{font-size:72px;line-height:1.02}.yf-c span{font-size:38px;line-height:1.3;color:var(--t-muted)}
.st-scrim{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.78) 0%,rgba(0,0,0,.35) 45%,rgba(0,0,0,0) 70%)}
.vf .st-n{position:absolute;right:110px;bottom:40px;font-size:640px;line-height:.8;font-weight:900;color:transparent;-webkit-text-stroke:5px rgba(255,255,255,.9);letter-spacing:-.03em}
.vf .st-c{position:absolute;left:140px;bottom:150px;display:flex;flex-direction:column;gap:14px;color:#fff}
.st-k{font-size:36px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--t-accent)}.st-c b{font-size:120px;line-height:1}.st-c span:last-child{font-size:40px;opacity:.85}
.vf .pie{position:absolute;left:140px;top:300px;width:620px;height:620px}
.vf .pie-lg{position:absolute;left:900px;right:140px;top:330px;display:flex;flex-direction:column}
.pie-r{display:grid;grid-template-columns:32px 1fr auto;align-items:center;gap:24px;height:88px;border-bottom:2px solid var(--t-chartBase);font-size:44px;color:var(--t-muted)}
.pie-r i{width:28px;height:28px;background:var(--t-chartBase)}.pie-r b{font-size:52px;font-weight:600;color:var(--t-ink)}
.pie-r.hi{color:var(--t-ink);font-weight:700}.pie-r.hi i{background:var(--t-chartHi)}.pie-r.hi b{color:var(--t-chartHi);font-size:64px}
[data-t=parchment] .ch-below{align-items:center;text-align:center;left:140px;width:1640px}
[data-t=graphite] .st-n,[data-t=ember] .st-n{-webkit-text-stroke-color:var(--t-accent)}
[data-t=basel] .kp-t mark,[data-t=circuit] .kp-t mark{background-size:calc(var(--p,1)*100%) 100%;background-position:0 0;color:var(--t-onAccent)}
[data-t=circuit] .kp-t mark{background-image:linear-gradient(90deg,var(--t-accent),var(--t-accent2))}
[data-t=satin] .kp-t,[data-t=satin] .qt blockquote{text-transform:none;letter-spacing:0}
[data-t=stacks] .qt blockquote,[data-t=stacks] .kp-t{text-transform:none}

/* plate labels: heavier for legibility */
.vf .pl .pl-l{font-weight:600}
[data-plate=block] .pl .pl-l,[data-plate=card] .pl .pl-l{font-family:var(--t-ft);font-style:normal;font-weight:700;font-size:48px}
[data-plate=veil] .pl .pl-l,[data-plate=deco] .pl .pl-l{font-weight:700}
.vf[data-plate=block] .pl .pl-l,.vf[data-plate=card] .pl .pl-l,.vf[data-plate=veil] .pl .pl-l{font-weight:700}
.vf[data-t=stacks] .pl .pl-l{font-family:var(--t-ft);font-weight:600;letter-spacing:.08em}
