:root{--paper:#f5f5f1;--ink:#191919;--muted:#62625d;--accent:#e94020;--line:#d0d0ca;--ease:cubic-bezier(.16,1,.3,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.5 Switzer,sans-serif}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;border:0;background:none}a{color:inherit;text-decoration:none}img,video{max-width:100%;display:block}svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--accent);outline-offset:5px}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:500;letter-spacing:-.04em;line-height:1.02}h2{font-size:clamp(48px,5.5vw,84px)}h3{font-size:28px;letter-spacing:-.025em}p{max-width:68ch}::selection{background:var(--accent);color:white}.section-pad{padding:110px 4vw}.header{position:absolute;z-index:5;top:0;left:0;width:100%;padding:26px 4vw;display:flex;justify-content:space-between;align-items:center}.wordmark{font-size:37px;font-weight:600;letter-spacing:-.04em;line-height:1}.header nav{display:flex;gap:38px;align-items:center;font-size:14px}.header nav a{display:flex;gap:10px;align-items:center}.header nav a:hover{text-decoration:underline;text-underline-offset:6px}.header nav svg{width:18px}.menu-toggle{display:none}.table-stage{position:relative;height:55vw;min-height:720px;max-height:1000px;overflow:hidden;background:#ecece6}.table-art{position:absolute;left:0;top:0;width:100%;aspect-ratio:3/2}.table-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-copy{position:relative;z-index:2;padding:105px 4vw 0;pointer-events:none}.hero-copy a{pointer-events:auto}.hero h1{font-size:clamp(78px,8.2vw,145px);line-height:.98;max-width:900px;letter-spacing:-.04em}.hero-cta{display:inline-flex;align-items:center;gap:22px;font-size:25px;letter-spacing:-.025em;margin-top:34px}.round-arrow{width:62px;height:62px;border-radius:50%;background:var(--accent);color:white;display:inline-flex;align-items:center;justify-content:center;transition:transform .45s var(--ease),background .3s}.round-arrow svg{width:32px;height:32px}.hero-cta:hover .round-arrow{transform:rotate(-35deg)}.concept-note{font-size:12px;color:#565650;margin-top:20px}.projection-lines{position:absolute;inset:0;width:100%;height:100%;stroke:#fff;stroke-width:2.2;pointer-events:none}.projection-lines g{opacity:0;transition:opacity .5s}.projection-lines .leader{stroke-width:1.4}.table-stage[data-object=board] [data-outline=board],.table-stage[data-object=leaf] [data-outline=leaf],.table-stage[data-object=shape] [data-outline=shape]{opacity:1}.projection-lines g.active path{stroke-dasharray:1400;stroke-dashoffset:1400;animation:project-line 1.4s var(--ease) forwards}.object-target{position:absolute;z-index:2;padding:0}.target-leaf{left:34.3%;top:38%;width:21%;height:27.5%}.target-board{left:59%;top:46.7%;width:16%;height:20%}.target-shape{left:59.4%;top:13.5%;width:13.5%;height:23.5%}.object-target span{position:absolute;left:50%;bottom:-34px;transform:translateX(-50%) translateY(5px);white-space:nowrap;display:flex;align-items:center;gap:8px;font-size:12px;background:var(--ink);color:white;padding:8px 12px;opacity:0;transition:opacity .2s,transform .3s}.object-target span svg{width:15px;height:15px}.object-target:hover span,.object-target:focus-visible span{opacity:1;transform:translateX(-50%) translateY(0)}.object-note{position:absolute;pointer-events:none;max-width:210px;opacity:0;transform:translateY(8px);transition:opacity .35s,transform .6s var(--ease);font-size:12px;line-height:1.4;color:#252521}.object-note strong{display:block;font-size:14px;margin-bottom:6px;font-weight:500}.object-note span{display:block}.note-board{left:79.7%;top:46%}.note-leaf{left:59%;top:37%}.note-shape{left:77.2%;top:14%}.table-stage[data-object=board] .note-board,.table-stage[data-object=leaf] .note-leaf,.table-stage[data-object=shape] .note-shape{opacity:1;transform:translateY(0)}.table-stage[data-projection=off] .projection-lines g,.table-stage[data-projection=off] .object-note{opacity:0}.hardware-peek{position:absolute;z-index:3;bottom:25px;right:4vw;width:190px;background:#171c1e;color:white}.hardware-peek img{width:100%;height:105px;object-fit:cover;object-position:right}.hardware-peek>span{padding:10px 12px;display:grid;grid-template-columns:1fr 20px;align-items:center;font-size:13px}.hardware-peek small{font-size:9px;color:#bfc4c3}.hardware-peek svg{width:18px}.table-controls{background:#191919;color:white;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:23px 4vw;font-size:12px;border-bottom:1px solid #44443f}.projection-switch{display:flex;gap:16px;align-items:center}.projection-switch>span:last-child{color:#c6c6bd}#projection-toggle{padding:0;width:40px;height:24px;border-radius:16px;background:var(--accent);position:relative}#projection-toggle span{position:absolute;width:18px;height:18px;top:3px;left:19px;border-radius:50%;background:white;transition:left .25s var(--ease)}#projection-toggle[aria-checked=false]{background:#676760}#projection-toggle[aria-checked=false] span{left:3px}#table-hint{color:#bfbfb6;margin-right:auto;margin-left:25px}#demo-play{display:flex;align-items:center;gap:12px;color:white}#demo-play svg{width:17px;height:17px}.mobile-object-note{display:none}.manifesto{background:var(--ink);color:var(--paper);display:grid;grid-template-columns:1.25fr 1fr;gap:8vw;padding-block:90px 110px}.manifesto h2{font-size:clamp(54px,6.1vw,94px);line-height:1.03}.manifesto h2 span{color:#96968d}.large-copy{font-size:clamp(24px,2.2vw,34px);line-height:1.25;letter-spacing:-.025em;margin-bottom:24px}.manifesto p:not(.large-copy){font-size:16px;color:#b8b8ae;max-width:470px}.film-link{display:flex;align-items:center;gap:14px;padding:0;margin-top:30px;font-size:15px;color:var(--paper)}.round-arrow.small{width:40px;height:40px;background:#f5f5f1;color:#191919}.round-arrow.small svg{width:17px;height:17px}.duration{font-size:11px;color:#b8b8ae;margin-left:12px}.section-intro{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-bottom:60px}.section-intro>p{max-width:410px;color:var(--muted);font-size:17px}.film-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:8vw}.film-story-small{padding-top:150px}.story-image{width:100%;display:block;padding:0;position:relative;overflow:hidden;text-align:left;background:#deded6}.story-image>img{width:100%;height:530px;object-fit:cover;object-position:center 46%;transition:transform 1s var(--ease)}.film-story-small .story-image>img{height:380px;object-position:center 53%}.story-image:hover>img{transform:scale(1.035)}.story-image video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .35s}.story-image.previewing video{opacity:1}.film-action{position:absolute;bottom:20px;left:20px;padding:10px 15px;display:flex;align-items:center;gap:12px;background:var(--paper);color:var(--ink);font-size:12px}.film-action svg{width:14px;height:14px}.story-caption{display:flex;justify-content:space-between;align-items:start;gap:25px;margin-top:25px}.story-caption h3{font-size:31px}.story-caption p{font-size:13px;color:var(--muted);padding-top:4px}.film-story-small .story-caption{display:block}.film-story-small .story-caption p{margin-top:15px}.media-disclosure{font-size:11px;color:var(--muted);margin-top:40px}.setup{background:#e7e7e1}.setup .section-intro{align-items:end}.setup .section-intro>div{width:41%;max-width:490px}.setup .section-intro>div>p:last-child{color:var(--muted);max-width:420px}.setup-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:8vw;align-items:center}.setup-viewer{background:#10191c;color:white}.stage{position:relative;height:540px;overflow:hidden;display:flex;justify-content:center}.stage>img{height:100%;width:auto;object-fit:contain}.stage-label{position:absolute;left:18px;bottom:14px;font-size:10px;color:#dadeda;background:#10191c;padding:4px 7px}.setup-controls{display:flex;gap:12px;align-items:center;padding:16px 18px;border-top:1px solid #354044;font-size:10px}.setup-controls button{padding:0;color:white;display:flex}.setup-controls label{white-space:nowrap}.setup-controls input{accent-color:var(--accent);width:100%;min-width:40px}.setup-controls output{white-space:nowrap;min-width:44px;color:#dadeda}.step{display:flex;width:100%;gap:22px;padding:30px 0;border-top:1px solid #bdbdb4;text-align:left;align-items:center}.step>span:nth-child(2){flex:1}.step strong{font-size:29px;font-weight:500;letter-spacing:-.025em;display:block}.step>span>span{display:block;font-size:13px;color:var(--muted);margin-top:9px}.step-symbol svg{width:34px;height:34px}.step.active .step-symbol,.step.active>svg{color:var(--accent)}.step.active>svg{transform:rotate(-35deg)}.step>svg{transition:transform .4s var(--ease)}#step-description{border-top:1px solid #bdbdb4;font-size:14px;color:var(--muted);padding:25px 0;min-height:100px}.plain-link{display:inline-flex;gap:20px;align-items:center;font-size:14px;text-decoration:underline;text-underline-offset:7px}.prototype{display:grid;grid-template-columns:1.1fr 1fr;gap:9vw}.prototype h2{font-size:clamp(40px,4.6vw,70px);line-height:1.08}.prototype h2 span{color:var(--muted)}.prototype-heading>p{margin-top:30px;color:var(--muted);max-width:360px}.prototype-details article{position:relative;padding:0 0 30px 30px;margin-bottom:30px;border-bottom:1px solid var(--line)}.prototype-details article:last-child{margin:0}.prototype-details h3{font-size:22px;margin-bottom:15px;letter-spacing:-.02em}.prototype-details p{font-size:14px;color:var(--muted)}.state-mark{position:absolute;top:4px;left:0;width:11px;height:11px;border-radius:50%;border:1px solid var(--accent)}.state-mark.solid{background:var(--accent)}.state-mark.dashed{border-style:dashed}.faq{padding-top:0;display:grid;grid-template-columns:1.1fr 1fr;gap:9vw}.faq h2{font-size:48px}.faq details{border-top:1px solid var(--line);padding:22px 0}.faq summary{display:flex;align-items:center;justify-content:space-between;gap:15px;cursor:pointer;list-style:none;font-size:16px}.faq summary::-webkit-details-marker{display:none}.faq summary svg{width:19px;height:19px}.faq details[open] summary svg{transform:rotate(45deg)}.faq details p{font-size:14px;color:var(--muted);margin:20px 28px 0 0;line-height:1.65}.contact{padding-top:90px;padding-bottom:25px;background:#ee4d2e;color:#161611;overflow:hidden}.contact-top{display:flex;justify-content:space-between;gap:50px}.contact h2{font-size:clamp(45px,5.5vw,84px)}.contact-top>div{min-width:310px}.contact-top p{font-size:18px}.contact .round-arrow{background:#161611;color:white}.contact .hero-cta{margin-top:25px}#copy-email{display:flex;align-items:center;gap:10px;padding:0;margin-top:24px;font-size:12px}#copy-email svg{width:15px;height:15px}#copy-status{display:block;min-height:20px;font-size:12px;margin-top:10px}.footer-wordmark{font-size:30vw;font-weight:600;letter-spacing:-.04em;line-height:.9;margin:70px 0 45px;transform-origin:left bottom;clip-path:inset(0 0 0 0)}.footer-wordmark span{color:#f6f2e8}.contact footer{border-top:1px solid #9a2e1b;display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:22px;font-size:11px}.contact footer a{display:flex;align-items:center;gap:12px}.contact footer svg{width:16px;height:16px}.skip{position:fixed;top:-100px;z-index:20;background:var(--paper);padding:15px}.skip:focus{top:10px}.svg-defs{position:absolute;width:0;height:0;overflow:hidden}dialog{padding:24px;border:0;background:var(--paper);color:var(--ink);width:calc(100% - 32px);max-width:530px;max-height:94dvh}dialog::backdrop{background:rgba(15,15,14,.88)}.dialog-top{display:flex;justify-content:space-between;gap:20px;align-items:start}.dialog-top h2{font-size:24px;letter-spacing:-.02em}.dialog-top p,.film-note{font-size:11px;color:var(--muted);margin:8px 0 18px}#close-film{padding:5px;display:flex}#film-player{width:100%;max-height:65dvh;background:#151515}.film-note{margin:15px 0 0}.hero-copy{animation:arrive .9s var(--ease) both}@keyframes arrive{from{transform:translateY(14px);opacity:.4}to{transform:translateY(0);opacity:1}}@keyframes project-line{to{stroke-dashoffset:0}}
@media(min-width:1800px){.hero-copy{padding-top:130px}.hero h1{font-size:145px}.table-stage{height:55vw;max-height:1150px}}
@media(max-width:1100px){.header nav{gap:22px}.hero-copy{padding-top:100px}.hero h1{font-size:8.5vw}.table-stage{min-height:620px}.hardware-peek{width:150px}.hardware-peek img{height:80px}.object-note{font-size:10px}.object-note strong{font-size:12px}.section-pad{padding-block:80px}.story-caption{display:block}.story-caption p{margin-top:15px}.setup-layout{gap:5vw}.step strong{font-size:23px}.stage{height:500px}.faq{padding-top:0}.contact-top>div{min-width:250px}}
@media(max-width:700px){html{scroll-padding-top:15px}.header{position:relative;padding:22px 20px;background:#f0f0eb}.wordmark{font-size:32px}.menu-toggle{display:flex;align-items:center;gap:10px;padding:6px 0;font-size:13px}.menu-toggle svg{width:18px;height:18px}.header nav{display:none;position:absolute;top:72px;left:0;right:0;background:var(--paper);padding:28px 20px;gap:23px;box-shadow:0 12px 20px #0001}.header nav.open{display:flex;flex-direction:column;align-items:start}.table-stage{min-height:0;height:auto;max-height:none;padding-top:310px;background:#f0f0eb}.hero-copy{position:absolute;top:0;padding:16px 20px 0}.hero h1{font-size:clamp(48px,12.3vw,83px);line-height:1.02;letter-spacing:-.04em}.hero-cta{font-size:20px;gap:16px;margin-top:24px}.round-arrow{width:46px;height:46px}.round-arrow svg{width:25px;height:25px}.concept-note{font-size:11px;margin-top:15px}.table-art{position:relative;aspect-ratio:3/2;width:142%;margin-left:-29.5%;margin-top:-60px;top:auto}.table-stage .table-photo{mask-image:linear-gradient(to bottom,transparent 0%,black 22%)}.projection-lines{stroke-width:3}.object-note{display:none}.object-target span{display:none}.hardware-peek{right:16px;bottom:14px;width:106px}.hardware-peek img{height:60px}.hardware-peek>span{font-size:10px;padding:7px 9px}.hardware-peek small{font-size:8px}.table-controls{padding:18px 20px;gap:16px;font-size:10px;flex-wrap:wrap}.projection-switch{gap:11px}#table-hint{display:none}#demo-play{margin-left:auto;gap:8px}#demo-play span{max-width:76px;text-align:left;line-height:1.2}.mobile-object-note{display:block;background:var(--ink);color:#c5c5ba;padding:0 20px 20px;font-size:12px;min-height:52px}.section-pad{padding:65px 20px}.manifesto{display:block;padding-top:35px}.manifesto h2{font-size:clamp(54px,13vw,80px);margin-bottom:35px}.manifesto .large-copy{font-size:25px}.manifesto p:not(.large-copy){font-size:14px}.film-link{font-size:13px}.section-intro{display:block;margin-bottom:35px}.section-intro h2{font-size:50px;margin-bottom:25px}.section-intro>p{font-size:15px}.film-grid{display:block}.film-story-small{padding-top:45px}.story-image>img{height:390px}.film-story-small .story-image>img{height:330px}.story-caption{display:flex;gap:20px;margin-top:20px}.story-caption h3{font-size:25px}.story-caption p{font-size:11px;margin:0;max-width:150px}.film-story-small .story-caption{display:flex}.film-story-small .story-caption p{margin:0}.film-action{left:14px;bottom:14px;font-size:11px}.media-disclosure{font-size:10px;margin-top:30px}.setup .section-intro>div{width:100%;max-width:none}.setup .section-intro h2{font-size:65px}.setup .large-copy{font-size:26px}.setup .section-intro>div>p:last-child{font-size:14px}.setup-layout{display:block}.stage{height:465px}.setup-controls{gap:10px;padding:14px 12px}.setup-controls label{font-size:9px}.steps{margin-top:30px}.step{gap:17px;padding:24px 0}.step strong{font-size:26px}.step>span>span{font-size:12px}.step-symbol svg{width:27px;height:27px}#step-description{font-size:13px;min-height:90px}.prototype{display:block}.prototype h2{font-size:clamp(33px,8.7vw,52px)}.prototype-heading>p{font-size:14px;margin-top:22px}.prototype-details{margin-top:40px}.prototype-details h3{font-size:21px}.prototype-details p{font-size:13px}.faq{display:block;padding-top:0}.faq h2{font-size:40px;margin-bottom:30px}.faq summary{font-size:14px}.faq details p{font-size:13px}.contact-top{display:block}.contact h2{font-size:clamp(40px,10vw,65px);margin-bottom:30px}.contact-top p{font-size:16px}.contact .hero-cta{font-size:21px}.footer-wordmark{font-size:30vw;margin:55px 0 30px}.contact footer{flex-wrap:wrap;font-size:10px;gap:15px}.contact footer>span{width:100%}.contact footer a:last-child{margin-left:auto}.contact{padding-bottom:25px}dialog{padding:18px}.dialog-top h2{font-size:22px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
@media(prefers-reduced-motion:reduce){.projection-lines g.active path{stroke-dashoffset:0}}
@media(max-width:700px){.setup .section-intro h2{font-size:clamp(48px,16vw,65px)}.step>span:nth-child(2){min-width:0}}

.contact :is(a,button):focus-visible{outline-color:#161611}
