/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--ease-out:cubic-bezier(0, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.block{display:block}.grid{display:grid}.hidden{display:none}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.italic{font-style:italic}}@font-face{font-family:Butler;src:url(/fonts/Butler-Free-Rmn.woff2)format("woff2");font-style:normal;font-weight:400;font-display:swap}:root{--background:#090909;--foreground:#fff}*{box-sizing:border-box}html,body{width:100%;min-height:100%}:is(img,video,a:has(img)){-webkit-user-drag:none;-webkit-touch-callout:none}body{background:var(--background);color:var(--foreground);-webkit-font-smoothing:antialiased;margin:0}.confetti-layer{z-index:10;pointer-events:none;width:100%;height:100%;position:fixed;inset:0}.wordmark{-webkit-appearance:none;appearance:none;letter-spacing:.015em;color:#fff;cursor:pointer;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;transform-origin:50%;will-change:transform;background:0 0;border:0;margin:0;padding:0;font-family:Butler,serif;font-size:clamp(1.125rem,1.45vw,1.375rem);font-style:italic;font-weight:400;line-height:1}.wordmark-label{-webkit-user-select:none;user-select:none;display:block}.wordmark:focus-visible{outline-offset:.4rem;outline:1px solid #ffffff8c}.wordmark.is-shaking{animation:.44s cubic-bezier(.36,.07,.19,.97) wordmark-shake}.wordmark.is-rare-shaking{animation:.72s cubic-bezier(.36,.07,.19,.97) wordmark-rare-shake}@keyframes wordmark-shake{0%,to{transform:translate(0)rotate(0)scale(1)}10%{transform:translate(-5px,1px)rotate(-1.6deg)scale(1.025)}22%{transform:translate(6px,-1px)rotate(1.5deg)scale(1.02)}36%{transform:translate(-5px,-1px)rotate(-1.25deg)scale(1.018)}50%{transform:translate(4px,1px)rotate(1deg)scale(1.012)}64%{transform:translate(-3px)rotate(-.65deg)scale(1.008)}78%{transform:translate(2px,-1px)rotate(.4deg)scale(1.004)}90%{transform:translate(-1px)rotate(-.2deg)scale(1)}}@keyframes wordmark-rare-shake{0%,to{transform:translate(0)rotate(0)scale(1)}7%{transform:translate(-17px,3px)rotate(-5deg)scale(1.12)}15%{transform:translate(19px,-4px)rotate(4.7deg)scale(1.1)}24%{transform:translate(-16px,-2px)rotate(-4deg)scale(1.085)}34%{transform:translate(15px,3px)rotate(3.4deg)scale(1.07)}45%{transform:translate(-12px,-3px)rotate(-2.8deg)scale(1.055)}57%{transform:translate(10px,2px)rotate(2.2deg)scale(1.04)}69%{transform:translate(-7px,-1px)rotate(-1.5deg)scale(1.025)}81%{transform:translate(5px,1px)rotate(.9deg)scale(1.012)}91%{transform:translate(-2px)rotate(-.35deg)scale(1)}}@media (prefers-reduced-motion:reduce){.wordmark.is-shaking,.wordmark.is-rare-shaking,.confetti-layer{animation:none}}:root{--ink:#f3f1ec;--ink-2:#f3f1ec99;--ink-3:#f3f1ec57;--line:#f3f1ec1a;--gutter:clamp(1.25rem, 3.2vw, 3.5rem);--col-gap:clamp(1rem, 2vw, 2rem);--section:clamp(8rem, 15vw, 15rem);--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-io:cubic-bezier(.76, 0, .24, 1);--sans:"Inter Tight", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--serif:"Butler", "Times New Roman", serif;--phone-radius:clamp(1.1rem, 2.2vw, 2.2rem);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html:lang(ko){--sans:"Inter Tight", "Pretendard Variable", Pretendard, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--serif:"Butler", "Noto Serif KR", "Times New Roman", serif}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-stopped{overflow:hidden}body:has(.hero){font-family:var(--sans);color:var(--ink);overflow-x:hidden}body:has(.hero) ::selection{background:var(--ink);color:var(--background)}.label{color:var(--ink-3);font:500 .7rem/1 var(--sans);letter-spacing:.05em;text-transform:uppercase;margin-bottom:1.1rem;display:block}.grain{z-index:60;pointer-events:none;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");animation:1.2s steps(6,end) infinite grain;position:fixed;inset:-50%}@keyframes grain{0%{transform:translate(0)}20%{transform:translate(-3%,2%)}40%{transform:translate(2%,-4%)}60%{transform:translate(-4%,-1%)}80%{transform:translate(3%,3%)}to{transform:translate(0)}}.scroll-progress{z-index:55;background:var(--ink);transform-origin:0;height:1px;position:fixed;inset:0 0 auto;transform:scaleX(0)}.cursor{z-index:95;pointer-events:none;display:none;position:fixed;top:0;left:0}.cursor span{background:var(--ink);color:#0b0b0b;width:10px;height:10px;font:500 .7rem/1 var(--sans);letter-spacing:.02em;mix-blend-mode:difference;transition:width .45s var(--ease-out), height .45s var(--ease-out), margin .45s var(--ease-out);border-radius:999px;place-items:center;margin:-5px 0 0 -5px;display:grid;position:absolute;top:0;left:0}.cursor.is-active span{width:28px;height:28px;margin:-14px 0 0 -14px}.cursor.has-label span{mix-blend-mode:normal;width:76px;height:76px;margin:-38px 0 0 -38px}@media (pointer:fine){.cursor{display:block}}.nav{z-index:50;padding:1.5rem var(--gutter);font:500 .8rem/1 var(--sans);mix-blend-mode:difference;color:#fff;grid-template-columns:1fr auto 1fr;align-items:center;transition:opacity .4s;display:grid;position:fixed;inset:0 0 auto}html.has-lightbox .nav{opacity:0;pointer-events:none}.nav a{color:inherit;text-decoration:none}.nav-brand{font:italic 400 1.15rem/1 var(--serif)}.nav-links{gap:clamp(1.25rem,3.5vw,3rem);display:flex}.nav-links a,.sublinks a{position:relative}.nav-links a:after,.sublinks a:after{content:"";transform-origin:100%;height:1px;transition:transform .5s var(--ease-out);background:currentColor;position:absolute;bottom:-3px;left:0;right:0;transform:scaleX(0)}.nav-links a:hover:after,.sublinks a:hover:after{transform-origin:0;transform:scaleX(1)}.nav-right{justify-self:end;align-items:center;gap:clamp(1rem,2vw,1.75rem);display:flex}.nav-clock{color:#fff9}.nav-clock b{color:#fff;font-variant-numeric:tabular-nums;font-weight:500}.split{display:inline-flex}.char-mask{margin:0 -.04em -.12em;padding:0 .04em .12em;display:inline-block}.char{transition:opacity .9s ease, filter 1.3s var(--ease-out);transition-delay:calc(var(--i) * 55ms);margin:-.2em -.3em;padding:.2em .3em;display:inline-block}@media (prefers-reduced-motion:no-preference){html.js .project-name:not(.is-in) .char{opacity:0;filter:blur(.09em)}}main{z-index:1;position:relative}.project-body{column-gap:var(--col-gap);grid-template-columns:repeat(12,minmax(0,1fr));display:grid}.hero{min-height:100svh;padding:7.5rem var(--gutter) clamp(1.75rem, 3.4vw, 3.25rem);flex-direction:column;display:flex;position:relative}.hero-apps{flex:1;justify-content:center;align-items:center;gap:clamp(1.25rem,2.6vw,2.5rem);margin:0;padding:0 0 6vh;list-style:none;display:flex}.hero-app{width:clamp(4.25rem,8vw,7.5rem);color:var(--ink-2);letter-spacing:-.01em;white-space:nowrap;justify-items:center;gap:.8rem;font-size:clamp(.7rem,.8vw,.8rem);text-decoration:none;transition:opacity .5s;display:grid}.hero-app img{aspect-ratio:1;width:100%;height:auto;box-shadow:0 0 0 1px var(--line), 0 28px 60px -24px #000c;transition:transform .5s var(--ease-out);border-radius:22.5%;display:block}.hero-app:active img{transition-duration:.15s;transform:scale(.92)}.hero-app:focus-visible{outline:none}.hero-app:focus-visible img{outline:1px solid var(--ink-2);outline-offset:5px}@media (hover:hover){.hero-apps:has(.hero-app:hover,.hero-app:focus-visible) .hero-app:not(:hover,:focus-visible){opacity:.4}}:is(.hero-app:hover,.hero-app:focus-visible){color:var(--ink)}.hero-foot{justify-content:space-between;align-items:flex-end;gap:2rem;display:flex}.hero-title{font:400 clamp(1.4rem, 2.1vw, 2rem) / 1.12 var(--sans);letter-spacing:-.035em;margin:0}.hero-title [lang=ko]{font-size:.9em;line-height:1.35}.hero-since{color:var(--ink-2);font-variant-numeric:tabular-nums;white-space:nowrap;margin:0 0 .2em;font-size:.85rem}.hero-apps li{animation:app-land 1.1s var(--ease-out) backwards;animation-delay:calc(.25s + var(--i) * 90ms)}.hero-title,.hero-since{animation:focus-in 1.4s var(--ease-out) backwards;animation-delay:.7s}.hero-since{animation-delay:.9s}@keyframes app-land{0%{opacity:0;filter:blur(10px);transform:scale(1.3)}}@keyframes focus-in{0%{opacity:0;filter:blur(12px)}}.status{color:var(--ink-2);white-space:nowrap;align-items:center;gap:.55rem;font-size:.78rem;display:inline-flex}.status i{border-radius:999px;width:6px;height:6px}.status-live i{background:var(--ink)}.status-soon i{background:var(--ink-2)}.status-off i{box-shadow:inset 0 0 0 1px var(--ink-3)}.project{padding:var(--section) var(--gutter);position:relative}.project-bar{color:var(--ink-3);font-variant-numeric:tabular-nums;align-items:center;gap:1.5rem;font-size:.75rem;display:flex}.bar-line{background:var(--line);flex:1;height:1px}.project-head{margin:clamp(2.5rem,5vw,4.5rem) 0 clamp(5rem,10vw,10rem)}.project-name{font:italic 400 clamp(4.5rem, 13vw, 13rem) / .85 var(--serif);letter-spacing:-.03em;white-space:nowrap;margin:0}.copy-intro{flex-direction:column;gap:1.75rem;display:flex}.app-icon{aspect-ratio:1;width:3.25rem;box-shadow:0 0 0 1px var(--line), 0 18px 48px -14px #0009;border-radius:23%;display:block}.project-body{align-items:start}.project-copy{flex-direction:column;grid-column:1/5;gap:2.5rem;display:flex;position:sticky;top:7rem}.tagline{font:400 clamp(1.5rem, 2.1vw, 2rem) / 1.12 var(--sans);letter-spacing:-.035em;margin:0}.copy-desc p{max-width:26rem;color:var(--ink-2);margin:0;font-size:.95rem;line-height:1.65}.copy-desc p+p{margin-top:.9rem}.copy-desc .note{color:var(--ink-3);font-size:.82rem}.facts{border-top:1px solid var(--line);max-width:26rem;margin:0}.facts div{border-bottom:1px solid var(--line);justify-content:space-between;padding:.75rem 0;font-size:.85rem;display:flex}.facts dt{color:var(--ink-3)}.facts dd{margin:0}.project-links{flex-wrap:wrap;align-items:center;gap:1rem 1.6rem;display:flex}.sublinks{gap:1.3rem;font-size:.8rem;display:inline-flex}.sublinks a{color:var(--ink-2);text-decoration:none;transition:color .3s}.sublinks a:hover{color:var(--ink)}.link-pill{border:1px solid var(--line);color:var(--ink);isolation:isolate;transition:color .5s var(--ease-out), border-color .5s, transform .6s var(--ease-out);border-radius:999px;align-items:center;gap:.6rem;padding:.75rem 1.2rem;font-size:.85rem;text-decoration:none;display:inline-flex;position:relative;overflow:hidden}.link-pill:before{content:"";z-index:-1;background:var(--accent);border-radius:inherit;transition:transform .5s var(--ease-out);position:absolute;inset:0;transform:translateY(101%)}.link-pill:hover{color:#0b0b0b;border-color:var(--accent)}.link-pill:hover:before{transform:none}.link-pill .arrow{transition:transform .5s var(--ease-out)}.link-pill:hover .arrow{transform:translate(3px)}.project-media{grid-column:6/13;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(3rem,6vw,6rem) clamp(1.5rem,4.5vw,5rem);display:grid}.phone{justify-self:center;width:100%;max-width:21rem;margin:0}.phone:nth-child(2){grid-area:1/2/span 2;align-self:center}.phone:nth-child(3){grid-column:1}.phone-screen{-webkit-appearance:none;appearance:none;aspect-ratio:9/19.5;border-radius:var(--phone-radius);width:100%;box-shadow:0 0 0 1px var(--line), 0 50px 100px -40px #000000e6;cursor:pointer;background:#121212;border:0;padding:0;display:block;position:relative;overflow:hidden;transform:translateZ(0);-webkit-mask-image:-webkit-radial-gradient(#fff,#000)}.phone-screen:after{content:"";border-radius:inherit;pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 0 0 1px #ffffff14}.phone-screen img,.phone-screen video{object-fit:cover;width:100%;height:100%;display:block}.phone-screen:focus-visible{outline:1px solid var(--ink-2);outline-offset:6px}body [lang=ko]:not([data-set]){--sans:"Pretendard Variable", Pretendard, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;font-family:var(--sans)}body [lang=ko]:not([data-set]),body [lang=ko]:not([data-set]) *{letter-spacing:-.02em}.site [lang=ko]{word-break:keep-all;font-weight:500}.tagline [lang=ko]{line-height:1.35}.copy-desc [lang=ko],.contact-lead [lang=ko]{line-height:1.75}.contact{z-index:1;padding:var(--section) var(--gutter) var(--gutter);border-top:1px solid var(--line);position:relative}.contact-lead{color:var(--ink-2);margin:0 0 clamp(3rem,6vw,5rem);font-size:clamp(1rem,1.4vw,1.25rem);line-height:1.45}.contact-mail{max-width:100%;color:var(--ink);font:400 clamp(1.25rem, 6.2vw, 6.5rem) / 1 var(--sans);letter-spacing:-.055em;text-decoration:none;display:inline-block;overflow:hidden}.mail-roll{display:grid}.mail-roll span{transition:transform .8s var(--ease-io);overflow-wrap:anywhere;grid-area:1/1;padding-bottom:.1em}.mail-roll span:last-child{transform:translateY(110%)}.contact-mail:hover .mail-roll span:first-child{transform:translateY(-110%)}.contact-mail:hover .mail-roll span:last-child{transform:none}.footer-bottom{border-top:1px solid var(--line);color:var(--ink-3);justify-content:space-between;align-items:center;gap:2rem;margin-top:clamp(7rem,14vw,13rem);padding-top:1.4rem;font-size:.75rem;display:flex}.footer-legal{text-align:right;line-height:1.6}.footer-mark .wordmark{font-size:1.4rem}.lightbox{z-index:80;opacity:0;visibility:hidden;place-items:center;transition:opacity .5s,visibility 0s linear .5s;display:grid;position:fixed;inset:0}.lightbox.is-open{opacity:1;visibility:visible;transition:opacity .5s}.lightbox-backdrop{-webkit-appearance:none;appearance:none;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);cursor:pointer;background:#060606e6;border:0;padding:0;position:absolute;inset:0}.lightbox-top{z-index:2;padding:1.4rem var(--gutter);grid-template-columns:1fr auto 1fr;align-items:center;font-size:.8rem;display:grid;position:absolute;inset:0 0 auto}.lightbox-title{font:italic 400 1.4rem/1 var(--serif)}.lightbox-count{color:var(--ink-2);font-variant-numeric:tabular-nums}.lightbox-close{-webkit-appearance:none;appearance:none;border:1px solid var(--line);color:var(--ink);font:inherit;cursor:pointer;background:0 0;border-radius:999px;justify-self:end;padding:.6rem 1.1rem;transition:background .3s,color .3s}.lightbox-close:hover{background:var(--ink);color:#0b0b0b}.lightbox-stage{z-index:1;aspect-ratio:9/19.5;height:min(84svh,60rem);max-width:calc(100vw - 2 * var(--gutter));box-shadow:0 0 0 1px var(--line), 0 60px 140px -30px #000000e6;pointer-events:none;animation:stage-in .9s var(--ease-out) both;border-radius:clamp(1.4rem,3vh,2.6rem);position:relative;overflow:hidden;-webkit-mask-image:-webkit-radial-gradient(#fff,#000)}.lightbox:not(.is-open) .lightbox-stage{animation:none}.lightbox-stage img,.lightbox-stage video{object-fit:cover;width:100%;height:100%;display:block}@keyframes stage-in{0%{opacity:0;clip-path:inset(8% 0);transform:translateY(40px)scale(.94)}to{opacity:1;clip-path:inset(0);transform:none}}.lightbox-nav{z-index:2;border:1px solid var(--line);width:3.4rem;height:3.4rem;color:var(--ink);cursor:pointer;transition:background .3s, color .3s, transform .5s var(--ease-out);background:#ffffff05;border-radius:999px;place-items:center;margin-top:-1.7rem;font-size:1.1rem;display:grid;position:absolute;top:50%}.lightbox-nav:hover{background:var(--ink);color:#0b0b0b}.lightbox-nav.is-prev{left:var(--gutter)}.lightbox-nav.is-next{right:var(--gutter)}.lightbox-nav.is-prev:hover{transform:translate(-4px)}.lightbox-nav.is-next:hover{transform:translate(4px)}.lightbox-thumbs{z-index:2;gap:.5rem;display:flex;position:absolute;bottom:1.6rem;left:50%;transform:translate(-50%)}.lightbox-thumbs span{background:var(--line);width:1.6rem;height:2px;transition:background .4s}.lightbox-thumbs span.is-current{background:var(--ink)}@media (max-width:1100px){.project-copy{grid-column:1/6}.project-media{grid-column:7/13}}@media (max-width:900px){:root{--section:clamp(6rem, 18vw, 9rem)}.project-body{display:block}.project-copy{gap:2rem;margin-bottom:4rem;position:static}.project-media{margin:0 calc(var(--gutter) * -1);padding:0 var(--gutter) 1rem;scroll-snap-type:x mandatory;scrollbar-width:none;gap:1rem;display:flex;overflow-x:auto}.project-media::-webkit-scrollbar{display:none}.phone{scroll-snap-align:center;flex:0 0 min(64vw,18rem)}}@media (max-width:640px){.nav{grid-template-columns:1fr auto;row-gap:.9rem}.nav-right{grid-column:1/-1;justify-self:end}.nav-clock{display:none}.hero{padding-top:7rem}.hero-foot{flex-direction:column;align-items:flex-start;gap:1.5rem}.hero-app{width:min(4.25rem, (100vw - 2 * var(--gutter) - 3.75rem) / 4)}.project-name{font-size:19vw}.lightbox-nav{margin:0;top:auto;bottom:1rem}.lightbox-stage{height:min(76svh,60rem)}.footer-bottom{flex-direction:column;align-items:flex-start;gap:1rem}.footer-legal{text-align:left}}@media (prefers-reduced-motion:reduce){.grain,.lightbox-stage,.hero-apps li,.hero-title,.hero-since{animation:none}}.legal{--ink-body:#f3f1ecbd;min-height:100svh;color:var(--ink);font-family:var(--sans);flex-direction:column;display:flex}.legal ::selection{background:var(--ink);color:var(--background)}.legal .grain{animation:none}html:not([data-lang]) .site [data-l]:not([data-l=en]),html[data-lang=en] [data-l]:not([data-l=en]),html[data-lang=ko] [data-l]:not([data-l=ko]),html[data-lang=ja] [data-l]:not([data-l=ja]),html[data-lang=zh-Hans] [data-l]:not([data-l=zh-Hans]),html[data-lang=zh-Hant] [data-l]:not([data-l=zh-Hant]),html[data-lang=es] [data-l]:not([data-l=es]),html[data-lang=fr] [data-l]:not([data-l=fr]),html[data-lang=de] [data-l]:not([data-l=de]),html[data-lang=pt-BR] [data-l]:not([data-l=pt-BR]){display:none}.legal-nav{z-index:50;padding:1.5rem var(--gutter) 2.5rem;background:linear-gradient(var(--background) 45%, #09090900);font:500 .8rem/1 var(--sans);pointer-events:none;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.legal-nav>*{pointer-events:auto}.legal-brand{color:var(--ink);font:italic 400 1.15rem/1 var(--serif);text-decoration:none}.lang-toggle{color:var(--ink-3);align-items:center;gap:.5rem;display:flex}.lang-toggle button{-webkit-appearance:none;appearance:none;color:var(--ink-3);font:inherit;letter-spacing:.04em;cursor:pointer;background:0 0;border:0;padding:.4rem .1rem;transition:color .3s}.lang-toggle button:hover{color:var(--ink-2)}.lang-toggle-item{display:contents}.lang-select{color:var(--ink);cursor:pointer;align-items:center;display:inline-flex;position:relative}.lang-select-current{align-items:center;gap:.5rem;padding:.4rem 0;display:inline-flex}.lang-select-current [data-set]{display:none}.lang-select-current svg{color:var(--ink-3);transition:color .3s ease, transform .4s var(--ease-out)}.lang-select:hover svg{color:var(--ink);transform:translateY(1px)}.lang-select select{opacity:0;width:100%;font:inherit;cursor:pointer;-webkit-appearance:none;appearance:none;position:absolute;inset:0}.lang-select:has(select:focus-visible){outline:1px solid var(--ink-2);outline-offset:4px}html:not([data-lang]) .lang-select{visibility:hidden}.lang-toggle [data-set]{color:var(--ink-3)}html[data-lang=en] .lang-toggle [data-set=en],html[data-lang=ko] .lang-toggle [data-set=ko],html[data-lang=ja] .lang-toggle [data-set=ja],html[data-lang=zh-Hans] .lang-toggle [data-set=zh-Hans],html[data-lang=zh-Hant] .lang-toggle [data-set=zh-Hant],html[data-lang=es] .lang-toggle [data-set=es],html[data-lang=fr] .lang-toggle [data-set=fr],html[data-lang=de] .lang-toggle [data-set=de],html[data-lang=pt-BR] .lang-toggle [data-set=pt-BR]{color:var(--ink)}html[data-lang=en] .lang-select-current [data-set=en],html[data-lang=ko] .lang-select-current [data-set=ko],html[data-lang=ja] .lang-select-current [data-set=ja],html[data-lang=zh-Hans] .lang-select-current [data-set=zh-Hans],html[data-lang=zh-Hant] .lang-select-current [data-set=zh-Hant],html[data-lang=es] .lang-select-current [data-set=es],html[data-lang=fr] .lang-select-current [data-set=fr],html[data-lang=de] .lang-select-current [data-set=de],html[data-lang=pt-BR] .lang-select-current [data-set=pt-BR]{display:inline}.lang-toggle button:focus-visible{outline:1px solid var(--ink-2);outline-offset:4px}html:not([data-lang]) .lang-toggle{visibility:hidden}.legal-main{padding:clamp(4.5rem, 10vw, 9rem) var(--gutter) var(--section);flex:1}.legal-head,.legal-sec,.legal-foot{column-gap:var(--col-gap);grid-template-columns:repeat(12,minmax(0,1fr));display:grid}.legal-head{row-gap:clamp(3rem,6vw,5rem);margin-bottom:clamp(5rem,10vw,9rem)}.legal-head>*{animation:legal-in 1.1s var(--ease-out) both}.legal-head>:nth-child(2){animation-delay:90ms}.legal-head>:nth-child(3){animation-delay:.18s}@keyframes legal-in{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}.legal-side{grid-area:1/1/span 2/5}.legal-side .label{text-transform:none}.legal-docs{flex-direction:column;align-items:flex-start;gap:.65rem;font-size:.85rem;display:flex}.legal-docs a{color:var(--ink-3);text-decoration:none;transition:color .3s}.legal-docs a:hover{color:var(--ink-2)}.legal-docs a[aria-current=page]{color:var(--ink)}.legal-title{font:400 clamp(2.75rem, 6.4vw, 6rem) / .95 var(--sans);letter-spacing:-.055em;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;grid-column:5/13;margin:0}.legal-title [data-l=ko],.legal-title [data-l=ja],.legal-title [data-l^=zh]{letter-spacing:-.03em;line-height:1.1}.legal-facts{gap:var(--col-gap);grid-column:5/13;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;display:grid}.legal-facts div{border-top:1px solid var(--line);padding-top:1rem}.legal-facts dt{color:var(--ink-3);margin-bottom:.55rem;font-size:.75rem}.legal-facts dd{overflow-wrap:anywhere;margin:0;font-size:.9rem}.legal-facts a{color:var(--ink);text-decoration:none}.legal-facts a:hover{text-underline-offset:.22em;text-decoration:underline;text-decoration-thickness:1px}.legal-doc{counter-reset:sec;animation:legal-in .8s var(--ease-out) both;scroll-margin-top:5rem}html:not([data-lang]) .legal-doc+.legal-doc{margin-top:var(--section)}.legal-sec{counter-increment:sec;border-top:1px solid var(--line);row-gap:1.1rem;padding:clamp(2.25rem,4vw,3.5rem) 0}.legal-sec-title{font:500 1rem/1.4 var(--sans);letter-spacing:-.01em;grid-column:1/5;margin:0;padding-right:1rem}.legal-num{color:var(--ink-3);font-variant-numeric:tabular-nums;margin-bottom:.9rem;font-size:.75rem;font-weight:400;display:block}.legal-num:before{content:counter(sec, decimal-leading-zero)}.legal-body{max-width:40rem;color:var(--ink-body);grid-column:5/12;font-size:1rem;line-height:1.75}.legal-doc:is([lang=ko],[lang=ja],[lang^=zh]) .legal-body{line-height:1.9}.legal-doc[lang=ko] .legal-body{word-break:keep-all}.legal-body p,.legal-body ol{margin:0}.legal-body p+p,.legal-body p+ol,.legal-body ol+p{margin-top:1.1rem}.legal-body ol{counter-reset:step;padding:0;list-style:none}.legal-body li{counter-increment:step;padding-left:2.4rem;position:relative}.legal-body li+li{margin-top:.6rem}.legal-body li:before{content:counter(step, decimal-leading-zero);color:var(--ink-3);font-variant-numeric:tabular-nums;font-size:.75rem;position:absolute;top:.1em;left:0}.legal-body a{color:var(--ink);text-decoration:underline;-webkit-text-decoration-color:var(--ink-3);-webkit-text-decoration-color:var(--ink-3);-webkit-text-decoration-color:var(--ink-3);text-decoration-color:var(--ink-3);text-underline-offset:.22em;text-decoration-thickness:1px;transition:text-decoration-color .3s}.legal-body a:hover{-webkit-text-decoration-color:var(--ink);-webkit-text-decoration-color:var(--ink);-webkit-text-decoration-color:var(--ink);text-decoration-color:var(--ink)}.legal-foot{margin:0 var(--gutter);border-top:1px solid var(--line);color:var(--ink-3);align-items:baseline;row-gap:.75rem;padding:1.4rem 0 clamp(1.5rem,3vw,2.5rem);font-size:.75rem}.legal-foot>span{grid-column:1/5}.legal-foot-links{flex-wrap:wrap;grid-column:5/13;gap:.75rem 1.75rem;display:flex}.legal-foot-links a{color:var(--ink-2);text-decoration:none;transition:color .3s}.legal-foot-links a:hover{color:var(--ink)}@media (max-width:900px){.legal-head>*,.legal-sec>*,.legal-foot>*{grid-column:1/-1}.legal-head{row-gap:2.5rem}.legal-side{flex-wrap:wrap;grid-row:auto;justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.legal-side .label{margin:0}.legal-docs{flex-direction:row;gap:1.25rem}.legal-facts{display:block}.legal-facts div{justify-content:space-between;gap:1.5rem;padding:.85rem 0;display:flex}.legal-facts dt{margin:0}.legal-facts dd{text-align:right}.legal-num{margin:0 .9rem 0 0;display:inline-block}.legal-body{max-width:none}}@media (prefers-reduced-motion:reduce){.legal-head>*,.legal-doc{animation:none}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}
