@font-face{font-family:Funnel Display Variable;font-style:normal;font-display:swap;font-weight:300 800;src:url(/joinery/assets/funnel-display-latin-ext-wght-normal-DxkvHKaa.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Funnel Display Variable;font-style:normal;font-display:swap;font-weight:300 800;src:url(/joinery/assets/funnel-display-latin-wght-normal-h7i3A3FI.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Funnel Sans Variable;font-style:normal;font-display:swap;font-weight:300 800;src:url(/joinery/assets/funnel-sans-latin-ext-wght-normal-CStSwzyf.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Funnel Sans Variable;font-style:normal;font-display:swap;font-weight:300 800;src:url(/joinery/assets/funnel-sans-latin-wght-normal-zzU05adE.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-stopped{overflow:clip}body{background:var(--bg);color:var(--fg);font-family:var(--font), system-ui, sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-size:17px;line-height:1.5;overflow-x:clip}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}img{max-width:100%;display:block}[hidden]{display:none!important}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}[data-reveal]{opacity:0;transition:opacity 1s cubic-bezier(.16,1,.3,1),transform 1.2s cubic-bezier(.16,1,.3,1);transform:translateY(24px)}[data-reveal].is-in{opacity:1;transform:none}[data-words] .w{opacity:.18;transition:opacity .35s linear}[data-words] .w.on{opacity:1}.cursor{z-index:90;pointer-events:none;color:var(--fg);transition:opacity .3s;position:fixed;top:0;left:0}.cursor.is-hidden{opacity:0}.cursor__dot,.cursor__ring{will-change:transform;border-radius:50%;position:absolute;top:0;left:0}.cursor__dot{background:currentColor;width:6px;height:6px;margin:-3px 0 0 -3px}.cursor__ring{border:1.5px solid color-mix(in srgb, currentColor 50%, transparent);place-items:center;width:34px;height:34px;margin:-17px 0 0 -17px;transition:width .45s cubic-bezier(.16,1,.3,1),height .45s cubic-bezier(.16,1,.3,1),margin .45s cubic-bezier(.16,1,.3,1),background .3s;display:grid}.cursor__label{color:var(--bg);opacity:0;white-space:nowrap;font-size:12px;font-weight:600;transition:opacity .25s}.cursor.has-label .cursor__ring{background:currentColor;border-color:currentColor;width:72px;height:72px;margin:-36px 0 0 -36px}.cursor.has-label .cursor__label{opacity:1}.cursor.is-down .cursor__ring{width:24px;height:24px;margin:-12px 0 0 -12px}.has-cursor,.has-cursor *{cursor:none!important}@media (pointer:coarse){.cursor{display:none}}@media (prefers-reduced-motion:reduce){[data-reveal]{opacity:1;transition:none;transform:none}[data-words] .w{opacity:1}}:root{--font:"Funnel Sans Variable";--display:"Funnel Display Variable";--bg:#fff;--fg:#1c1b18;--ink:#1c1b18;--ink-2:#6b675e;--ink-3:#a9a59b;--line:#ebe8e1;--line-2:#dcd8ce;--band:#f6f5f1;--birch:#ead9b7;--birch-2:#dcc497;--amber:#d97f06;--green:#22905a;--accent:var(--ink);--out:cubic-bezier(.2, .85, .25, 1);--spring:cubic-bezier(.34, 1.4, .5, 1)}body{letter-spacing:-.006em;font-size:17px}::selection{background:#ead9b7cc}h1,h2,h3{font-family:var(--display), system-ui, sans-serif;letter-spacing:-.035em;text-wrap:balance;margin:0;font-weight:600}p{margin:0}.pd{margin-left:-.02em}.skip{z-index:100;background:var(--ink);color:#fff;border-radius:8px;padding:8px 14px;position:fixed;top:-60px;left:12px}.skip:focus{top:12px}.wrap{max-width:1360px;margin:0 auto;padding:0 40px}.sec{padding:150px 0}.h2{font-size:clamp(36px,4.6vw,64px);line-height:1.02}.lede{color:var(--ink-2);max-width:34em;font-size:19px;line-height:1.55}.num{font-variant-numeric:tabular-nums}.btn{background:var(--ink);color:#fff;letter-spacing:-.01em;height:48px;transition:background .2s, transform .3s var(--out), box-shadow .3s;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:0 22px;font-size:15.5px;font-weight:560;display:inline-flex}.btn:hover{background:#000;box-shadow:0 6px 18px #1c1b182e}.btn:active{transform:scale(.98)}.btn--sm{border-radius:10px;height:38px;padding:0 16px;font-size:14.5px}.btn--wide{width:100%}.link{color:var(--ink);text-decoration:underline;-webkit-text-decoration-color:var(--line-2);text-decoration-color:var(--line-2);text-underline-offset:6px;align-items:center;gap:6px;font-weight:560;text-decoration-thickness:1.5px;transition:text-decoration-color .2s;display:inline-flex}.link:hover{-webkit-text-decoration-color:var(--ink);text-decoration-color:var(--ink)}.brand{font-family:var(--display), sans-serif;letter-spacing:-.035em;align-items:center;gap:10px;font-size:21px;font-weight:620;display:inline-flex}.brand__mark{flex:none}.brand__mark .m-top{fill:var(--birch)}.brand__mark .m-tail{fill:var(--ink);transition:transform .6s var(--spring);transform-origin:50% 100%}.brand__mark .m-edge{fill:none;stroke:var(--ink);stroke-width:2px}.brand:hover .m-tail{transform:translateY(-2px)}.nav{z-index:50;transition:background .3s,box-shadow .3s;position:fixed;inset:0 0 auto}.nav.is-solid{-webkit-backdrop-filter:blur(16px)saturate(1.4);backdrop-filter:blur(16px)saturate(1.4);box-shadow:0 1px 0 var(--line);background:#ffffffdb}.nav__in{align-items:center;gap:40px;height:70px;display:flex}.nav__links{gap:30px;margin-left:12px;display:flex}.nav__links a,.nav__quiet{color:var(--ink-2);font-size:15px;font-weight:480;transition:color .2s}.nav__links a:hover,.nav__quiet:hover{color:var(--ink)}.nav__end{align-items:center;gap:22px;margin-left:auto;display:flex}.hero{padding:116px 0 40px}.hero__head{grid-template-columns:minmax(0,1fr) 360px;align-items:end;gap:40px;display:grid}.hero__h{letter-spacing:-.045em;font-size:clamp(46px,5.2vw,80px);font-weight:600;line-height:.98}.hero__h .m{display:none}.hero__lede{color:var(--ink-2);padding-bottom:4px;font-size:17.5px;line-height:1.5}.studio{grid-template-columns:minmax(0,1fr) 312px;grid-template-areas:"stage quote""tools quote";column-gap:32px;margin-top:28px;display:grid}.studio__stage{grid-area:stage;min-width:0}.stage{height:clamp(440px,100vh - 290px,680px);touch-action:pan-y;-webkit-user-select:none;user-select:none;background:#fff;border-radius:22px;height:clamp(440px,100svh - 290px,680px);position:relative}.stage__say{min-height:26px;color:var(--ink-2);align-items:center;gap:10px;margin-top:6px;padding-left:18px;font-size:15px;transition:opacity .3s;display:flex}.stage__say:before{content:"";background:var(--say,var(--ink-3));border-radius:50%;flex:none;width:7px;height:7px;transition:background .3s}.stage__say.is-amber{--say:var(--amber)}.stage__say.is-green{--say:var(--green)}.shelf{position:relative;overflow:hidden}.shelf__canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.shelf__handle{width:14px;height:44px;box-shadow:0 0 0 1.25px var(--ink), 0 4px 12px #1c1b181f;cursor:ew-resize;touch-action:none;will-change:transform;transition:background .2s, box-shadow .2s, scale .35s var(--spring);background:#fff;border-radius:8px;justify-content:center;align-items:center;gap:3px;display:flex;position:absolute;top:0;left:0}.shelf__handle:before{content:"";position:absolute;inset:-14px -16px}.shelf__handle i{background:var(--ink);border-radius:1px;width:1.5px;height:14px;transition:background .2s;display:block}.shelf__handle--t{cursor:ns-resize;flex-direction:column;width:44px;height:14px}.shelf__handle--t i{width:14px;height:1.5px}.shelf__handle:hover{scale:1.12}.shelf__handle.is-held,.shelf.is-dragging .shelf__handle:active{background:var(--ink);scale:1.12}.shelf__handle.is-held i,.shelf.is-dragging .shelf__handle:active i{background:#fff}.shelf__handle:focus-visible{outline:2px solid var(--ink);outline-offset:4px}.stage.is-invite .shelf__handle--r,.stage.is-invite .shelf__handle--t{animation:invite 1.6s var(--out) 2}@keyframes invite{0%,to{box-shadow:0 0 0 1.25px var(--ink), 0 0 0 0 #1c1b1838}50%{box-shadow:0 0 0 1.25px var(--ink), 0 0 0 10px #1c1b1800}}.shelf__hint{z-index:3;color:#fff;pointer-events:none;opacity:0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#1c1b18eb;border-radius:12px;max-width:230px;padding:9px 12px 10px;font-size:13px;line-height:1.35;transition:opacity .18s;position:absolute;top:0;left:0}.shelf__hint.is-on{opacity:1}.shelf__hint b{font-weight:600;display:block}.shelf__hint span{color:#ffffffb8;display:block}.quote{background:var(--band);border-radius:22px;grid-area:quote;align-self:start;padding:26px 24px 22px;position:sticky;top:92px}.quote__k{color:var(--ink-2);font-size:14.5px;font-weight:520}.quote__price{font-family:var(--display), sans-serif;letter-spacing:-.04em;margin-top:4px;font-size:50px;font-weight:600;line-height:1.05}.quote__sub{color:var(--ink-2);margin-top:2px;font-size:14px}.parts{border-top:1px solid var(--line-2);margin:20px 0 0;padding:0;list-style:none}.part{border-bottom:1px solid var(--line);grid-template-columns:1fr auto;align-items:baseline;gap:2px 12px;padding:9px 0;font-size:15px;transition:opacity .4s;display:grid}.part b{font-weight:520}.part small{color:var(--ink-3);grid-column:1;font-size:12.5px}.part .roll{grid-area:1/2;font-weight:600}.part.is-zero{opacity:.38}.part.is-new{animation:blink 1.4s var(--out)}@keyframes blink{0%{background:#ead9b700}18%{background:#ead9b7bf}to{background:#ead9b700}}.quote__box{color:var(--ink-2);margin-top:16px;font-size:14px;line-height:1.5}.quote__go{margin-top:18px}.quote__note{color:var(--ink-3);text-align:center;margin-top:10px;font-size:12.5px}.roll{font-variant-numeric:tabular-nums;vertical-align:baseline;line-height:1;display:inline-flex}.roll .c{display:inline-block}.roll .d{height:1em;line-height:1;display:inline-block;overflow:hidden}.roll .d>span{transition:transform .75s var(--out);flex-direction:column;display:flex}.roll .d>span>span{height:1em;display:block}.quote__price .roll{line-height:1.05}.quote__price .roll .d,.quote__price .roll .d>span>span{height:1.05em;line-height:1.05}.tools{border-top:1px solid var(--line);flex-wrap:wrap;grid-area:tools;align-items:flex-end;gap:22px 34px;margin-top:18px;padding:20px 4px 0;display:flex}.tool{justify-items:start;gap:9px;display:grid}.tool__k{color:var(--ink-2);font-size:13.5px;font-weight:520}.seg{background:var(--band);box-shadow:inset 0 0 0 1px var(--line);border-radius:12px;padding:3px;display:inline-flex}.seg button{height:34px;color:var(--ink-2);white-space:nowrap;border-radius:9px;padding:0 13px;font-size:14.5px;font-weight:520;transition:background .25s,color .25s,box-shadow .25s}.seg button:hover{color:var(--ink)}.seg button[aria-pressed=true]{color:var(--ink);box-shadow:0 1px 2px #1c1b181a, 0 0 0 1px var(--line-2);background:#fff}.swatches{gap:9px;padding:4px 0;display:flex}.swatch{background:var(--c);width:30px;height:30px;transition:transform .35s var(--spring), box-shadow .25s;border-radius:50%;box-shadow:inset 0 0 0 1px #1c1b182e}.swatch:hover{transform:scale(1.1)}.swatch[aria-pressed=true]{box-shadow:inset 0 0 0 1px #1c1b182e, 0 0 0 2.5px #fff, 0 0 0 4px var(--ink)}.swatches--big .swatch{width:40px;height:40px}.wall{height:40px;color:var(--ink-2);align-items:center;gap:8px;font-size:15px;display:flex}.wall input{background:var(--band);width:64px;height:36px;box-shadow:inset 0 0 0 1px var(--line);font:inherit;color:var(--ink);font-variant-numeric:tabular-nums;text-align:right;-moz-appearance:textfield;border:0;border-radius:10px;padding:0 10px;font-weight:560}.wall input::-webkit-inner-spin-button{-webkit-appearance:none}.wall input:focus{box-shadow:inset 0 0 0 1.5px var(--ink);outline:none}.wall__fill{height:36px;color:var(--ink);box-shadow:inset 0 0 0 1px var(--line-2);border-radius:10px;margin-left:6px;padding:0 14px;font-size:14.5px;font-weight:560;transition:background .2s,box-shadow .2s}.wall__fill:hover{background:var(--band);box-shadow:inset 0 0 0 1px var(--ink)}.rules{padding-top:130px}.rules__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;margin-top:56px;display:grid}.rule svg{width:100%;max-width:220px;height:auto;margin-bottom:26px;overflow:visible}.rule svg rect{fill:var(--birch);stroke:var(--ink);stroke-width:1.2px;vector-effect:non-scaling-stroke}.rule svg path{fill:none;stroke:var(--ink);stroke-width:1.2px;stroke-linecap:round;vector-effect:non-scaling-stroke}.rule h3{letter-spacing:-.025em;font-size:24px}.rule p{color:var(--ink-2);max-width:26em;margin-top:10px;font-size:16px;line-height:1.55}.rule .r-new{animation:r-split 4.2s var(--out) infinite;transform-box:fill-box}.rule:nth-child(2) .r-new{animation-name:r-drop}.rule .r-sag{stroke:var(--amber);animation:4.2s ease-in-out infinite r-sag}.rule .r-spine{stroke:#4b4f56;stroke-width:1.3px;vector-effect:none;stroke-dasharray:100;animation:r-spine 4.2s var(--out) infinite}@keyframes r-split{0%,18%{opacity:0;transform:translate(50.75px)}22%{opacity:1}55%,to{opacity:1;transform:none}}@keyframes r-drop{0%,18%{opacity:0;transform:translateY(-25px)}22%{opacity:1}55%,to{opacity:1;transform:none}}@keyframes r-sag{0%,30%{d:path("M10.5 40q49.5 0 99 0");stroke:var(--ink)}45%,60%{d:path("M10.5 40q49.5 9 99 0");stroke:var(--amber)}80%,to{d:path("M10.5 40q49.5 2 99 0");stroke:var(--ink)}}@keyframes r-spine{0%,62%{stroke-dashoffset:100px}80%,to{stroke-dashoffset:0}}.build{background:var(--band);height:460vh;position:relative}.build__pin{height:100vh;align-items:center;height:100svh;display:flex;position:sticky;top:0;overflow:hidden}.build__in{grid-template-columns:430px minmax(0,1fr);align-items:center;gap:56px;width:100%;display:grid}.build__copy .h2{font-size:clamp(32px,3.2vw,46px);line-height:1.04}.build__lede{color:var(--ink-2);margin-top:18px;font-size:17px;line-height:1.55}.steps{counter-reset:step;margin:34px 0 0;padding:0;list-style:none;position:relative}.steps li{counter-increment:step;color:var(--ink-3);grid-template-columns:30px 1fr;column-gap:16px;padding:0 0 16px;transition:color .35s;display:grid;position:relative}.steps li:before{content:attr(data-n);background:var(--band);z-index:1;border-radius:50%;grid-row:span 2;place-items:center;width:30px;height:30px;font-size:13.5px;font-weight:600;transition:background .35s,color .35s,box-shadow .35s;display:grid;position:relative;box-shadow:inset 0 0 0 1.25px}.steps li:after{content:"";background:var(--line-2);width:1px;position:absolute;top:30px;bottom:0;left:14.5px}.steps li:last-child:after{display:none}.steps li b{padding-top:4px;font-size:16.5px;font-weight:600}.steps li span{opacity:0;max-height:0;transition:max-height .5s var(--out), opacity .4s, margin .4s;font-size:14.5px;line-height:1.45;overflow:hidden}.steps li.is-done{color:var(--ink-2)}.steps li.is-done:before{background:var(--ink-2);color:#fff;box-shadow:none}.steps li.is-on{color:var(--ink)}.steps li.is-on:before{background:var(--ink);color:#fff;box-shadow:none}.steps li.is-on span{opacity:1;max-height:60px;color:var(--ink-2);margin-top:4px}.build__stage{height:min(76vh,720px);position:relative}.build__canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.build__clock{color:var(--ink-2);font-variant-numeric:tabular-nums;justify-content:space-between;font-size:14px;font-weight:520;display:flex;position:absolute;bottom:0;left:0;right:0}.mat__in{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:72px;display:grid}.mat .lede{margin-top:22px}.facts{grid-template-columns:1fr 1fr;gap:0 32px;margin:40px 0 0;display:grid}.facts div{border-top:1px solid var(--line);padding:16px 0}.facts dt{color:var(--ink-3);font-size:13.5px;font-weight:520}.facts dd{margin:4px 0 0;font-size:16px;font-weight:520}.mat__art{justify-items:center;gap:24px;display:grid}.ply{aspect-ratio:1.25;width:100%;max-width:560px}.ply canvas{width:100%;height:100%;display:block}.mat__k{color:var(--ink-2);text-align:center;margin-bottom:12px;font-size:14.5px}.mat__k span{color:var(--ink);margin-left:6px;font-weight:560}.promise{padding-top:40px}.promise__grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:0 32px;margin-top:56px;display:grid}.promise__grid>div{border-top:1px solid var(--ink);padding-top:22px}.promise__n{font-family:var(--display), sans-serif;letter-spacing:-.03em;font-size:30px;font-weight:600}.promise__grid p:not(.promise__n){color:var(--ink-2);margin-top:10px;font-size:15.5px;line-height:1.55}.cta{padding:60px 0 150px}.cta__in{text-align:center}.cta__h{letter-spacing:-.045em;font-size:clamp(42px,6vw,88px);line-height:1}.cta__go{justify-content:center;align-items:center;gap:28px;margin-top:38px;display:flex}.foot{border-top:1px solid var(--line);padding:56px 0 44px}.foot__in{grid-template-columns:1fr auto auto;align-items:start;gap:28px 80px;display:grid}.foot nav{color:var(--ink-2);gap:10px;font-size:15px;display:grid}.foot nav a:hover{color:var(--ink)}.foot__base{border-top:1px solid var(--line);color:var(--ink-3);grid-column:1/-1;padding-top:24px;font-size:13px}@media (max-width:1100px){.nav__links{display:none}.hero__head{grid-template-columns:1fr;gap:18px}.studio{grid-template-columns:1fr;grid-template-areas:"stage""tools""quote"}.quote{grid-template-columns:1fr 1fr;column-gap:32px;margin-top:28px;display:grid;position:static}.quote .parts{grid-area:1/2/span 5;margin-top:0}.build__in{grid-template-columns:1fr;gap:20px}.build__copy .build__lede{display:none}.build__stage{height:48vh}.steps{margin-top:18px}.steps li{padding:0;display:none}.steps li.is-on{display:grid}.steps li:after{display:none}.mat__in{grid-template-columns:1fr;gap:48px}.promise__grid{grid-template-columns:1fr 1fr;gap:40px 32px}}@media (max-width:720px){body{font-size:16px}.wrap{padding:0 18px}.sec{padding:96px 0}.nav__in{height:60px}.nav__quiet{display:none}.hero{padding-top:96px}.hero__h{font-size:clamp(44px,13vw,64px)}.hero__h .m{display:inline}.hero__lede{font-size:17px}.studio{margin-top:22px}.stage{border-radius:0;height:440px;margin:0 -18px}.stage__say{align-items:flex-start;min-height:44px;padding-left:0;font-size:14px}.stage__say:before{margin-top:7px}.tools{gap:18px 22px;padding-top:16px}.tool--wall{width:100%}.quote{grid-template-columns:1fr;padding:22px 20px}.quote .parts{grid-area:auto;margin-top:18px}.rules__grid{grid-template-columns:1fr;gap:56px;margin-top:40px}.build{height:520vh}.build__in{gap:6px}.build__copy .h2{font-size:30px}.build__stage{height:52vh}.facts,.promise__grid{grid-template-columns:1fr}.cta__go{flex-direction:column;gap:20px}.foot__in{grid-template-columns:1fr 1fr}.foot__in>.brand{grid-column:1/-1}}@media (prefers-reduced-motion:reduce){.rule .r-new,.rule .r-sag,.rule .r-spine{animation:none}.roll .d>span{transition:none}}
