/* A scroll-led illustrated voyage, alongside the real shipment gallery. */
.stone-journey{height:280svh;margin-top:52px;position:relative;color:var(--ink);--journey-progress:0}
.journey-sticky{position:sticky;top:0;min-height:690px;height:100svh;max-height:1100px;display:flex;flex-direction:column;justify-content:center;padding:24px 0;background:#eaf8f6;overflow:hidden}
.journey-topline{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 32px 16px;font-size:14px;line-height:1.5}
.journey-topline>span{letter-spacing:.12em;font-weight:700}.journey-topline a{text-decoration:underline;text-underline-offset:5px}
.journey-scene{height:48svh;max-height:550px;min-height:260px;position:relative;overflow:hidden;background:#eaf8f6;direction:ltr}
.journey-panorama{display:block;height:100%;width:auto;max-width:none;min-width:145%;object-fit:cover;object-position:center;will-change:transform}
.journey-art-label{position:absolute;right:18px;bottom:12px;padding:5px 9px;background:rgba(234,248,246,.9);font-size:12px;color:#365d62;border-radius:2px}
.journey-caption{display:grid;grid-template-columns:80px 1fr;gap:16px;padding:22px 32px 20px;min-height:140px;align-items:start}
.journey-count{font-size:14px;letter-spacing:.12em;color:#167773;padding-top:9px;font-variant-numeric:tabular-nums}
.journey-caption h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(28px,3vw,44px);letter-spacing:-.025em;line-height:1.12;margin:0 0 10px}
.journey-caption p{font-size:16px;line-height:1.55;margin:0;max-width:680px;color:#355e66}
.journey-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:0 32px;gap:12px}
.journey-steps button{position:relative;display:flex;gap:12px;align-items:center;text-align:start;background:transparent;color:var(--ink);padding:18px 0 10px;border:0;border-top:2px solid #bddad7;cursor:pointer;min-height:54px;font-size:16px}
.journey-steps button::before{content:'';position:absolute;top:-2px;left:0;height:3px;width:calc(var(--step-progress,0)*100%);background:#078e88}
.journey-steps button span{font-size:13px;color:#357b79}.journey-steps button strong{font-weight:400}.journey-steps button[aria-current] strong{font-weight:700;color:#046b69}
.journey-steps button:focus-visible,.journey-topline a:focus-visible{outline:3px solid #078e88;outline-offset:5px}
.journey-hint{font-size:14px;line-height:1.5;margin:14px 32px 0;color:#446e72}
#shipment-photos{scroll-margin-top:28px}
html[dir=rtl] .journey-steps button::before{left:auto;right:0}
@media(max-width:800px){.stone-journey{margin-inline:-6vw;margin-top:30px;height:260svh}.journey-sticky{padding:18px 0;min-height:650px}.journey-topline{padding:0 6vw 12px;align-items:flex-start;font-size:14px}.journey-topline>span{letter-spacing:.04em;max-width:52%}.journey-topline a{max-width:43%;text-align:end}.journey-scene{height:39svh;min-height:240px}.journey-panorama{min-width:290%}.journey-caption{padding:20px 6vw 12px;grid-template-columns:52px 1fr;gap:10px;min-height:150px}.journey-caption h3{font-size:30px}.journey-caption p{font-size:16px}.journey-steps{padding-inline:6vw;gap:8px}.journey-steps button{display:block;font-size:14px;overflow-wrap:anywhere}.journey-steps button span{display:block;margin-bottom:8px}.journey-hint{margin:12px 6vw 0}.journey-art-label{bottom:6px;font-size:12px}}

.journey-viewport{height:100%;width:100%;overflow:hidden;direction:ltr}
.journey-viewport:focus-visible{outline:3px solid #078e88;outline-offset:-3px}
.journey-panorama{user-select:none;-webkit-user-drag:none}
/* Touch uses native horizontal scrolling; vertical page scrolling stays free. */
.stone-journey.journey-native{height:auto}
.journey-native .journey-sticky{position:relative;height:auto;min-height:0;max-height:none;overflow:visible}
.journey-native .journey-scene{height:clamp(240px,36svh,360px);min-height:0;max-height:none}
.journey-native .journey-viewport{overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;touch-action:pan-x pan-y pinch-zoom;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#078e88 #cce5e2}
.journey-native .journey-viewport::-webkit-scrollbar{height:5px}
.journey-native .journey-viewport::-webkit-scrollbar-thumb{background:#078e88;border-radius:4px}
.journey-native .journey-panorama{height:100%;width:auto;min-width:0;max-width:none;object-fit:contain;transform:none!important;will-change:auto}
.journey-native .journey-art-label{pointer-events:none;bottom:14px}
.journey-native .journey-caption{min-height:140px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
