/* Shared layout and type roles; display lettering keeps its own scale. */
:root{--site-surface:#181818;--site-ink:#eeece8;--site-muted:#aaa6a2;--site-width:1280px;--site-gutter:clamp(24px,5vw,72px);--type-title:clamp(30px,3.3vw,46px);--type-subtitle:clamp(21px,2vw,28px);--type-body:16px;--type-small:12px}
html,body,main,.work-playground,.contact{background:var(--site-surface);color:var(--site-ink)}

.topbar.on-light{color:var(--site-ink);background:transparent}.topbar.on-light .menu-toggle span{border-color:var(--site-ink)}
.nav a,.work-subtitle,.contact__kicker{font-size:var(--type-body)}
.hero-journey .about-copy p{font-size:14px;line-height:1.8}.hero-journey .about-copy .about-detail{font-size:14px}
.about-identity h2,.career-entry h2{font-size:var(--type-title)}
.hero-journey .about-identity h2 span{font-size:var(--type-subtitle)}
.hero-journey .about-kicker,.career-entry small,.about-skills{font-size:var(--type-small)}
.hero-journey .career-entry p,.career-entry .mono{font-size:14px}

.work-playground .work-lines,.hero-contours,.hero-dust{display:none}

.lyra-feature{background:var(--site-surface);color:var(--site-ink);overflow:visible}
.remem-project{position:relative;isolation:isolate;font-family:'ABC Nord','PingFang SC',sans-serif;font-size:var(--type-body);font-weight:400;line-height:1.8;overflow:clip}
.remem-project h2,.remem-project h3,.remem-project p,.remem-project figure{margin:0}
.remem-project h2{font-size:var(--type-title);line-height:1.2;letter-spacing:-.035em;font-weight:600}
.remem-project h3{font-size:var(--type-subtitle);line-height:1.25;letter-spacing:-.025em;font-weight:500}
.remem-project p{color:var(--site-muted)}
.remem-project img{display:block;max-width:100%;height:auto}
.remem-container{width:calc(100% - var(--site-gutter)*2);margin-inline:auto;position:relative}
.remem-atmosphere{position:sticky;top:0;height:100svh;margin-bottom:-100svh;width:100%;overflow:hidden;z-index:-1;pointer-events:none}
/* The Figma reference's #FF8F69 at .17 opacity, without its white artboard. */
.remem-peach{position:absolute;width:110vmax;height:100vmax;background:url('assets/remem-v2/peach-transparent.svg') center/contain no-repeat;will-change:transform;opacity:.95;transform:translate3d(var(--field-x,0px),var(--field-y,0px),0) rotate(var(--field-turn,0deg))}
.peach-one{left:3%;top:-42%;transform-origin:48% 54%}.peach-two{width:85vmax;height:85vmax;left:-48%;top:18%;opacity:.48;transform:translate3d(calc(var(--field-x,0px)*-.7),calc(var(--field-y,0px)*-.8),0) rotate(calc(var(--field-turn,0deg)*-.7 + 135deg))}
.remem-opening{padding-block:145px 90px;min-height:900px}
.remem-brand{text-align:center}.remem-brand>img{width:100px;margin:0 auto 85px}.remem-brand h2{font-size:var(--type-title)}.remem-brand p{font-size:var(--type-subtitle);font-weight:300;margin-top:9px}
.remem-intro-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:60px;margin-top:65px}
.remem-hardware{position:relative;height:380px;display:grid;place-items:center}.remem-hardware>div{font-weight:700;font-size:clamp(25px,3.6vw,48px);line-height:1.2;color:#eeece81f;letter-spacing:-.035em;position:absolute;left:0;top:27%}.remem-hardware>img{position:absolute;width:600px;max-width:none;left:50%;top:50%;transform:translate(-50%,-50%)}
.remem-intro-copy p{font-size:var(--type-body);line-height:2}.remem-intro-copy dl{margin:36px 0 0;font-size:14px;line-height:1.9}.remem-intro-copy dl div{display:flex;gap:14px}.remem-intro-copy dt{color:var(--site-muted);min-width:62px}.remem-intro-copy dd{margin:0}
.remem-heading p{margin-top:10px;font-size:var(--type-body)}.remem-eyebrow{font-size:var(--type-small);letter-spacing:.15em;color:var(--site-muted);line-height:1.5;display:block}
.remem-scenarios{height:340svh;position:relative}.scenario-sticky{height:100svh;min-height:650px;position:sticky;top:0;overflow:hidden}.scenario-shell{height:100%;padding-top:100px;display:flex;flex-direction:column}.scenario-heading{position:relative;z-index:2;padding-bottom:20px;flex:none}.scenario-heading h2{margin-top:12px}.scenario-heading p{font-size:var(--type-body);margin-top:10px}
.scenario-window{overflow:hidden;flex:1;min-height:0;position:relative}.scenario-track{height:100%;width:max-content;display:flex;gap:80px;will-change:transform;align-items:center;padding-right:8px}.scenario-panel{width:800px;height:100%;max-height:580px;display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:22px;flex-shrink:0}.scenario-panel:nth-child(2){width:700px}.scenario-panel:nth-child(3){width:760px}.scenario-panel:last-child{width:760px}
.scenario-media{position:relative;min-width:0;height:100%;display:flex;align-items:center;justify-content:center;perspective:1100px}.scenario-media>img{width:100%;height:100%;max-height:500px;object-fit:contain}.scenario-copy h3{margin:15px 0 18px}.scenario-copy p{font-size:var(--type-body);line-height:1.8}.scene-parking .scenario-media{transform:rotate(-5deg)}.scene-context .scenario-media>img{transform:rotate(-8deg);width:86%}.scene-recall .scenario-media>img{width:auto;height:90%;max-width:75%}.scene-food .scenario-media{align-self:center;height:85%}
.remem-context-note{position:absolute;right:0;bottom:12%;width:125px;padding:13px;border:1px solid #ffffff52;border-radius:16px;background:#e3e3e348;backdrop-filter:blur(16px);color:#eee;line-height:1.4}.remem-context-note img{width:70px;margin:0 auto 12px;border-radius:5px}.remem-context-note span{font-size:12px;display:block}.remem-context-note small{font-size:10px;color:#eee9}
.remem-notification{position:absolute;left:0;top:30%;width:310px;display:flex;gap:10px;align-items:center;padding:10px 12px;background:#ffffffd4;color:#222;border-radius:12px;box-shadow:0 14px 40px #0003;backdrop-filter:blur(12px)}.remem-notification>img{width:36px;height:36px}.remem-notification p{font-size:12px;line-height:1.4;color:#333}.remem-notification small{font-size:10px;display:block;color:#777;margin-top:4px}
.scenario-progress{height:66px;display:flex;align-items:center;gap:24px;color:var(--site-muted);font-size:10px;letter-spacing:.12em;flex:none}.scenario-progress i{height:1px;background:#ffffff21;flex:1;display:block;overflow:hidden}.scenario-progress b{display:block;background:#efb699;width:100%;height:100%;transform:scaleX(var(--scene-progress,0));transform-origin:left}
.remem-goals{display:grid;grid-template-columns:.8fr 1.3fr;gap:10px;align-items:center;min-height:700px;padding-block:70px}.goal-copy{text-align:right;position:relative;z-index:1;padding-right:24px}.goal-copy>.remem-heading{margin-bottom:55px}.goal-copy p{font-size:var(--type-body);line-height:2}.goal-map{width:100%;aspect-ratio:800/610;position:relative}.goal-lines{position:absolute;inset:0;width:100%;height:100%;overflow:visible;color:#e5b49e90}.goal-node{position:absolute;width:26.5%;height:34.75%;display:flex;flex-direction:column;justify-content:center;text-align:center;border-radius:50%;background:#18181830}.goal-node.ambient{left:38%;top:3.1%}.goal-node.context{left:27.5%;top:51.8%}.goal-node.minimal{left:64.8%;top:40%}.goal-node h3{font-size:21px;line-height:1.3}.goal-node h3 span{display:block;font-size:16px}.goal-node p{font-size:12px;line-height:1.9;margin-top:9px}
.goal-lines mask>* >*,.flow-line mask>path{stroke-dasharray:1;stroke-dashoffset:calc(1 - var(--draw,0))}
.remem-flow{display:grid;grid-template-columns:270px 1fr;gap:35px;padding-block:120px;align-items:center}.flow-copy .remem-heading h2{font-size:var(--type-subtitle)}.flow-route{position:relative;height:390px;margin-top:24px;color:#dbad9880}.flow-line{width:100%;height:100%;position:absolute;inset:0}.flow-stop{position:absolute;line-height:1.3;width:140px}.flow-stop small{font-size:10px;color:var(--site-muted)}.flow-stop h3{font-size:16px;color:#e4d1c6}.flow-stop p{font-size:10px}.stop-0{top:28px;left:46px}.stop-1{top:122px;left:175px}.stop-2{top:172px;left:58px}.stop-3{top:238px;left:0}.stop-4{top:298px;left:160px}.flow-phones{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:center}.remem-phone{perspective:1000px}.remem-phone img{width:100%;filter:drop-shadow(0 22px 30px #0003)}
.remem-memory{padding-block:110px 90px}.remem-memory>header{text-align:center}.remem-memory h2{font-size:clamp(42px,7vw,92px);font-weight:400;line-height:1.03;letter-spacing:-.065em}.remem-memory header p{margin-top:28px;font-size:var(--type-body)}.memory-system{display:grid;grid-template-columns:200px 1fr;gap:65px;align-items:center;margin-top:110px}.memory-system ol{list-style:none;padding:0;display:grid;gap:55px}.memory-system li span{display:block;width:160px;text-align:center;background:#ffcdb421;border:1px solid #ffcdb429;border-radius:60px;padding:9px 20px;font-size:14px;color:#e7bda6}.memory-layers{perspective:1200px}.memory-layers img{width:100%;animation:remem-hover 10s ease-in-out infinite;animation-play-state:paused}.memory-layers.is-revealed img{animation-play-state:running}
.remem-onboarding{padding-block:100px 150px}.onboarding-pair{display:flex;justify-content:center;gap:34px}.onboarding-pair figure{width:min(38%,350px)}.onboarding-pair figure:nth-child(2){margin-top:65px}
.remem-film{padding-block:70px 130px}.remem-film .remem-heading{margin-bottom:40px}.remem-film video{display:block;width:100%;max-height:80svh;background:var(--site-surface);object-fit:contain;border-radius:2px}
.remem-ending{padding-block:60px 150px;text-align:center}.remem-ending>.remem-heading{margin-bottom:32px}.remem-ending>p{font-size:var(--type-body);line-height:2}.remem-ending figure{width:350px;max-width:65%;margin:50px auto}.remem-ending>h2{font-size:var(--type-subtitle);max-width:950px;margin:auto}
.flow-stop small,.flow-stop p{font-size:var(--type-small)}
.motion-ready [data-reveal]{opacity:0;transform:translate3d(0,45px,0);transition:opacity .9s ease,transform 1.25s cubic-bezier(.16,1,.3,1);transition-delay:var(--reveal-delay,0ms)}.motion-ready [data-reveal].is-revealed{opacity:1;transform:none}.motion-ready .remem-phone[data-reveal]{transform:translate3d(0,110px,0) rotateX(14deg) rotateZ(-4deg) scale(.88)}.motion-ready .remem-phone.is-revealed{transform:none}.motion-ready .memory-layers[data-reveal]{transform:translate3d(100px,80px,0) rotate(-7deg) scale(.8)}.motion-ready .memory-layers.is-revealed{transform:none}
.motion-ready .scenario-panel .scenario-media,.motion-ready .scenario-panel .scenario-copy{opacity:0;translate:0 65vh;transition:translate 1.65s cubic-bezier(.16,1,.3,1),opacity 1s}.motion-ready .scenario-panel:nth-child(even) .scenario-media{translate:25vw -65vh}.motion-ready .scenario-panel .scenario-copy{translate:35vw 0;transition-delay:.18s}.motion-ready .scenario-panel.is-revealed .scenario-media,.motion-ready .scenario-panel.is-revealed .scenario-copy{opacity:1;translate:0 0}
@keyframes remem-hover{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-13px) rotate(1deg)}}
@media(min-width:1500px){.hero-journey .about-copy{max-width:390px}}
@media(max-width:1000px){.remem-flow{grid-template-columns:210px 1fr;gap:20px}.flow-copy .remem-heading h2{font-size:22px}.flow-stop{width:110px}.stop-1{left:142px}.stop-4{left:122px}.flow-phones{gap:12px}.remem-goals{grid-template-columns:.7fr 1.3fr}.goal-node h3{font-size:18px}.goal-node h3 span{font-size:14px}.goal-node p{font-size:10px}.remem-intro-grid{gap:25px}.remem-hardware>img{width:500px}.remem-intro-copy p{font-size:14px}}
@media(max-width:760px){:root{--site-gutter:24px;--type-body:14px;--type-title:32px;--type-subtitle:23px}.remem-opening{padding-block:110px 55px;min-height:0}.remem-brand>img{width:78px;margin-bottom:45px}.remem-intro-grid{grid-template-columns:1fr;margin-top:25px;gap:0}.remem-hardware{height:310px}.remem-hardware>img{width:460px}.remem-hardware>div{font-size:32px}.remem-intro-copy dl{font-size:12px}.remem-scenarios{height:400svh}.scenario-sticky{min-height:580px}.scenario-shell{padding-top:88px}.scenario-heading h2{font-size:27px;margin-top:9px}.scenario-heading p{font-size:12px;max-width:290px}.scenario-track{gap:42px}.scenario-panel,.scenario-panel:nth-child(n){width:calc(100vw - 48px);max-height:none;grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) auto;gap:5px;padding-bottom:5px}.scenario-media>img{max-height:280px;width:90%}.scenario-copy h3{font-size:21px;margin:8px 0}.scenario-copy p{font-size:12px;line-height:1.6}.scenario-copy .remem-eyebrow{font-size:10px}.scenario-copy h3 br{display:none}.remem-notification{width:230px;left:0;padding:8px}.remem-notification p{font-size:10px}.remem-context-note{width:100px;padding:10px;bottom:6%}.remem-context-note img{width:50px}.scenario-progress{height:46px;font-size:8px;gap:12px}.remem-goals{display:block;padding-block:65px;min-height:0}.goal-copy{text-align:left;padding:0}.goal-copy>.remem-heading{margin-bottom:25px}.goal-map{margin-top:35px}.goal-node h3{font-size:16px}.goal-node h3 span{font-size:12px}.goal-node p{font-size:8px;margin-top:5px}.remem-flow{display:block;padding-block:65px}.flow-copy{display:grid;grid-template-columns:1fr 1fr;gap:10px}.flow-route{margin-top:0;height:310px}.flow-stop{width:100px}.flow-stop h3{font-size:14px}.flow-stop p,.flow-stop small{font-size:8px}.stop-0{top:19px;left:29px}.stop-1{top:94px;left:100px}.stop-2{top:130px;left:25px}.stop-3{top:188px;left:-8px}.stop-4{top:235px;left:82px}.flow-phones{margin-top:30px;gap:9px}.remem-memory{padding-block:70px 40px}.remem-memory h2{font-size:clamp(37px,8.5vw,62px)}.memory-system{grid-template-columns:1fr;gap:25px;margin-top:60px}.memory-system ol{grid-template-columns:repeat(2,1fr);gap:12px;margin:0}.memory-system li span{width:100%;font-size:12px;padding:7px 12px}.remem-onboarding{padding-block:50px 80px}.onboarding-pair{gap:15px}.onboarding-pair figure{width:46%}.onboarding-pair figure:nth-child(2){margin-top:30px}.remem-film{padding-block:30px 75px}.remem-film .remem-heading h2{font-size:28px}.remem-ending{padding-block:30px 90px}.remem-ending>p{font-size:12px}.remem-ending>h2{font-size:21px}.remem-ending figure{margin-block:30px}.hero-journey .about-copy p,.hero-journey .about-copy .about-detail{font-size:10px}.hero-journey .about-kicker{font-size:10px}}
@media(prefers-reduced-motion:reduce){.remem-project [data-reveal],.motion-ready .scenario-panel .scenario-media,.motion-ready .scenario-panel .scenario-copy{opacity:1!important;transform:none!important;translate:none!important;transition:none!important}.remem-peach,.memory-layers img{animation:none!important;transform:none!important}.remem-scenarios{height:auto}.scenario-sticky{height:auto;position:relative;min-height:0}.scenario-window{overflow:visible}.scenario-track{width:100%;height:auto;display:grid;gap:55px;transform:none!important}.scenario-panel,.scenario-panel:nth-child(n){width:100%;height:500px}.scenario-progress{display:none}.goal-lines mask>* >*,.flow-line mask>path{stroke-dashoffset:0!important}}
@media(max-width:760px){
 .goal-map{display:flex;flex-wrap:wrap;justify-content:center;gap:18px;aspect-ratio:auto}
 .goal-lines{display:none}
 .goal-node.ambient,.goal-node.context,.goal-node.minimal{position:relative;left:auto;top:auto;width:220px;height:220px;background:transparent}
 .goal-node:before{content:'';position:absolute;inset:0;border:1px dashed #e5b49e80;border-radius:50%;mask-image:conic-gradient(#000 calc(var(--draw,0)*1turn),transparent 0)}
 .goal-node h3{font-size:23px}.goal-node h3 span{font-size:16px}.goal-node p{font-size:12px}
 .flow-copy{display:block}.flow-route{width:270px;height:390px;margin:30px auto 0}
 .flow-stop{width:140px}.flow-stop small,.flow-stop p{font-size:12px;line-height:1.5}.flow-stop h3{font-size:16px}
 .stop-0{top:28px;left:46px}.stop-1{top:122px;left:160px}.stop-2{top:172px;left:58px}.stop-3{top:238px;left:0}.stop-4{top:298px;left:150px}
}

/* Only the opening keeps an editorial measure. All subsequent stages are immersive. */
.remem-opening{width:min(1280px,calc(100% - var(--site-gutter)*2))}
.remem-scenarios{height:auto;min-height:100svh}
.scenario-sticky{position:relative;height:100svh;min-height:760px}
.scenario-shell{width:100%;padding-top:100px}
.scenario-heading{text-align:center;padding-inline:var(--site-gutter);padding-bottom:28px}
.scenario-heading h2{font-size:clamp(36px,4vw,70px)}
.scenario-heading p{margin:16px auto 0;max-width:none}
.scenario-window{width:100%;overflow:hidden}
.scenario-track{gap:clamp(65px,7vw,150px);padding:0;position:relative}
.scenario-panel,.scenario-panel:nth-child(n){width:clamp(760px,72vw,1400px);max-height:none;grid-template-columns:1.25fr 1fr;gap:clamp(24px,3vw,65px);padding-left:3vw}
.scenario-media>img{max-height:62svh;width:100%}
.scenario-copy h3{font-size:clamp(25px,2.3vw,40px)}
.scenario-progress{padding-inline:var(--site-gutter)}
.scenario-pause{border:0;background:transparent;color:inherit;font:inherit;letter-spacing:inherit;cursor:pointer;padding:10px 0;min-width:80px;text-align:left}
.scenario-pause:focus-visible{outline:1px solid #efb699;outline-offset:3px}
.motion-ready .scenario-panel .scenario-media,.motion-ready .scenario-panel:nth-child(even) .scenario-media{opacity:0;translate:0 0;transform:scale(2.8) translateY(8%);transform-origin:center;transition:transform 1.9s cubic-bezier(.16,1,.3,1),opacity .7s ease;transition-delay:0s}
.motion-ready .scenario-panel .scenario-copy{opacity:0;translate:0 0;transform:translateY(25px);transition:transform 1.25s cubic-bezier(.16,1,.3,1),opacity .9s;transition-delay:.2s}
.motion-ready .scene-entered .scenario-panel .scenario-media,.motion-ready .scene-entered .scenario-panel .scenario-copy{opacity:1;translate:0 0;transform:none}
.remem-film{width:100%;padding-block:60px 110px}
.remem-film .remem-heading{text-align:center;padding-inline:var(--site-gutter)}
.remem-film video{width:100%;max-height:none;max-width:none;border-radius:0}
.remem-goals{min-height:90svh}.remem-flow{min-height:100svh;grid-template-columns:minmax(270px,.6fr) 2fr;gap:4vw}
.flow-phones{gap:clamp(22px,3vw,60px)}
.remem-onboarding{min-height:100svh;display:grid;place-items:center}.onboarding-pair{width:100%;gap:4vw}.onboarding-pair figure{width:min(35%,480px)}
.remem-ending{min-height:100svh}.remem-ending figure{width:clamp(350px,32vw,600px)}
@media(max-width:760px){
 .scenario-sticky{min-height:740px;height:100svh}.scenario-shell{padding-top:90px}
 .scenario-heading h2{font-size:32px}.scenario-heading p{font-size:12px}
 .scenario-panel,.scenario-panel:nth-child(n){width:100vw;padding:0 24px 12px;grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) auto;gap:8px}
 .scenario-track{gap:0}.scenario-media>img{max-height:40svh;width:90%}.scenario-copy h3{font-size:23px}
 .remem-flow{display:block;min-height:0}.remem-goals{min-height:0}.remem-onboarding{min-height:0}.onboarding-pair figure{width:46%}
 .remem-film{padding-block:40px 70px}.remem-ending{min-height:0}
}
@media(prefers-reduced-motion:reduce){
 .scenario-sticky{height:auto;min-height:0}.scenario-track{display:grid;gap:45px}
 .scenario-clone{display:none!important}.scenario-panel,.scenario-panel:nth-child(n){width:100%;height:600px}
 .scenario-pause{display:none}.motion-ready .scenario-panel .scenario-media,.motion-ready .scenario-panel .scenario-copy{opacity:1!important;transform:none!important;transition:none!important}
}

/* Review: a smaller moving atmosphere, irregular scenes and quieter UI scale. */
.remem-film{width:min(1280px,calc(100% - var(--site-gutter)*2))}
.remem-peach{width:70vmax;height:64vmax}.peach-one{left:25%;top:-8%}.peach-two{width:52vmax;height:52vmax;left:-12%;top:36%;opacity:.36}
.remem-ending:after{content:'';position:absolute;inset:30% calc(var(--site-gutter)*-1) 0;background:linear-gradient(transparent,#181818);z-index:-1;pointer-events:none}
.scenario-window{cursor:grab;touch-action:pan-y;user-select:none}.scenario-window.is-dragging{cursor:grabbing}.scenario-window:focus-visible{outline:1px solid #efb69980;outline-offset:-2px}
.scenario-panel,.scenario-panel:nth-child(n){position:relative;display:block;width:clamp(660px,68vw,1100px);padding:0;height:100%}
.scenario-panel .scenario-media{position:absolute;left:5%;top:2%;width:55%;height:80%}
.scenario-panel .scenario-copy{position:absolute;left:60%;top:36%;width:36%}
.scene-context.scenario-panel{width:clamp(610px,58vw,940px)}
.scene-context .scenario-media{left:5%;top:20%;width:47%;height:75%}.scene-context .scenario-copy{left:55%;top:14%;width:40%}
.scene-recall.scenario-panel{width:clamp(650px,62vw,1020px)}
.scene-recall .scenario-media{left:48%;top:2%;width:43%;height:85%}.scene-recall .scenario-copy{left:4%;top:55%;width:43%}
.scene-food .scenario-media{left:4%;top:19%;width:52%;height:73%}.scene-food .scenario-copy{left:58%;top:23%;width:39%}
.scenario-copy h3{font-size:clamp(24px,2.2vw,36px)}
.goal-lines mask>* >*{animation:goal-trace-cycle 8s ease-in-out infinite;animation-play-state:paused;stroke-dasharray:1}.draw-active .goal-lines mask>* >*{animation-play-state:running}.goal-lines mask>* >*:nth-child(2n){animation-delay:-.7s}.goal-lines mask>* >*:nth-child(3n){animation-delay:-1.3s}
@keyframes goal-trace-cycle{0%{stroke-dashoffset:1}45%,75%{stroke-dashoffset:0}100%{stroke-dashoffset:-1}}
.remem-flow{display:block;min-height:0;padding-block:100px}.flow-copy .remem-heading{text-align:center}.flow-copy .remem-heading h2{font-size:var(--type-title)}
.flow-route{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));width:min(100%,1000px);height:auto;margin:60px auto 65px;gap:20px;text-align:center;padding-bottom:34px}
.flow-line{top:auto;bottom:0;height:20px;width:100%}
.flow-stop,.flow-stop.stop-0,.flow-stop.stop-1,.flow-stop.stop-2,.flow-stop.stop-3,.flow-stop.stop-4{position:relative;top:auto;left:auto;width:auto}
.flow-stop small,.flow-stop p{font-size:12px}.flow-stop h3{font-size:20px;margin:6px 0}.motion-ready .flow-stop{opacity:0;transform:translateX(-25px);transition:opacity .7s,transform .9s cubic-bezier(.16,1,.3,1);transition-delay:var(--reveal-delay)}.motion-ready .flow-route.is-revealed .flow-stop{opacity:1;transform:none}
.flow-phones{width:min(780px,85%);margin:0 auto;gap:28px}.flow-phones .remem-phone{max-width:240px}
.memory-system{width:min(860px,100%);margin:90px auto 0;grid-template-columns:180px 1fr;gap:65px}.memory-system ol{height:310px;margin:0;display:flex;flex-direction:column;justify-content:space-between;gap:0}.memory-layers{height:310px;display:grid;place-items:center}.memory-layers img{width:auto;max-width:100%;height:auto;max-height:310px;object-fit:contain}
.remem-onboarding{min-height:0;padding-block:80px 100px}.onboarding-pair{gap:40px}.onboarding-pair figure{width:min(32%,270px)}.onboarding-pair figure:nth-child(2){margin-top:25px}
.remem-ending figure{width:260px;max-width:55%;margin:40px auto}.remem-ending figure img{width:100%;image-rendering:auto}.remem-ending{min-height:0;padding-bottom:120px}
#contact{position:relative;isolation:isolate;overflow:hidden;background:#181818}
#contact>.contact-contours{position:absolute;inset:0;width:100%;height:100%;z-index:-1;opacity:.52;pointer-events:none}
@media(max-width:760px){
 .remem-film{width:calc(100% - 32px)}.peach-one{width:100vmax;height:90vmax;left:-25%;top:0}.peach-two{width:65vmax;height:65vmax;left:-25%}
 .scenario-panel,.scenario-panel:nth-child(n){width:100vw;min-width:340px}
 .scenario-panel .scenario-media{left:8%;top:0;width:80%;height:65%}.scenario-panel .scenario-copy{left:9%;top:68%;width:82%}
 .scene-context .scenario-media{left:15%;top:12%;width:70%;height:55%}.scene-context .scenario-copy{top:70%}
 .scene-recall .scenario-media{left:23%;width:65%;height:63%}.scene-recall .scenario-copy{top:65%}
 .scene-food .scenario-media{top:9%;height:56%}.scene-food .scenario-copy{top:67%}
 .goal-node:before{animation:mobile-goal-cycle 8s ease-in-out infinite;animation-play-state:paused}.draw-active .goal-node:before{animation-play-state:running}
 .flow-route{width:100%;gap:7px;margin-block:40px;height:auto}.flow-stop small{font-size:9px}.flow-stop p{font-size:10px}.flow-stop h3{font-size:16px}.flow-phones{width:100%;gap:12px}
 .memory-system{grid-template-columns:105px 1fr;gap:15px}.memory-system ol,.memory-layers{height:225px}.memory-system li span{width:100%;padding:7px;font-size:12px}.memory-layers img{max-height:225px}
 .onboarding-pair{gap:18px}.onboarding-pair figure{width:40%;max-width:220px}.remem-ending figure{width:220px}
}
@keyframes mobile-goal-cycle{0%{opacity:.15;transform:rotate(-35deg)}45%,75%{opacity:1}100%{opacity:.15;transform:rotate(35deg)}}
@media(prefers-reduced-motion:reduce){.goal-lines mask>* >*,.goal-node:before{animation:none!important;stroke-dashoffset:0}.flow-stop{opacity:1!important;transform:none!important}.scenario-panel,.scenario-panel:nth-child(n){height:600px}.contact-contours{animation:none}}

/* Fine motion and spacing pass. */
.remem-atmosphere{opacity:.7}
.scenario-heading{padding-bottom:clamp(60px,7svh,90px)}
.scenario-sticky{min-height:850px}
.scene-recall .scenario-copy{left:9%;width:37%;top:30%;text-align:right}
.scene-context .scenario-copy{top:27%}
.parking-stack{width:100%;aspect-ratio:992/797;position:relative;perspective:900px}
.parking-stack .parking-layer{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;max-height:none;pointer-events:none}
.layer-base{clip-path:polygon(0 66%,100% 66%,100% 100%,0 100%)}
.layer-middle{clip-path:polygon(0 36%,100% 36%,100% 66%,0 66%);transform-origin:50% 85%}
.layer-top{clip-path:polygon(0 0,100% 0,100% 36%,0 36%);transform-origin:50% 85%}
.scene-entered .layer-middle{animation:phone-card-middle 6s cubic-bezier(.22,.7,.2,1) infinite}
.scene-entered .layer-top{animation:phone-card-top 6s cubic-bezier(.22,.7,.2,1) infinite}
@keyframes phone-card-middle{0%,7%,100%{transform:translateY(24%) scale(.76);opacity:0}28%,80%{transform:none;opacity:1}}
@keyframes phone-card-top{0%,12%,100%{transform:translateY(48%) scale(.65);opacity:0}38%,80%{transform:none;opacity:1}}
.goal-lines mask>* >*{animation-duration:4.8s;animation-timing-function:linear;animation-delay:0s!important}
.goal-lines mask circle{animation-name:goal-trace-counterclockwise}
@keyframes goal-trace-cycle{0%{stroke-dashoffset:1}46%,53%{stroke-dashoffset:0}100%{stroke-dashoffset:-1}}
@keyframes goal-trace-counterclockwise{0%{stroke-dashoffset:-1}46%,53%{stroke-dashoffset:0}100%{stroke-dashoffset:1}}
.flow-route{padding-bottom:0;padding-top:30px}
.flow-line{top:0;bottom:auto;height:20px;color:#e5b49e90}
.flow-line mask>path{stroke-dashoffset:1;transition:stroke-dashoffset 1.8s ease}
.flow-route.is-revealed .flow-line mask>path{stroke-dashoffset:0}
.flow-stop:before{content:'';position:absolute;width:4px;height:4px;left:calc(50% - 2px);top:-22px;background:#e5b49e;border-radius:50%}
.flow-phones .deferred-phone{aspect-ratio:364/734;opacity:0;transform:translateY(90px) rotateX(12deg) scale(.85);transition:opacity .9s,transform 1.4s cubic-bezier(.16,1,.3,1);transition-delay:var(--reveal-delay)}
.flow-phones.phones-ready .deferred-phone{opacity:1;transform:none}
@media(max-width:760px){.scenario-heading{padding-bottom:48px}.scenario-sticky{min-height:790px}.scene-recall .scenario-copy{left:9%;top:68%;width:82%;text-align:right}.scene-context .scenario-copy{top:70%}.flow-stop:before{top:-22px}}
@media(prefers-reduced-motion:reduce){.parking-layer{animation:none!important;transform:none!important;opacity:1!important}.flow-phones .deferred-phone{transition:none;transform:none}.goal-lines mask circle{animation:none!important}.scenario-sticky{min-height:0}}
.remem-ending figure.earbud-rise{position:relative;width:340px;max-width:none;height:350px;margin:25px auto 35px}
.earbud-rise span{position:absolute;background-image:url('assets/remem-v2/earbud-parts-v2.png');background-repeat:no-repeat;background-size:768px 512px;pointer-events:none}
.earbud-case{width:320px;height:270px;left:10px;top:75px;background-position:0 -110px;z-index:1}
.earbud-piece{width:175px;height:180px;top:145px;z-index:2;transform-origin:50% 65%;animation:earbud-lift 5.2s cubic-bezier(.45,0,.2,1) infinite;animation-play-state:paused}
.earbud-left{left:31px;background-position:-350px -170px}.earbud-right{left:160px;background-position:-570px -170px;animation-delay:.16s}
.earbud-case-front{z-index:3;clip-path:inset(75% 0 0)}
.earbud-rise.is-revealed .earbud-piece{animation-play-state:running}
@keyframes earbud-lift{0%,100%{transform:translateY(0) scale(.68) rotate(-6deg)}38%,60%{transform:translateY(-105px) scale(.94) rotate(0deg)}}
@media(max-width:760px){.remem-ending figure.earbud-rise{scale:.8;margin-block:-10px;width:340px;left:50%;margin-left:-170px;margin-right:0}}
@media(prefers-reduced-motion:reduce){.earbud-piece{animation:none;transform:translateY(-65px) scale(.85)}}

/* Localized corner atmosphere and editorial spacing. */
.remem-peach{width:48vmax;height:44vmax}
.peach-one{left:auto;right:-17vmax;top:auto;bottom:-17vmax;transform-origin:50% 65%}
.peach-two{width:43vmax;height:40vmax;left:-16vmax;right:auto;top:auto;bottom:-16vmax;opacity:.5}
/* Recall: Figma 749:16328 / 749:16327, copy ends just before the phone;
   the notification projects to its left, above the copy. */
.scene-recall.scenario-panel{width:clamp(700px,64vw,980px)}
.scene-recall .scenario-media{left:56%;top:6%;width:38%;height:83%}
.scene-recall .scenario-media>img{width:100%;height:100%;max-width:none;max-height:none;object-fit:contain}
.scene-recall .scenario-copy{left:8%;width:45%;top:42%;text-align:right}
.scene-recall .scenario-copy h3{font-size:clamp(19px,1.9vw,28px);font-weight:300;line-height:1.3;margin:0 0 14px;letter-spacing:-.015em}
.scene-recall .scenario-copy p{font-size:12px;line-height:1.9}
.scene-recall .remem-notification{left:-75%;top:23%;width:123%;padding:10px 12px;border-radius:11px;box-sizing:border-box}
.scene-recall .remem-notification p{font-size:11px}.scene-recall .remem-notification small{font-size:9px}.scene-recall .remem-notification>img{width:32px;height:32px}
.remem-flow{padding-block:120px 145px}
.flow-route{margin-bottom:135px}
.memory-system{width:min(1160px,100%);grid-template-columns:190px minmax(0,1fr);gap:100px;margin-top:155px}
.memory-system ol{height:380px;justify-content:space-evenly}
.memory-layers{height:460px}.memory-layers img{max-height:460px;width:100%;height:100%;object-fit:contain}
.remem-memory{padding-bottom:130px}
.earbud-piece{animation:earbud-rise-once 2.2s cubic-bezier(.22,.7,.2,1) both;animation-play-state:paused}
.earbud-right{animation-delay:.16s}
@keyframes earbud-rise-once{from{transform:translateY(0) scale(.68) rotate(-6deg)}to{transform:translateY(-105px) scale(.94) rotate(0deg)}}
@media(max-width:760px){
 .remem-peach{width:65vmax;height:60vmax}.peach-one{right:-29vmax;bottom:-23vmax;left:auto;top:auto}.peach-two{width:55vmax;height:52vmax;left:-27vmax;bottom:-23vmax;top:auto}
 .scene-recall.scenario-panel{width:100vw;min-width:360px}
 .scene-recall .scenario-media{left:57%;top:12%;width:38%;height:70%}
 .scene-recall .scenario-copy{left:3%;width:50%;top:48%}
 .scene-recall .scenario-copy h3{font-size:16px}.scene-recall .scenario-copy p{font-size:10px}
 .scene-recall .remem-notification{font-size:9px;padding:6px;border-radius:7px}.scene-recall .remem-notification p{font-size:8px}.scene-recall .remem-notification small{font-size:7px}.scene-recall .remem-notification>img{width:21px;height:24px}
 .remem-flow{padding-block:80px 95px}.flow-route{margin-bottom:85px}
 .memory-system{grid-template-columns:90px minmax(0,1fr);gap:24px;margin-top:90px}.memory-system ol{height:250px}.memory-layers{height:300px}.memory-layers img{max-height:300px}.remem-memory{padding-bottom:70px}
}
@media(prefers-reduced-motion:reduce){.earbud-piece{animation:none!important;transform:translateY(-105px) scale(.94)}}

/* Review: paired corner currents, consistent type and complete artwork. */
.remem-atmosphere .remem-peach{width:38vmax;height:35vmax;top:auto;bottom:-16vmax;filter:blur(22px);opacity:.42;will-change:transform;animation:remem-current-a 8s ease-in-out infinite;transform-origin:center}
.remem-atmosphere .peach-one{left:auto;right:-14vmax}
.remem-atmosphere .peach-three{left:auto;right:-14vmax;opacity:.3;animation:remem-current-b 8s ease-in-out infinite}
.remem-atmosphere .peach-two{left:-14vmax;right:auto;opacity:.32;animation:remem-current-b 9.5s ease-in-out -3s infinite}
.remem-atmosphere .peach-four{left:-14vmax;right:auto;opacity:.3;animation:remem-current-a 9.5s ease-in-out -3s infinite}
@keyframes remem-current-a{0%,100%{transform:translate(-8%,4%) rotate(-15deg) scale(.85)}25%{transform:translate(2%,-8%) rotate(8deg) scale(1.08)}50%{transform:translate(8%,2%) rotate(22deg) scale(.94)}75%{transform:translate(-3%,10%) rotate(0deg) scale(1.04)}}
@keyframes remem-current-b{0%,100%{transform:translate(13%,7%) rotate(140deg) scale(.8)}25%{transform:translate(2%,-8%) rotate(160deg) scale(.95)}50%{transform:translate(-10%,-4%) rotate(178deg) scale(1.07)}75%{transform:translate(1%,10%) rotate(158deg) scale(.88)}}
.remem-intro-copy{align-self:start;margin-top:102.6px}
.scenario-panel .scenario-copy h3{font-size:clamp(22px,1.75vw,28px);font-weight:400;line-height:1.3;letter-spacing:-.025em;margin:0 0 20px;text-wrap:balance}
.scenario-panel .scenario-copy p{font-size:14px;line-height:1.9}
.scene-recall .scenario-copy{left:1%;width:53%;top:47%}
.scene-recall .scenario-copy h3 span{display:block;white-space:nowrap}
.scene-recall .scenario-media{left:auto;right:6%;width:auto;height:83%;aspect-ratio:406.883/829.73;container-type:inline-size}
.scene-recall .remem-notification{left:-74.7%;top:23%;width:122.8%;height:auto;aspect-ratio:499.658/87.511;padding:3.1cqw 3.8cqw;border-radius:4cqw;gap:3cqw;align-items:center}
.scene-recall .remem-notification>img{width:15.26cqw;height:15.26cqw;flex-shrink:0;object-fit:contain}
.scene-recall .remem-notification p{font-size:4.5cqw;line-height:1.25;margin:0}
.scene-recall .remem-notification small{font-size:3.4cqw;line-height:1.4;margin-top:1.6cqw}
.parking-stack{overflow:visible}
.parking-stack .parking-layer{clip-path:none;animation:none;transform:none;opacity:1}
.motion-ready .parking-stack{opacity:0;transform:translateY(40px) scale(.88) rotateX(12deg);transform-origin:50% 90%;transition:transform 1.7s cubic-bezier(.16,1,.3,1),opacity .85s}
.scene-entered .panel-seen .parking-stack{opacity:1;transform:none}
.motion-ready .scenario-panel .scenario-copy{opacity:0;transform:translateY(22px)}
.motion-ready .scene-entered .scenario-panel.panel-seen .scenario-copy{opacity:1;transform:none;transition:opacity .8s .15s,transform 1s cubic-bezier(.16,1,.3,1) .15s}
.flow-line mask>path{stroke-dasharray:1}
.flow-phones{perspective:1000px}
.flow-phones .remem-phone img{transform-origin:50% 85%;animation:flow-phone-breathe 6.4s ease-in-out infinite;animation-play-state:paused;transition:filter .4s}
.draw-active .flow-phones.phones-ready .remem-phone img{animation-play-state:running}
.flow-phones .remem-phone:nth-child(2) img{animation-delay:-2.1s;animation-duration:7.2s}
.flow-phones .remem-phone:nth-child(3) img{animation-delay:-4.2s;animation-duration:8.1s}
.flow-phones .remem-phone:hover img{filter:drop-shadow(0 18px 24px #0008);animation-play-state:paused}
@keyframes flow-phone-breathe{0%,100%{transform:translateY(0) rotate(-.4deg)}50%{transform:translateY(-14px) rotate(.4deg)}}
.flow-stop:before{animation:flow-dot 7.5s ease-in-out infinite;animation-delay:var(--reveal-delay);animation-play-state:paused}
.draw-active .flow-stop:before{animation-play-state:running}
@keyframes flow-dot{0%,60%,100%{box-shadow:0 0 0 0 #e5b49e00}20%{box-shadow:0 0 0 7px #e5b49e18}35%{box-shadow:0 0 0 12px #e5b49e00}}
@media(max-width:760px){
 .remem-intro-copy{margin-top:0}
 .scenario-panel .scenario-copy h3{font-size:22px}.scenario-panel .scenario-copy p{font-size:12px}
 .scene-recall .scenario-media{left:auto;right:10%;top:0;height:60%;width:auto}
 .scene-recall .scenario-copy{left:6%;width:88%;top:68%;text-align:right}
 .scene-recall .scenario-copy h3{font-size:clamp(19px,5vw,22px)}
 .remem-atmosphere .remem-peach{width:56vmax;height:50vmax;bottom:-26vmax}
 .remem-atmosphere .peach-one,.remem-atmosphere .peach-three{right:-28vmax}
 .remem-atmosphere .peach-two,.remem-atmosphere .peach-four{left:-28vmax}
}
@media(prefers-reduced-motion:reduce){
 .remem-atmosphere .remem-peach,.flow-phones .remem-phone img,.flow-stop:before{animation:none!important}
 .motion-ready .parking-stack,.motion-ready .scenario-panel .scenario-copy{opacity:1!important;transform:none!important;transition:none!important}
}

/* Figma scenario coordinates: scale the complete composition as one unit. */
.scenario-track{gap:calc(90px * var(--scene-scale,.5))}
.scenario-panel,.scenario-panel:nth-child(n){width:calc(var(--board-width,1400px) * var(--scene-scale,.5));min-width:0;height:calc(1100px * var(--scene-scale,.5));padding:0;flex:none}
.scenario-panel.scene-context{--board-width:1040px}
.scenario-panel.scene-recall{--board-width:960px}
.scenario-panel.scene-food{--board-width:900px}
.scene-layout{position:relative;width:var(--board-width,1400px);height:1100px;transform:scale(var(--scene-scale,.5));transform-origin:top left}
.scenario-panel .scenario-media{display:block;left:auto;right:auto;top:auto;width:auto;height:auto;container-type:normal;aspect-ratio:auto}
.scenario-panel .scenario-media>img{display:block;width:100%;height:100%;max-width:none;max-height:none;object-fit:contain}
.motion-ready .scenario-panel .scenario-media,.motion-ready .scenario-panel:nth-child(even) .scenario-media{transform:translateY(16px);translate:none;transition:transform 1.2s cubic-bezier(.16,1,.3,1),opacity .8s}
.motion-ready .scene-entered .scenario-panel .scenario-media{transform:none}
.scenario-panel .scenario-copy h3{font-size:32px;font-weight:300;line-height:1.25;letter-spacing:0;margin:0;text-wrap:initial}
.scenario-panel .scenario-copy p{font-size:14px;line-height:27.009px;margin:24px 0 0}
.scenario-copy strong{font-weight:600}
.scene-parking .scenario-media{left:24px;top:95px;width:992px;height:797px}
.scene-parking .scenario-copy{left:1037px;top:238px;width:283.385px}
.parking-stack{height:100%;aspect-ratio:992/797}
.scene-context .scenario-media{left:40px;top:255px;width:579.055px;height:677.608px}
.scene-context .scenario-media>img{width:498.062px;height:613.97px;margin:32px auto;transform:rotate(-8.04deg)}
.scene-context .scenario-copy{left:650px;top:681px;width:309px}
.scene-context .remem-context-note{left:610px;right:auto;top:200px;bottom:auto}
.scene-recall .scenario-media{left:487.12px;top:130px;width:406.883px;height:829.73px}
.scene-recall .scenario-copy{left:0;top:480px;width:459.701px;text-align:right}
.scene-recall .scenario-copy h3 span{display:block;white-space:nowrap}
.scene-recall .scenario-copy p{margin-top:16.15px;padding-right:6.48px}
.scene-recall .remem-notification{left:-304.119px;top:191px;width:499.658px;height:87.511px;aspect-ratio:auto;padding:12.7px 15.53px;gap:9.88px;border:.841px solid white;border-radius:22.583px;background:rgba(255,255,255,.7);box-shadow:none;backdrop-filter:blur(12px)}
.scene-recall .remem-notification>img{width:62.104px;height:62.104px;border-radius:16.938px;object-fit:cover}
.scene-recall .remem-notification p{min-width:0;flex:1;font-family:'ABC Nord','PingFang SC',sans-serif;font-size:18.349px;line-height:18.389px;margin:0;padding:0;color:#000}
.scene-recall .remem-notification p>span{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.scene-recall .remem-notification small{font-size:14.115px;line-height:18.389px;margin-top:15.125px;color:#0009;white-space:nowrap}
.scene-food .scenario-media{left:48px;top:30px;width:804.131px;height:891.497px}
.scene-food .scenario-copy{left:176px;top:977px;width:547.377px;text-align:center}
.scene-food .scenario-copy h3{white-space:nowrap}
.scene-food .scenario-copy p{margin-top:12.18px;line-height:32.161px;white-space:nowrap}
@media(max-width:760px){
 .scenario-sticky{min-height:760px}
 .scenario-heading{padding-bottom:35px}
 .scene-recall .scenario-copy h3{font-size:32px}
}
@media(prefers-reduced-motion:reduce){
 .scenario-panel,.scenario-panel:nth-child(n){height:calc(1100px * var(--scene-scale,.5));width:calc(var(--board-width,1400px) * var(--scene-scale,.5))}
}

/* Readable captions remain at UI size while the Figma artwork scales. */
.remem-project{--remem-caption-size:12px}
.goal-node p{font-size:var(--remem-caption-size)}
.scenario-sticky{height:140svh;min-height:1150px}
.scenario-track{gap:clamp(120px,10vw,210px);align-items:flex-start;padding-top:16px}
.scenario-panel.scene-parking{margin-top:calc(35px * var(--scene-scale))}
.scenario-panel.scene-context{margin-top:calc(235px * var(--scene-scale))}
.scenario-panel.scene-recall{margin-top:calc(150px * var(--scene-scale))}
.scenario-panel.scene-food{margin-top:0}
.scenario-panel .scenario-copy p{font-size:calc(var(--remem-caption-size) / var(--scene-scale,.5));line-height:1.9;white-space:normal}
.scenario-panel .scenario-copy h3{font-size:calc(23px / var(--scene-scale,.5));line-height:1.3;text-wrap:balance;white-space:normal}
.scene-recall .scenario-copy h3 span{white-space:normal}
.scene-parking .scenario-copy{width:355px}
.scene-food .scenario-copy{left:70px;width:760px}
.scenario-progress{height:80px;gap:16px}
.scenario-progress button{min-width:44px;min-height:44px;border:0;background:transparent;color:inherit;font:inherit;cursor:pointer}
.scenario-progress button:focus-visible{outline:2px solid #efb699;outline-offset:3px}
.scenario-progress .scenario-pause{min-width:80px}
@media(max-width:760px){
 .remem-project{--remem-caption-size:14px}
 .scenario-sticky{height:auto;min-height:0;overflow:visible}
 .scenario-shell{height:auto;padding-top:75px}
 .scenario-window{height:auto;overflow:visible;cursor:auto;touch-action:auto;user-select:text}
 .scenario-track{display:grid;width:100%;height:auto;gap:90px;padding:0 24px;box-sizing:border-box;transform:none!important}
 .scenario-clone{display:none!important}
 .scenario-panel,.scenario-panel:nth-child(n){width:100%;height:auto;margin:0;padding:0}
 .scene-layout{display:flex;flex-direction:column;gap:32px;width:100%;height:auto;transform:none}
 .scenario-panel .scenario-media{position:relative;inset:auto;width:100%;height:auto;aspect-ratio:auto}
 .scene-parking .scenario-media{aspect-ratio:992/797}
 .scene-context .scenario-media>img{width:80%;height:auto;max-height:440px;margin:0 auto;transform:none}
 .scene-context .remem-context-note{left:auto;right:0;top:45%;width:100px}
 .scene-recall .scenario-media{width:min(56%,230px);height:auto;aspect-ratio:406.883/829.73;margin:0 6% 0 auto;container-type:inline-size}
 .scene-recall .remem-notification{left:-74.7%;top:23%;width:122.8%;height:auto;aspect-ratio:499.658/87.511;padding:3.1cqw 3.8cqw;gap:2.43cqw;border-radius:5.55cqw}
 .scene-recall .remem-notification>img{width:15.26cqw;height:15.26cqw;border-radius:4.16cqw}
 .scene-recall .remem-notification p{font-size:4.51cqw;line-height:1.1}
 .scene-recall .remem-notification small{font-size:3.47cqw;line-height:1.3;margin-top:3.7cqw}
 .scenario-panel .scenario-copy{position:relative;inset:auto;width:100%;text-align:left}
 .scenario-panel .scenario-copy h3{font-size:23px}
 .scenario-panel .scenario-copy p{font-size:var(--remem-caption-size);line-height:1.9;margin-top:18px}
 .scene-food .scenario-copy{text-align:center}
 .scenario-progress{display:none}
}
@media(prefers-reduced-motion:reduce){
 .scenario-sticky{height:auto;min-height:0}
 .scenario-track{align-items:start;justify-items:center}
 .scenario-panel,.scenario-panel:nth-child(n){margin-top:0}
 .scenario-progress{display:none}
}

.scene-context.scenario-panel{--board-width:1350px}
.scene-context .scenario-media{left:40px;top:255px;width:579.055px;height:677.608px}
.scene-context .scenario-copy{left:650px;top:682px;width:calc(330px / var(--scene-scale,.5))}
.scenario-panel .scenario-copy h3 span{display:block;white-space:nowrap}
.scene-parking .scenario-copy{width:calc(255px / var(--scene-scale,.5))}
.scene-parking.scenario-panel{--board-width:1580px}
.scene-recall.scenario-panel{--board-width:1200px}
.scene-recall .scenario-media{left:700px}
.scene-recall .scenario-copy{left:auto;right:527px;width:calc(335px / var(--scene-scale,.5))}
.scene-context .remem-context-note{left:610px;top:-70px;right:auto;bottom:auto;width:310px;height:449px;padding:0;border:.825px solid #fff;border-radius:33px;background:rgba(227,227,227,.3);color:#242424;line-height:1.5;box-sizing:border-box;transform-origin:50% 80%}
.remem-context-note .context-question{position:absolute;left:44.5px;top:41px;width:247px;box-sizing:border-box;padding:11px 16px;border-radius:16px;background:#fff;font:14px/1.35 'ABC Nord','PingFang SC',sans-serif;color:#242424;margin:0}
.remem-context-note .context-photo{position:absolute;left:131px;top:111px;width:160px;height:90px;border-radius:16px;overflow:hidden;background:white}
.remem-context-note .context-photo img{position:absolute;left:-4px;top:-102px;width:164px;height:219px;max-width:none;margin:0;border-radius:0;object-fit:cover}
.remem-context-note .context-result{position:absolute;left:14px;top:226px;width:246px;height:90px;border-radius:24px;background:#fff;display:flex;overflow:hidden;align-items:center;gap:10px}
.remem-context-note .context-result>img{width:90px;height:90px;object-fit:cover;object-position:center 25%;margin:0;border-radius:24px;flex:none}
.remem-context-note .context-result>div{width:134px}
.remem-context-note .context-result span{font:10.7px/1.3 'ABC Nord','PingFang SC',sans-serif;color:#111}
.remem-context-note .context-result small{font:11.5px/1.3 'ABC Nord','PingFang SC',sans-serif;color:#ff4202}
.remem-context-note .context-result em{font-size:8.2px;color:#111;font-style:normal}
.remem-context-note .context-chart{position:relative;height:27px;margin-top:4px}
.remem-context-note .context-chart img{position:absolute;inset:0;width:124px;height:26px;margin:0;border-radius:0}
.remem-context-note .context-dates{font:5px 'ABC Nord','PingFang SC',sans-serif;color:#888;display:flex;justify-content:space-between;width:124px}
.remem-context-note .context-dates b{color:#222}
.remem-context-note .context-summary{position:absolute;left:14px;top:327px;width:276px;margin:0;font:14px/21.45px 'ABC Nord','PingFang SC',sans-serif;color:#242424}
.remem-context-note .context-summary strong{font-weight:500}
.scenario-progress button{transition:color .18s,background-color .18s;border-radius:50%}
.scenario-progress button:hover{color:#fff;background:#ffffff0d}
.scenario-progress button:active{background:#ffffff1c}
@media(max-width:760px){
 .scene-context .scenario-media{left:auto;top:auto;width:100%;height:auto;padding-bottom:20px}
 .scene-context .scenario-media>img{width:66%;margin-left:0;margin-right:auto}
 .scene-context .remem-context-note{left:auto;right:0;top:0;scale:.42;transform-origin:top right}
 .scene-context .scenario-copy,.scene-parking .scenario-copy,.scene-recall .scenario-copy{left:auto;right:auto;top:auto;width:100%}
 .scene-recall .scenario-media{left:auto}
 .scenario-panel .scenario-copy h3{font-size:clamp(18px,5.25vw,23px)}
}

@media(min-width:761px) and (prefers-reduced-motion:no-preference){
 .scenario-panel.scene-context{margin-right:calc(-1 * clamp(120px,10vw,210px))}
 .scenario-panel.scene-recall{margin-right:clamp(100px,8vw,160px)}
 .scenario-panel.scene-food{margin-right:clamp(100px,8vw,160px)}
}

.scenario-decoration{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0;mask-image:linear-gradient(transparent,#000 14%,#000 85%,transparent)}
.scenario-track{z-index:1}
.scenario-arc{position:absolute;inset:0;opacity:.13}
.scenario-arc svg{display:block;width:100%;height:100%;overflow:visible}
.scenario-arc path{stroke:#c7b6a5;stroke-width:.65;vector-effect:non-scaling-stroke}
.scenario-arc.arc-far{opacity:.075}
.scenario-spark{position:absolute;width:3px;height:3px;border-radius:50%;background:#d9bda7;opacity:.2;box-shadow:0 0 9px 2px #d9bda719}
.spark-one{left:17%;top:76%}.spark-two{left:57%;top:21%}.spark-three{right:13%;top:70%}
@media(max-width:760px){.scenario-decoration{display:none}}
@media(prefers-reduced-motion:reduce){.scenario-decoration{display:none}}

/* Separate PSD planes: the UI unfolds from the phone when entering view. */
.memory-exploded{position:relative;width:100%;margin:0;isolation:isolate}
.memory-exploded-stage{position:relative;width:100%;aspect-ratio:7/5}
.memory-plane{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;pointer-events:none;user-select:none}
.memory-plane-0{z-index:0}
.memory-plane:not(.memory-plane-0){opacity:0;transform-origin:52% 77%;transition:transform 1.65s cubic-bezier(.22,1,.36,1),opacity .65s ease;filter:drop-shadow(0 14px 14px #0003)}
.memory-plane-1{z-index:1;transform:translate(-7%,27%) rotate(10deg) scale(.88)}
.memory-plane-2{z-index:2;transform:translate(13%,40%) rotate(-20deg) scale(.88)}
.memory-plane-3{z-index:3;transform:translate(2%,57%) rotate(-14deg) scale(.88)}
.memory-exploded.is-expanded .memory-plane:not(.memory-plane-0){opacity:1;transform:translate(0,0) rotate(0deg) scale(1)}
.memory-exploded.is-expanded .memory-plane-1{transition-delay:0s}
.memory-exploded.is-expanded .memory-plane-2{transition-delay:.16s}
.memory-exploded.is-expanded .memory-plane-3{transition-delay:.32s}
.memory-replay{display:flex;align-items:center;gap:7px;margin:8px auto 0;padding:9px 14px;border:1px solid #e7bda62b;border-radius:24px;background:transparent;color:var(--site-muted);font:inherit;font-size:11px;cursor:pointer;transition:color .2s,border-color .2s}
.memory-replay span{font-size:17px;line-height:1}
.memory-replay:focus-visible{outline:2px solid #e7bda6;outline-offset:4px}
@media(hover:hover){.memory-replay:hover{color:#e7bda6;border-color:#e7bda677}}
@media(max-width:760px){.memory-system:has(.memory-exploded){grid-template-columns:1fr;gap:25px}.memory-system:has(.memory-exploded) ol{height:auto;display:flex;flex-direction:row;gap:8px}.memory-system:has(.memory-exploded) li{flex:1}.memory-system:has(.memory-exploded) li span{font-size:10px;padding:7px 3px}.memory-replay{font-size:10px}}
@media(prefers-reduced-motion:reduce){.memory-exploded .memory-plane{opacity:1!important;transform:none!important;transition:none!important}.memory-replay{display:none}}

.memory-exploded:not(.is-expanded) .memory-plane:not(.memory-plane-0){transition-duration:.45s,.2s;transition-delay:0s}

.parking-exploded{isolation:isolate;overflow:visible;perspective:none}
.parking-exploded .parking-layer{inset:auto;left:-38.26087%;top:-24.45652%;width:173.91304%;height:145.10870%;max-width:none;object-fit:fill;clip-path:none;animation:none!important;transform-origin:50% 60%;opacity:1}
.parking-exploded .parking-phone{z-index:0}
.parking-exploded .parking-memory{z-index:1}
.parking-exploded .parking-route{z-index:2;filter:drop-shadow(0 12px 14px #0004)}
.parking-exploded .parking-navigation{z-index:3;filter:drop-shadow(0 18px 18px #0004)}
.motion-ready .parking-exploded,.scene-entered .panel-seen .parking-exploded{opacity:1;transform:none;transition:none}
.scene-parking .scenario-media{top:55px}
.scene-parking .scenario-copy{top:280px}
.parking-replay{display:inline-flex;align-items:center;gap:9px;margin-top:28px;padding:9px 0;border:0;background:transparent;color:#c0b3a7;font:inherit;font-size:14px;cursor:pointer;transition:color .2s}
.parking-replay span{font-size:21px;line-height:1}
.parking-replay:hover{color:#f4dbc5}
.parking-replay:focus-visible{outline:2px solid #e7bda6;outline-offset:6px;border-radius:3px}
@media(max-width:760px){.scene-parking .scenario-media{top:auto}.scene-parking .scenario-copy{top:auto}.parking-replay{font-size:12px;margin-top:20px}.scene-parking .scene-layout{gap:22px}}
@media(prefers-reduced-motion:reduce){.parking-exploded .parking-layer{opacity:1!important;transform:none!important}.parking-replay{display:none}}
@media(min-width:761px){
 .scene-parking .scenario-copy{width:calc(clamp(280px,23vw,370px) / var(--scene-scale,.5))}
 .scene-parking .scenario-copy h3{font-size:calc(clamp(28px,2.2vw,40px) / var(--scene-scale,.5));line-height:1.22}
 .scene-parking .scenario-copy p{font-size:calc(14px / var(--scene-scale,.5));line-height:1.9}
 .scene-parking .parking-replay{font-size:calc(12px / var(--scene-scale,.5))}
 .scene-parking .parking-replay span{font-size:calc(17px / var(--scene-scale,.5))}
}

.memory-exploded:has(.memory-replay){padding-bottom:44px}
.memory-replay,.scene-parking .parking-replay{position:absolute;right:0;bottom:0;width:44px;height:44px;min-width:44px;min-height:44px;margin:0;padding:0;display:grid;place-items:center;border:0;border-radius:50%;background:transparent;color:#b9aea4;cursor:pointer}
.memory-replay svg,.parking-replay svg{width:18px;height:18px}
.scene-parking .parking-replay{right:32px;bottom:35px;width:calc(44px / var(--scene-scale,.5));height:calc(44px / var(--scene-scale,.5))}
.scene-parking .parking-replay svg{width:calc(18px / var(--scene-scale,.5));height:calc(18px / var(--scene-scale,.5))}
.memory-replay:hover,.parking-replay:hover{background:#ffffff08;color:#f4dbc5}
.scenario-arc{opacity:.19}.scenario-arc.arc-far{opacity:.12}
@media(max-width:760px){.scene-parking .scene-layout{padding-bottom:50px}.scene-parking .parking-replay{right:0;bottom:0;width:44px;height:44px}.scene-parking .parking-replay svg{width:18px;height:18px}}
@media(prefers-reduced-motion:reduce){.memory-replay,.scene-parking .parking-replay{display:none}}

.memory-plane:not(.memory-plane-0),.parking-exploded .parking-route,.parking-exploded .parking-navigation{filter:none}
.scene-parking .scenario-copy .parking-replay{position:relative;right:auto;bottom:auto;margin-top:calc(12px / var(--scene-scale,.5));margin-left:calc(-12px / var(--scene-scale,.5));color:#c8bfb7}
.memory-replay svg,.parking-replay svg{transition:transform .35s cubic-bezier(.22,1,.36,1)}
.memory-replay:hover svg,.parking-replay:hover svg{transform:rotate(35deg)}
.memory-lockscreen-plane{position:absolute;left:0;top:0;width:1680px;height:1200px;z-index:1;pointer-events:none;transform:scale(var(--memory-canvas-scale,1))}
.memory-lockscreen{position:absolute;left:0;top:0;width:1500px;height:3248px;transform-origin:0 0;border-radius:150px;overflow:hidden;transform:matrix3d(-0.06303746920575352,0.07203217363169215,0,-9.08049204948788e-05,-0.27045779638059014,0.06379740342553653,0,3.989744634116808e-06,0,0,1,0,1278.5056052145744,644.0883814567974,0,1);}
.memory-lockscreen img{width:100%;height:100%;object-fit:fill}
.memory-lockscreen-plane{transform-origin:0 0;}
@media(max-width:760px){.scene-parking .scenario-copy .parking-replay{margin-top:12px;margin-left:-12px}}
@media(prefers-reduced-motion:reduce){.memory-replay svg,.parking-replay svg{transition:none}}

.hardware-pair{position:absolute;width:600px;height:600px;left:50%;top:50%;transform:translate(-50%,-50%);pointer-events:none}
.hardware-piece{position:absolute;inset:0;transform-origin:37% 44%}
.hardware-right{transform-origin:62% 56%}
.hardware-piece img{display:block;width:100%;height:100%;max-width:none;object-fit:contain}
.hardware-left img{clip-path:inset(0 50% 0 0)}
.hardware-right img{clip-path:inset(0 0 0 50%)}
@media(max-width:1000px){.hardware-pair{width:500px;height:500px}}
@media(max-width:760px){.hardware-pair{width:460px;height:460px}.goal-node:before{mask-image:none}}
@media(prefers-reduced-motion:reduce){.hardware-piece{transform:none!important}}
.remem-goals{position:relative;isolation:isolate}.goal-lines{color:#e5b49e;opacity:.7}.goal-node{background:transparent}.goals-fluid{position:absolute;inset:-10% -10%;overflow:hidden;z-index:-1;pointer-events:none;filter:blur(55px)}.goals-fluid i{position:absolute;width:55%;height:60%;border-radius:48% 52% 60% 40%;background:radial-gradient(ellipse,#c1795438, #a85d3320 45%,transparent 72%);left:15%;top:15%;animation:goals-current 9s ease-in-out infinite}.goals-fluid i:nth-child(2){left:45%;top:20%;animation-delay:-4.5s}.goals-fluid i:nth-child(3){left:8%;top:38%;animation-delay:-2s}.goals-fluid i:nth-child(4){left:42%;top:35%;animation-delay:-6.5s}@keyframes goals-current{0%,100%{transform:translate(-10%,5%) rotate(-15deg) scale(.8)}33%{transform:translate(18%,-10%) rotate(20deg) scale(1.15)}66%{transform:translate(-5%,12%) rotate(40deg) scale(.95)}}@media(prefers-reduced-motion:reduce){.goals-fluid i{animation:none}}

/* One typography scale for all scenario captions. */
.scenario-panel .scenario-copy{font-family:var(--sans,'ABC Nord','PingFang SC',sans-serif)}
.scenario-panel .scenario-copy h3{font-family:inherit;font-weight:300;letter-spacing:0}
.scenario-panel .scenario-copy p,.scenario-panel .scenario-copy strong{font-family:inherit;font-weight:400}
@media(min-width:761px){
 .scenario-panel .scenario-copy h3{font-size:calc(23px / var(--scene-scale,.5));line-height:1.3}
 .scenario-panel .scenario-copy p{font-size:calc(14px / var(--scene-scale,.5));line-height:1.9}
}

.remem-film video{width:calc(100% - 48px);max-width:960px;height:auto;max-height:none;aspect-ratio:auto;margin-inline:auto;object-fit:contain;position:relative;z-index:1;pointer-events:auto}
