/* A story occupies the screen. The machinery, one thought, one direction. */
#journeys{--tour-accent:#e9bb77;--tour-ink:#f4efe5;--tour-muted:#bac4c9;position:fixed;inset:var(--top-height,100px) 0 0;z-index:7;overflow:auto;overscroll-behavior:contain;background:#080e13;color:var(--tour-ink);font-family:var(--sans);font-size:18px;line-height:1.5;scrollbar-width:thin}
#journeys[hidden]{display:none}
#journeys a{text-decoration:none;color:inherit}
#journeys button{font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}
#journeys :is(button,a,input):focus-visible{outline:2px solid var(--tour-accent);outline-offset:5px}
#journeys [tabindex="-1"]:focus{outline:none}
#journeys ::selection{background:#d8b58455}
#journeys svg{display:block}
.tour-eyebrow{font:400 13px/1.5 var(--mono);letter-spacing:.1em;text-transform:uppercase}
.tour-library{max-width:1540px;margin:auto;padding:54px 48px 28px}
.tour-library-heading{display:grid;grid-template-columns:1.3fr 1fr;align-items:end;column-gap:60px;margin-bottom:44px}
.tour-library-heading .tour-eyebrow{grid-column:1/-1;color:#d9bc8b;margin-bottom:20px}
.tour-library h2{font:400 clamp(64px,6.3vw,100px)/.95 var(--serif);letter-spacing:-.025em;margin:0}
.tour-library-heading>p{font-size:23px;line-height:1.5;max-width:25ch;color:var(--tour-muted);margin:0 0 5px}
.tour-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.tour-card{position:relative;isolation:isolate;display:flex;align-items:flex-end;min-height:460px;overflow:hidden;background:#142028;border:1px solid #ffffff20;border-radius:6px;transition:border-color .3s,transform .3s}
.tour-card>img{position:absolute;width:100%;height:100%;inset:0;object-fit:cover;z-index:-2;transition:transform .8s ease}
.tour-card-shade{position:absolute;inset:0;background:linear-gradient(180deg,#06101900 22%,#06101955 44%,#061019ed 94%);z-index:-1}
.tour-card:hover{transform:translateY(-4px);border-color:#dbc79c88}
.tour-card:hover>img{transform:scale(1.045)}
.tour-card-copy{padding:32px;width:100%}
.tour-card .tour-eyebrow{color:var(--tour-accent)}
.tour-card h3{font:400 clamp(34px,3.2vw,49px)/1.08 var(--serif);margin:12px 0 15px;letter-spacing:-.02em}
.tour-card p{font-size:18px;color:#d5dcde;max-width:26ch;line-height:1.5;margin:0 0 25px}
.tour-card-play{display:inline-flex;align-items:center;gap:12px;font-size:16px;font-weight:500;color:#fff6e2;padding:10px 0}
.tour-card-play svg{width:18px;height:18px;fill:#fff6e2;stroke-width:1.2}
.tour-library footer{display:flex;justify-content:space-between;gap:24px;padding:28px 0 0;font-size:14px;color:#a9b5bd}
.tour-library footer a{display:flex;align-items:center;gap:12px}
.tour-library footer svg{width:18px;height:18px}
.tour-not-found{max-width:600px;margin:12vh auto;padding:32px}
.tour-not-found h2{font:400 50px/1.1 var(--serif)}
.tour-not-found a{display:flex;align-items:center;gap:20px}
.tour-not-found svg{width:22px}
/* The common navigation steps out of the way during a film. The exit brings it back. */
body.tour-open #top,body.tour-open #about-link{display:none}
body.tour-open #journeys{inset:0;z-index:20}
#journeys.is-tour{overflow:hidden}
.tour-player{position:relative;height:100%;min-height:440px;overflow:hidden;background:#071018;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:76px 1fr auto auto}
.tour-top{position:relative;z-index:6;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;padding:0 36px;gap:16px;background:linear-gradient(#050b12c9,transparent)}
.tour-exit{display:flex;align-items:center;gap:12px;justify-self:start;min-height:44px;color:#c5d0d6!important;font-size:14px}
.tour-exit svg{width:18px;height:18px}
.tour-destination{text-align:center;color:#d7e0e1;font:400 18px/1.2 var(--serif)}
.tour-position{justify-self:end;color:var(--tour-accent);font:14px/1 var(--mono);white-space:nowrap}
.tour-position>span{color:#91a2ad}
.tour-visual{position:absolute;inset:0;z-index:0;overflow:hidden}
.tour-stage-host{position:absolute;inset:0 0 220px;transform-origin:50% 45%;animation:tour-enter .95s cubic-bezier(.22,.7,.15,1) both}
.tour-player[data-direction="back"] .tour-stage-host{animation-name:tour-enter-back}
.tour-stage-host.tour-stage-outgoing{z-index:2;pointer-events:none;animation:tour-exit .9s ease both!important}
.tour-player[data-direction="back"] .tour-stage-outgoing{animation-name:tour-exit-back!important}
.tour-visual-vignette{position:absolute;inset:0;z-index:3;pointer-events:none;background:linear-gradient(180deg,#03081144,transparent 20%,transparent 51%,#071018c2 72%,#071018 90%),radial-gradient(ellipse at 50% 37%,transparent 30%,#02081066)}
.tour-reading{position:relative;z-index:4;grid-row:3;display:flex;justify-content:space-between;align-items:end;gap:32px;padding:20px max(36px,calc((100vw - 1390px)/2));pointer-events:none}
.tour-story-copy{max-width:850px}
.tour-year{font:400 44px/1.1 var(--mono);letter-spacing:-.035em;color:var(--tour-accent);margin-bottom:9px}
.tour-title{font:400 clamp(36px,4vw,61px)/1.02 var(--serif);letter-spacing:-.024em;margin:0 0 14px;text-wrap:balance}
.tour-caption{font-size:clamp(18px,1.7vw,22px);line-height:1.48;color:#d5dfe2;max-width:60ch;min-height:2.96em;margin:0;text-wrap:pretty}
.tour-interaction-hint{display:block;flex:0 0 200px;font-size:15px;color:#e7d8ba;line-height:1.5;padding:0 0 12px;text-align:right;transition:opacity .25s}
.tour-interaction-hint>span{display:block;color:#92a5af;font-size:13px}
.tour-interaction-hint.is-used{opacity:0}
.tour-controls{min-width:0;position:relative;z-index:5;grid-row:4;padding:0 max(36px,calc((100vw - 1390px)/2)) 20px;background:#071018}
/* The path is the navigation: earlier inventions remain as landmarks. */
.tour-path{min-width:0;margin:4px -12px 0}
.tour-path-track{mask-image:linear-gradient(to right,transparent,#000 12px,#000 calc(100% - 12px),transparent);overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#71828d55 transparent;padding:0 12px 6px}
.tour-path-list{position:relative;display:flex;list-style:none;padding:0;margin:0;min-width:calc(var(--tour-stops) * 118px);width:100%}
.tour-path-stop{flex:1 0 0;min-width:0;position:relative}
.tour-path-stop::after{content:"";position:absolute;top:8px;left:13px;right:-2px;height:2px;background:#63768055;pointer-events:none}
.tour-path-stop:last-child::after{display:none}
.tour-path-stop.is-complete::after{background:var(--tour-accent);opacity:.7}
.tour-path-stop button{position:relative;z-index:1;background:none;border:0;text-align:left;color:#93a5af;display:flex;flex-direction:column;align-items:start;width:100%;min-height:80px;padding:22px 12px 2px 0;gap:2px;line-height:1.2}
.tour-path-dot{position:absolute;top:3px;left:0;width:12px;height:12px;border:2px solid #647885;border-radius:50%;background:#071018;box-sizing:border-box}
.tour-path-year{font:400 13px/1.35 var(--mono);white-space:nowrap}
.tour-path-label{font:400 16px/1.25 var(--sans);text-wrap:balance;max-width:14ch}
.is-complete .tour-path-dot{background:var(--tour-accent);border-color:var(--tour-accent)}
.is-complete button{color:#d0d9dd}
.is-current button{color:var(--tour-ink)}
.is-current .tour-path-year{color:var(--tour-accent)}
.is-current .tour-path-dot{border-color:var(--tour-accent);background:var(--tour-accent);box-shadow:0 0 0 4px #071018,0 0 0 5px var(--tour-accent)}
.tour-path button:hover .tour-path-label{color:var(--tour-ink);text-decoration:underline;text-underline-offset:4px}
.tour-path button:focus-visible{outline-offset:0!important;border-radius:3px}
.tour-takeaway{font-weight:500;color:var(--tour-ink)}
.tour-control-row{display:flex;align-items:center;justify-content:space-between;gap:28px;min-height:64px}
.tour-transport{display:flex;gap:10px;flex:0 0 auto}
.tour-icon-button{background:transparent;border:1px solid #77919f38;border-radius:50%;color:#dce7eb;width:44px;height:44px;display:grid;place-items:center;padding:11px}
.tour-icon-button svg{width:20px;height:20px}
.tour-icon-button:disabled{opacity:.2;cursor:default!important}
.tour-icon-button:not(:disabled):hover{background:#abc9d41a;border-color:#c8dce67a}
.tour-next{display:flex;align-items:center;justify-content:space-between;gap:32px;min-height:48px;min-width:154px;padding:12px 20px;background:var(--tour-accent);color:#111a21;border:0;border-radius:3px;font-size:16px!important;font-weight:500!important}
.tour-next:hover{filter:brightness(1.08)}
.tour-next svg{width:22px;height:22px}
.tour-next-preview{flex:1;color:#899da8;text-align:right;font-size:13px;line-height:1.5}
.tour-next-preview span{color:#b8c7ce;margin-left:9px}
@keyframes tour-enter{from{opacity:0;transform:translateX(4%) scale(.94);filter:blur(7px)}to{opacity:1;transform:none;filter:blur(0)}}
@keyframes tour-enter-back{from{opacity:0;transform:translateX(-4%) scale(1.06);filter:blur(7px)}to{opacity:1;transform:none;filter:blur(0)}}
@keyframes tour-exit{from{opacity:1;transform:none}to{opacity:0;transform:translateX(-5%) scale(1.09);filter:blur(9px)}}
@keyframes tour-exit-back{from{opacity:1;transform:none}to{opacity:0;transform:translateX(5%) scale(.93);filter:blur(9px)}}
@media(min-width:1800px){.tour-stage-host{bottom:250px}.tour-reading{padding-bottom:24px}.tour-caption{max-width:56ch}}
@media(max-width:900px){.tour-library{padding:32px 24px}.tour-library-heading{gap:28px}.tour-library h2{font-size:74px}.tour-library-heading>p{font-size:20px}.tour-cards{gap:14px}.tour-card{min-height:410px}.tour-card-copy{padding:24px}.tour-card h3{font-size:38px}.tour-card p{font-size:16px}.tour-top{padding:0 24px}.tour-reading,.tour-controls{padding-inline:30px}.tour-interaction-hint{flex-basis:140px}.tour-stage-host{bottom:260px}}
@media(max-width:680px){
 .tour-library{padding:34px 20px 24px}.tour-library-heading{display:block;margin-bottom:28px}.tour-library-heading .tour-eyebrow{display:block;font-size:12px;max-width:27ch;margin-bottom:22px}.tour-library h2{font-size:68px}.tour-library-heading>p{font-size:19px;max-width:27ch;margin-top:22px}.tour-cards{display:block}.tour-card{min-height:370px;margin-top:20px}.tour-card-copy{padding:26px}.tour-card h3{font-size:45px}.tour-card p{font-size:18px}.tour-library footer{display:block;font-size:14px}.tour-library footer a{margin-top:18px}
 .tour-player{grid-template-rows:60px 1fr auto auto;min-height:420px}.tour-top{padding:0 19px;grid-template-columns:1fr auto;gap:12px}.tour-destination{display:none}.tour-exit{font-size:13px;gap:8px}.tour-position{font-size:13px}.tour-stage-host{inset:0 0 285px}.tour-reading{display:block;padding:12px 22px 7px}.tour-story-copy{max-width:100%}.tour-year{font-size:32px;margin-bottom:9px}.tour-title{font-size:39px;line-height:1.04;margin-bottom:12px}.tour-caption{font-size:18px;line-height:1.5;min-height:4.5em;max-width:36ch}.tour-controls{padding:0 22px max(14px,env(safe-area-inset-bottom))}.tour-control-row{min-height:62px;gap:16px}.tour-transport{gap:8px}.tour-next-preview{display:none}.tour-next{min-width:134px;gap:18px;font-size:16px!important}.tour-interaction-hint{position:absolute;bottom:calc(100% + 10px);left:22px;right:22px;text-align:center;font-size:14px;padding:0}.tour-interaction-hint>span{display:inline;font-size:12px;margin-left:5px}.tour-visual-vignette{background:linear-gradient(180deg,#03081144,transparent 19%,transparent 36%,#071018aa 58%,#071018 76%)}
}
@media(max-width:350px){.tour-library h2{font-size:61px}.tour-title{font-size:34px}.tour-reading{padding-inline:19px}.tour-caption{font-size:18px;line-height:1.5;min-height:6em}.tour-controls{padding-inline:19px}.tour-icon-button{width:44px;height:44px}.tour-next{min-width:123px}.tour-stage-host{bottom:310px}}
@media(max-height:640px) and (min-width:681px){.tour-player{grid-template-rows:55px 1fr auto auto}.tour-top{padding-inline:24px}.tour-reading{padding:10px 28px 5px}.tour-title{font-size:35px;margin-bottom:7px}.tour-year{font-size:30px;margin-bottom:5px}.tour-caption{font-size:17px;max-width:67ch;min-height:3em}.tour-controls{padding:0 28px 8px}.tour-control-row{min-height:54px}.tour-stage-host{bottom:200px}.tour-visual-vignette{background:linear-gradient(transparent 27%,#07101899 57%,#071018 86%)} }
@media(prefers-reduced-motion:reduce){#journeys *,#journeys *::before,#journeys *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.tour-stage-outgoing{display:none}.tour-card:hover{transform:none}}

.j-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* In a shallow viewport the invention and caption sit beside each other. */
@media(max-height:500px) and (min-width:550px){
 .tour-player{min-height:0;grid-template-rows:48px 1fr auto auto}
 .tour-top{padding-inline:20px;grid-template-columns:1fr 1fr 1fr}.tour-destination{display:block}
 .tour-stage-host{inset:32px auto 145px 0;width:52%}
 .tour-stage-host .tour-art-svg{width:110%;height:100%}
 .tour-reading{grid-row:2/4;width:48%;margin-left:auto;align-self:center;padding:6px 24px 5px 0}
 .tour-title{font-size:29px;line-height:1.02;margin-bottom:9px}.tour-year{font-size:28px;margin-bottom:7px}
 .tour-caption{font-size:18px;line-height:1.35;min-height:0;max-width:37ch}
 .tour-controls{padding:0 22px max(7px,env(safe-area-inset-bottom))}.tour-control-row{min-height:54px}
 .tour-path{margin-top:0}.tour-path-stop button{min-height:69px}.tour-path-label{font-size:15px}.tour-path-year{font-size:12px}.tour-next-preview,.tour-interaction-hint{display:none}
 .tour-visual-vignette{background:linear-gradient(0deg,#071018 6%,transparent 30%)}
}
@media(max-height:650px) and (max-width:549px){.tour-interaction-hint{display:none}}
@media(max-height:650px) and (max-width:549px){
 .tour-visual{position:relative;grid-row:2;min-height:0}
 .tour-stage-host{inset:0}
 .tour-stage-host .tour-art{--scene-scale:1.5}
 .tour-visual-vignette{background:none}
 .tour-reading{background:#071018}
}
.tour-next{white-space:nowrap}
@media(max-width:350px){.tour-next{padding-inline:14px;gap:12px}}

/* Names stay readable; narrow screens carry the trail horizontally. */
@media(max-width:680px){
 .tour-path{margin-top:6px;margin-inline:-6px}.tour-path-track{padding-inline:6px;padding-bottom:3px;scrollbar-width:none}.tour-path-track::-webkit-scrollbar{display:none}
 .tour-path-list{min-width:calc(var(--tour-stops) * 132px)}.tour-path-stop button{min-height:73px;padding-top:21px;padding-right:10px}.tour-path-label{font-size:16px}.tour-path-year{font-size:12px}
 .tour-reading{padding-bottom:5px}.tour-caption{min-height:0}.tour-title{font-size:36px;margin-bottom:10px}
}
@media(max-width:350px){.tour-path-list{min-width:calc(var(--tour-stops) * 124px)}.tour-title{font-size:31px}.tour-year{font-size:30px}.tour-caption{min-height:0;line-height:1.4}}
@media(max-height:650px) and (max-width:549px){.tour-player{grid-template-rows:48px 1fr auto auto;min-height:0}.tour-top{padding-inline:19px}.tour-reading{padding-top:8px}.tour-year{font-size:28px;margin-bottom:6px}.tour-title{font-size:29px;margin-bottom:8px}.tour-caption{font-size:17px;line-height:1.4}.tour-controls{padding-bottom:max(6px,env(safe-area-inset-bottom))}.tour-control-row{min-height:56px}}

@media(max-height:500px) and (min-width:550px){
 .tour-reading{padding-block:4px;align-self:center}.tour-title{font-size:27px;line-height:1.03;margin-bottom:5px}
 .tour-year{font-size:28px;margin-bottom:5px}.tour-caption{font-size:16px;line-height:1.35}
}
