@font-face{font-family:Manrope;src:url(./fonts/manrope-latin-wght-normal.woff2) format("woff2");font-style:normal;font-weight:200 800;font-display:swap}:root{--paper: #eeede9;--ink: #242422;--muted: #686760;--red: #962d25;--line: #cccac3;--panel: #faf9f6;--font: Manrope, Helvetica, Arial, sans-serif;color-scheme:light;font-family:var(--font);color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-color:#aba79e var(--paper);scrollbar-width:thin}body,h1,h2,p{margin:0}h1,h2{font-weight:500;letter-spacing:-.04em;line-height:1.08;text-wrap:balance}button,input,select{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:wait;opacity:.5}a{color:inherit;text-underline-offset:5px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,canvas:focus-visible{outline:2px solid var(--red);outline-offset:5px}::selection{background:var(--red);color:#fff}input{caret-color:var(--red)}svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}[hidden]{display:none!important}.skip-link{position:fixed;top:10px;left:20px;z-index:30;transform:translateY(-160%);padding:12px;background:var(--panel)}.skip-link:focus{transform:none}#stage{position:fixed;inset:0;z-index:0;transition:opacity .25s}#scene{display:block;width:100vw;height:100dvh;outline-offset:-6px;touch-action:pan-y pinch-zoom}#finger-overlay{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;opacity:0;overflow:hidden;stroke:#962d25a6;stroke-width:1.5;fill:#962d2533}#finger-overlay .thumb-marker{stroke:#faf9f6cc;fill:#faf9f640}.site-header{position:absolute;top:0;left:0;right:0;height:100px;padding:0 4%;display:flex;align-items:center;z-index:5}.wordmark{display:inline-flex;align-items:baseline;gap:4px;font-size:33px;font-weight:800;letter-spacing:-.04em;text-decoration:none}.brand-dot{width:6px;height:6px;border-radius:50%;background:var(--red)}#story{position:relative;z-index:1;pointer-events:none}#story :is(h1,h2,p,a,button,input,fieldset,details,img){pointer-events:auto}.chapter{position:relative;min-height:125svh;padding:22svh 0 35svh}.chapter-copy{position:sticky;top:22svh;width:31%;max-width:480px;margin-left:7%}.chapter-copy h2{font-size:clamp(40px,4vw,66px)}.chapter-copy>p{font-size:clamp(15px,1.05vw,18px);line-height:1.85;color:var(--muted);margin-top:26px}.chapter-copy>p+p{margin-top:16px}.chapter.hero{height:100svh;min-height:650px;padding:0}.hero-copy{position:absolute;top:15%;left:8%;right:6%}.hero-copy h1{font-size:clamp(42px,4.4vw,80px);text-wrap:nowrap}.hero-copy p{font-size:clamp(14px,1.08vw,18px);line-height:1.8;color:var(--muted);margin-top:25px}.hero-bottom{position:absolute;left:4%;right:4%;bottom:28px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:12px;color:var(--muted)}.scroll-cue{display:flex;align-items:center;gap:12px;min-height:44px;text-decoration:none}.scroll-line{width:1px;height:32px;background:#99978f;position:relative}.scroll-line:after{content:"";position:absolute;bottom:0;left:-3px;width:6px;height:6px;border-bottom:1px solid currentColor;border-right:1px solid currentColor;transform:rotate(45deg)}.hero-updates{display:flex;align-items:center;gap:12px;min-height:44px;text-decoration:none}.text-button{border:0;background:transparent;padding:10px 0;min-height:44px;display:inline-flex;align-items:center;gap:18px;font-size:13px;font-weight:600;color:var(--ink);text-align:left}.chapter-copy>.text-button{margin-top:20px}.text-button:hover,.text-link:hover,.hero-updates:hover{color:var(--red)}.primary-button,.secondary-button{border:0;border-radius:30px;padding:14px 22px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:14px;font-size:13px;font-weight:600;text-decoration:none;transition:background .2s}.primary-button{background:var(--ink);color:var(--panel)}.primary-button:hover{background:var(--red)}.secondary-button{background:#e7e5de;color:var(--ink)}.secondary-button[aria-pressed=true]{background:#d4d0c6}.keycap-options{margin:28px 0 0;padding:0;border:0;min-width:0}.keycap-options legend{font-size:12px;color:var(--muted);margin-bottom:12px;padding:0}.keycap-buttons{display:flex;flex-wrap:wrap;gap:8px}.keycap-buttons button{border:1px solid var(--line);background:transparent;border-radius:24px;min-height:44px;padding:10px 14px;font-size:12px;color:var(--ink);transition:background .2s,color .2s}.keycap-buttons button:hover{border-color:var(--ink)}.keycap-buttons button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--panel)}.volume-control{display:none}.screen-controls{margin-top:24px;max-width:285px;pointer-events:auto}.screen-controls label,.toolbar-group label{display:flex;justify-content:space-between;gap:16px;font-size:12px}input[type=range]{width:100%;height:36px;accent-color:var(--red);cursor:pointer;margin:0}output{font-variant-numeric:tabular-nums;color:var(--muted)}.chapter-nav{position:fixed;right:15px;top:50%;transform:translateY(-50%);z-index:5;display:flex;flex-direction:column;transition:opacity .2s}.chapter-nav a{display:block;width:30px;height:34px;position:relative}.chapter-nav a:after{content:"";position:absolute;width:5px;height:5px;top:14px;left:12px;border-radius:50%;background:#aaa79f;transition:transform .25s,background .25s}.chapter-nav a.active:after{background:var(--red);transform:scale(1.4)}.past-product .chapter-nav{opacity:0;visibility:hidden}.project-details{position:relative;background:var(--panel);padding:130px 8% 0;pointer-events:auto}.project-details h2{font-size:clamp(36px,3.7vw,60px)}.project-details p{font-size:16px;line-height:1.85;color:var(--muted)}.about-section{max-width:1040px;margin:0 auto;padding-bottom:104px}.maker-intro{display:grid;grid-template-columns:145px minmax(0,1fr);align-items:start;gap:40px;max-width:840px;margin-inline:auto}.portrait{width:100%;height:auto;max-width:390px;border-radius:3px}.about-section p{margin:24px 0 16px;max-width:55ch}.about-intro p+p{margin-top:0}.prototype-story{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start;margin-top:64px}.prototype-story figure{margin:0;min-width:0}.prototype-story figure+figure{margin-top:48px}.prototype-story img{display:block;width:100%;height:auto;border-radius:3px}.prototype-story figcaption{margin-top:24px}.prototype-story p{margin:0;max-width:49ch}.photo-prints .portrait-photo{width:100%;max-width:145px;padding:6px;background:var(--panel);box-shadow:0 12px 32px #2424222e;transform:rotate(-1deg)}.photo-prints .portrait-photo img{display:block;max-width:none;border-radius:1px}.photo-prints .story-photo{padding:8px;background:var(--panel);box-shadow:0 14px 32px #2424222e;transform:rotate(-1deg)}.photo-prints .prototype-story figure:nth-child(2) .story-photo{transform:rotate(1deg)}.photo-prints .story-photo img{border-radius:1px}.photo-prints .prototype-story figcaption{margin-top:24px;padding-inline:8px}.photo-prints .prototype-story p{margin-top:0}.text-link{font-size:14px;text-decoration:none;display:inline-flex;align-items:center;gap:16px;min-height:44px}.updates-section{border-top:1px solid var(--line);padding:90px 0;display:grid;grid-template-columns:1fr 1fr;gap:10%;max-width:1150px;margin:auto;scroll-margin-top:50px}.updates-section p{margin-top:24px;max-width:43ch}.signup-panel{padding-top:4px;align-self:center;min-width:0}#newsletter-form label{display:block;font-size:14px;font-weight:600;margin-bottom:10px}.signup-fields{display:flex;flex-wrap:wrap;align-items:stretch;gap:12px}.signup-fields input{flex:1 1 200px;min-width:0;width:100%;min-height:52px;padding:13px 18px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--ink);font-size:16px}.signup-fields input::placeholder{color:var(--muted);opacity:1}.signup-fields input:hover{border-color:var(--muted)}.signup-fields input:user-invalid{border-color:var(--red)}.signup-fields .primary-button{min-height:52px}.signup-panel #newsletter-help{font-size:13px;margin-top:12px;line-height:1.65}.signup-panel .project-status{font-size:13px;line-height:1.8}.faq-section{display:grid;grid-template-columns:1fr 1fr;gap:10%;border-top:1px solid var(--line);padding:90px 0 120px;max-width:1150px;margin:auto}.faq-section h2{max-width:8ch}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{list-style:none;font-size:15px;font-weight:600;cursor:pointer;padding:24px 36px 24px 0;position:relative}.faq-list details:first-child summary{padding-top:10px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:"+";position:absolute;right:0;font-weight:400;font-size:22px;top:19px}.faq-list details:first-child summary:after{top:5px}.faq-list details[open] summary:after{content:"\2212"}.faq-list p{padding-bottom:25px;font-size:14px}.site-footer{border-top:1px solid var(--line);padding:30px 0;display:flex;align-items:center;justify-content:space-between;gap:24px;font-size:12px;color:var(--muted)}.site-footer>div{display:flex;align-items:center;gap:36px}.site-footer a{text-decoration:none}.site-footer .wordmark{color:var(--ink)}.sound-toggle{position:fixed;top:28px;right:4%;z-index:7;display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:1px solid var(--line);border-radius:50%;background:var(--paper);color:var(--ink)}.sound-muted,.sound-toggle[aria-pressed=false] .sound-waves{display:none}.sound-toggle[aria-pressed=false] .sound-muted{display:block}.sound-toggle:hover{border-color:var(--ink)}#loading{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}#scene{opacity:0}.loaded #scene{opacity:1}.poster-away #scene{transition:opacity .3s ease-out}.loaded #loading{opacity:0;visibility:hidden}#error{position:absolute;top:30%;left:50%;width:min(500px,90vw);transform:translate(-50%);background:var(--panel);padding:30px;z-index:10;border-radius:12px;pointer-events:auto}#error h2{font-size:30px}#error p{font-size:14px;line-height:1.7;margin:20px 0}#error button{border:0;background:var(--ink);color:#fff;padding:12px 20px;border-radius:24px;margin-right:20px}#error a{font-size:12px}.status-message{position:fixed;bottom:30px;left:50%;transform:translate(-50%,20px);background:var(--ink);color:var(--paper);padding:12px 20px;border-radius:24px;z-index:20;opacity:0;pointer-events:none;font-size:12px;transition:opacity .2s,transform .2s}.status-message.visible{opacity:1;transform:translate(-50%)}#studio{position:fixed;inset:0;z-index:6;pointer-events:none}#studio :is(button,input,select){pointer-events:auto}.studio-heading{position:absolute;left:4%;top:110px}.studio-heading h1{font-size:44px}.studio-heading p{font-size:12px;color:var(--muted);margin-top:12px}.close-studio{position:absolute;right:4%;top:30px;width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;background:var(--panel)}.studio-toolbar{position:absolute;bottom:58px;left:4%;right:4%;display:flex;align-items:end;justify-content:center;gap:30px;padding:20px 26px;background:var(--panel);border-radius:14px;box-shadow:0 12px 34px #30291b14;pointer-events:auto}.toolbar-group{display:flex;flex-direction:column;gap:10px}.control-label,.toolbar-group>label{font-size:11px;color:var(--muted)}select{min-height:42px;max-width:200px;background:transparent;border:1px solid var(--line);border-radius:7px;padding:8px 26px 8px 10px;font-size:12px;color:var(--ink)}.segmented{display:flex;background:#eae8e2;border-radius:8px;padding:3px}.segmented button{font-size:11px;border:0;background:transparent;color:var(--muted);padding:10px 12px;border-radius:6px;white-space:nowrap}.segmented button[aria-pressed=true]{background:var(--panel);color:var(--ink)}.assembly-control{min-width:150px;padding-bottom:10px}.export-control{flex-direction:row;gap:8px}.export-control button{white-space:nowrap}.studio-hint{position:absolute;bottom:24px;width:100%;text-align:center;font-size:11px;color:var(--muted)}.studio-mode{overflow:hidden}.studio-mode #story,.studio-mode .chapter-nav{display:none}.studio-mode #scene{touch-action:none}.studio-mode .sound-toggle{top:30px;right:calc(4% + 56px)}@media(max-width:1200px){.studio-toolbar{gap:16px;flex-wrap:wrap}.toolbar-group{flex:1}.export-control{flex:0}}@media(max-width:1000px),(max-width:1200px)and (orientation:portrait){:root{--mobile-stage-height: clamp(245px, 42svh, 470px)}body:not(.studio-mode) #stage{inset:auto 0 0;height:calc(var(--mobile-stage-height) + env(safe-area-inset-bottom));z-index:3;overflow:hidden;pointer-events:none}body:not(.studio-mode) #stage:before{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgb(238 237 233 / 0),rgb(238 237 233 / .92) 18%,var(--paper) 48%)}body:not(.studio-mode) #stage:after{content:"";position:absolute;top:26px;left:20px;right:20px;height:1px;background:linear-gradient(to right,transparent,rgb(104 103 96 / .18),transparent)}body:not(.studio-mode) #scene{position:absolute;bottom:0;left:0;pointer-events:none}body.past-product:not(.studio-mode) #stage{opacity:0!important;visibility:hidden!important}.site-header{height:88px;padding:env(safe-area-inset-top) max(20px,env(safe-area-inset-right)) 0 max(20px,env(safe-area-inset-left))}.wordmark{font-size:30px}.chapter,.chapter.hero{height:auto;min-height:115svh;padding:64px max(24px,env(safe-area-inset-right)) calc(var(--mobile-stage-height) + 100px) max(24px,env(safe-area-inset-left))}.chapter.hero{min-height:100svh;padding-top:calc(116px + env(safe-area-inset-top));padding-bottom:calc(var(--mobile-stage-height) + 48px)}.hero-copy,.chapter-copy{position:static;max-width:580px;width:100%;margin:0 auto}.hero-copy h1{font-size:clamp(34px,8.6vw,66px);line-height:1.1;text-wrap:balance}.hero-copy h1 br,.hero-copy p br{display:none}.hero-copy p,.chapter-copy>p{font-size:16px;line-height:1.75;max-width:42ch;margin-top:23px}.chapter-copy h2{font-size:clamp(36px,8.9vw,60px);line-height:1.1}.hero-bottom{position:static;margin:24px auto 0;max-width:580px;width:100%;font-size:12px}.hero-updates,.chapter-nav{display:none}.screen-controls{max-width:320px}.volume-control{display:block}.screen-controls label{font-size:13px}.text-button{font-size:14px}input[type=range]{height:44px}.keycap-buttons button{font-size:12px;padding:10px 13px}.project-details{z-index:4;padding:72px max(24px,env(safe-area-inset-right)) 0 max(24px,env(safe-area-inset-left))}.about-section,.updates-section,.faq-section{grid-template-columns:1fr;gap:32px;max-width:580px}.about-section{padding-bottom:64px}.maker-intro{grid-template-columns:85px minmax(0,1fr);gap:24px;align-items:center}.about-intro{display:contents}.about-intro h2{grid-column:2}.maker-intro .about-intro>p,.maker-intro .text-link{grid-column:1 / -1;margin:0}.portrait{max-width:230px}.photo-prints .portrait-photo{max-width:85px;padding:4px}.prototype-story{grid-template-columns:1fr;gap:40px;margin-top:40px}.prototype-story figure+figure{margin-top:0}.photo-prints .prototype-story figcaption{margin-top:20px}.project-details h2{font-size:clamp(36px,8.9vw,52px)}.project-details p{font-size:15px}.updates-section,.faq-section{padding:60px 0}.faq-section h2{max-width:none}.site-footer{flex-direction:column;align-items:start;padding-bottom:calc(26px + env(safe-area-inset-bottom))}.site-footer>div{flex-direction:column;align-items:start;gap:12px}.sound-toggle{top:calc(22px + env(safe-area-inset-top));right:max(20px,env(safe-area-inset-right));background:var(--panel)}#error{top:30px;padding:20px}#error h2{font-size:23px}#error p{margin:12px 0}#studio{height:100dvh}.studio-heading{top:calc(96px + env(safe-area-inset-top));left:max(20px,env(safe-area-inset-left));right:20px}.studio-heading h1{font-size:32px}.studio-heading p{font-size:14px;line-height:1.5;margin-top:8px}.close-studio{top:calc(22px + env(safe-area-inset-top));right:max(20px,env(safe-area-inset-right))}.studio-mode .sound-toggle{top:calc(22px + env(safe-area-inset-top));right:calc(max(20px,env(safe-area-inset-right)) + 56px)}.studio-toolbar{bottom:0;left:0;right:0;padding:18px max(20px,env(safe-area-inset-right)) calc(18px + env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left));display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px 18px;align-items:center;border-radius:14px 14px 0 0;max-height:50dvh;overflow-y:auto;overscroll-behavior:contain}.toolbar-group{gap:6px;min-width:0}.toolbar-group label,.control-label{font-size:12px}.toolbar-group select{max-width:none;width:100%;min-height:44px;font-size:16px}.studio-toolbar .toolbar-group:nth-child(2){grid-column:1 / -1;grid-row:2}.segmented button{min-height:44px;flex:1;font-size:12px;padding:8px}.assembly-control{padding:0;min-width:0}.export-control{grid-column:1 / -1;display:flex;gap:10px}.export-control button{flex:1;padding:12px;font-size:12px}.studio-hint{display:none}.status-message{bottom:calc(24px + env(safe-area-inset-bottom));max-width:calc(100% - 40px);width:max-content;text-align:center;font-size:13px}.studio-mode .status-message{bottom:52dvh}}@media(max-width:1000px)and (max-height:500px)and (orientation:landscape){:root{--mobile-stage-height: 44svh}.hero-copy h1{font-size:42px}.studio-heading{top:88px;right:calc(42% + 20px)}.studio-heading h1{font-size:26px}.studio-toolbar{top:88px;bottom:12px;left:auto;right:max(12px,env(safe-area-inset-right));width:40%;max-height:none;padding:14px;border-radius:14px}}@media(prefers-reduced-motion:reduce){.poster-away #scene{transition:none}html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
