/* A continuous, alternating timeline. Every moment stays in document flow. */
html:has(.journey){scroll-behavior:auto}
.journey-intro{padding-bottom:42px}
.journey-intro h1{font-size:clamp(42px,4.8vw,68px)}
.journey-intro>p{max-width:690px}
.journey-intro-bottom{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:28px}
.journey-start{white-space:nowrap}
.journey-stage{position:relative;display:grid;isolation:isolate}
/* The scenery stays behind the current moment and ends with the timeline. */
.journey-backdrop{position:sticky;top:0;grid-area:1 / 1;align-self:start;height:100vh;height:100svh;overflow:hidden;pointer-events:none;z-index:-1;background:var(--paper)}
.journey-stage>.journey{grid-area:1 / 1}
.journey-backdrop-layer{position:absolute;inset:0;background-size:cover;background-position:center;filter:saturate(.35) sepia(.2);opacity:0;transition:opacity .7s ease}
.journey-backdrop-layer.is-visible{opacity:1}
.journey-backdrop:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#f7f6f2 0%,#f7f6f2b8 22%,#f7f6f2b8 76%,#f7f6f2 100%),linear-gradient(90deg,#f7f6f220 0%,#f7f6f2b3 28%,#f7f6f2d6 50%,#f7f6f2b3 72%,#f7f6f220 100%)}
.journey{position:relative;display:grid;gap:clamp(280px,36vh,400px);padding-block:38px 80px}
.journey-thread{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;opacity:0}
.journey.has-route .journey-thread{opacity:1}
.journey-thread path{fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.journey-thread-base{stroke:#d6ccc0}
.journey-thread-progress{stroke:var(--wine)}
.journey-traveller{fill:var(--wine);stroke:var(--paper);stroke-width:3}
.journey-panel{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(45px,7vw,100px);align-items:start;min-height:440px}
.journey-copy{grid-column:1;grid-row:1;position:relative;padding-left:36px;min-width:0}
.journey-node{position:absolute;left:0;top:25px;width:12px;height:12px;border:1.5px solid #b7a48e;background:var(--paper);border-radius:50%;z-index:1;transition:background .3s,border-color .3s}
.journey-panel.is-passed .journey-node{background:var(--wine);border-color:var(--wine)}
.journey-date{display:flex;flex-direction:column;gap:9px;margin-bottom:26px}
.journey-date>span{font-size:clamp(42px,4.4vw,60px);font-weight:500;line-height:1.1;letter-spacing:-.045em;color:var(--wine)}
.journey-date small{font-size:14px;line-height:1.6;color:#50564d}
.journey-copy h2{font-size:32px;line-height:1.25;letter-spacing:-.03em;margin-bottom:20px}
.journey-description{font-size:16px;line-height:1.85;max-width:490px;color:#454b44}
.journey-consequence{margin:23px 0;padding-left:18px;border-left:2px solid #c7b39a}
.journey-consequence>span{font-size:13px;font-weight:500;color:var(--wine)}
.journey-consequence p{font-size:15px;line-height:1.75;color:var(--ink);margin-top:5px}
.journey-copy .text-link{font-size:14px}
.journey-figure{grid-column:2;grid-row:1;min-width:0;margin-top:8px}
.journey-image{aspect-ratio:1.2;overflow:hidden;background:var(--paper-dark)}
.journey-image img{width:100%;height:100%;object-fit:cover}
.journey-image--object{padding:27px}
.journey-image--object img{object-fit:contain;mix-blend-mode:multiply}
.journey-image--coin{background:#858583}
.journey-image--coin img{transform:scale(1.65)}
.journey-image--portrait img{object-position:center 23%}
.journey-figure figcaption{font-size:12px;line-height:1.7;color:#50564d;margin-top:14px}
.journey-background-caption{display:block;width:fit-content;margin-top:7px;font-size:11px;text-decoration:underline;text-decoration-color:#a5a99e;text-underline-offset:3px}
.journey-background-caption:hover{text-decoration-color:currentColor}
.journey-panel.is-reversed .journey-copy{grid-column:2}
.journey-panel.is-reversed .journey-figure{grid-column:1}
.journey-text,.journey-figure{transition:opacity .4s ease,transform .6s cubic-bezier(.22,.61,.36,1)}
.journey.guided .journey-panel:not(.is-current) .journey-text,
.journey.guided .journey-panel:not(.is-current) .journey-figure{opacity:0;transform:translate3d(0,20px,0);pointer-events:none}
.journey.guided .journey-panel.is-before .journey-node{opacity:0}
.journey.guided .journey-panel.is-current .journey-text,
.journey.guided .journey-panel.is-current .journey-figure{opacity:1;transform:none}
.journey-node{transition:opacity .4s,background .3s,border-color .3s}
.journey-outro{border-top:1px solid var(--line);padding-block:48px 55px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:25px}
.journey-outro h2{font-size:32px}
.journey-outro p{font-size:16px;margin-top:14px}
.journey-outro .small-note{flex-basis:100%;font-size:12px;max-width:800px;margin-top:10px}
@media(max-width:1100px){
 .journey{gap:clamp(240px,34vh,340px)}.journey-panel{gap:50px;min-height:420px}
 .journey-date>span{font-size:48px}.journey-node{top:20px}
 .journey-copy h2{font-size:29px}.journey-description{font-size:15px}
}
@media(max-width:820px){
 .journey-panel{gap:34px}.journey-copy{padding-left:29px}.journey-date>span{font-size:40px}.journey-node{top:16px}
 .journey-copy h2{font-size:27px}.journey-date small{font-size:13px}.journey-consequence p{font-size:14px}
 .journey-image--object{padding:18px}.journey-figure figcaption{font-size:11px}
 .journey-intro-bottom{flex-wrap:wrap;gap:17px}
}
@media(max-width:700px){
 .journey-backdrop:after{background:linear-gradient(180deg,#f7f6f2 0%,#f7f6f2eb 18%,#f7f6f2eb 82%,#f7f6f2 100%)}
 .journey-intro{padding-block:35px 25px}.journey-intro h1{font-size:clamp(34px,8vw,50px)}.journey-intro>p{font-size:16px}
 .journey-intro-bottom{margin-top:24px}.journey-intro .filter-tabs{gap:7px}.journey-intro .filter-tabs button{padding-inline:11px;font-size:12px}
 .journey{gap:160px;padding-block:28px 45px}
 .journey-panel{grid-template-columns:minmax(0,1fr);gap:25px;min-height:0}
 .journey-copy,.journey-panel.is-reversed .journey-copy{grid-column:1;grid-row:1;padding-left:30px}
 .journey-figure,.journey-panel.is-reversed .journey-figure{grid-column:1;grid-row:2;margin:0;padding-left:30px}
 .journey-node{width:10px;height:10px;left:1px;top:17px}
 .journey-date{gap:7px;margin-bottom:20px}.journey-date>span{font-size:40px;letter-spacing:-.04em}
 .journey-copy h2{font-size:27px;line-height:1.25;margin-bottom:16px}
 .journey-description{font-size:16px;line-height:1.8}.journey-consequence{margin-block:20px;padding-left:14px}.journey-consequence p{font-size:14px}
 .journey-image{aspect-ratio:1.25}.journey-image--portrait img{object-fit:contain;background:#403b30}
 .journey-figure figcaption{font-size:12px;line-height:1.7;margin-top:12px}
 .journey-outro{padding-block:35px 40px;gap:23px}.journey-outro h2{font-size:29px}.journey-outro p{font-size:15px}
}
@media(max-width:360px){.journey-date>span{font-size:34px}.journey-copy h2{font-size:25px}.journey-copy .text-link{font-size:13px;gap:8px}}
@media(prefers-reduced-motion:reduce){.journey-text,.journey-figure{opacity:1!important;transform:none!important;transition:none!important;pointer-events:auto!important}.journey-node{opacity:1!important}.journey-traveller{display:none}}
@media print{
 .journey-stage{display:block}
 .journey-backdrop{display:none!important}
 .journey{display:block;padding:0}.journey-thread,.journey-node,.journey-intro-bottom{display:none!important}
 .journey-panel{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin:25px 0;min-height:0;break-inside:avoid}
 .journey-copy{padding-left:0}.journey-text,.journey-figure{opacity:1!important;transform:none!important;pointer-events:auto!important}.journey-image{max-height:200px}
}
