/* One carton moves from an outline to the center of the real collection. */
.packaging-journey{position:relative;background:var(--paper);--journey-gallery:0;--journey-copy:1;--journey-heading:0;--journey-details:0;--journey-progress:0}
.journey-pin{position:relative;display:flex;flex-direction:column;padding-block:55px 36px}
.journey-anchor{position:absolute;top:0;left:0;width:1px;height:1px;pointer-events:none}
.journey-stage{position:relative;display:flex;align-items:center;min-height:490px;order:0}
.journey-intro{width:34%;max-width:390px;position:relative;z-index:2}
.journey-intro .label{font-size:9px;letter-spacing:.09em;margin-bottom:24px}
.journey-intro h1{color:var(--blue);font-size:clamp(38px,4.1vw,61px);line-height:1.04;letter-spacing:-.04em}
.journey-intro>p:not(.label){max-width:300px;margin-top:25px;font-size:14px;line-height:1.85}
.journey-intro>.text-link{margin-top:26px;font-size:12px}
.journey-visual{position:relative;width:66%;height:490px;min-width:0}
.journey-drawing,.journey-canvas,.journey-source{position:absolute;inset:0;width:100%;height:100%}
.journey-drawing{color:var(--blue)}
.journey-canvas{opacity:0;pointer-events:none}.journey-canvas canvas{display:block;width:100%;height:100%}
.journey-canvas[data-hover-box]{cursor:pointer}
.journey-source{object-fit:contain;opacity:0;pointer-events:none;padding:20px}
.journey-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;padding-top:46px;border-top:1px solid var(--line);margin-top:45px;margin-bottom:40px;order:1}
.journey-heading h2{color:var(--blue);font-size:clamp(34px,3.4vw,50px);line-height:1.07}
.journey-heading h2 em{display:block}.journey-heading .label{margin-bottom:15px;font-size:9px}
.journey-heading>p{font-size:13px;line-height:1.85;max-width:320px}
.journey-products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;order:2}
.journey-products article{min-width:0}
.journey-product-photo{width:100%;aspect-ratio:1.5;object-fit:contain;margin-bottom:24px;mix-blend-mode:multiply}
.journey-products h3{border-top:1px solid var(--line);padding-top:17px;font-size:clamp(21px,2vw,28px);line-height:1.12}
.journey-products h3 button{display:block;width:100%;font:inherit;color:var(--blue);text-align:left;border:0;background:none;padding:0;cursor:pointer;min-height:64px}
.journey-products h3 button>span:not(.journey-name):not(.journey-short){display:block;font:8px/1.6 Manrope,Arial,sans-serif;letter-spacing:.09em;color:var(--muted);margin-bottom:9px}
.journey-products article.is-selected h3{border-color:var(--blue)}
.journey-products article>p{font-size:12px;line-height:1.8;margin:14px 0 12px;max-width:335px;min-height:44px}
.product-enquiry{font:11px/1.7 Manrope,Arial,sans-serif;color:var(--blue);display:inline-block;padding-block:5px;border-bottom:1px solid var(--line)}.product-enquiry span{margin-left:14px}
.journey-footer{order:3;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px 30px;margin-top:28px;min-height:32px}
.journey-cue{font-size:8px;letter-spacing:.09em;color:var(--blue)}.journey-cue>span{margin-left:15px;font-size:16px}
.journey-caption{font-size:8px;color:var(--muted)}
.journey-actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px}.journey-actions[hidden]{display:none}
.journey-actions button,.journey-actions a{border:0;background:none;padding:8px 0;color:var(--blue);font:11px/1.6 Manrope,Arial,sans-serif;cursor:pointer;min-height:34px}.journey-actions span{margin-left:6px}
.journey-progress{display:none;order:4;height:1px;background:var(--line);margin-top:15px}.journey-progress>span{display:block;width:calc(var(--journey-progress)*100%);height:1px;background:var(--blue)}
/* Reserve geometry immediately; WebGL can initialize without moving anchors. */
.journey-enabled{height:455svh;min-height:2550px}
.journey-enabled #collection{top:calc((100% - 100svh + var(--header))*.8)}
.journey-enabled .journey-pin{height:calc(100svh - var(--header));min-height:610px;position:sticky;top:var(--header);padding-block:30px 22px}
.journey-enabled .journey-heading{order:0;flex-shrink:0;margin:0;padding-top:0;border-top:0;opacity:var(--journey-heading);transform:translateY(calc((1 - var(--journey-heading))*16px));min-height:119px}
.journey-enabled .journey-stage{order:1;display:block;flex:1;min-height:235px}
.journey-enabled .journey-intro{position:absolute;left:0;top:50%;transform:translateY(calc(-50% - (1 - var(--journey-copy))*20px));width:31%;opacity:var(--journey-copy)}
.journey-enabled .journey-visual{height:100%;width:100%;margin-left:0}
/* Keep one viewport-wide drawing surface; move the composition in the camera.
   Resizing the canvas while scrolling changes its aspect ratio and clips shadows. */
.journey-enabled .journey-canvas{width:var(--journey-viewport,100vw);left:calc((100% - var(--journey-viewport,100vw))/2);right:auto}
@media(min-width:781px){.journey-enabled .journey-drawing{width:65%;left:35%}}
.journey-ready .journey-canvas{opacity:1}.journey-ready .journey-drawing{opacity:0;visibility:hidden}
.journey-ready.is-interactive .journey-canvas{pointer-events:auto;touch-action:pan-y pinch-zoom}
.journey-ready.shows-source .journey-canvas{opacity:0;pointer-events:none}.journey-ready.shows-source .journey-source{opacity:1}
.journey-enabled .journey-products{opacity:var(--journey-details);visibility:hidden;flex-shrink:0;transform:translateY(calc((1 - var(--journey-details))*12px))}
.journey-enabled.collection-arriving .journey-products{visibility:visible}
.journey-enabled .journey-product-photo{display:none}
.journey-enabled .journey-footer{flex-shrink:0;margin-top:17px;min-height:34px}
.journey-enabled .journey-progress{display:block}
.journey-enabled .journey-products h3 button{text-align:center}.journey-enabled .journey-products p,.journey-enabled .product-enquiry{text-align:center}.journey-enabled .product-enquiry{display:block;width:fit-content;margin-inline:auto}.journey-enabled .journey-products article>p{margin-inline:auto}
.journey-enabled .journey-cue{max-width:330px}
.packaging-journey:not(.journey-enabled) .journey-actions,.packaging-journey:not(.journey-enabled) .journey-cue{display:none}
@media(min-width:781px) and (max-height:820px){
 .journey-enabled .journey-pin{min-height:550px;padding-block:18px 15px}
 .journey-enabled .journey-heading{min-height:87px}.journey-heading h2{font-size:34px}.journey-heading h2 em{display:inline}.journey-heading .label{margin-bottom:10px}
 .journey-enabled .journey-stage{min-height:210px}.journey-intro h1{font-size:38px}.journey-intro>p:not(.label){font-size:12px;margin-top:18px}.journey-intro>.text-link{margin-top:16px}
 .journey-products h3{padding-top:10px;font-size:22px}.journey-products h3 button{min-height:49px}.journey-products h3 button>span:not(.journey-name):not(.journey-short){margin-bottom:6px}.journey-products article>p{margin-block:10px 6px;font-size:11px;min-height:38px}.journey-footer{margin-top:9px!important}.journey-progress{margin-top:8px}
}
@media(max-width:1000px) and (min-width:781px){.journey-products{gap:20px}.journey-intro h1{font-size:38px}.journey-intro .label{font-size:8px}.journey-heading h2{font-size:38px}.journey-heading>p{font-size:12px}.journey-products h3{font-size:22px}}
@media(max-width:780px){
 .journey-pin{padding-top:34px}.journey-stage{display:flex;flex-direction:column;align-items:stretch;min-height:0}.journey-intro{width:100%;max-width:430px}.journey-intro h1{font-size:clamp(33px,7.5vw,48px)}.journey-intro .label{font-size:8px;margin-bottom:18px}.journey-intro>p:not(.label){font-size:13px;line-height:1.8;margin-top:19px;max-width:360px}.journey-intro>.text-link{margin-top:20px;font-size:11px}
 .journey-visual{width:100%;height:300px}.journey-heading{flex-direction:column;align-items:start;gap:20px;padding-top:35px;margin-top:20px}.journey-heading h2{font-size:37px}.journey-heading h2 em{display:inline}.journey-heading>p{font-size:13px}
 .journey-products{grid-template-columns:1fr;gap:36px}.journey-products h3{font-size:29px}.journey-products h3 button{min-height:62px}.journey-products article>p{font-size:14px;max-width:none}.product-enquiry{font-size:12px}
 .journey-enabled{height:440svh;min-height:2400px}.journey-enabled .journey-pin{padding-block:26px 18px;min-height:650px}
 .journey-enabled .journey-heading{min-height:169px;padding-top:5px;gap:12px;justify-content:start}.journey-enabled .journey-heading h2{font-size:34px;max-width:340px}.journey-enabled .journey-heading .label{margin-bottom:12px}.journey-enabled .journey-heading>p{font-size:12px}
 .journey-enabled .journey-intro{position:absolute;top:auto;bottom:100%;width:100%;max-width:none;transform:translateY(calc((1 - var(--journey-copy))*-12px));padding-bottom:3px}.journey-enabled .journey-intro h1{font-size:34px}.journey-enabled .journey-intro .label{font-size:7px;margin-bottom:13px}.journey-enabled .journey-intro>p:not(.label){font-size:12px;margin-top:14px;max-width:390px}.journey-enabled .journey-intro>.text-link{display:none}
 .journey-enabled .journey-stage{min-height:225px}.journey-enabled .journey-visual{width:100%;margin-left:0}
 .journey-enabled .journey-products{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 12px;min-height:177px;align-content:start}
 .journey-enabled .journey-products article{display:contents}.journey-enabled .journey-products h3{grid-row:1;font-size:18px;letter-spacing:-.035em;padding-top:11px;min-height:76px}.journey-enabled .journey-products h3 button{min-height:57px;line-height:1.13}.journey-enabled .journey-products h3 button>span:not(.journey-name):not(.journey-short){font-size:6px;letter-spacing:.02em;margin-bottom:6px}
 .journey-enabled .journey-products article>p{grid-column:1/-1;grid-row:2;font-size:13px;line-height:1.8;min-height:0;margin:15px auto 5px;max-width:440px}.journey-enabled .product-enquiry{grid-column:1/-1;grid-row:3;font-size:11px}
 .journey-enabled .journey-products article:not(.is-selected)>p,.journey-enabled .journey-products article:not(.is-selected)>.product-enquiry{display:none}
 .journey-footer{gap:6px 15px}.journey-enabled .journey-footer{margin-top:12px;min-height:44px}.journey-caption{font-size:7px}.journey-cue{font-size:7px}.journey-actions{gap:16px}.journey-actions a,.journey-actions button{font-size:10px;min-height:32px}.journey-progress{margin-top:9px}
}
@media(max-width:360px){
 .journey-enabled .journey-pin{min-height:650px}.journey-enabled .journey-heading{min-height:181px}.journey-enabled .journey-heading h2{font-size:31px}.journey-enabled .journey-heading>p{font-size:11px}.journey-enabled .journey-intro h1{font-size:30px}.journey-enabled .journey-intro>p:not(.label){font-size:12px}.journey-enabled .journey-intro .label{font-size:6px}
 .journey-enabled .journey-products{column-gap:8px;min-height:206px}.journey-enabled .journey-products h3{font-size:18px;min-height:95px}.journey-enabled .journey-products h3 button>span:not(.journey-name):not(.journey-short){font-size:6px}.journey-enabled .journey-stage{min-height:205px}.journey-actions{gap:11px}.journey-actions button,.journey-actions a{font-size:9px}
}
@media(max-width:780px) and (max-height:730px){
 .journey-enabled .journey-pin{min-height:550px;padding-block:20px 12px}.journey-enabled .journey-heading{min-height:128px}.journey-enabled .journey-heading h2{font-size:30px}.journey-enabled .journey-heading>p{display:none}.journey-enabled .journey-intro h1{font-size:30px}.journey-enabled .journey-intro>p:not(.label){display:none}.journey-enabled .journey-intro .label{margin-bottom:12px}
 .journey-enabled .journey-stage{min-height:180px}.journey-enabled .journey-products{min-height:161px}.journey-enabled .journey-products h3{min-height:69px}.journey-enabled .journey-products article>p{font-size:12px;margin-top:9px}.journey-enabled .journey-footer{margin-top:7px}.journey-caption{font-size:6px}
}
@media(prefers-reduced-motion:reduce){.journey-canvas{display:none}.journey-drawing{opacity:1!important;visibility:visible!important}}

.journey-name{font:inherit;color:inherit}.journey-short{display:none}
@media(max-width:360px){.journey-enabled .journey-name{display:none}.journey-enabled .journey-short{display:block;font:inherit;color:inherit}.journey-enabled .journey-products h3{min-height:57px}.journey-enabled .journey-products h3 button{min-height:40px}.journey-enabled .journey-products{min-height:179px}.journey-actions{gap:9px}}
@media(min-width:1001px) and (max-height:820px){.journey-enabled .journey-products{width:min(100%,940px);margin-inline:auto}}
/* Reserve the controls' rows before they appear, keeping the camera height fixed. */
@media(max-width:780px){.journey-enabled .journey-footer{min-height:54px}}
@media(max-width:360px){.journey-enabled .journey-footer{min-height:94px}.journey-enabled .journey-stage{min-height:172px}}
