/* Scroll-directed photographic theatre. Native CSS 3D, no external runtime. */
.refined header{position:absolute;top:0;left:0;right:0;background:linear-gradient(#111c,transparent);z-index:30}
.immersive{height:340svh;background:#141311;position:relative;color:#fff;--progress:0}
.immersive-pin{height:100svh;min-height:620px;position:sticky;top:0;overflow:hidden;isolation:isolate;perspective:1400px;background:#141311}
.immersive-world{position:absolute;inset:-5%;transform-style:preserve-3d;will-change:transform}
.immersive-frame{position:absolute;inset:0;will-change:transform,opacity;backface-visibility:hidden}
.immersive-frame img{width:100%;height:100%;object-fit:cover;display:block}
.immersive-frame:nth-child(2) img{object-position:50% 55%}
.immersive-frame:nth-child(3) img{object-position:55% 50%}
.immersive-shade{position:absolute;inset:0;background:linear-gradient(90deg,#100f0de8,transparent 85%),linear-gradient(0deg,#100f0d95,transparent 35%);pointer-events:none;z-index:3}
.immersive-copy{position:absolute;left:6%;top:35%;width:52%;max-width:730px;z-index:5;will-change:transform,opacity}
.immersive-copy h1,.immersive-copy h2{font-size:clamp(48px,6.5vw,104px);line-height:.99;letter-spacing:-.055em;color:#f3efe8;margin:0 0 28px;white-space:pre-line}
.immersive-copy h2 em{color:#c5aa89}
.immersive-copy .eyebrow{color:#d2b38d;letter-spacing:.25em;font-size:10px}
.immersive-copy .intro,.immersive-copy>p:not(.eyebrow){font-size:16px;line-height:1.8;color:#d1cbc3;max-width:330px}
.immersive-copy .studio-actions{margin-top:28px}
.immersive-rail{position:absolute;bottom:30px;left:6%;right:6%;z-index:6;display:flex;align-items:center;gap:25px;color:#d5c8b7;font-size:10px;letter-spacing:.13em}
.immersive-track{flex:1;height:1px;background:#ffffff30;overflow:hidden}
.immersive-track i{display:block;width:100%;height:100%;background:#d7b689;transform:scaleX(var(--progress));transform-origin:left}
.immersive-scroll{display:flex;gap:18px;align-items:center;letter-spacing:.08em}
.immersive-scroll b{font-size:23px;font-weight:300;animation:scroll-cue 2s ease-in-out infinite}
.immersive-light{position:absolute;inset:-50%;z-index:4;background:linear-gradient(110deg,transparent 45%,#fbe2b211 50%,transparent 55%);pointer-events:none;mix-blend-mode:screen;transform:translateX(calc((var(--progress) - .5)*70%))}
.spatial-reveal{transition:opacity .8s,transform 1s cubic-bezier(.16,1,.3,1);opacity:.2;transform:perspective(1200px) translateY(70px) rotateX(6deg);transform-origin:center bottom}
.spatial-reveal.in-view{opacity:1;transform:perspective(1200px) translateY(0) rotateX(0)}
.refined .knife-stage{perspective:1000px}
.refined .knife-stage button{transition:transform .55s ease;transform:rotateY(var(--tilt-x,0deg)) rotateX(var(--tilt-y,0deg));will-change:transform}
.refined .griff-banner,.refined .signature-visual,.refined .accessory-visual{overflow:hidden}
.refined .grip-photo,.refined .signature-visual img,.refined .accessory-visual img{transition:transform 1s;will-change:transform}
@keyframes scroll-cue{50%{transform:translateY(7px)}}
.refined .griff-banner>a{display:block;overflow:hidden;perspective:1200px}
.refined .griff-banner .grip-photo{transform:translate3d(0,var(--grip-y,0px),0) rotateZ(var(--grip-rotate,0deg)) scale(var(--grip-scale,1.09));will-change:transform;transition:none}
@media(prefers-reduced-motion:reduce){.refined .griff-banner .grip-photo{transform:none}}
.refined .product-motion{perspective:1400px}
.refined .product-motion .knife-stage{transform:translate3d(var(--product-x,0px),var(--product-y,0px),0) rotateY(var(--product-turn,0deg)) rotateZ(var(--product-roll,0deg)) scale(var(--product-scale,1));transform-origin:center;will-change:transform;transition:opacity 1s;opacity:0}
.refined .product-motion.in-view .knife-stage{opacity:1}
.refined .product-motion .knife-copy>*{opacity:0;transform:translateY(30px);transition:opacity .75s ease,transform .9s cubic-bezier(.16,1,.3,1)}
.refined .product-motion.in-view .knife-copy>*{opacity:1;transform:translateY(0)}
.refined .product-motion .knife-copy>h3{transition-delay:.08s}
.refined .product-motion .knife-copy>.description{transition-delay:.18s}
.refined .product-motion .knife-copy>.knife-actions{transition-delay:.28s}
.refined .product-motion .knife-stage button:hover{transform:rotateY(var(--tilt-x,0deg)) rotateX(var(--tilt-y,0deg)) scale(1.035)}
.refined .product-motion .detail-button{transition:color .2s,letter-spacing .3s}
.refined .product-motion .detail-button:hover{color:#62482b;letter-spacing:.035em}
@media(max-width:800px){.refined .product-motion .knife-stage{transform:translate3d(calc(var(--product-x,0px)*.4),calc(var(--product-y,0px)*.65),0) rotateZ(var(--product-roll,0deg)) scale(var(--product-scale,1))}}
@media(prefers-reduced-motion:reduce){.refined .product-motion .knife-stage,.refined .product-motion .knife-copy>*{opacity:1;transform:none;transition:none}.refined .product-motion .knife-stage button:hover{transform:none}}
@media(max-width:800px){.immersive{height:300svh}.immersive-pin{min-height:620px}.immersive-frame img{object-position:60% 50%}.immersive-shade{background:linear-gradient(0deg,#100f0df5 0%,#100f0d90 30%,transparent 75%)}.immersive-copy{left:7%;top:auto;bottom:110px;width:86%;max-width:none}.immersive-copy h1,.immersive-copy h2{font-size:clamp(42px,9.5vw,70px);max-width:540px;margin-bottom:18px}.immersive-copy .intro,.immersive-copy>p:not(.eyebrow){font-size:14px;max-width:310px}.immersive-copy .eyebrow{font-size:9px;margin-bottom:20px}.immersive-copy .studio-actions{margin-top:20px;gap:20px}.immersive-rail{bottom:25px;left:7%;right:7%;gap:12px;font-size:8px}.immersive-scroll{gap:10px}.immersive-frame:nth-child(2) img{object-position:50% 35%}.immersive-frame:nth-child(3) img{object-position:52% 45%}}
@media(prefers-reduced-motion:reduce){.immersive{height:auto}.immersive-pin{height:95svh;position:relative}.immersive-frame:not(:first-child),.immersive-copy:not(.immersive-opening){display:none}.immersive-scroll{display:none}.spatial-reveal{opacity:1;transform:none;transition:none}.immersive-scroll b{animation:none}}
