@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,500;0,600;1,500;1,600&family=Noto+Serif+JP:wght@400;600;700&display=swap');
:root{--bg:#11b9b7;--ink:#123f34;--cream:#fff4d7;--yellow:#f4db35}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:74px}body{margin:0;background:var(--bg);color:var(--ink);font-family:'Noto Serif JP',serif;transition:color .4s;overflow-x:clip}a{color:inherit}button,summary{touch-action:manipulation}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid currentColor;outline-offset:6px}button{border:0}svg{overflow:visible}.defs{position:absolute;width:0;height:0}.skip{position:fixed;top:-100px;z-index:100;background:var(--cream);padding:15px}.skip:focus{top:10px}header{position:fixed;inset:0 0 auto;z-index:30;display:flex;justify-content:space-between;align-items:center;padding:22px 4vw;mix-blend-mode:normal;background:linear-gradient(var(--bg),transparent)}.brand{text-decoration:none;font-size:30px;font-weight:600;letter-spacing:.1em;line-height:1.1}.brand span{display:block;font:8px Arial,sans-serif;letter-spacing:.17em;margin-top:8px}.top-right{display:flex;align-items:center;gap:30px}.prototype{font:10px Arial,sans-serif;letter-spacing:.1em}#menuButton{background:none;font-size:12px;padding:10px 0 10px 14px}#menuButton span{margin-left:18px;font-size:22px}.progress{position:fixed;top:0;left:0;width:100%;height:3px;z-index:50;background:#ffffff15}.progress i{display:block;width:100%;height:100%;background:currentColor;transform:scaleX(0);transform-origin:left}#chapterMenu{position:fixed;inset:0;z-index:40;background:#f7efd8;color:#164c3c;padding:7vh 7vw;overflow:auto}#chapterMenu[hidden]{display:none}#chapterMenu>p{font-size:clamp(22px,3vw,38px)}#chapterLinks{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:0 40px;counter-reset:chapter}#chapterLinks a{display:block;padding:20px 0;border-bottom:1px solid #164c3c33;text-decoration:none}#chapterLinks span{font:12px Arial,sans-serif;margin-right:20px}.close-menu{position:absolute;right:5vw;top:25px;background:none}.scene{position:relative;min-height:160svh;--p:0}.stage{height:100svh;min-height:650px;position:sticky;top:0;isolation:isolate;overflow:clip}.eyebrow{position:absolute;top:116px;left:7vw;z-index:4;font:11px Arial,sans-serif;letter-spacing:.18em}.copy{position:absolute;left:9vw;top:31%;width:40%;max-width:560px;z-index:5}.copy h2,.center-copy h2{font-size:clamp(36px,4.5vw,76px);line-height:1.55;font-weight:600;letter-spacing:.02em;margin:12px 0 24px}.copy p,.center-copy p{font-size:14px;line-height:2.3;letter-spacing:.07em}.script{display:block;font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(35px,5vw,80px);line-height:.95;font-style:italic;font-weight:500;letter-spacing:-.035em;transform:rotate(-7deg);transform-origin:left}.giant{font-family:'Cormorant Garamond',Georgia,serif;font-weight:500;letter-spacing:-.065em;line-height:.8;position:absolute;z-index:-1;white-space:nowrap}.center-copy{position:absolute;inset:28% 5% auto;text-align:center;z-index:5}.center-copy .script{transform:rotate(-6deg);transform-origin:center}.vertical{position:absolute;right:5vw;top:30%;writing-mode:vertical-rl;letter-spacing:.35em;font-size:14px}.photo{position:absolute;overflow:hidden}.photo img,.full-photo img{width:100%;height:100%;object-fit:cover;transform:scale(calc(1.04 + var(--p)*.08)) translateY(calc(var(--p)*-2%));will-change:transform}.full-photo{position:absolute;inset:0;z-index:-2}.full-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,var(--bg) 0%,transparent 35%,#063c2b45 65%,var(--bg) 100%)}.full-photo img{opacity:.62}.photo-caption{position:absolute;bottom:80px;left:7vw;font:9px Arial,sans-serif;letter-spacing:.12em;z-index:6}details{max-width:400px;font-size:12px;margin-top:25px;text-align:left}summary{cursor:pointer;list-style:none;border-bottom:1px solid currentColor;padding:12px 0;display:flex;justify-content:space-between;gap:20px;font-size:12px;letter-spacing:.08em}summary::-webkit-details-marker{display:none}summary:after{content:'＋';font:18px Arial,sans-serif}details[open] summary:after{content:'−'}details p{font-size:12px!important;line-height:2!important;letter-spacing:.03em!important}details[open]{padding:0 15px 8px;background:color-mix(in srgb,var(--bg) 90%,white);max-height:35svh;overflow:auto}.journey-position{position:fixed;bottom:24px;left:4vw;right:4vw;display:flex;justify-content:space-between;font:10px Arial,sans-serif;letter-spacing:.12em;z-index:20;pointer-events:none}.motion-toggle{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);font:10px Arial,sans-serif;background:color-mix(in srgb,var(--bg) 80%,transparent);border:1px solid currentColor;border-radius:30px;padding:8px 12px;z-index:20;opacity:.8}.hero{min-height:190svh}.hero .eyebrow{top:126px}.hero-type{position:absolute;left:8vw;top:23%;z-index:5}.hero h1{font-size:clamp(45px,5.9vw,100px);font-weight:600;line-height:1.4;letter-spacing:-.02em;margin:0}.hero-type .script{font-size:clamp(34px,4vw,60px);margin-top:35px;margin-left:11vw}.hero-orbit{position:absolute;width:48vw;height:48vw;max-height:85vh;right:0;top:18%;transform:translateY(calc(var(--p)*-45px)) rotate(calc(var(--p)*12deg));z-index:2}.sun{position:absolute;width:80%;height:80%;border-radius:50%;background:#f8df3c;top:5%;left:8%}.hero-orbit .cherry{position:absolute;width:56%;height:77%;top:12%;left:20%;transform:rotate(18deg);filter:drop-shadow(18px 24px 25px #11694a33)}.leaf{position:absolute;width:55%;height:30%;z-index:2}.l1{top:-2%;right:0;transform:rotate(-28deg)}.l2{bottom:9%;left:-10%;transform:rotate(154deg)}.orbit-text{position:absolute;right:-5%;bottom:20%;font:11px Arial,sans-serif;letter-spacing:.35em;transform:rotate(-68deg)}.hero-bottom{position:absolute;bottom:12%;left:9vw;display:flex;align-items:end;gap:7vw;font-size:13px;line-height:2.2;z-index:6}.scroll{text-decoration:none;font:9px Arial,sans-serif;letter-spacing:.2em;display:flex;align-items:center;gap:25px}.scroll span{font-size:35px;font-weight:100}.side-note{position:absolute;right:3vw;bottom:12%;writing-mode:vertical-rl;font:9px Arial,sans-serif;letter-spacing:.1em}.word{font-size:29vw;top:17%;left:-1%;opacity:.15;transform:translateX(calc(var(--p)*-7vw))}.organic{right:3%;top:16%;height:75%;width:52%;border-radius:46% 52% 32% 65%/40% 45% 55% 60%;transform:rotate(-9deg) translateY(calc(var(--p)*-40px))}.origin .copy{top:36%;left:10%;text-shadow:0 1px 20px var(--bg)}.origin .copy h2{font-size:clamp(36px,4vw,68px)}.nature{min-height:190svh}.nature h2{font-size:clamp(42px,6vw,90px)}.floating-leaf{position:absolute;width:30vw;height:20vw;bottom:3%;right:-5%;transform:rotate(calc(120deg + var(--p)*25deg));opacity:.9}.variety .copy{left:8%;top:27%}.big-cherry{position:absolute;right:9%;top:12%;width:40%;height:75%;transform:rotate(calc(-14deg + var(--p)*28deg));filter:drop-shadow(20px 30px 20px #7c731e25)}.bottom-word{bottom:-4%;left:1%;font-size:16vw;opacity:.16;line-height:.7}.bottom-word em{margin-left:21vw}.cherry-field{position:absolute;inset:0;z-index:-1;opacity:.95}.cherry-field svg{position:absolute;width:clamp(95px,14vw,230px);height:30%;left:calc(mod(var(--i),3)*40% - 7%);top:calc(round(down,var(--i)/3)*38% - 13%);transform:rotate(calc(var(--i)*27deg - 60deg)) translateY(calc(var(--p)*-70px));opacity:calc(.55 + mod(var(--i),2)*.35)}.harvest .center-copy{inset:29% 6% auto}.harvest details{margin:25px auto 0}.process .copy{left:54%;top:30%;width:38%}.process-art{position:absolute;left:3%;top:20%;width:49%;height:66%;transform:translateY(calc(var(--p)*-35px))}.drying-circle{position:absolute;inset:0;background:repeating-linear-gradient(85deg,#ae9b6a20 0 1px,transparent 1px 15px),#e4d8b5;border-radius:50% 40% 45% 40%;transform:rotate(-15deg)}.process-cherry{position:absolute;left:3%;top:1%;width:50%;height:60%;transform:rotate(-15deg)}.process-bean{position:absolute;right:8%;bottom:4%;width:39%;height:46%;transform:rotate(25deg);filter:sepia(.6) saturate(.4) brightness(1.5)}.dotted-line{position:absolute;border:2px dashed #164c3c55;width:40%;height:40%;border-radius:50%;left:36%;top:31%;transform:rotate(-40deg)}.voyage{min-height:200svh}.voyage .full-photo img{opacity:.7}.route{position:absolute;inset:15% -10%;width:120%;height:70%;z-index:-1}.route path{fill:none;stroke:#fff5db;stroke-width:1.5;stroke-dasharray:7 9;stroke-dashoffset:calc(var(--p)*-300);opacity:.6}.sea-word{bottom:7%;font-size:12vw;left:0;opacity:.2;transform:translateX(calc(var(--p)*-15vw))}.roast{min-height:180svh}.roast .copy{top:26%;left:10%}.roast-glow{position:absolute;inset:0;background:radial-gradient(ellipse at 80% 60%,#dc762b65,transparent 60%)}.roast-beans{position:absolute;right:-5%;width:65%;height:85%;top:10%}.roast-beans svg{position:absolute;width:30%;height:45%;left:calc(mod(var(--i),3)*24%);top:calc(mod(var(--i)*31,65)*1%);transform:rotate(calc(var(--i)*53deg + var(--p)*-60deg)) translateY(calc(var(--p)*-60px));filter:drop-shadow(15px 30px 15px #140d0a77)}.bean-photo{inset:0;mask-image:linear-gradient(transparent,#000 20%,#000 70%,transparent);opacity:.7}.beans .center-copy{top:33%;text-shadow:0 2px 40px #000}.bean-script{position:absolute;bottom:13%;right:7%;transform:rotate(-10deg);z-index:6}.grind .copy{left:53%;top:29%;width:40%}.grind-art{position:absolute;left:3%;top:15%;width:49%;height:75%}.grind-bean{position:absolute;left:25%;top:2%;width:45%;height:45%;transform:rotate(calc(25deg + var(--p)*60deg)) scale(calc(1 - var(--p)*.25));opacity:calc(1 - var(--p)*.8)}#grounds{position:absolute;inset:27% 3% 0}#grounds i{position:absolute;width:var(--size);height:var(--size);background:#664323;border-radius:40% 55% 35% 60%;left:var(--x);top:var(--y);transform:translateY(calc(var(--p)*var(--fall))) rotate(var(--rotation));opacity:calc(.3 + var(--p)*.7)}.brew{min-height:190svh}.pour-photo{right:0;top:7%;height:86%;width:52%;border-radius:45% 0 0 48%;mask-image:linear-gradient(0deg,transparent,#000 15%,#000 90%,transparent)}.brew .copy{left:8%;top:31%}.brew .vertical{right:3%;color:#fff5dc}.taste{min-height:185svh}.taste .center-copy{top:19%}.taste h2{font-size:clamp(46px,5.2vw,85px)}.taste .center-copy p{font-size:12px;margin-top:0}.flavor-orbit{position:absolute;left:22%;right:22%;top:57%;display:flex;align-items:center;justify-content:center;gap:2vw}.flavor{width:15vw;height:15vw;max-width:190px;max-height:190px;border:1px solid #164c3c70;background:transparent;border-radius:50%;font:italic 3.5vw 'Cormorant Garamond',Georgia,serif;transform:rotate(-8deg);transition:.4s}.flavor:nth-child(2){margin-top:5vh}.flavor span{display:block;font:10px 'Noto Serif JP',serif;margin-top:7px;letter-spacing:.1em}.flavor.active{background:#164c3c;color:#fff1cf;transform:rotate(0) translateY(-8px)}.flavor-note{position:absolute;bottom:10%;left:15%;right:15%;font-size:12px;text-align:center;line-height:1.8}.tiny-disclaimer{position:absolute;bottom:7%;left:0;right:0;text-align:center;font:8px Arial,sans-serif;letter-spacing:.1em}.cup{min-height:180svh}.cup .copy{left:8%;top:25%}.cup-circle{position:absolute;right:-9%;top:10%;height:80vh;width:80vh;border-radius:50%;background:#f6dc3c}.cup-illustration{position:absolute;right:0;top:21%;width:52%;height:65%;transform:rotate(calc(-8deg + var(--p)*8deg)) translateY(calc(var(--p)*-30px));filter:drop-shadow(10px 20px 15px #19634720)}.cup-word{bottom:6%;left:7%;font-size:12vw;opacity:.18;font-family:'Noto Serif JP',serif}.cafe{min-height:190svh}.cafe .full-photo img{opacity:.5}.afterglow{min-height:170svh}.afterglow .copy{left:54%;top:29%;width:40%}.cup-photo{left:6%;top:16%;width:42%;height:66%;border-radius:46% 48% 48% 40%;transform:rotate(-8deg)}.text-link{font-size:12px;display:inline-block;margin-top:22px;text-underline-offset:9px}.text-link span{margin-left:20px}.closing-script{position:absolute;right:7%;bottom:10%;font:italic 6vw 'Cormorant Garamond',Georgia,serif;transform:rotate(-6deg)}footer{position:relative;padding:130px 7vw 100px;background:#f6efda;color:#164c3c}footer .footer-top{display:flex;justify-content:space-between;align-items:center;gap:30px}.footer-brand{font-size:50px;text-decoration:none;letter-spacing:.12em}.footer-top p{font-size:13px}.footer-top>a:last-child{font-size:11px;text-underline-offset:8px}footer details{max-width:100%;margin:70px 0 40px}footer details[open]{background:transparent;max-height:none;padding:0}footer details p{max-width:800px}.footer-bottom{display:flex;justify-content:space-between;font:9px Arial,sans-serif;letter-spacing:.12em;opacity:.7}
@media(min-width:1600px){.stage{max-height:1200px}.scene{min-height:180vh}}
@media(max-width:700px){header{padding:19px 6vw}.brand{font-size:25px}.brand span{font-size:6px}.prototype{font-size:8px;letter-spacing:0;max-width:78px;line-height:1.5}.top-right{gap:12px}#menuButton{font-size:11px}#menuButton span{margin-left:7px}.eyebrow{left:7%;top:101px;font-size:9px;letter-spacing:.12em}.scene{min-height:170svh}.stage{min-height:610px}.hero{min-height:195svh}.hero .eyebrow{top:105px;font-size:8px}.hero-type{top:20%;left:8%}.hero h1{font-size:clamp(36px,9.6vw,65px);line-height:1.5}.hero-type .script{font-size:34px;margin-top:16px;margin-left:6vw;line-height:.9}.hero-orbit{width:80vw;height:80vw;top:auto;bottom:12%;right:-13%;max-height:none}.hero-orbit .cherry{width:56%;height:77%}.orbit-text{font-size:7px;right:-1%}.hero-bottom{bottom:8%;left:8%;display:block}.hero-bottom p{font-size:10px;line-height:2}.scroll{font-size:7px;gap:12px;margin-top:19px}.scroll span{font-size:22px}.side-note{font-size:6px;right:3%;bottom:16%;opacity:.7}.copy{left:8%!important;top:auto!important;bottom:14%;width:84%!important;max-width:none}.copy h2,.center-copy h2{font-size:clamp(29px,8.2vw,49px);line-height:1.55;margin:10px 0 15px}.copy p,.center-copy p{font-size:11px;line-height:2.15;letter-spacing:.045em}.script{font-size:39px}details{margin-top:15px;max-width:100%}summary{font-size:10px;padding:10px 0}details p{font-size:10px!important}.vertical{font-size:9px;right:5%;top:25%}.word{font-size:35vw;top:16%;opacity:.2}.organic{right:-3%;top:15%;height:47%;width:90%;border-radius:46% 52% 32% 65%/40% 45% 55% 60%}.origin .copy{bottom:11%;text-shadow:none}.origin .copy h2{font-size:32px}.origin .copy .script{font-size:33px}.nature .center-copy{top:32%}.nature h2{font-size:10vw}.center-copy{inset:32% 6% auto}.center-copy .script{font-size:40px}.floating-leaf{width:65vw;height:40vw;bottom:9%;right:-25%}.photo-caption{font-size:6px;bottom:66px;left:7%}.big-cherry{top:13%;right:7%;width:65%;height:49%}.variety .copy{bottom:13%}.variety .copy .script{font-size:44px}.bottom-word{bottom:44%;font-size:22vw;left:1%;line-height:.7}.bottom-word em{margin-left:10vw}.cherry-field svg{width:31vw;height:24%;top:calc(round(down,var(--i)/3)*44% - 11%);left:calc(mod(var(--i),3)*44% - 11%);opacity:.6}.harvest .center-copy{inset:34% 7% auto}.process-art{left:8%;top:17%;width:85%;height:42%}.process .copy{bottom:12%}.voyage .center-copy{top:32%}.sea-word{bottom:17%;font-size:20vw;left:-30%;transform:translateX(calc(var(--p)*-20vw))}.roast .copy{bottom:13%}.roast-beans{width:100%;height:60%;top:6%;right:-15%;opacity:.9}.roast-beans svg{width:28%;height:36%}.roast .vertical{top:28%}.bean-script{font-size:42px;right:7%;bottom:19%;transform:rotate(-10deg)}.beans .center-copy{top:37%}.grind-art{left:5%;top:12%;width:90%;height:48%}.grind .copy{bottom:12%}.pour-photo{right:-13%;top:13%;height:47%;width:95%;border-radius:50% 0 0 45%}.brew .copy{bottom:12%}.brew .vertical{top:21%;right:6%}.taste .center-copy{top:23%}.taste .center-copy .script{font-size:36px}.taste h2{font-size:43px}.taste .center-copy p{font-size:10px}.flavor-orbit{left:5%;right:5%;top:57%;gap:2vw}.flavor{width:28vw;height:28vw;font-size:9vw}.flavor span{font-size:8px}.flavor:nth-child(2){margin-top:4vh}.flavor-note{font-size:10px;left:9%;right:9%;bottom:13%}.tiny-disclaimer{font-size:6px;bottom:10%;letter-spacing:.04em}.cup-circle{height:88vw;width:88vw;top:17%;right:-20%}.cup-illustration{width:95%;height:48%;top:15%;right:-10%}.cup .copy{bottom:14%}.cup-word{font-size:17vw;bottom:44%;left:0}.cafe .center-copy{top:35%}.cup-photo{left:9%;top:16%;width:76%;height:39%}.afterglow .copy{bottom:16%}.closing-script{font-size:10vw;bottom:9%;right:8%}.afterglow .copy .script{font-size:36px}.journey-position{bottom:21px;font-size:8px;left:6%;right:6%}.motion-toggle{font-size:8px;bottom:14px;padding:8px}#chapterMenu{padding:70px 8vw}#chapterMenu>p{font-size:22px}#chapterLinks{grid-template-columns:repeat(2,1fr);gap:0 20px}#chapterLinks a{font-size:12px;padding:15px 0}#chapterLinks span{font-size:9px;margin-right:10px}footer{padding:90px 8vw 100px}.footer-top{flex-wrap:wrap;gap:20px!important}.footer-brand{font-size:42px}.footer-top p{font-size:10px}.footer-top>a:last-child{font-size:10px}footer details{margin-top:45px}.footer-bottom{font-size:6px;gap:20px}}
@media(max-height:700px) and (max-width:700px){.hero-type{top:23%}.hero-type .script{font-size:27px}.hero-orbit{width:65vw;height:65vw;bottom:12%}.hero-bottom p{font-size:9px}.copy{bottom:11%}.copy h2{font-size:28px;margin-bottom:9px}.copy .script{font-size:31px}.copy p{font-size:10px}.organic{height:40%}.big-cherry{height:43%}.process-art{height:35%}.pour-photo{height:41%}.cup-photo{height:34%}.taste .center-copy{top:19%}.taste .center-copy h2{font-size:36px}.flavor-orbit{top:56%}.flavor-note{bottom:12%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.photo img,.full-photo img,.hero-orbit,.big-cherry,.roast-beans svg,.grind-bean,#grounds i,.cup-illustration{transform:none!important}}
body.reduce-motion{scroll-behavior:auto}body.reduce-motion *{transition:none!important}body.reduce-motion .photo img,body.reduce-motion .full-photo img,body.reduce-motion .hero-orbit,body.reduce-motion .big-cherry,body.reduce-motion .roast-beans svg,body.reduce-motion .grind-bean,body.reduce-motion #grounds i,body.reduce-motion .cup-illustration{transform:none!important}
/* Keep expanded notes from pushing the composition into the photograph. */
.scene details{position:relative}.scene details[open]{padding:0;background:transparent;max-height:none;overflow:visible}.scene details[open]>p{position:absolute;left:0;right:0;bottom:43px;margin:0;padding:22px;background:var(--bg);border:1px solid currentColor;box-shadow:0 12px 35px #0002;max-height:32svh;overflow:auto;z-index:10}

/* Farm profile and collection entrance */
.origin .farm-photo{border-radius:0;overflow:visible}.origin .farm-photo img{object-fit:contain}.nature-note{margin:20px auto 0;max-width:430px}.profile-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:6vw;padding:25px 0}.profile-grid dl{margin:0;font-size:12px;line-height:1.8}.profile-grid dt{opacity:.7;font-size:10px;margin-top:15px}.profile-grid dd{margin:3px 0 0}.profile-grid p:first-child{margin-top:0}.footer-bottom a{text-underline-offset:4px}.story-home{background:#11b9b7;color:#123f34}.home-brand{display:block;margin:35px 7vw;text-decoration:none;font-size:32px;letter-spacing:.12em}.home-brand span{display:block;font:8px Arial,sans-serif;letter-spacing:.2em;margin-top:6px}.home-main{padding:70px 9vw 120px;max-width:1400px;margin:auto}.home-main>.eyebrow{position:static}.home-main h1{font-size:clamp(34px,5vw,76px);line-height:1.6;font-weight:600;margin:25px 0}.home-intro{font-size:13px;line-height:2.3}.story-card{display:grid;grid-template-columns:1fr 1fr;margin-top:70px;border-top:1px solid #123f3466;padding-top:35px;text-decoration:none;align-items:center;gap:7vw}.card-art{position:relative;border-radius:50%;background:#f5da37;aspect-ratio:1;display:grid;place-items:center}.card-art img{width:90%;height:90%;object-fit:contain;transition:transform .7s}.story-card:hover img{transform:rotate(-5deg) scale(1.03)}.card-art>span{position:absolute;top:2%;left:0;font:italic 60px 'Cormorant Garamond',Georgia,serif}.card-copy>span{font:10px Arial,sans-serif;letter-spacing:.15em}.card-copy h2{font-size:clamp(23px,3vw,40px);font-weight:600}.card-copy p{font-size:13px;line-height:2.2}.card-copy b{display:inline-block;font-size:12px;font-weight:400;border-bottom:1px solid;padding-bottom:10px;margin-top:20px}.story-home footer{background:#11b9b7;padding-top:20px}.variety .script{font-size:clamp(35px,4.7vw,70px)}
@media(max-width:700px){.profile-grid{grid-template-columns:1fr;gap:30px}.profile-grid dl{font-size:11px}.nature-note{max-width:84%;margin-top:25px}.variety .script{font-size:38px}.home-main{padding:55px 8vw 80px}.home-brand{margin:25px 8vw}.home-main h1{font-size:31px}.home-intro{font-size:11px}.story-card{grid-template-columns:1fr;gap:30px;margin-top:45px}.card-art{width:85%;margin:auto}.card-copy h2{font-size:26px}.card-copy p{font-size:12px}.story-home footer{padding-bottom:40px}.taste .flavor{font-size:8vw}.taste .flavor:nth-child(2){font-size:7vw}}
/* Chapter links jump directly to the pinned scene; the journey itself stays scroll-driven. */
html{scroll-behavior:auto;scroll-padding-top:0}

/* Lightweight edition: static artwork, local color gradients, no per-frame updates. */
body{transition:none}.scene{background:linear-gradient(to bottom,var(--bg) 0%,var(--bg) 87%,var(--next) 100%);color:var(--ink)}
.photo img,.full-photo img{transform:none;will-change:auto}
.hero-orbit{transform:rotate(4deg)}.organic{transform:rotate(-9deg)}.word,.sea-word{transform:none}
.big-cherry{transform:rotate(-5deg)}.floating-leaf{transform:rotate(125deg)}.process-art{transform:none}
.roast-beans svg{transform:rotate(calc(var(--i)*53deg))}.grind-bean{transform:rotate(25deg);opacity:1}
#grounds i{transform:rotate(var(--rotation));opacity:.75}.cup-illustration{transform:rotate(-3deg)}
.hero-orbit .cherry,.big-cherry,.roast-beans svg,.cup-illustration{filter:none}
.route path{stroke-dashoffset:0}.flavor,.card-art img{transition:none}
@media(max-width:700px){.hero-orbit{width:70vw;height:70vw;right:-12%;bottom:18%}}

/* Original producer and shop photography; the light edition stays static. */
.roaster-photo{right:3%;top:16%;width:48%;height:73%;border-radius:48% 46% 37% 45%;mask-image:linear-gradient(transparent,#000 12%,#000 90%,transparent)}.roaster-photo img{object-position:50% 50%}.roast .copy{width:40%}.beans .bean-photo img{object-fit:contain}.beans .bean-photo{inset:8% 8%;opacity:.55}.beans .center-copy{text-shadow:0 2px 22px #17100b}.brew .pour-photo img{object-position:45% 50%}.brew .vertical{color:#164c3c}.voyage-globe{position:absolute;left:14%;top:13%;width:72%;height:76%;border:1px solid #fff5dc44;border-radius:50%;background:repeating-radial-gradient(ellipse at center,transparent 0 12%,#fff5dc15 12.2% 12.4%,transparent 12.6% 22%);transform:rotate(-15deg);opacity:.55}.voyage-globe:after{content:'';position:absolute;inset:0 25%;border:1px solid #fff5dc44;border-radius:50%}.taste .center-copy{top:17%}.taste .center-copy h2{font-size:clamp(40px,4.7vw,75px);margin-bottom:12px}.shop-ratings{position:absolute;left:50%;top:53%;transform:translateX(-50%);width:280px}.rating-row{display:flex;align-items:center;justify-content:space-between;margin:8px 0;font-size:13px;letter-spacing:.2em}.rating-squares{display:flex;gap:6px}.rating-squares i{display:block;width:15px;height:15px;background:#164c3c22}.rating-squares .filled{background:#164c3c}.taste .shop-flavors{top:auto;bottom:17%;left:20%;right:20%;gap:20px}.taste .shop-flavors .flavor{width:auto;height:auto;max-width:none;max-height:none;border:0;border-bottom:1px solid #164c3c66;border-radius:0;padding:10px 18px;font-size:30px;transform:none;margin:0;background:transparent;color:#164c3c}.taste .shop-flavors .flavor.active{background:#164c3c;color:#fff1cf;border-radius:4px}.shop-flavors .flavor span{font-size:9px}.taste .flavor-note{bottom:9%;font-size:11px}.taste .tiny-disclaimer{bottom:6%;font:9px 'Noto Serif JP',serif;letter-spacing:.03em}.afterglow .cup-photo img{object-position:43% 50%}
@media(max-width:700px){.roaster-photo{right:4%;top:14%;width:80%;height:43%}.roast .copy{bottom:12%}.beans .bean-photo{inset:14% 3%}.taste .center-copy{top:22%}.taste .center-copy h2{font-size:34px}.taste .center-copy .script{font-size:34px}.taste .center-copy p{font-size:10px}.shop-ratings{top:52%;width:205px}.rating-row{font-size:11px;margin:6px 0}.rating-squares{gap:5px}.rating-squares i{width:12px;height:12px}.taste .shop-flavors{left:5%;right:5%;bottom:19%;gap:5px}.taste .shop-flavors .flavor{font-size:25px;padding:8px 10px}.shop-flavors .flavor span{font-size:7px}.taste .flavor-note{font-size:9px;bottom:10%;left:10%;right:10%}.taste .tiny-disclaimer{font-size:7px;bottom:7%}.voyage-globe{left:-25%;width:150%;height:72%;top:17%}}
@media(max-height:700px) and (max-width:700px){.taste .center-copy{top:20%}.taste .center-copy h2{font-size:29px}.taste .center-copy .script{font-size:28px}.shop-ratings{top:51%}.rating-row{margin:4px 0}.taste .shop-flavors{bottom:18%}.taste .flavor-note{bottom:9%}.taste .tiny-disclaimer{bottom:6%}.roaster-photo{height:37%}}
@media(max-width:700px){.nature h2{font-size:8.3vw}}

/* Official horizontal logotype; the supplied artwork keeps its original proportions. */
.brand .brand-mark,.home-brand .brand-mark,.footer-brand .brand-mark{display:block;position:relative;width:126px;height:38px;margin:0;font:inherit;letter-spacing:normal}
.brand-mark img{display:block;width:100%;height:100%;object-fit:contain}.brand-mark .logo-light{display:none}
.logo-on-dark header .logo-dark{display:none}.logo-on-dark header .logo-light{display:block}
.brand .brand-caption,.home-brand .brand-caption{display:block;font:8px Arial,sans-serif;letter-spacing:.17em;margin-top:6px}
.footer-brand{display:inline-block;line-height:1}.footer-brand .brand-mark{width:190px;height:58px}.home-brand .brand-mark{width:170px;height:52px}.story-home footer>.footer-brand{margin-bottom:35px}
@media(max-width:700px){.brand .brand-mark{width:105px;height:32px}.brand .brand-caption{font-size:6px;margin-top:5px}.footer-brand .brand-mark{width:160px;height:49px}.home-brand .brand-mark{width:145px;height:44px}}
