/* Editorial scene: independent photographic planes, driven by native scroll. */
.coffee-story{background:var(--forest);color:var(--paper);position:relative}
.story-pin{position:relative;isolation:isolate;overflow:hidden;min-height:690px;display:grid;grid-template-columns:46% 54%;align-items:center;padding:60px max(5.5vw,calc((100vw - 1280px)/2)) 85px}
.story-light{position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 83% 31%,#52644655,transparent 65%);pointer-events:none}
.story-content{position:relative;z-index:5;max-width:590px}
.story-content .eyebrow{color:var(--gold);font-size:10px;letter-spacing:2px;margin-bottom:25px}
.story-content h1,.story-content h2{font-family:var(--serif);font-size:clamp(66px,6.4vw,96px);font-weight:500;line-height:1.01;letter-spacing:-2.7px;margin:0 0 27px;white-space:normal}
.story-content h1 em,.story-content h2 em{color:var(--gold);font-family:var(--serif);font-style:italic;letter-spacing:-2px}
.story-description{font-size:15px;color:#e0d5bd;line-height:1.85;margin:0}
.story-actions{display:flex;align-items:center;gap:24px;margin-top:30px}
.story-actions .text-link{font-size:11px;white-space:nowrap}
.story-actions .button{gap:35px;min-height:52px}
.story-pair{margin-top:30px}.story-pair h2{font-size:32px}.story-pair .eyebrow{display:none}
.pair-prices{max-width:335px;margin:0}
.pair-prices>div{display:flex;justify-content:space-between;gap:25px;padding:9px 0;border-bottom:1px solid #e7bc7040;font-size:14px}
.pair-prices dd{margin:0;color:var(--gold);font-weight:600;white-space:nowrap}
.story-availability{font-size:11px;color:#d3c7af;margin:12px 0 0}
.story-stage{position:relative;width:100%;height:620px;pointer-events:none;perspective:1100px}
.story-layers{position:absolute;inset:0;transform-style:preserve-3d;transform:rotateX(3deg) rotateY(-5deg)}
.scene-coffee,.scene-roll,.scene-paper,.scene-botanical,.scene-orbit{position:absolute;will-change:auto}
.scene-coffee,.scene-roll{height:auto;object-fit:contain;filter:drop-shadow(3px 30px 19px #050e0a75);max-width:none}
.scene-coffee{width:88%;top:-1%;left:14%;transform:translate3d(0,0,35px) rotate(-7deg)}
.scene-roll{width:67%;left:-9%;top:40%;transform:translate3d(0,3%,100px) rotate(8deg) scale(.76)}
.scene-paper{width:200px;height:245px;left:63%;top:7%;background:#29473b;border:1px solid #bd9d605c;display:grid;place-items:center;transform:translateZ(-230px) rotate(14deg);box-shadow:20px 24px 45px #07150f50}
.scene-paper img{width:135px;height:148px;object-fit:contain}
.scene-botanical{width:130%;max-width:none;left:3%;top:34%;opacity:.55;transform:translateZ(-150px) rotate(-23deg)}
.scene-orbit{width:95%;aspect-ratio:1;border:1px solid #e7bc7030;border-radius:50%;left:7%;top:0;transform:translateZ(-180px) rotateX(22deg)}
.story-footer{position:absolute;bottom:30px;left:max(5.5vw,calc((100vw - 1280px)/2));right:max(5.5vw,calc((100vw - 1280px)/2));display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#d2c5ad;z-index:6}
.story-footer>a{display:flex;align-items:center;gap:20px;min-height:44px}.story-footer>a>span{font-size:21px;color:var(--gold)}
.story-progress{display:none;align-items:center;gap:13px;letter-spacing:.5px}.progress-line{display:block;width:90px;height:1px;background:#e7bc7040;overflow:hidden}.progress-line i{display:block;width:100%;height:100%;background:var(--gold);transform:scaleX(0);transform-origin:left}.progress-coffee{color:var(--gold)}
.coffee-story.has-motion{height:220svh;min-height:1320px}
.has-motion .story-pin{height:100svh;max-height:920px;min-height:620px;position:sticky;top:0;padding-top:45px;padding-bottom:90px}
.has-motion .story-chapters{display:grid;align-items:center;min-height:340px}
.has-motion .story-chapter{grid-area:1/1;margin:0;will-change:transform,opacity}
.has-motion .story-pair{opacity:0;transform:translateY(24px)}
.has-motion .story-pair h2{font-size:clamp(62px,5.9vw,88px)}
.has-motion .story-pair .eyebrow{display:block}
.has-motion .story-stage{height:min(650px,75svh)}
.has-motion .story-progress{display:flex}
.has-motion.is-visible .scene-coffee,.has-motion.is-visible .scene-roll,.has-motion.is-visible .scene-paper{will-change:transform}
.has-motion.is-visible .story-layers{will-change:transform}
.photo-caption{display:flex;align-items:center;justify-content:center;gap:20px}.photo-caption span{font:600 14px var(--sans);white-space:nowrap}
.moment-copy .text-link{border-bottom:1px solid var(--espresso);padding-bottom:10px}
.visit{border-bottom:1px solid #e7bc702b}
@media(min-width:1500px){.story-stage{height:690px}.scene-coffee{left:9%}.scene-roll{left:-14%}}
@media(max-width:1100px){.story-pin{grid-template-columns:48% 52%;padding-left:5%;padding-right:5%}.story-content h1,.story-content h2{font-size:70px}.has-motion .story-pair h2{font-size:65px}.story-stage,.has-motion .story-stage{height:540px}.story-actions{gap:17px;flex-wrap:wrap}.story-actions .button{gap:23px}.scene-coffee{width:104%;left:-1%;top:9%}.scene-roll{width:85%;left:-17%;top:41%}.scene-paper{width:145px;height:180px;left:56%;top:9%}.scene-paper img{width:110px;height:121px}.scene-botanical{top:40%}.story-chapters{min-height:335px}}
@media(max-width:850px) and (min-width:651px){.story-content h1{font-size:65px}.has-motion .story-pair h2{font-size:56px}.story-content .eyebrow{font-size:8px}.story-description{font-size:13px}.story-actions{gap:8px}.story-actions .text-link{font-size:10px}.scene-coffee{width:104%;left:-3%;top:18%}.scene-roll{width:94%;top:45%}.scene-paper{left:53%;top:11%}.story-stage,.has-motion .story-stage{height:580px}.pair-prices>div{font-size:12px}.story-availability{font-size:10px}}
@media(max-width:650px){
 .story-pin{display:flex;flex-direction:column;align-items:stretch;padding:36px 6% 60px;min-height:0}
 .story-content{max-width:none;flex-shrink:0}.story-content .eyebrow{font-size:8px;letter-spacing:1.4px;margin-bottom:17px}
 .story-content h1,.story-content h2{font-size:clamp(52px,14.6vw,78px);line-height:.96;letter-spacing:-1.8px;margin-bottom:18px}
 .story-content h1 em,.story-content h2 em{letter-spacing:-1.5px}
 .story-description{font-size:12px;line-height:1.75}
 .story-actions{margin-top:20px;gap:17px;flex-wrap:nowrap}.story-actions .button{min-height:46px;padding:10px 16px;gap:16px;font-size:11px}.story-actions .text-link{font-size:9px;gap:6px}.story-actions .text-link svg{width:14px}
 .story-stage,.has-motion .story-stage{height:340px;width:100%;margin-top:6px;flex-shrink:0;perspective:800px}
 .scene-coffee{width:77%;left:24%;top:-6%}.scene-roll{width:65%;left:-4%;top:34%}.scene-paper{width:105px;height:130px;left:12%;top:5%;transform:translateZ(-230px) rotate(-13deg)}.scene-paper img{width:85px;height:94px}.scene-botanical{width:160%;top:35%;left:-30%}.scene-orbit{width:90%;left:5%;top:0}
 .story-footer{left:6%;right:6%;bottom:13px;font-size:8px}.story-footer>a{gap:9px}.story-footer>a>span{font-size:17px}.story-progress{gap:9px}.progress-line{width:55px}
 .coffee-story.has-motion{height:185svh;min-height:1180px}.has-motion .story-pin{height:100svh;min-height:650px;max-height:850px;padding:32px 6% 55px;justify-content:center}
 .has-motion .story-chapters{min-height:205px}.has-motion .story-pair h2{font-size:clamp(44px,12.2vw,65px);margin-bottom:12px}.has-motion .story-pair .eyebrow{margin-bottom:12px}.pair-prices{max-width:290px}.pair-prices>div{padding:6px 0;font-size:12px}.story-availability{font-size:9px;margin-top:8px}
 .story-pair{margin-top:25px}.story-pair h2{font-size:29px}.story-pair .eyebrow{display:none}
 .photo-caption{font-size:22px;padding:16px 10px;gap:13px}.photo-caption span{font-size:12px}
 .moment-copy h2{font-size:44px}.moment-main{object-position:center}
}
@media(max-width:360px){.story-content h1{font-size:49px}.story-actions{gap:10px}.story-actions .button{padding:10px 12px;gap:9px;font-size:10px}.story-actions .text-link{font-size:8px}.story-stage,.has-motion .story-stage{height:290px}.has-motion .story-chapters{min-height:218px}.story-description{font-size:11px}.photo-caption{font-size:19px}.has-motion .story-pair h2{font-size:44px}.pair-prices>div{font-size:11px}}
@media(max-height:700px) and (min-width:651px){.has-motion .story-pin{min-height:530px;padding-top:35px;padding-bottom:65px}.story-content h1{font-size:64px}.has-motion .story-pair h2{font-size:60px}.has-motion .story-chapters{min-height:280px}.has-motion .story-stage{height:430px}.story-content .eyebrow{margin-bottom:17px}.story-actions{margin-top:15px}.story-footer{bottom:10px}}
@media(max-height:670px) and (max-width:650px){.has-motion .story-pin{min-height:540px;padding-top:22px;justify-content:flex-start}.has-motion .story-chapters{min-height:200px}.story-content h1{font-size:49px}.has-motion .story-stage{height:245px}.story-actions{margin-top:10px}.scene-coffee{width:65%;left:32%;top:-5%}.scene-roll{width:53%;left:4%;top:23%}.scene-paper{width:85px;height:105px;top:7%;left:13%}.scene-paper img{width:70px;height:77px}.story-content .eyebrow{margin-bottom:13px}.has-motion .story-pair h2{font-size:44px}.story-footer{bottom:5px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}.story-chapters .story-pair h2{font-size:29px;margin:0 0 12px}.story-pair .eyebrow{display:none}.story-footer{display:none}.story-pin{padding-bottom:40px}}

@media(max-width:650px){.story-footer>a{display:none}}

.scene-fallback{padding:10%;clip-path:circle(40%)}
