.home{--studio:#e4dfd8;--ink:#292d28;--soft:#6f726a;--sage:#6c7965}.home .site-header{z-index:4;border-bottom:0;position:absolute;top:0;left:0;right:0}.home-film{height:440vh;position:relative}.film-stage{height:100svh;position:sticky;top:0;overflow:hidden}.film-stage canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.beat{text-align:center;max-width:720px;color:var(--ink);opacity:var(--step-opacity,0);transform:translateY(calc((1 - var(--step-opacity,0)) * 16px));pointer-events:none;will-change:opacity,transform;margin:0 auto;padding:calc(104px + 3vh) 24px 0;position:absolute;top:0;left:0;right:0}.beat[data-active]{pointer-events:auto}.beat h1,.beat h2{font-family:var(--serif);letter-spacing:-.025em;margin:0 0 14px;font-weight:400}.beat h1{font-size:clamp(38px,4.6vw,66px);line-height:1.04}.beat h2{font-size:clamp(28px,3vw,42px);line-height:1.1}.beat p{color:var(--soft);max-width:460px;margin:0 auto;font-size:15px;line-height:1.65}.beat .beat-count{letter-spacing:.02em;color:var(--sage);margin-bottom:12px;font-size:12px}.beat-actions{flex-direction:column;align-items:center;gap:12px;margin-top:26px;display:flex}.beat-actions span{color:var(--soft);font-size:12px}.beat-intro p{max-width:350px;font-size:16px}.beat-photo{width:clamp(120px,12vw,180px);max-width:none;transform:rotate(3deg) translateY(calc((1 - var(--step-opacity,0)) * 16px));background:#fff;margin:0;padding:10px 10px 8px;top:calc(108px + 4vh);left:auto;right:max(5vw,24px);box-shadow:0 14px 34px #3c342829}.beat-photo img{width:100%;height:auto;display:block}.beat-photo figcaption{font-family:var(--serif);color:var(--soft);padding-top:7px;font-size:13px;font-style:italic}.scroll-cue{text-align:center;color:var(--soft);opacity:calc(1 - var(--film-progress,0) * 12);pointer-events:none;margin:0;font-size:12px;position:absolute;bottom:22px;left:0;right:0}.scroll-cue:after{content:"";opacity:.5;transform-origin:top;background:currentColor;width:1px;height:28px;margin:10px auto 0;animation:1.8s ease-in-out infinite cue;display:block}@keyframes cue{0%{transform:scaleY(0)}50%{transform:scaleY(1)}to{transform-origin:bottom;transform:scaleY(0)}}.home-made{max-width:1240px;margin:auto;padding:110px 6% 96px}.home-made h2,.home-close h2{font-family:var(--serif);letter-spacing:-.02em;max-width:16ch;margin:0 0 48px;font-size:clamp(30px,3.2vw,44px);font-weight:400;line-height:1.12}.made-row{grid-template-columns:.378fr 1fr 1fr;align-items:start;gap:28px;margin:0;padding:0;list-style:none;display:grid}.made-row li{position:relative}.made-row img{background:var(--studio);border-radius:4px;width:100%;height:auto;display:block}.made-row li+li:before{content:"";border-top:1.5px solid var(--sage);border-right:1.5px solid var(--sage);opacity:.7;width:14px;height:14px;position:absolute;top:110px;left:-21px;transform:rotate(45deg)}.made-row p{color:var(--soft);max-width:34ch;margin:14px 0 0;font-size:13px;line-height:1.65}.made-row b{color:var(--ink);margin-bottom:2px;font-size:14px;font-weight:500;display:block}.home-close{background:var(--studio);text-align:center;padding:96px 24px 104px}.home-close h2{max-width:none;margin:0 auto 14px}.home-close p{color:var(--soft);margin:0 0 30px;font-size:15px}@media (max-width:700px){.home-film{height:400vh}.beat{padding-top:calc(86px + 2vh)}.beat h1{font-size:34px}.beat h2{font-size:26px}.beat p{max-width:330px;font-size:14px}.beat-intro p{font-size:15px}.beat-actions{margin-top:20px}.beat-photo{width:92px;padding:6px 6px 5px;top:calc(236px + 2vh);right:20px}.beat-photo figcaption{padding-top:4px;font-size:11px}.home-made{padding:72px 22px 64px}.made-row{grid-template-columns:1fr;gap:34px}.made-row li:first-child{width:58%}.made-row li+li:before{display:none}}@media (prefers-reduced-motion:reduce){.scroll-cue:after{animation:none}}
