/* The section rail follows the same cream, navy and orange palette on every page. */
.page-scroll{--rail-ink:var(--ink);--rail-fill:var(--paper);--rail-accent:var(--orange-paper,#e84b25);position:fixed;right:18px;top:calc(50% + 34px);z-index:120;display:flex;flex-direction:column;align-items:center;width:44px;transform:translateY(-50%);font-family:'Barlow Condensed',Arial,sans-serif;pointer-events:none}
.page-scroll.is-over-dark{--rail-ink:var(--paper);--rail-fill:var(--black);--rail-accent:var(--orange-brand,#f1542a)}
.page-scroll-label{margin-bottom:8px;color:var(--orange-small,#9b341d);font-size:10px;font-weight:800;line-height:1;letter-spacing:.14em;writing-mode:vertical-rl;transform:rotate(180deg)}
.page-scroll.is-over-dark .page-scroll-label{color:var(--orange-brand,#f1542a)}
.page-scroll-dots{position:relative;display:flex;flex-direction:column;align-items:center;width:100%}
.page-scroll-dots::before{content:'';position:absolute;left:50%;top:14px;bottom:14px;width:1px;background:var(--rail-ink);opacity:.28;transform:translateX(-50%)}
.page-scroll-dot{position:relative;display:grid;place-items:center;width:28px;height:28px;flex:none;color:var(--rail-ink);text-decoration:none;pointer-events:auto}
.page-scroll-dot::before{content:'';width:11px;height:11px;border:1px solid currentColor;border-radius:50%;background:var(--rail-fill);box-shadow:0 1px 3px #0002;transition:background-color .18s,transform .18s}
.page-scroll-dot.is-active::before{border-color:var(--rail-accent);background:var(--rail-accent);transform:scale(1.12)}
.page-scroll-name{position:absolute;right:36px;top:50%;width:max-content;max-width:240px;padding:7px 10px;border-radius:2px;color:var(--rail-ink);background:var(--rail-fill);box-shadow:0 3px 12px #0002;font-size:13px;line-height:1.3;letter-spacing:0;transform:translateY(-50%);opacity:0;visibility:hidden;pointer-events:none}
.page-scroll-dot:focus-visible,.page-scroll-control:focus-visible{outline:2px solid var(--rail-accent);outline-offset:2px;border-radius:24px}
.page-scroll-dot:focus-visible .page-scroll-name{opacity:1;visibility:visible}
.page-scroll-control{position:relative;display:grid;place-items:center;width:44px;height:44px;margin-top:5px;padding:0;flex:none;border:0;color:var(--rail-ink);background:none;cursor:pointer;pointer-events:auto}
.page-scroll-control::before{content:'';position:absolute;inset:4px;border:1px solid currentColor;border-radius:50%;background:var(--rail-fill);box-shadow:0 2px 5px #0002}
.page-scroll-control svg{position:relative;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.page-scroll-control:disabled{opacity:.3;cursor:default}
.page-scroll-control[hidden]{display:none}
.page-scroll-top{margin-top:0}
@media(hover:hover){.page-scroll-dot:hover .page-scroll-name{opacity:1;visibility:visible}.page-scroll-control:hover:not(:disabled){color:var(--rail-accent)}}
@media(max-width:1100px){.page-scroll{right:6px}}
@media(max-width:820px){
 .page-scroll{right:0;width:24px}
 .page-scroll-label{font-size:9px;margin-bottom:6px}
 .page-scroll-dot{width:24px;height:24px}.page-scroll-dot::before{width:9px;height:9px}
 .page-scroll-dots::before{top:12px;bottom:12px}
 .page-scroll-control{width:24px;height:44px;margin-top:2px}.page-scroll-control::before{inset:11px 1px}.page-scroll-control svg{width:15px;height:15px}
 .page-scroll-dot:focus-visible,.page-scroll-control:focus-visible{outline-offset:-1px}
 .page-scroll-name{right:30px;max-width:min(220px,70vw)}
}
@media(max-height:540px){.page-scroll-label{display:none}.page-scroll-dot{height:24px}.page-scroll-dots::before{top:12px;bottom:12px}.page-scroll-control{height:36px}.page-scroll-control::before{inset:5px 1px}}
@media(max-height:440px){.page-scroll-dots{display:none}}
@media(prefers-reduced-motion:reduce){.page-scroll-dot::before{transition:none}}
@media print{.page-scroll{display:none}}
