/* The still, readable layout is the default. JavaScript adds the scroll stage. */
.tour-intro{display:flex;justify-content:space-between;align-items:flex-end;gap:48px;padding-block:76px 48px}
.tour-intro h2{font-size:clamp(36px,4.2vw,64px);letter-spacing:-.035em;line-height:1.12;text-wrap:balance}
.tour-intro p{font-size:14px;line-height:1.8;max-width:480px;margin-top:20px}
.tour-controls{display:flex;flex-direction:column;align-items:flex-start;gap:6px;flex-shrink:0}
.tour-controls a,.tour-motion-control{display:inline-flex;align-items:center;gap:12px;min-height:44px;padding:8px 0;font-size:12px;text-underline-offset:5px}
.tour-controls a{text-decoration:underline}
.tour-controls svg,.chapter-product-link svg,.chapter-inquiry svg{width:20px;height:20px;flex-shrink:0}
.tour-motion-control{background:transparent;border:0;color:var(--muted);cursor:pointer}
.tour-motion-control:hover{color:var(--ink)}
.product-tour [hidden]{display:none!important}
.product-chapter{background:#303033;color:#f5f8f1;position:relative;scroll-margin-top:88px}
.product-chapter+.product-chapter{border-top:1px solid #727978}
.chapter-stage{position:relative;isolation:isolate;padding-block:28px 30px}
.chapter-top{display:flex;align-items:center;justify-content:space-between;gap:25px;position:relative;z-index:4}
.chapter-top h3{display:flex;gap:18px;align-items:center;font-size:18px;line-height:1.4;letter-spacing:-.015em}
.chapter-top h3 span{color:#b4e1a9;font-size:12px;letter-spacing:.04em;font-weight:600;white-space:nowrap}
.chapter-product-link{display:inline-flex;gap:10px;align-items:center;font-size:12px;min-height:44px;flex-shrink:0;text-decoration:underline;text-underline-offset:5px}
.chapter-visual{position:relative;height:clamp(300px,45vw,650px);overflow:hidden}
.chapter-photo-frame{position:absolute;inset:0;overflow:hidden}
.chapter-photo{width:100%;height:100%;object-fit:contain;max-width:none;mask-image:linear-gradient(to right,transparent,#000 8%,#000 92%,transparent)}
.chapter-space,.chapter-plane,.chapter-lens,.chapter-fit,.chapter-fit-label{display:none}
.chapter-copy{position:relative;z-index:3;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px;padding-block:22px 35px}
.chapter-beat h4{font-size:clamp(23px,2.5vw,34px);font-weight:500;letter-spacing:-.03em;line-height:1.2;text-wrap:balance;margin:0}
.chapter-beat p{font-size:14px;line-height:1.85;max-width:39ch;margin-top:22px;color:#d1ddd2}
.chapter-inquiry{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-size:12px;font-weight:600;text-decoration:underline;text-underline-offset:5px;margin-top:20px}
.chapter-bottom{position:relative;z-index:4}
.chapter-note{font-size:11px;line-height:1.7;color:#d1ddd2;max-width:620px}
.chapter-step-controls{display:flex;gap:22px}
.chapter-step-controls button{display:flex;flex-direction:column;gap:12px;align-items:flex-start;color:#d1ddd2;border:0;background:none;font-size:11px;line-height:1.5;padding:10px 0;min-height:48px;cursor:pointer;width:150px;text-align:left}
.chapter-step-controls button[aria-pressed=true]{color:#f5f8f1}
.step-track{display:block;height:2px;width:100%;background:#728477;overflow:hidden}
.step-track>span{display:block;height:100%;background:#8ee07b;width:100%;transform:scaleX(0);transform-origin:left}
.product-tour a:focus-visible,.product-tour button:focus-visible{outline:2px solid #8ee07b;outline-offset:5px}
.tour-intro a:focus-visible,.tour-intro button:focus-visible{outline-color:var(--ink)}
.tour-motion-control:disabled{cursor:default;opacity:.75}
.product-tour ::selection{background:#8ee07b;color:#19251b}
.product-tour--detail .tour-intro{padding-top:60px}
.product-overview{padding-bottom:0}
.product-information{padding-block:0 80px}

/* The image travels between compositions; copy stays in fixed reading areas. */
.product-tour--home{--chapter-scroll-distance:70svh}
.product-tour.is-scroll .product-chapter{height:calc(var(--chapter-height,720px) + var(--chapter-scroll-distance,165svh));background:#1b2b21;--object-width:min(65vw,calc((var(--chapter-height,720px) - 170px) * 1.25),1050px);--fit-width:.64;--fit-height:.92}
[data-kind=bag]{--silhouette:polygon(20.5% 6%,79.8% 6%,80.2% 94.5%,20.7% 94.8%)}
[data-kind=carton]{--silhouette:polygon(2.7% 34%,64% 3.4%,79.7% 15.1%,79.7% 15.8%,81.8% 16.2%,95.4% 28.2%,95.8% 30%,91.8% 52.4%,32.3% 97.5%,31% 96.9%,6.3% 58%,6.1% 56%)}
[data-kind=eps]{--silhouette:polygon(18.6% 22.6%,24.1% 20%,27% 22%,32.4% 20%,32.5% 19.1%,44.5% 15.5%,44.5% 13%,48.9% 11.4%,53.4% 13.5%,53.5% 16.4%,66.7% 24.4%,66.7% 25.4%,71.2% 27.8%,72.8% 27.5%,75.3% 26%,80.3% 28.9%,78% 73.8%,74% 76.8%,73.5% 73%,55.1% 81.2%,54% 88.9%,49.3% 92.3%,46.2% 91.4%,43.7% 85.3%,43.5% 84%,29% 72.4%,27% 70.7%,26.4% 68.5%,24.5% 71%,21.7% 68.5%)}
.product-tour.is-scroll [data-kind=carton]{--fit-width:.94;--fit-height:.94}
.product-tour.is-scroll [data-kind=eps]{--fit-width:.68;--fit-height:.82}
.product-tour.is-scroll .chapter-stage{position:sticky;top:var(--tour-top,88px);height:var(--chapter-height,calc(100svh - 88px));min-height:0;overflow:hidden;padding:20px 0 24px}
.product-tour.is-scroll .chapter-space{display:block;position:absolute;inset:0;overflow:hidden;pointer-events:none}
.space-light{position:absolute;left:40%;top:-30%;width:75%;height:150%;background:linear-gradient(145deg,#b4e1a912,transparent 52%);transform:translate3d(var(--space-x,0px),var(--space-shift,0px),0) rotate(-14deg);transform-origin:top right}
.space-floor{position:absolute;left:62%;top:77%;width:40%;height:5%;background:#07150ccc;filter:blur(18px);transform:translate(-50%,0) translate3d(var(--shadow-x,0px),var(--shadow-y,0px),0) scale(var(--floor-scale,1));border-radius:50%}
.product-tour.is-scroll .chapter-top{height:48px}
.product-tour.is-scroll .chapter-visual{position:absolute;inset:66px 0 96px;height:auto;z-index:1;perspective:1700px;perspective-origin:50% 48%;transform-style:preserve-3d;overflow:visible}
.product-tour.is-scroll .chapter-photo-frame{inset:auto;left:62%;top:49%;width:var(--object-width);aspect-ratio:1500/1120;overflow:visible;transform:translate(-50%,-50%) translate3d(var(--photo-x,0px),var(--photo-y,0px),var(--photo-z,0px)) rotateX(var(--photo-rx,4deg)) rotateY(var(--photo-ry,-9deg)) rotateZ(var(--photo-rz,-2deg)) scale(var(--photo-scale,.9));transform-origin:center;opacity:var(--photo-opacity,1);filter:drop-shadow(0 26px 24px #07150c99)}
.product-tour.is-scroll .chapter-photo{width:100%;height:100%;object-fit:fill;mask-image:none;clip-path:var(--silhouette)}
.product-tour.is-scroll .chapter-copy{position:absolute;inset:0;display:block;padding:0;pointer-events:none}
.product-tour.is-scroll .chapter-beat{position:absolute;left:0;top:48%;width:40%;max-width:460px;transform:translateY(-50%);opacity:0;visibility:hidden;pointer-events:none}
.product-tour.is-scroll .chapter-beat[data-beat="1"]{left:56%}
.product-tour.is-scroll .chapter-beat[data-visible]{visibility:visible;opacity:1;animation:chapter-copy-in .18s ease-out both}
@keyframes chapter-copy-in{from{opacity:.72}to{opacity:1}}
.product-tour.is-scroll .chapter-beat.is-active{pointer-events:auto}
.product-tour.is-scroll .chapter-beat h4{font-size:clamp(38px,3.4vw,56px);line-height:1.12;letter-spacing:-.035em}
.product-tour.is-scroll .chapter-beat p{font-size:14px;max-width:36ch;margin-top:25px}
.product-tour.is-scroll .chapter-bottom{position:absolute;bottom:26px;left:0;right:0;display:flex;justify-content:space-between;align-items:flex-end;gap:35px}
.product-tour.is-scroll .chapter-note{max-width:310px;text-align:right}
.product-tour.is-scroll .chapter-lens{display:block;position:absolute;left:67%;top:46%;width:min(30vw,calc((var(--chapter-height,720px) - 210px) * .76),470px);aspect-ratio:1;opacity:var(--detail-opacity,0);transform:translate(-50%,-50%) translate3d(var(--lens-x,0px),var(--lens-y,0px),var(--lens-z,-120px)) rotateY(var(--lens-ry,18deg)) scale(var(--lens-scale,.58));transform-origin:center}
.lens-window{position:absolute;inset:0;border-radius:50%;overflow:hidden;background:#253329;box-shadow:0 32px 50px #07150ca6}
.lens-window:after{content:'';position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px #b4e1a980;pointer-events:none}
.chapter-lens svg{width:100%;height:100%;display:block}
.chapter-lens>span{position:absolute;top:calc(100% + 17px);left:-15%;right:-15%;text-align:center;color:#f5f8f1;font-size:12px;line-height:1.5;font-weight:500}
/* Source-photo coordinates keep the actual edge and moulding in the lens. */
.material-closeup{position:absolute;left:50%;top:50%;width:480%;height:auto;max-width:none;transform:translate(-81.7%,-37.2%)}
[data-kind=eps] .material-closeup{width:320%;transform:translate(-51.5%,-39.7%)}
.film-sheet{transform:translateY(calc(var(--detail-progress,0) * -5px));transform-origin:center}
.film-flow{stroke-dasharray:80;stroke-dashoffset:calc(80 - var(--detail-progress,0) * 80)}
.product-tour.is-scroll .chapter-plane--back{display:block;position:absolute;left:62%;top:49%;width:calc(var(--object-width) * var(--fit-width));height:calc(var(--object-width) * .7467 * var(--fit-height));border:1px solid #b4e1a940;opacity:var(--fit-opacity,0);transform:translate(-50%,-50%) translate3d(calc(var(--photo-x,0px) - 40px),calc(var(--photo-y,0px) + 24px),-240px) rotateY(14deg)}
.product-tour.is-scroll .chapter-fit{display:block;position:absolute;left:62%;top:49%;width:calc(var(--object-width) * var(--fit-width));height:calc(var(--object-width) * .7467 * var(--fit-height));color:#b4e1a9;opacity:var(--fit-opacity,0);transform:translate(-50%,-50%) translate3d(calc(var(--photo-x,0px) + 25px),calc(var(--photo-y,0px) - 9px),150px) rotateY(-6deg);overflow:visible}
.product-tour.is-scroll .chapter-fit path{stroke-dasharray:160;stroke-dashoffset:calc(160 - var(--fit-opacity,0) * 160)}
.product-tour.is-scroll .chapter-fit-label{display:block;position:absolute;bottom:0;left:40%;right:10%;text-align:center;font-size:11px;color:#d1ddd2;opacity:var(--fit-opacity,0)}
.product-tour.is-scroll .is-on-screen :is(.chapter-photo-frame,.chapter-lens){will-change:transform,opacity}
.product-tour.is-scroll .is-on-screen .chapter-beat{will-change:opacity}
#product-specifications{scroll-margin-top:110px}

@media(max-width:1100px){
 .chapter-top h3{font-size:16px;gap:12px}
 .product-tour.is-scroll .chapter-beat{width:38%}
 .product-tour.is-scroll .chapter-beat h4{font-size:40px}
 .product-tour.is-scroll .chapter-beat p{font-size:13px}
 .chapter-step-controls{gap:16px}.chapter-step-controls button{width:130px}
 .product-tour.is-scroll .chapter-note{max-width:240px;font-size:10px}
 .product-tour.is-scroll .chapter-lens{width:min(29vw,360px)}
}
@media(max-width:760px){
 .tour-intro{display:block;padding-block:55px 32px}.tour-intro h2{font-size:42px}.tour-intro p{font-size:13px;margin-top:17px}
 .tour-controls{flex-direction:row;flex-wrap:wrap;gap:10px 24px;margin-top:19px}.tour-controls a,.tour-motion-control{font-size:11px}
 .chapter-top{align-items:flex-start;gap:15px}.chapter-top h3{display:block;font-size:14px;line-height:1.5;max-width:200px}.chapter-top h3 span{display:block;font-size:10px;margin-bottom:3px}
 .chapter-product-link{font-size:11px;gap:5px;min-height:42px}.chapter-product-link svg{width:16px}
 .chapter-copy{grid-template-columns:1fr;gap:28px;padding-top:5px;padding-bottom:26px}.chapter-beat h4{font-size:29px}.chapter-beat p{font-size:13px;max-width:55ch;margin-top:14px}
 .chapter-visual{height:320px}.chapter-note{font-size:11px;max-width:420px}
 .product-tour--home{--chapter-scroll-distance:60svh}
 .product-tour.is-scroll .product-chapter{height:calc(var(--chapter-height,650px) + var(--chapter-scroll-distance,150svh));--object-width:min(108vw,calc((var(--chapter-height,650px) - 410px) * 1.24))}
 .product-tour.is-scroll [data-kind=carton]{--object-width:min(96vw,calc((var(--chapter-height,650px) - 410px) * 1.24));--fit-width:.85;--fit-height:.9}
 .product-tour.is-scroll .chapter-stage{padding-top:16px}
 .product-tour.is-scroll .chapter-top{height:48px}
 .product-tour.is-scroll .chapter-copy{inset:0}
 .product-tour.is-scroll .chapter-beat{left:0;top:81px;width:100%;max-width:none;transform:none}
 .product-tour.is-scroll .chapter-beat[data-beat="1"]{left:0;top:81px}
 .product-tour.is-scroll .chapter-beat h4{font-size:clamp(28px,7.7vw,38px);max-width:590px;line-height:1.13}
 .product-tour.is-scroll .chapter-beat p{font-size:13px;line-height:1.65;margin-top:14px;max-width:56ch}
 .chapter-inquiry{font-size:11px;margin-top:5px;min-height:34px}
 .product-tour.is-scroll .chapter-visual{inset:304px 0 111px;perspective:1100px;perspective-origin:50% 50%}
 .product-tour.is-scroll .chapter-photo-frame{left:50%;top:48%}
 .space-light{left:5%;width:110%}.space-floor{left:50%;top:77%;width:70%;filter:blur(12px)}
 .product-tour.is-scroll .chapter-bottom{bottom:17px;display:block}
 .chapter-step-controls{gap:16px;width:100%}.chapter-step-controls button{width:auto;flex:1;font-size:11px;line-height:1.4;gap:8px;padding:8px 0;min-height:44px}
 .product-tour.is-scroll .chapter-note{text-align:left;max-width:100%;font-size:11px;line-height:1.5;margin-top:8px}
 .product-tour.is-scroll .chapter-lens{left:50%;top:45%;width:min(58vw,calc((var(--chapter-height,650px) - 410px) * .9));right:auto;bottom:auto}
 .lens-window{box-shadow:0 22px 32px #07150ca6}.chapter-lens>span{font-size:10px;top:calc(100% + 12px)}
 .product-tour.is-scroll :is(.chapter-plane--back,.chapter-fit){left:50%;top:48%}
 .product-tour.is-scroll .chapter-fit{transform:translate(-50%,-50%) translate3d(calc(var(--photo-x,0px) + 12px),calc(var(--photo-y,0px) - 5px),65px) rotateY(-6deg)}
 .product-tour.is-scroll .chapter-plane--back{transform:translate(-50%,-50%) translate3d(calc(var(--photo-x,0px) - 18px),calc(var(--photo-y,0px) + 12px),-100px) rotateY(14deg)}
 .product-tour.is-scroll .chapter-fit-label{font-size:11px;bottom:24px;left:5%;right:5%;transform:translateX(var(--photo-x,0px))}
 .product-information{padding-bottom:55px}
}
@media(max-width:380px){.product-tour.is-scroll .chapter-beat h4{font-size:28px}.chapter-step-controls{gap:10px}}
@media(prefers-reduced-motion:reduce){.product-tour *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
