/*! tailwindcss v4.1.13 | 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)))){*,::backdrop,:after,:before{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:host,:root{--font-sans:var(--font-geist),system-ui,-apple-system,sans-serif;--font-serif:var(--font-instrument),Georgia,serif;--font-mono:var(--font-geist-mono),ui-monospace,"SF Mono",monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-ink:#121212;--color-ink-deep:#17141f;--color-ink-2:#6e6b66;--color-ink-3:#a29f9a;--color-line:#e7e5e1;--color-line-2:#dcd9d4;--color-well:#f7f6f4;--color-stage:#999c9d;--color-violet:#d343f7;--color-green:#2bb24c;--font-display:var(--font-inter-tight),var(--font-geist),sans-serif}}@layer base{*,::backdrop,:after,:before{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}:host,html{-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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{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}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,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,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-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]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.grow{flex-grow:1}.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}.rounded{border-radius:.25rem}.px-8{padding-inline:calc(var(--spacing)*8)}.italic{font-style:italic}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}@media (hover:hover){.hover\:text-ink:hover{color:var(--color-ink)}}}:root{--ease:cubic-bezier(.23,1,.32,1);--ease-io:cubic-bezier(.76,0,.24,1);--pad:40px;--page:1240px;--radius:22px}@media (max-width:1024px){:root{--pad:28px}}@media (max-width:640px){:root{--pad:16px}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{color:var(--color-ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;letter-spacing:-.01em;background:#fff;margin:0;overflow-x:hidden}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}::selection{background:var(--color-violet);color:#fff}:focus-visible{outline:2px solid var(--color-violet);outline-offset:3px;border-radius:6px}.page{width:100%;max-width:calc(var(--page) + var(--pad)*2);padding:0 var(--pad);margin:0 auto}.label{font-family:var(--font-mono);letter-spacing:.02em;text-transform:lowercase;color:var(--color-ink-3);font-size:12px}.serif{font-family:var(--font-serif);letter-spacing:-.01em;font-style:italic;font-weight:400}.skip-link{z-index:400;background:var(--color-ink);color:#fff;border-radius:8px;padding:10px 14px;font-size:14px;position:absolute;top:-60px;left:12px}.skip-link:focus{top:12px}.rv{opacity:0;transition:opacity .9s var(--ease),transform .9s var(--ease);transition-delay:var(--d,0s);transform:translateY(24px)}.rv.in{opacity:1;transform:none}.cta{background:var(--color-ink);color:#fff;height:48px;transition:transform .3s var(--ease),background-color .3s;white-space:nowrap;border-radius:999px;align-items:center;gap:10px;padding:0 22px;font-size:15px;font-weight:500;display:inline-flex}.cta:hover{background:#2a2a2a;transform:translateY(-2px)}.cta:active{transform:scale(.97)}.cta.light{background:var(--color-well);color:var(--color-ink);box-shadow:inset 0 0 0 1px var(--color-line)}.cta.light:hover{background:#efeeeb}.cta.ghost{color:#fff;background:#ffffff1a;box-shadow:inset 0 0 0 1px #ffffff2e}.cta.ghost:hover{background:#ffffff2e}.cta .ar{transition:transform .3s var(--ease)}.cta:hover .ar{transform:translate(2px,-2px)}.pill{box-shadow:inset 0 0 0 1px var(--color-line);color:var(--color-ink-2);background:#fff;border-radius:999px;align-items:center;gap:8px;padding:7px 14px 7px 10px;font-size:13px;display:inline-flex}.pill b{color:var(--color-ink);font-weight:600}.dot{background:var(--color-green);border-radius:50%;width:8px;height:8px;animation:pulse 2.4s ease-in-out infinite;box-shadow:0 0 0 4px #2bb24c29}@keyframes pulse{50%{opacity:.5}}.chip{height:30px;color:var(--color-ink-2);box-shadow:inset 0 0 0 1px var(--color-line);white-space:nowrap;background:#fff;border-radius:999px;padding:0 12px;font-size:13px;display:inline-flex}.chip,.nav{align-items:center}.nav{z-index:100;padding:22px var(--pad);pointer-events:none;transition:transform .5s var(--ease),color .4s;color:var(--color-ink);justify-content:space-between;display:flex;position:fixed;top:0;left:0;right:0}.nav>*{pointer-events:auto}.nav.hide{transform:translateY(-120%)}.nav.on-hero{color:#fff}.brandmark{border-radius:999px;align-items:center;gap:6px;margin-left:-14px;padding:9px 14px;font-size:15px;font-weight:500;transition:background-color .4s;display:inline-flex}.nav.solid .brandmark{-webkit-backdrop-filter:blur(14px);background:#fff9}.brandmark .c{transition:transform .6s var(--ease);display:inline-block}.brandmark:hover .c{transform:rotate(1turn)}.roll{height:1.3em;line-height:1.3em;display:inline-grid;overflow:hidden}.roll span{transition:transform .5s var(--ease);grid-area:1/1}.roll span+span{transform:translateY(110%)}.brandmark:hover .roll span:first-child{transform:translateY(-110%)}.brandmark:hover .roll span+span{transform:none}.navlinks{border-radius:999px;gap:2px;padding:5px;transition:background-color .4s,box-shadow .4s;display:flex}.nav.solid .navlinks{-webkit-backdrop-filter:blur(14px);background:#ffffff9e;box-shadow:inset 0 1px #fff9,0 6px 24px #00000012,inset 0 0 0 1px #0000000a}.navlinks a{border-radius:999px;padding:9px 16px;font-size:14px;font-weight:500;transition:background-color .25s,color .25s;position:relative}.navlinks a:hover,.navlinks a[aria-current=page]{background:var(--color-ink);color:#fff}.nav.on-hero .navlinks a:hover{color:var(--color-ink);background:#fff}.menu-btn{display:none}@media (max-width:640px){.nav{padding:14px var(--pad)}.navlinks a{padding:8px 11px;font-size:13px}.brandmark{font-size:14px}.brandmark .roll{display:none}}@media (max-width:400px){.navlinks a{padding:8px 9px}}.intro-scene{--zoom:1.35;z-index:300;transition:background-color 1.4s var(--ease).25s;background:#edece8;position:fixed;inset:0;overflow:hidden}.seen .intro-scene{display:none}.intro-scene.is-zoom{pointer-events:none;background-color:#0000}.intro-stage{transform-origin:var(--origin);scale:var(--zoom);transition:scale 2s var(--ease-io);position:absolute;inset:0}.intro-scene.is-zoom .intro-stage{scale:1}.intro-bg{transition:opacity 1.4s var(--ease).25s;background-color:#edece8;background-image:radial-gradient(circle,#d2d0ca 1px,#0000 1.2px);background-size:24px 24px;position:absolute;inset:-40%}.intro-scene.is-zoom .intro-bg{opacity:0}.intro-frame{border-radius:6px;position:absolute}.intro-frame:before{content:"";border-radius:inherit;opacity:0;transition:opacity .85s var(--ease),scale 1.05s var(--ease),background-color .6s;background:#fff;position:absolute;inset:0;scale:.94;box-shadow:0 0 0 1px #00000014,0 30px 60px -30px #00000040}.intro-scene:not(.is-idle) .intro-frame:before{opacity:1;scale:1}.intro-scene.is-zoom .intro-frame:before{opacity:0;transition-duration:1.2s}.intro-label{white-space:nowrap;font:11px var(--font-mono);color:#8d8a84;opacity:0;transition:opacity .7s var(--ease).25s,color .45s;align-items:center;gap:6px;margin-bottom:8px;display:flex;position:absolute;bottom:100%;left:0}.intro-label svg{width:11px;height:11px}.intro-scene:not(.is-idle) .intro-label{opacity:1}.intro-scene.is-select .intro-label{color:#0d99ff}.intro-scene.is-zoom .intro-label{opacity:0;transition-delay:0s}.intro-name{color:var(--color-ink);text-align:center;white-space:nowrap;opacity:0;transition:opacity .95s var(--ease),translate 1.05s var(--ease);font-weight:500;display:block;position:absolute;translate:0 10px}.intro-scene.is-cursor .intro-name,.intro-scene.is-name .intro-name,.intro-scene.is-select .intro-name,.intro-scene.is-zoom .intro-name{opacity:1;translate:0}.intro-sel{clip-path:inset(0 100% 100% 0);transition:clip-path .95s var(--ease-io);border-radius:6px;position:absolute;inset:-1px;box-shadow:0 0 0 1.5px #0d99ff}.intro-sel i{background:#fff;border:1.5px solid #0d99ff;border-radius:2px;width:9px;height:9px;position:absolute}.intro-sel .tl{top:-5px;left:-5px}.intro-sel .tr{top:-5px;right:-5px}.intro-sel .bl{bottom:-5px;left:-5px}.intro-sel .br{bottom:-5px;right:-5px}.intro-scene.is-select .intro-sel{clip-path:inset(-12px)}.intro-scene.is-zoom .intro-sel{clip-path:inset(-12px);opacity:0;transition:opacity .85s}.intro-size{color:#fff;font:11px var(--font-mono);white-space:nowrap;opacity:0;background:#0d99ff;border-radius:4px;margin-top:10px;padding:3px 8px;transition:opacity .5s .75s;position:absolute;top:100%;left:50%;translate:-50%}.intro-scene.is-select .intro-size{opacity:1}.intro-scene.is-zoom .intro-size{opacity:0;transition-delay:0s}.intro-cursor{pointer-events:none;opacity:0;transition:translate .95s var(--ease-io),opacity .5s;align-items:flex-start;display:flex;position:absolute;top:0;left:0;translate:105vw 90vh}.intro-cursor svg{width:18px;height:18px;fill:var(--color-violet);stroke:#fff;stroke-width:1px;filter:drop-shadow(0 2px 3px #0003)}.intro-cursor b{background:var(--color-violet);color:#fff;border-radius:4px 999px 999px;margin:14px 0 0 -2px;padding:3px 8px;font-size:11px;font-weight:500}.intro-scene.is-cursor .intro-cursor{opacity:1;translate:calc(var(--fx) - 14px)calc(var(--fy) - 12px)}.intro-scene.is-select .intro-cursor{opacity:1}.intro-scene.is-select .intro-cursor,.intro-scene.is-zoom .intro-cursor{translate:calc(var(--fx) + var(--fw) + 2px)calc(var(--fy) + var(--fh) + 2px)}.intro-scene.is-zoom .intro-cursor{opacity:0}.intro-skip{font:12px var(--font-mono);color:#9a978f;white-space:nowrap;transition:opacity .3s;position:absolute;bottom:28px;left:50%;translate:-50%}.intro-scene.is-zoom .intro-skip{opacity:0}.op-intro .hc-center h1{opacity:0!important}.op-intro .hc-center h1,.op-landed .hc-center h1{transition:none!important;translate:none!important}.op-intro:not(.op-zoom) .nav{opacity:0}.nav{transition:transform .5s var(--ease),color .4s,opacity .6s var(--ease)}.op-zoom .hc-world{animation:intro-world 2s var(--ease-io)both}@keyframes intro-world{0%{scale:var(--intro-zoom,1.35)}to{scale:1}}@media (max-width:760px){.intro-name{white-space:normal}.intro-label{left:50%;translate:-50%}.intro-scene{--zoom:1.1}:root{--intro-zoom:1.1}}.hero{z-index:0;background:var(--color-stage);color:#fff;height:100svh;min-height:600px;position:sticky;top:0;overflow:hidden}.hero.hc{--blue:#0d99ff;color:var(--color-ink);cursor:grab;touch-action:pan-y;-webkit-user-select:none;user-select:none;background-color:#edece8;background-image:radial-gradient(circle,#d2d0ca 1px,#0000 1.2px);background-size:24px 24px}.hero.hc.grabbing{cursor:grabbing}.hc-world{opacity:0;transition:opacity 1.4s var(--ease).25s;position:absolute;inset:0}.ready .hc-world{opacity:1}.hc-frame{transform-origin:0 0;will-change:transform;-webkit-user-drag:none;position:absolute;top:0;left:0}.hc-img{background:#fff;border-radius:10px;transition:box-shadow .25s;position:absolute;inset:0;overflow:hidden;box-shadow:0 1px 2px #0000000f,0 18px 40px -18px #00000040}.hc-frame.phone .hc-img{border-radius:26px;box-shadow:0 0 0 5px #1b1b1d,0 0 0 6px #3a3a3e,0 24px 50px -20px #00000073}.hc-img img{object-fit:cover;object-position:top;pointer-events:none}.hc-label{white-space:nowrap;font:11px var(--font-mono);color:#8d8a84;align-items:center;gap:6px;margin-bottom:8px;transition:color .2s;display:flex;position:absolute;bottom:100%;left:0}.hc-frame.phone .hc-label{margin-bottom:14px}.hc-label svg{width:11px;height:11px}.hc-frame:hover .hc-label{color:var(--blue)}.hc-frame:hover .hc-img{box-shadow:0 0 0 2px var(--blue),0 24px 50px -20px #00000059}.hc-frame.phone:hover .hc-img{box-shadow:0 0 0 5px #1b1b1d,0 0 0 7px var(--blue),0 24px 50px -20px #00000073}.hc-fade{background:radial-gradient(46% 40% at 50% 52%,#edece8f7 0,#edece8e6 45%,#edece800 100%);inset:0}.hc-center,.hc-fade{pointer-events:none;position:absolute}.hc-center{z-index:3;width:min(760px,calc(100% - var(--pad)*2));text-align:center;flex-direction:column;align-items:center;display:flex;top:52%;left:50%;translate:-50% -50%}.hc-center>*{opacity:0;transition:opacity .9s var(--ease),translate .9s var(--ease);translate:0 16px}.ready .hc-center>*{opacity:1;translate:0}.ready .hc-center>:nth-child(2){transition-delay:.1s}.ready .hc-center>:nth-child(3){transition-delay:.2s}.ready .hc-center>:nth-child(4){transition-delay:.3s}.hc-pill{color:var(--color-ink-2);background:#fff;border-radius:999px;align-items:center;gap:8px;padding:6px 12px;font-size:12px;display:inline-flex;box-shadow:0 0 0 1px #0000000f,0 6px 18px #0000000f}.hc-pill i{background:var(--color-green);border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 3px #2bb24c33}.hc-center h1{font-family:var(--font-display);letter-spacing:-.055em;white-space:nowrap;margin:22px 0 0;font-size:clamp(54px,8.4vw,136px);font-weight:500;line-height:.9}.hc-center p{letter-spacing:-.02em;max-width:30ch;color:var(--color-ink-2);margin:20px 0 0;font-size:clamp(18px,1.6vw,24px);line-height:1.3}.hc-center p .serif{color:var(--color-ink);font-size:1.1em}.hc-cta{pointer-events:auto;gap:10px;margin-top:28px;display:flex}.hc-cursor{z-index:2;pointer-events:none;animation:hc-cursor 16s var(--ease-io)infinite;opacity:0;align-items:flex-start;transition:opacity .6s 1.2s;display:flex;position:absolute;top:0;left:0}.ready .hc-cursor{opacity:1}.hc-cursor svg{width:18px;height:18px;fill:var(--color-violet);stroke:#fff;stroke-width:1px;filter:drop-shadow(0 2px 3px #0003)}.hc-cursor b{background:var(--color-violet);color:#fff;border-radius:4px 999px 999px;margin:14px 0 0 -2px;padding:3px 8px;font-size:11px;font-weight:500}@keyframes hc-cursor{0%,to{translate:14vw 22vh}25%{translate:78vw 18vh}50%{translate:84vw 70vh}75%{translate:10vw 74vh}}.hc-bar{z-index:3;color:#e7e6e3;white-space:nowrap;opacity:0;background:#1d1d20;border-radius:12px;align-items:center;gap:12px;padding:9px 16px;font-size:12px;transition:opacity .8s .9s;display:flex;position:absolute;bottom:52px;left:50%;translate:-50%;box-shadow:0 12px 30px #0003}.ready .hc-bar{opacity:1}.hc-bar span{align-items:center;gap:7px;display:inline-flex}.hc-bar svg{width:15px;height:15px}.hc-bar .sep{background:#3c3c40;width:1px;height:14px}.hc-bar .mono{font-family:var(--font-mono);color:#9c9a95;font-size:11px}@media (max-width:760px){.hc-fade{background:radial-gradient(80% 34%,#edece8f7 0,#edece8e0 55%,#edece800 100%)}.hc-center{top:50%}.hc-center h1{white-space:normal;font-size:15vw}.hc-center p{font-size:17px}.hc-cta .cta{padding-left:16px;padding-right:16px}.hc-bar{padding:8px 12px;font-size:11px;bottom:48px}.hc-bar span:not(:first-child),.hc-cursor{display:none}}.over{z-index:5;background:#fff;border-radius:36px 36px 0 0;margin-top:-36px;position:relative}.intro{padding:16vh 0 8vh}.intro p{letter-spacing:-.045em;max-width:1080px;margin:0;font-size:clamp(28px,3.6vw,56px);font-weight:500;line-height:1.08}.intro p .mute{color:var(--color-ink-3)}.big-faded{padding:2vh 0 4vh;overflow:hidden}.big-faded h2{font-family:var(--font-display);letter-spacing:-.075em;color:#efefee;white-space:nowrap;margin:0;padding-left:1.6vw;font-size:clamp(56px,15vw,290px);font-weight:700;line-height:.8}.head{text-align:center;max-width:680px;margin:0 auto 64px}.head h2{letter-spacing:-.045em;margin:24px 0 0;font-size:clamp(32px,3.8vw,50px);font-weight:600;line-height:1.04}.head p{max-width:520px;color:var(--color-ink-2);margin:16px auto 0;font-size:17px;line-height:1.5}.head .ctas{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:30px;display:flex}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:44px 22px;display:grid}@media (max-width:720px){.grid{grid-template-columns:1fr;gap:36px}}.card{animation:rise .5s var(--ease)both;animation-delay:calc(min(var(--i,0),8)*50ms);display:block}@keyframes rise{0%{opacity:0;transform:translateY(14px)}}.card .thumb{aspect-ratio:4/3;border-radius:var(--radius);background:var(--color-well);position:relative;overflow:hidden}.card .thumb img{object-fit:cover;width:100%;height:100%;transition:transform .9s var(--ease)}.card:hover .thumb img{transform:scale(1.04)}.card .meta{justify-content:space-between;align-items:flex-start;gap:16px;padding:16px 4px 0;display:flex}.card h3{letter-spacing:-.02em;margin:0;font-size:17px;font-weight:600}.card .sub{color:var(--color-ink-2);max-width:46ch;margin:4px 0 0;font-size:14px;line-height:1.45}.card .tags{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.card .tags span{font-family:var(--font-mono);color:var(--color-ink-3);font-size:11px}.card .tags span+span:before{content:"·";margin-right:6px}.card .arrow{background:var(--color-well);width:34px;height:34px;transition:background-color .3s,color .3s,transform .4s var(--ease);border-radius:50%;flex:none;place-items:center;font-size:14px;display:grid}.card:hover .arrow{background:var(--color-ink);color:#fff;transform:rotate(45deg)}.more{text-align:center;margin-top:64px}.ways{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:stretch;gap:48px;display:grid}.ways ol{flex-direction:column;margin:0;padding:0;list-style:none;display:flex;position:relative}.ways ol:before{content:"";background:var(--color-violet);width:2px;height:16.6667%;transform:translateY(calc(var(--on)*100%));transition:transform .45s var(--ease);border-radius:2px;position:absolute;top:0;left:0}.ways li button{text-align:left;border-bottom:1px solid var(--color-line);width:100%;color:var(--color-ink-3);transition:color .2s,transform .3s var(--ease);align-items:baseline;gap:18px;padding:18px 0 18px 24px;display:flex}.ways li:first-child button{border-top:1px solid var(--color-line)}.ways li button .n{font-family:var(--font-mono);font-size:12px}.ways li button .t{letter-spacing:-.035em;font-size:clamp(22px,2.2vw,30px);font-weight:500}.ways li button:hover{color:var(--color-ink-2)}.ways li button.is-on{color:var(--color-ink);transform:translate(6px)}.ways-stage{border-radius:var(--radius);background:var(--color-ink-deep);color:#fff;flex-direction:column;justify-content:space-between;min-height:380px;padding:36px;display:flex;position:relative;overflow:hidden}.ways-stage .glow{filter:blur(10px);pointer-events:none;background:radial-gradient(circle,#d343f773,#0000 65%);border-radius:50%;width:420px;height:420px;position:absolute;top:-140px;right:-120px}.ways-stage .num{font-family:var(--font-display);letter-spacing:-.06em;color:#ffffff1a;font-size:clamp(90px,11vw,170px);font-weight:500;line-height:.8}.ways-stage h3{letter-spacing:-.045em;margin:0;font-size:clamp(30px,3.2vw,46px);font-weight:500;line-height:1}.ways-stage p{color:#b9b5c4;max-width:38ch;margin:14px 0 0;font-size:17px;line-height:1.5}.ways-stage .swap{animation:swap .5s var(--ease)both}@keyframes swap{0%{opacity:0;transform:translateY(10px)}}.ways-dots{gap:6px;margin-top:28px;display:flex}.ways-dots i{background:#ffffff26;border-radius:3px;width:22px;height:3px;overflow:hidden}.ways-dots i.on:after{content:"";height:100%;animation:fill var(--dur,3.6s)linear both;background:#fff;display:block}.ways-dots i.done{background:#fff9}@keyframes fill{0%{width:0}to{width:100%}}.ways-tools{flex-wrap:wrap;gap:6px;margin-top:22px;display:flex}.ways-tools span{font-family:var(--font-mono);color:#d9d5e4;background:#ffffff14;border-radius:999px;padding:6px 10px;font-size:11px}@media (max-width:860px){.ways{grid-template-columns:1fr;gap:24px}.ways-stage{min-height:300px;padding:26px}}.sec{padding:120px 0 0}.sec-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:36px;display:flex}.sec-head h2{letter-spacing:-.045em;margin:10px 0 0;font-size:clamp(30px,3.4vw,46px);font-weight:600;line-height:1}.sec-head p{max-width:40ch;color:var(--color-ink-2);margin:0;font-size:15px;line-height:1.5}.cf{--blue:#0d99ff;color:var(--color-ink);background-color:#edece8;background-image:radial-gradient(circle,#d2d0ca 1px,#0000 1.2px);background-size:24px 24px;border-radius:36px 36px 0 0;margin-top:140px;padding:36px 0 0;position:relative;overflow:hidden}.cf-chip{font:11px var(--font-mono);color:#8d8a84;align-items:center;gap:8px;display:inline-flex}.cf-chip svg,.cf-label svg{width:11px;height:11px}.cf-stage{justify-content:center;padding:96px 0 120px;display:flex}.cf-frame{background:#fff;border-radius:8px;width:min(760px,100%);padding:44px 48px 48px;position:relative;box-shadow:0 1px 2px #0000000d,0 40px 80px -40px #0000004d}.cf-label{font:11px var(--font-mono);color:var(--blue);white-space:nowrap;align-items:center;gap:6px;margin-bottom:10px;display:flex;position:absolute;bottom:100%;left:0}.cf-sel{box-shadow:0 0 0 1.5px var(--blue);pointer-events:none;border-radius:8px;position:absolute;inset:-1px}.cf-sel i{border:1.5px solid var(--blue);background:#fff;border-radius:2px;width:9px;height:9px;position:absolute}.cf-sel .tl{top:-5px;left:-5px}.cf-sel .tr{top:-5px;right:-5px}.cf-sel .bl{bottom:-5px;left:-5px}.cf-sel .br{bottom:-5px;right:-5px}.cf-size{background:var(--blue);color:#fff;font:11px var(--font-mono);white-space:nowrap;border-radius:4px;margin-top:12px;padding:3px 8px;position:absolute;top:100%;left:50%;translate:-50%}.cf-who{align-items:center;gap:12px;display:flex}.cf-who img{object-fit:cover;border-radius:50%;width:44px;height:44px}.cf-who b{letter-spacing:-.01em;font-size:15px;font-weight:600;display:block}.cf-who span{color:var(--color-ink-2);align-items:center;gap:7px;font-size:13px;display:inline-flex}.cf-dot{background:var(--color-green);border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 3px #2bb24c33}.cf h2{font-family:var(--font-display);letter-spacing:-.06em;margin:30px 0 0;font-size:clamp(60px,8vw,120px);font-weight:500;line-height:.88}.cf h2 .serif{letter-spacing:-.03em;color:var(--color-violet)}.cf-lede{max-width:44ch;color:var(--color-ink-2);margin:20px 0 0;font-size:17px;line-height:1.5}.cf-email{background:var(--color-well);width:100%;box-shadow:inset 0 0 0 1px var(--color-line);text-align:left;transition:background-color .25s,box-shadow .25s,transform .2s var(--ease);border-radius:14px;justify-content:space-between;align-items:center;gap:16px;margin-top:30px;padding:18px 20px;display:flex}.cf-email span{text-overflow:ellipsis;min-width:0;font-family:var(--font-display);letter-spacing:-.04em;font-size:clamp(20px,2.6vw,34px);font-weight:500;overflow:hidden}.cf-email small{font:11px var(--font-mono);color:var(--color-ink-2);box-shadow:inset 0 0 0 1px var(--color-line);background:#fff;border-radius:999px;flex:none;padding:5px 10px}.cf-email:hover{box-shadow:inset 0 0 0 1.5px var(--blue);background:#fff}.cf-email:hover small{color:var(--blue)}.cf-email:active{transform:scale(.99)}.cf-ctas{flex-wrap:wrap;gap:10px;margin-top:12px;display:flex}.cf-comment{align-items:flex-start;gap:4px;animation:cf-float 4s ease-in-out infinite;display:flex;position:absolute;bottom:34px;left:calc(100% + 18px)}.cf-cursor svg{width:20px;height:20px;fill:var(--color-violet);stroke:#fff;stroke-width:1px;filter:drop-shadow(0 2px 3px #0003)}.cf-bubble{white-space:nowrap;background:#fff;border-radius:4px 16px 16px;align-items:flex-start;gap:10px;margin-top:16px;padding:10px 14px 10px 10px;display:flex;box-shadow:0 12px 30px #0000001f,0 0 0 1px #0000000a}.cf-bubble b{background:var(--color-violet);color:#fff;border-radius:50%;flex:none;place-items:center;width:26px;height:26px;font-size:10px;font-weight:600;display:grid}.cf-bubble>span{color:var(--color-ink-2);flex-direction:column;font-size:13px;display:flex}.cf-bubble strong{color:var(--color-ink);font-size:12px;font-weight:600}@keyframes cf-float{0%,to{translate:0}50%{translate:6px -8px}}.cf-bar{color:#a9a7a2;background:#1d1d20;border-radius:14px;justify-content:center;align-items:center;gap:10px 18px;width:max-content;max-width:100%;margin:0 auto;padding:12px 20px;font-size:13px;box-shadow:0 16px 40px -12px #00000059}.cf-bar,.cf-bar nav{flex-wrap:wrap;display:flex}.cf-bar nav{gap:4px 16px}.cf-bar a{transition:color .2s}.cf-bar a:hover{color:#fff}.cf-sign b{color:#fff;font-weight:500}.cf-sep{background:#3c3c40;width:1px;height:14px}.cf-copy{text-align:center;font:11px var(--font-mono);color:#9a978f;margin:18px 0 0;padding-bottom:28px}@media (max-width:1100px){.cf-comment{inset:-58px 24px auto auto}}@media (max-width:760px){.cf{border-radius:28px 28px 0 0;margin-top:100px}.cf-stage{padding:72px 0 76px}.cf-frame{padding:28px 22px 26px}.cf-comment{top:auto;bottom:-74px;right:4px}.cf-size{display:none}.cf-stage{padding-bottom:110px}.cf-email span{letter-spacing:-.02em;font-size:17px}.cf-bubble{padding:8px 12px 8px 8px}.cf-lede{font-size:15px}.cf-email{padding:14px}.cf-ctas .cta{flex:1;justify-content:center}.cf-bar{flex-direction:column;align-items:flex-start;gap:12px;width:100%;padding:16px 18px}.cf-sep{display:none}}@media (prefers-reduced-motion:reduce){.cf-comment{animation:none}}.bento-head{max-width:760px}.bento-head .page-title{margin:12px 0 0}.bento-head p{max-width:52ch;color:var(--color-ink-2);margin:16px 0 0;font-size:17px;line-height:1.5}.wf-page{padding-top:140px;padding-bottom:40px}.wf-spot{isolation:isolate;border-radius:28px;height:clamp(560px,72vh,680px);margin-top:40px;position:relative;overflow:hidden}.wf-slide{opacity:0;visibility:hidden;transition:opacity .8s var(--ease),visibility 0s .8s;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);align-items:center;gap:24px;padding:56px 56px 96px;display:grid;position:absolute;inset:0}.wf-slide.is-on{opacity:1;visibility:visible;transition:opacity .8s var(--ease),visibility 0s;z-index:1}.wf-copy>*{opacity:0;transition:opacity .7s var(--ease),translate .7s var(--ease);translate:0 18px}.wf-slide.is-on .wf-copy>*{opacity:1;translate:0}.wf-slide.is-on .wf-copy>:nth-child(2){transition-delay:80ms}.wf-slide.is-on .wf-copy>:nth-child(3){transition-delay:.16s}.wf-slide.is-on .wf-copy>:nth-child(4){transition-delay:.22s}.wf-slide.is-on .wf-copy>:nth-child(5){transition-delay:.28s}.wf-kicker{font-family:var(--font-mono);opacity:.7;font-size:12px;display:block}.wf-copy h2{font-family:var(--font-display);letter-spacing:-.055em;margin:14px 0 0;font-size:clamp(48px,6.4vw,96px);font-weight:500;line-height:.9}.wf-copy p{opacity:.85;max-width:40ch;margin:18px 0 0;font-size:clamp(16px,1.35vw,19px);line-height:1.45}.wf-tags{flex-wrap:wrap;gap:6px;margin-top:18px;display:flex}.wf-tags span{font-family:var(--font-mono);background:currentColor;border-radius:999px;padding:5px 10px;font-size:11px}@supports (color:color-mix(in lab,red,red)){.wf-tags span{background:color-mix(in srgb,currentColor 12%,transparent)}}.wf-ctas{flex-wrap:wrap;gap:10px;margin-top:28px;display:flex}.wf-btn{height:48px;color:var(--color-ink);transition:transform .3s var(--ease);background:#fff;border-radius:999px;align-items:center;gap:10px;padding:0 22px;font-size:15px;font-weight:500;display:inline-flex}.wf-btn:hover{transform:translateY(-2px)}.wf-btn.ghost{color:inherit;background:0 0;box-shadow:inset 0 0 0 1.5px}@supports (color:color-mix(in lab,red,red)){.wf-btn.ghost{box-shadow:inset 0 0 0 1.5px color-mix(in srgb,currentColor 45%,transparent)}}.wf-phones{height:100%;min-height:440px;position:relative}.wf-phone{transition:translate 1s var(--ease),rotate 1s var(--ease),opacity .8s var(--ease);position:absolute;top:50%;left:50%}.wf-phone .iphone{--w:clamp(150px,15vw,220px);box-shadow:inset 0 0 0 1px #ffffff24,0 50px 80px -30px #0000008c,0 14px 28px -10px #00000059}.wf-phone.p0{opacity:0;translate:-125% -42%;rotate:-8deg}.wf-phone.p1{z-index:2;opacity:0;translate:-50% -42%}.wf-phone.p2{opacity:0;translate:25% -42%;rotate:8deg}.wf-slide.is-on .wf-phone{opacity:1}.wf-slide.is-on .wf-phone.p0{transition-delay:.1s;translate:-132% -48%}.wf-slide.is-on .wf-phone.p1{translate:-50% -54%}.wf-slide.is-on .wf-phone.p2{transition-delay:.18s;translate:32% -48%}.wf-browsers{height:100%;min-height:440px;position:relative}.wf-browser{opacity:0;transition:translate 1s var(--ease),opacity .8s var(--ease);background:#fff;border-radius:12px;display:block;position:absolute;overflow:hidden;box-shadow:0 0 0 1px #ffffff1f,0 50px 90px -30px #0000008c,0 14px 28px -12px #0000004d}.wf-bbar{background:#f1efeb;border-bottom:1px solid #e4e1dc;align-items:center;gap:6px;height:26px;padding:0 12px;display:flex}.wf-bbar i{background:#d6d2cb;border-radius:50%;width:9px;height:9px}.wf-bshot{aspect-ratio:16/10;display:block;position:relative}.wf-bshot img{object-fit:cover;object-position:top}.wf-browser.b0{width:78%;top:6%;right:-6%;translate:0 24px}.wf-browser.b1{z-index:2;width:92%;bottom:4%;left:0;translate:0 36px}.wf-slide.is-on .wf-browser{opacity:1;translate:0}.wf-slide.is-on .wf-browser.b0{transition-delay:.12s}.wf-dots{z-index:3;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid;position:absolute;bottom:28px;left:56px;right:56px}.wf-dots button{text-align:left;color:#fff;mix-blend-mode:difference;flex-direction:column;gap:8px;display:flex}.wf-dot-name{opacity:.55;font-size:13px;font-weight:500;transition:opacity .3s}.wf-dots button.is-on .wf-dot-name,.wf-dots button:hover .wf-dot-name{opacity:1}.wf-bar{background:#ffffff4d;border-radius:2px;height:2px;position:relative;overflow:hidden}.wf-bar i{background:#fff;width:0;position:absolute;inset:0 auto 0 0}.wf-dots button.is-on .wf-bar i{animation:wf-progress var(--ms)linear forwards}.wf-spot.is-paused .wf-dots button.is-on .wf-bar i{animation-play-state:paused}@keyframes wf-progress{to{width:100%}}.wf-jump{z-index:20;-webkit-backdrop-filter:blur(14px);scrollbar-width:none;background:#ffffffc7;border-radius:999px;gap:6px;width:max-content;max-width:100%;margin:56px 0 0;padding:5px;display:flex;position:sticky;top:92px;overflow-x:auto;box-shadow:0 6px 24px #00000012,inset 0 0 0 1px #0000000d}.wf-jump::-webkit-scrollbar{display:none}.wf-pill{background:var(--color-ink);opacity:0;pointer-events:none;transition:transform .5s var(--ease),width .5s var(--ease),opacity .3s;border-radius:999px;position:absolute;top:5px;bottom:5px;left:0}.wf-jump a{z-index:1;color:var(--color-ink-2);border-radius:999px;flex:none;align-items:center;gap:6px;padding:9px 14px;font-size:13px;font-weight:500;transition:background-color .2s,color .2s;display:inline-flex;position:relative}.wf-jump a small{font-family:var(--font-mono);color:var(--color-ink-3);font-size:11px}.wf-jump a:hover{color:var(--color-ink)}.wf-jump a.is-on{color:#fff}.wf-jump a.is-on small{color:#fff9}.wf-group{padding-top:64px;scroll-margin-top:150px}.wf-group-head{border-bottom:1px solid var(--color-line);justify-content:space-between;align-items:end;gap:24px;margin-bottom:24px;padding-bottom:18px;display:flex}.wf-group-head h2{font-family:var(--font-display);letter-spacing:-.045em;margin:0;font-size:clamp(30px,3.4vw,48px);font-weight:500;line-height:1}.wf-group-head h2 small{font-family:var(--font-mono);letter-spacing:0;color:var(--color-ink-3);vertical-align:top;margin-left:6px;font-size:13px;font-weight:400}.wf-group-head p{max-width:36ch;color:var(--color-ink-2);text-align:right;margin:0;font-size:14px;line-height:1.5}.wf-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 18px;display:grid}.wf-card{animation:rise .5s var(--ease)both;animation-delay:calc(min(var(--i,0),8)*50ms);display:block}.wf-thumb{aspect-ratio:4/3;background:var(--color-well);border-radius:18px;display:block;position:relative;overflow:hidden}.wf-thumb img,.wf-thumb video{object-fit:cover;width:100%;height:100%;transition:transform .9s var(--ease);position:absolute;inset:0}.wf-thumb video{object-fit:contain}.wf-card:hover .wf-thumb img{transform:scale(1.04)}.wf-go{opacity:0;width:36px;height:36px;transition:opacity .3s var(--ease),transform .4s var(--ease);background:#fff;border-radius:50%;place-items:center;font-size:14px;display:grid;position:absolute;top:12px;right:12px;transform:scale(.7)rotate(-45deg);box-shadow:0 8px 20px #00000026}.wf-card:hover .wf-go{opacity:1;transform:none}.wf-meta{justify-content:space-between;align-items:baseline;gap:12px;margin-top:12px;display:flex}.wf-meta b{letter-spacing:-.02em;font-size:16px;font-weight:600}.wf-meta small{font-family:var(--font-mono);color:var(--color-ink-3);flex:none;font-size:11px}.wf-empty{padding:56px 24px}@media (max-width:1000px){.wf-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.wf-page{padding-top:110px}.wf-spot{border-radius:22px;height:auto;min-height:720px;margin-top:28px}.wf-slide{grid-template-rows:auto 1fr;grid-template-columns:1fr;align-items:start;gap:8px;padding:28px 22px 84px}.wf-copy h2{font-size:46px}.wf-copy p{font-size:15px}.wf-tags{display:none}.wf-ctas{margin-top:18px}.wf-btn{height:42px;padding:0 16px;font-size:14px}.wf-phones{min-height:300px}.wf-browsers{min-height:260px}.wf-phone .iphone{--w:128px}.wf-dots{gap:10px;bottom:20px;left:22px;right:22px}.wf-dot-name{font-size:11px}.wf-jump{margin-top:36px}.wf-group{padding-top:48px}.wf-group-head{flex-direction:column;align-items:start;gap:8px}.wf-group-head p{text-align:left}.wf-grid{grid-template-columns:1fr;gap:24px}}.ml-page{padding-top:140px}.ml-page .page-title{margin:12px 0 0}.ml-intro{max-width:56ch;color:var(--color-ink-2);margin:16px 0 48px;font-size:17px;line-height:1.5}.ml-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.ml-card{box-shadow:inset 0 0 0 1px var(--color-line);animation:rise .5s var(--ease)both;animation-delay:calc(var(--i,0)*50ms);background:#fff;border-radius:20px;flex-direction:column;display:flex;overflow:hidden}.ml-top{justify-content:space-between;padding:12px 14px;display:flex}.ml-frame,.ml-top{align-items:center}.ml-frame{font:11px var(--font-mono);color:#8d8a84;gap:6px;transition:color .2s;display:inline-flex}.ml-frame svg{width:11px;height:11px}.ml-card:focus-within .ml-frame,.ml-card:hover .ml-frame{color:#0d99ff}.ml-live{font:10px var(--font-mono);color:var(--color-green);align-items:center;gap:6px;display:inline-flex}.ml-live:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 3px #2bb24c2e}.ml-stage{background-color:#f1f0ec;background-image:radial-gradient(circle,#dad8d2 1px,#0000 1.2px);background-size:18px 18px;border-radius:14px;place-items:center;height:220px;margin:0 10px;transition:box-shadow .3s;display:grid;position:relative}.ml-card:focus-within .ml-stage,.ml-card:hover .ml-stage{box-shadow:inset 0 0 0 1.5px #0d99ff}.ml-body{flex-direction:column;flex:1;padding:16px 18px 18px;display:flex}.ml-body h3{letter-spacing:-.02em;margin:0;font-size:17px;font-weight:600}.ml-body p{color:var(--color-ink-2);margin:6px 0 0;font-size:14px;line-height:1.5}.ml-spec{flex-wrap:wrap;gap:6px;margin:14px 0 0;display:flex}.ml-spec div{background:var(--color-well);font:11px var(--font-mono);border-radius:6px;gap:6px;padding:4px 9px;display:flex}.ml-spec dt{color:var(--color-ink-3)}.ml-spec dd{color:var(--color-ink);margin:0}.ml-how{margin-top:auto;padding-top:14px}.ml-how summary{cursor:pointer;color:var(--color-ink);align-items:center;gap:6px;font-size:13px;font-weight:500;list-style:none;display:inline-flex}.ml-how summary::-webkit-details-marker{display:none}.ml-how summary:after{content:"+";font-family:var(--font-mono);color:var(--color-violet);transition:transform .3s var(--ease)}.ml-how[open] summary:after{transform:rotate(45deg)}.ml-prompt{background:#1d1d20;border-radius:12px;margin-top:10px;padding:14px;position:relative}.ml-prompt p{font:12px/1.6 var(--font-mono);color:#d8d6d1;white-space:pre-wrap;scrollbar-width:thin;max-height:220px;margin:0;padding-top:30px;overflow-y:auto}.ml-copy{color:#fff;background:#2c2c30;border-radius:8px;align-items:center;gap:6px;padding:6px 10px;font-size:12px;font-weight:500;transition:background-color .2s,transform .15s;display:inline-flex;position:absolute;top:10px;right:10px}.ml-copy svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:14px;height:14px}.ml-copy:hover{background:var(--color-violet)}.ml-copy:active{transform:scale(.95)}@media (max-width:1050px){.ml-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.ml-page{padding-top:110px}.ml-grid{grid-template-columns:1fr}.ml-stage{height:200px}}.mi-magnet{place-items:center;width:100%;height:100%;display:grid}.mi-magnet button{background:var(--color-violet);color:#fff;transition:transform .6s var(--ease);border-radius:999px;padding:18px 30px;font-weight:600;box-shadow:0 14px 30px -10px #d343f799}.mi-magnet button span{transition:transform .6s var(--ease);display:inline-block}.mi-magnet:hover button,.mi-magnet:hover button span{transition-duration:.15s}.mi-eyes{cursor:pointer;background:#ffd23f;border-radius:999px;gap:14px;padding:18px 22px;display:flex;box-shadow:0 14px 30px -12px #0000004d}.mi-eye{background:#fff;border-radius:50%;width:62px;height:62px;position:relative;overflow:hidden;box-shadow:inset 0 -4px #00000014,0 0 0 3px #1d1d20}.mi-eye .pupil{width:26px;height:26px;transform:translate(var(--px,0),var(--py,0));background:#1d1d20;border-radius:50%;margin:-13px;transition:transform .12s ease-out;position:absolute;top:50%;left:50%}.mi-eye .pupil:after{content:"";background:#fff;border-radius:50%;width:7px;height:7px;position:absolute;top:5px;left:6px}.mi-eye .lid{transform-origin:top;background:#ffd23f;animation:mi-blink .36s ease-in-out;position:absolute;inset:0;transform:scaleY(0)}@keyframes mi-blink{0%,to{transform:scaleY(0)}50%{transform:scaleY(1)}}.mi-holo-wrap{perspective:700px;touch-action:none;place-items:center;width:100%;height:100%;display:grid}.mi-holo{--rx:0deg;--ry:0deg;--mx:50%;--my:50%;color:#fff;width:140px;height:186px;transform:rotateX(var(--rx))rotateY(var(--ry));transition:transform .6s var(--ease);background:linear-gradient(150deg,#2b1640,#121226 60%,#0b2a3a);border-radius:14px;flex-direction:column;padding:14px;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff26,0 24px 40px -18px #0009}.mi-holo.is-on{transition-duration:80ms}.mi-holo .tag{font:9px var(--font-mono);background:#ffffff24;border-radius:999px;align-self:flex-start;padding:3px 7px}.mi-holo b{font-family:var(--font-display);letter-spacing:-.04em;margin-top:auto;font-size:30px;font-weight:600}.mi-holo small{opacity:.75;font-size:10px}.mi-holo .stats{gap:4px;margin-top:10px;display:flex}.mi-holo .stats i{font:8px var(--font-mono);background:#ffffff1f;border-radius:4px;padding:2px 5px;font-style:normal}.mi-holo .foil{background:linear-gradient(115deg,#0000 20%,#ff5ec4 35%,#ffd23f 45%,#45f3ff 55%,#b25bff 65%,#0000 80%) 0 0/250% 250%;background-position:var(--mx)var(--my);mix-blend-mode:color-dodge;opacity:.25}.mi-holo .foil,.mi-holo .shine{pointer-events:none;transition:opacity .3s;position:absolute;inset:0}.mi-holo .shine{background:radial-gradient(circle at var(--mx)var(--my),#ffffff8c,transparent 45%);mix-blend-mode:overlay;opacity:0}.mi-holo.is-on .foil{opacity:.75}.mi-holo.is-on .shine{opacity:1}.mi-goo{border-radius:inherit;cursor:none;overflow:hidden}.mi-goo,.mi-goo .blobs{position:absolute;inset:0}.mi-goo .blobs{filter:url(#mi-goo-f)}.mi-goo .blobs span{will-change:transform;background:linear-gradient(140deg,#e27bff,#d343f7 55%,#8a2be2);border-radius:50%;position:absolute;top:0;left:0}.mi-scramble{color:#58f28c;min-width:220px;font:500 30px var(--font-mono);letter-spacing:.06em;text-shadow:0 0 12px #58f28c8c;background:#0f1411;border-radius:14px;padding:18px 24px;box-shadow:inset 0 0 0 1px #58f28c40,0 14px 30px -14px #00000080}.mi-string{touch-action:none;cursor:grab;-webkit-user-select:none;user-select:none;width:min(260px,90%);height:auto}.mi-string:active{cursor:grabbing}.mi-string path{fill:none;stroke:var(--color-violet);stroke-width:3px;stroke-linecap:round}.mi-string .peg{fill:#1d1d20}.mi-string .knot{fill:#fff;stroke:var(--color-violet);stroke-width:3px}.mi-string text{font:11px var(--font-mono);fill:#9a978f}.mi-confetti{place-items:end center;padding-bottom:28px;display:grid;position:absolute;inset:0}.mi-confetti canvas{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.mi-confetti button{background:var(--color-ink);color:#fff;transition:transform .15s var(--ease);border-radius:999px;padding:14px 24px;font-weight:600;position:relative}.mi-confetti button:active{transform:scale(.92)}.mi-dots{border-radius:inherit;width:100%;height:100%;position:absolute;inset:0}.mi-run{place-items:center;display:grid;position:absolute;inset:0;overflow:hidden}.mi-run button{color:#fff;white-space:nowrap;transition:transform .35s var(--ease),background-color .3s;background:#ff3b5c;border-radius:999px;padding:13px 20px;font-weight:600;box-shadow:0 10px 24px -10px #ff3b5cb3}.mi-run button.is-won{background:var(--color-green);box-shadow:0 10px 24px -10px #2bb24cb3}.mi-run .count{font:10px var(--font-mono);color:#9a978f;position:absolute;bottom:10px;left:12px}.split{grid-template-columns:300px minmax(0,1fr);align-items:start;gap:64px;padding-top:130px;display:grid}.split-side{flex-direction:column;animation:fade .3s both;display:flex;position:sticky;top:100px}@keyframes fade{0%{opacity:0}}.split-title{letter-spacing:-.015em;margin:0;font-size:15px;font-weight:500}.split-side .desc{color:var(--color-ink-2);margin:8px 0 0;font-size:14px;line-height:1.5}@media (max-width:900px){.split{padding-top:100px;display:block}.split-side{position:static}}.page-title{letter-spacing:-.055em;margin:0 0 44px;font-size:clamp(40px,5.4vw,80px);font-weight:600;line-height:.95}.page-title .serif{font-weight:400}.back{color:var(--color-ink-3);transition:color .15s,gap .3s var(--ease);align-items:center;gap:6px;margin-bottom:26px;font-size:13px;display:inline-flex}.back:hover{color:var(--color-ink);gap:10px}.cs-meta{gap:12px;margin:26px 0 0;display:grid}.cs-meta div{grid-template-columns:84px 1fr;gap:12px;font-size:13px;line-height:1.4;display:grid}.cs-meta dt{font-family:var(--font-mono);color:var(--color-ink-3);padding-top:1px;font-size:11px}.cs-meta dd{color:var(--color-ink);margin:0}.cs-links{flex-wrap:wrap;gap:8px;margin-top:24px;display:flex}.cs-links a{background:var(--color-ink-deep);color:#fff;height:34px;transition:transform .16s var(--ease);border-radius:6px;align-items:center;gap:6px;padding:0 14px;font-size:13px;font-weight:500;display:inline-flex}.cs-links a.alt{background:var(--color-well);color:var(--color-ink);box-shadow:inset 0 0 0 1px var(--color-line)}.cs-links a:active{transform:scale(.97)}.toc{margin-top:32px}.toc .filters{margin-top:12px}@media (max-width:900px){.toc{display:none}}.cs-hero h1{letter-spacing:-.06em;margin:0;font-size:clamp(44px,6vw,88px);font-weight:600;line-height:.92}.cs-hero .sum{max-width:54ch;color:var(--color-ink-2);margin:20px 0 0;font-size:clamp(17px,1.5vw,20px);line-height:1.5}.cs-hero .tags{flex-wrap:wrap;gap:6px;margin-top:20px;display:flex}.cs-cover{border-radius:var(--radius);background:var(--color-well);cursor:zoom-in;margin-top:40px;overflow:hidden}.cs-cover img{width:100%;height:auto;transition:transform .9s var(--ease)}.cs-cover:hover img{transform:scale(1.015)}.blk{padding-top:96px;scroll-margin-top:90px}.blk>.label{margin-bottom:12px;display:block}.blk h2{letter-spacing:-.04em;max-width:26ch;margin:0;font-size:clamp(26px,2.8vw,38px);font-weight:600;line-height:1.06}.blk .txt{max-width:62ch;color:var(--color-ink-2);margin:16px 0 0;font-size:17px;line-height:1.6}.lead p{letter-spacing:-.035em;max-width:30ch;margin:0;font-size:clamp(24px,2.6vw,36px);font-weight:500;line-height:1.2}.lead p:first-letter{font-family:var(--font-serif);font-style:italic;font-weight:400}.cols2{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:32px;display:grid}.cols3{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px;display:grid}@media (max-width:760px){.cols2,.cols3{grid-template-columns:1fr}}.box{background:var(--color-well);border-radius:14px;padding:22px}.box h4{letter-spacing:-.015em;margin:0 0 8px;font-size:15px;font-weight:600}.box p{color:var(--color-ink-2);margin:0;font-size:15px;line-height:1.55}.box .n{font-family:var(--font-mono);color:var(--color-violet);margin-bottom:26px;font-size:11px;display:block}.quote{background:var(--color-ink-deep);color:#fff;border-radius:14px;margin:16px 0 0;padding:30px}.quote p{font-family:var(--font-serif);letter-spacing:-.01em;margin:0;font-size:clamp(22px,2.4vw,32px);font-style:italic;line-height:1.2}.quote span{font-family:var(--font-mono);color:#a7a3b3;margin-top:16px;font-size:12px;display:block}.tl{margin:28px 0 0;padding:0;list-style:none}.tl li{border-top:1px solid var(--color-line);grid-template-columns:120px 150px minmax(0,1fr);align-items:baseline;gap:16px;padding:18px 0;display:grid}.tl li:last-child{border-bottom:1px solid var(--color-line)}.tl .w{font-family:var(--font-mono);color:var(--color-ink-3);font-size:12px}.tl b{letter-spacing:-.02em;font-size:16px;font-weight:600}.tl p{color:var(--color-ink-2);margin:0;font-size:15px;line-height:1.5}@media (max-width:640px){.tl li{grid-template-columns:1fr;gap:4px}}.goals-intro{border-left:2px solid var(--color-violet);letter-spacing:-.02em;max-width:52ch;color:var(--color-ink);margin:18px 0 0;padding-left:18px;font-size:19px;line-height:1.45}.ticks{gap:10px;margin:18px 0 0;padding:0;list-style:none;display:grid}.ticks li{color:var(--color-ink-2);gap:12px;font-size:15px;line-height:1.5;display:flex}.ticks li:before{content:"✦";color:var(--color-violet);font-size:12px;line-height:1.9}.findings{counter-reset:f;margin:20px 0 0;padding:0;list-style:none}.findings li{counter-increment:f;border-top:1px solid var(--color-line);letter-spacing:-.02em;align-items:baseline;gap:16px;padding:14px 0;font-size:17px;display:flex}.findings li:before{content:counter(f,decimal-leading-zero);font-family:var(--font-mono);color:var(--color-ink-3);font-size:12px}.fig{border-radius:var(--radius);background:var(--color-well);cursor:zoom-in;box-shadow:inset 0 0 0 1px var(--color-line);margin:28px 0 0;overflow:hidden}.fig img{width:100%;height:auto;transition:transform .9s var(--ease)}.fig:hover img{transform:scale(1.012)}.fig-split{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:28px;margin-top:28px;display:grid}.fig-split .fig{margin:0}.fig-split .pts{gap:12px;display:grid}@media (max-width:760px){.fig-split{grid-template-columns:1fr}}.swatches{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px;margin-top:28px;display:grid}.swatch{text-align:left;box-shadow:inset 0 0 0 1px var(--color-line);transition:transform .25s var(--ease);background:#fff;border-radius:14px;overflow:hidden}.swatch:hover{transform:translateY(-3px)}.swatch-chip{flex-direction:column;justify-content:space-between;height:110px;padding:12px;display:flex;position:relative}.swatch-chip .aa{font-family:var(--font-mono);background:#00000024;border-radius:999px;align-self:flex-end;padding:3px 7px;font-size:10px}.swatch-chip .Aa{letter-spacing:-.03em;font-size:26px;font-weight:600;line-height:1}.swatch-values{padding:10px 12px 12px}.swatch-values b{font-size:13px;font-weight:600;display:block}.swatch-values span{font-family:var(--font-mono);color:var(--color-ink-3);font-size:11px}.spec{border-radius:var(--radius);background:var(--color-well);box-shadow:inset 0 0 0 1px var(--color-line);margin-top:28px;padding:28px}.spec-top{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:16px;display:flex}.spec-top b{font-size:15px;font-weight:600}.spec-top span{font-family:var(--font-mono);color:var(--color-ink-3);font-size:11px}.spec-sample{letter-spacing:-.03em;word-break:break-word;min-height:1.2em;color:var(--color-ink);outline:none;margin:26px 0;line-height:1.05}.spec-controls{border-top:1px solid var(--color-line-2);flex-wrap:wrap;align-items:center;gap:22px;padding-top:18px;display:flex}.spec-controls label{font-family:var(--font-mono);color:var(--color-ink-3);align-items:center;gap:10px;font-size:11px;display:flex}.spec-controls input[type=range]{width:160px;accent-color:var(--color-ink)}.weights{gap:4px;display:flex}.weights button{min-width:42px;height:30px;font-family:var(--font-mono);color:var(--color-ink-2);box-shadow:inset 0 0 0 1px var(--color-line-2);background:#fff;border-radius:6px;padding:0 10px;font-size:11px}.weights button.is-on{background:var(--color-ink-deep);color:#fff;box-shadow:none}.spec-note{color:var(--color-ink-2);margin:14px 0 0;font-size:13px}.next-proj{border-radius:var(--radius);background:var(--color-well);margin-top:120px;padding:32px;transition:background-color .3s;display:block}.next-proj:hover{background:#efeeeb}.next-proj .row{grid-template-columns:minmax(0,1fr) 260px;align-items:center;gap:28px;display:grid}.next-proj h3{letter-spacing:-.05em;margin:8px 0 0;font-size:clamp(32px,4vw,56px);font-weight:600;line-height:1}.next-proj p{color:var(--color-ink-2);max-width:50ch;margin:10px 0 0;font-size:15px;line-height:1.5}.next-proj .thumb{aspect-ratio:4/3;border-radius:14px;overflow:hidden}.next-proj .thumb img{object-fit:cover;width:100%;height:100%;transition:transform .9s var(--ease)}.next-proj:hover .thumb img{transform:scale(1.05)}@media (max-width:640px){.next-proj .row{grid-template-columns:1fr}.next-proj{padding:22px}}.viewer{z-index:500;background:#0f0d14f0;flex-direction:column;animation:fade .2s both;display:flex;position:fixed;inset:0}.viewer-stage{flex:1;place-items:center;min-height:0;padding:64px 72px 16px;display:grid}.viewer-stage img{object-fit:contain;max-width:100%;max-height:100%;animation:swap .35s var(--ease)both;border-radius:10px}.viewer-btn{color:#fff;background:#ffffff1a;border-radius:50%;place-items:center;width:44px;height:44px;font-size:18px;transition:background-color .2s;display:grid;position:absolute}.viewer-btn:hover{background:#fff3}.viewer-close{top:14px;right:14px}.viewer-prev{left:14px}.viewer-next,.viewer-prev{top:50%;transform:translateY(-50%)}.viewer-next{right:14px}.viewer-foot{color:#a7a3b3;justify-content:space-between;gap:16px;padding:14px 24px 22px;font-size:13px;display:flex}.viewer-foot span:last-child{font-family:var(--font-mono);font-size:12px}@media (max-width:640px){.viewer-stage{padding:64px 12px 12px}.viewer-next,.viewer-prev{top:auto;bottom:60px;transform:none}}.profile-card{border-radius:var(--radius);aspect-ratio:4/5;background:var(--color-well);overflow:hidden}.profile-card img{object-fit:cover;width:100%;height:100%}.about-bio p{letter-spacing:-.035em;margin:0 0 22px;font-size:clamp(22px,2.2vw,30px);font-weight:500;line-height:1.25}.about-bio p:last-child{color:var(--color-ink-2)}.xp{margin:0;padding:0;list-style:none}.xp li{border-top:1px solid var(--color-line);grid-template-columns:180px minmax(0,1fr);gap:24px;padding:24px 0;display:grid}.xp li:last-child{border-bottom:1px solid var(--color-line)}.xp .when{font-family:var(--font-mono);color:var(--color-ink-3);padding-top:3px;font-size:12px}.xp h4{letter-spacing:-.02em;margin:0;font-size:18px;font-weight:600}.xp .at{margin:4px 0 0;font-size:14px}.xp .at,.xp p{color:var(--color-ink-2)}.xp p{max-width:60ch;margin:10px 0 0;font-size:15px;line-height:1.55}@media (max-width:640px){.xp li{grid-template-columns:1fr;gap:8px}}.how{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.how .box{flex-direction:column;min-height:240px;display:flex}.how .box p{flex:1}.how .motto{font-family:var(--font-serif);color:var(--color-ink);margin-top:22px;font-size:22px;font-style:italic}@media (max-width:860px){.how{grid-template-columns:1fr}.how .box{min-height:0}}.toolgrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.toolgrid .box .chips{flex-wrap:wrap;gap:6px;margin-top:14px;display:flex}@media (max-width:640px){.toolgrid{grid-template-columns:1fr}}.pg-empty{border:1.5px dashed var(--color-line-2);border-radius:var(--radius);background:var(--color-well);text-align:center;place-items:center;gap:10px;padding:88px 24px;display:grid}.pg-empty .label{margin:0}.pg-empty p{max-width:40ch;color:var(--color-ink-2);margin:0;font-size:17px;line-height:1.5}.pg-empty .cta{margin-top:14px}.contact-hero{padding:160px 0 0}.contact-hero h1{font-family:var(--font-display);letter-spacing:-.06em;margin:0;font-size:clamp(52px,9vw,160px);font-weight:500;line-height:.88}.contact-hero h1 .serif{letter-spacing:-.03em;color:var(--color-violet)}.contact-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:60px;margin-top:80px;display:grid}.rows{margin:0;padding:0;list-style:none}.rows a,.rows button{border-top:1px solid var(--color-line);letter-spacing:-.035em;text-align:left;width:100%;transition:padding .35s var(--ease),color .2s;justify-content:space-between;align-items:center;gap:16px;padding:22px 0;font-size:clamp(20px,2vw,28px);font-weight:500;display:flex}.rows li:last-child a,.rows li:last-child button{border-bottom:1px solid var(--color-line)}.rows a:hover,.rows button:hover{padding-left:12px}.rows .k{font-family:var(--font-mono);letter-spacing:0;color:var(--color-ink-3);font-size:12px;font-weight:400}.rows .ar{transition:transform .35s var(--ease)}.rows a:hover .ar{transform:rotate(45deg)}@media (max-width:860px){.contact-grid{grid-template-columns:1fr;gap:40px;margin-top:56px}.contact-hero{padding-top:120px}}.toast{z-index:600;opacity:0;background:var(--color-ink);color:#fff;transition:opacity .3s var(--ease),transform .3s var(--ease);pointer-events:none;border-radius:999px;padding:12px 18px;font-size:14px;position:fixed;bottom:28px;left:50%;transform:translate(-50%,20px);box-shadow:0 10px 30px #00000040}.toast.show{opacity:1;transform:translate(-50%)}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.rv{opacity:1;transform:none}}.toolgrid.four{grid-template-columns:1.4fr 1fr 1fr 1.2fr}@media (max-width:1000px){.toolgrid.four{grid-template-columns:1fr 1fr}}@media (max-width:560px){.toolgrid.four{grid-template-columns:1fr}}.card h3 .yr{font-family:var(--font-mono);color:var(--color-ink-3);letter-spacing:0;margin-left:8px;font-size:11px;font-weight:400}@media (max-width:900px){.split-side{margin-bottom:56px}}@media (max-width:760px){.hero .photo{width:min(88vw,440px);height:auto}.hero .big{z-index:3}}:root{--ease-drawer:cubic-bezier(.32,.72,0,1)}.portal-layer{z-index:120;position:fixed;inset:0}.portal-backdrop{-webkit-backdrop-filter:blur(8px);background:#12121257;transition:opacity .2s;animation:fade .26s both;position:absolute;inset:0}.portal-window{z-index:1;animation:portal-in .42s var(--ease-drawer)both;transition:transform .2s var(--ease),opacity .16s ease;background:#fff;border-radius:22px;grid-template-columns:248px minmax(0,1fr);display:grid;position:absolute;inset:12px;overflow:hidden;box-shadow:0 30px 90px #00000040,0 0 0 1px #0000000a}.portal-window:focus{outline:none}@keyframes portal-in{0%{opacity:0;transform:translateY(28px)scale(.985)}}.portal-layer.is-closing .portal-backdrop{opacity:0}.portal-layer.is-closing .portal-window{opacity:0;transform:translateY(16px)}.pside{border-right:1px solid var(--color-line);flex-direction:column;gap:22px;padding:22px 16px 18px;display:flex;overflow-y:auto}.pside-back{height:30px;color:var(--color-ink-2);transition:background-color .15s,color .15s,transform .16s var(--ease);border-radius:9px;align-self:flex-start;align-items:center;gap:6px;padding:0 10px 0 8px;font-size:13px;display:inline-flex}.pside-back:hover{background:var(--color-well);color:var(--color-ink)}.pside-back:active{transform:scale(.97)}.pside-id{align-items:center;gap:10px;padding:0 6px;display:flex}.pside-id>span:last-child{flex-direction:column;line-height:1.25;display:flex}.pside-id b{letter-spacing:-.015em;font-size:15px;font-weight:600}.pside-id small{color:var(--color-ink-3);font-size:12px}.pmark{letter-spacing:-.04em;flex:none;place-items:center;font-weight:700;line-height:1;display:inline-grid;box-shadow:inset 0 0 0 1px #ffffff1f}.pnav{flex-direction:column;gap:1px;display:flex}.pnav button{text-align:left;color:var(--color-ink-3);border-radius:8px;padding:6px 10px 6px 18px;font-size:13.5px;transition:color .15s,background-color .15s;position:relative}.pnav button:before{content:"";background:var(--color-ink);opacity:0;border-radius:50%;width:4px;height:4px;margin-top:-2px;transition:opacity .15s;position:absolute;top:50%;left:8px}.pnav button:hover{color:var(--color-ink-2)}.pnav button.is-on{color:var(--color-ink);background:var(--color-well)}.pnav button.is-on:before{opacity:1}.ptools{border-top:1px solid var(--color-line);flex-direction:column;gap:2px;margin-top:auto;padding-top:14px;display:flex}.ptools>*{color:var(--color-ink-2);text-align:left;transition:background-color .15s,color .15s,transform .16s var(--ease);border-radius:8px;align-items:center;gap:8px;padding:7px 10px;font-size:13px;display:flex}.ptools>:hover{background:var(--color-well);color:var(--color-ink)}.ptools>:active{transform:scale(.98)}.ptools-inline{display:none}.pmain{overscroll-behavior:contain;overflow-y:auto}.pdoc{max-width:900px;margin:0 auto;padding:56px clamp(20px,5vw,56px) 96px;animation:fade .3s both}.phead{flex-direction:column;gap:14px;padding-bottom:8px;display:flex}.phead h1{letter-spacing:-.035em;margin:0;font-size:clamp(28px,3.2vw,36px);font-weight:600;line-height:1.1}.phead h1 span{color:var(--color-ink-3)}.phead>p{color:var(--color-ink-2);max-width:62ch;margin:0;font-size:16px;line-height:1.6}.pfacts{border-top:1px solid var(--color-line);grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin:6px 0 0;padding-top:18px;display:grid}.pfacts dt{text-transform:none}.pfacts dd{margin:4px 0 0;font-size:14px;line-height:1.4}.psec{padding-top:64px}.psec-head{border-bottom:1px solid var(--color-line);justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:18px;padding-bottom:14px;display:flex}.psec-head h2{letter-spacing:-.03em;margin:0;font-size:22px;font-weight:500}.psec-head .label{text-align:right}.psec-cap{max-width:64ch;margin:-4px 0 20px;font-size:15px;line-height:1.6}.psec-cap,.text-btn{color:var(--color-ink-2)}.text-btn{border-radius:6px;padding:4px 8px;font-size:13px}.text-btn:hover{background:var(--color-well);color:var(--color-ink)}.pbanner{aspect-ratio:16/9;isolation:isolate;background:#1a1a1a;border-radius:18px;place-items:center;margin:0;display:grid;position:relative;overflow:hidden}.pbanner-blur{object-fit:cover;filter:blur(34px)saturate(1.35);z-index:-1;width:120%;max-width:none;height:120%;position:absolute;inset:-10%;transform:scaleX(1.8)}.pbanner:after{content:"";z-index:-1;background:linear-gradient(90deg,#0000002e,#0000000a 50%,#0000002e);position:absolute;inset:0}.pbanner.is-dark:after{background:linear-gradient(90deg,#00000073,#0003 50%,#00000073)}.pbanner-mark{color:#fff;letter-spacing:-.03em;text-shadow:0 2px 24px #00000040;align-items:center;gap:14px;font-size:clamp(36px,5vw,56px);line-height:1;display:inline-flex}.pbanner-mark .pmark{text-shadow:none;box-shadow:0 10px 30px #00000040}.plead{letter-spacing:-.03em;max-width:40ch;margin:0;font-size:clamp(20px,2vw,24px);font-weight:500;line-height:1.35}.plead-sm{letter-spacing:-.025em;max-width:46ch;margin:0 0 18px;font-size:19px;font-weight:500;line-height:1.4}.pprinciples{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px;display:grid}.pprinciples>div{background:var(--color-well);box-shadow:inset 0 0 0 1px var(--color-line);border-radius:16px;flex-direction:column;gap:6px;padding:20px;display:flex}.pprinciples b{letter-spacing:-.04em;font-size:26px;font-weight:600;line-height:1.1}.pprinciples p{color:var(--color-ink-2);margin:0;font-size:14px;line-height:1.5}.change-list{border-top:1px solid var(--color-line);margin:18px 0 0;padding:0;list-style:none}.change{border-bottom:1px solid var(--color-line);grid-template-columns:44px minmax(0,1fr) minmax(0,1.3fr);align-items:baseline;gap:16px;padding:16px 0;display:grid}.change-num{color:var(--color-ink-3);font-size:22px}.change-what{letter-spacing:-.015em;margin:0;font-size:15px;font-weight:600}.change-why{color:var(--color-ink-2);margin:0;font-size:14px;line-height:1.55}.pfig{margin:0 0 48px}.pfig:last-child{margin-bottom:0}.pfig figcaption h3{letter-spacing:-.02em;margin:6px 0 0;font-size:18px;font-weight:600}.pfig figcaption p{color:var(--color-ink-2);max-width:64ch;margin:6px 0 0;font-size:14.5px;line-height:1.55}.pfig .fig{width:100%;margin-top:16px;display:block}.pfig .cols3{margin-top:12px}.pscreens{scroll-snap-type:x mandatory;scrollbar-width:thin;gap:14px;margin:0 -2px;padding:4px 2px 12px;display:flex;overflow-x:auto}.pscreens figure{scroll-snap-align:start;flex-direction:column;flex:none;gap:10px;margin:0;display:flex}.pscreen-frame{aspect-ratio:393/852;cursor:zoom-in;width:196px;transition:transform .3s var(--ease);background:#161616;border:5px solid #161616;border-radius:30px;display:block;overflow:hidden;box-shadow:0 18px 40px -18px #0006}.pscreen-frame:hover{transform:translateY(-4px)}.pscreens figure.is-web .pscreen-frame{aspect-ratio:16/10;border:1px solid var(--color-line);background:var(--color-well);border-radius:14px;width:min(640px,78vw);box-shadow:0 18px 40px -22px #00000059}.pscreen-frame img{object-fit:cover;object-position:top;width:100%;height:100%}.pbar{height:56px;box-shadow:inset 0 0 0 1px var(--color-line);border-radius:12px;display:flex;overflow:hidden}.pbar span{min-width:3px;transition:flex-grow .6s var(--ease)}.plegend{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:8px 16px;margin:14px 0 0;padding:0;list-style:none;display:grid}.plegend li{align-items:center;gap:8px;font-size:13px;display:flex}.plegend i{border-radius:4px;width:12px;height:12px;box-shadow:inset 0 0 0 1px #0000001a}.plegend span{font-family:var(--font-mono);color:var(--color-ink-3);margin-left:auto;font-size:11px}.pfonts{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;margin-top:12px;display:grid}.pfonts .box p,.ptags{margin:0}.ptags{flex-wrap:wrap;gap:6px;padding:0;list-style:none;display:flex}.case-next{background:var(--color-well);text-align:left;width:100%;box-shadow:inset 0 0 0 1px var(--color-line);border-radius:18px;gap:6px;margin-top:28px;padding:26px 64px 26px 26px;transition:background-color .2s;display:grid;position:relative}.case-next:hover{background:#efeeeb}.case-next-name{letter-spacing:-.04em;align-items:center;gap:12px;font-size:clamp(26px,3vw,36px);font-weight:600;display:flex}.case-next-tag{color:var(--color-ink-2);max-width:60ch;font-size:14px;line-height:1.5}.case-next-ar{transition:transform .3s var(--ease);font-size:22px;position:absolute;top:50%;right:26px;transform:translateY(-50%)}.case-next:hover .case-next-ar{transform:translate(4px,-50%)}@media (max-width:900px){.portal-window{border-radius:18px;flex-direction:column;display:flex;inset:8px}.pside{border-right:0;border-bottom:1px solid var(--color-line);flex-flow:wrap;flex:none;align-items:center;gap:10px;padding:10px 12px;overflow:visible}.pside-id{margin-left:auto;padding:0}.pside-id small{display:none}.pnav{scrollbar-width:none;flex-direction:row;flex:1 0 100%;order:3;gap:4px;margin:0 -12px;padding:0 12px;overflow-x:auto}.pnav::-webkit-scrollbar{display:none}.pnav button{color:var(--color-ink-2);box-shadow:inset 0 0 0 1px var(--color-line);white-space:nowrap;border-radius:999px;flex:none;padding:6px 12px}.pnav button:before{display:none}.pnav button.is-on{color:#fff;background:var(--color-ink-deep);box-shadow:none}.pside>.ptools{display:none}.ptools-inline{margin-top:18px;display:block}.ptools-inline .ptools{margin:0}.pmain{flex:1;min-height:0}.pdoc{padding-top:32px}.pfacts{grid-template-columns:repeat(2,minmax(0,1fr))}.pprinciples{grid-template-columns:1fr}.change{grid-template-columns:34px minmax(0,1fr)}.change-why{grid-column:2}.pscreen-frame{border-radius:24px;width:160px}}.pvisit{background:var(--color-ink-deep);color:#fff;height:40px;transition:transform .16s var(--ease),background-color .2s;border-radius:6px;align-self:flex-start;align-items:center;gap:8px;padding:0 18px;font-size:15px;font-weight:500;display:inline-flex}.pvisit:hover{background:#2a2634}.pvisit:active{transform:scale(.97)}.pvisit span{transition:transform .25s var(--ease)}.pvisit:hover span{transform:translate(2px,-2px)}.pvisit small{font-family:var(--font-mono);color:#a7a3b3;margin-left:2px;font-size:10px}.pvisit-side{margin:-4px 6px 0}.pvisit-head{display:none}@media (max-width:900px){.pvisit-side{display:none}.pvisit-head{margin-top:6px;display:inline-flex}}:root{--font-system:-apple-system,BlinkMacSystemFont,"SF Pro Text","SF Pro Display",system-ui,"Segoe UI",Roboto,sans-serif}.card .thumb-video{object-fit:contain;width:100%;height:100%;position:absolute;inset:0}.card .badge{z-index:2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);height:28px;font-family:var(--font-mono);color:var(--color-ink);background:#ffffffd9;border-radius:999px;align-items:center;gap:6px;padding:0 11px;font-size:11px;display:inline-flex;position:absolute;top:14px;left:14px}.pdemo{object-fit:contain;width:100%;max-height:78vh;box-shadow:inset 0 0 0 1px var(--color-line);background:#111;border-radius:18px;display:block}.iphone{--w:212px;width:var(--w);aspect-ratio:393/852;padding:calc(var(--w)*.045);border-radius:calc(var(--w)*.2);box-shadow:inset 0 0 0 1px #ffffff24,inset 0 0 0 calc(var(--w)*.012)#0b0b0c,0 24px 48px -20px #00000073,0 8px 16px -8px #0000004d;box-sizing:content-box;background:linear-gradient(145deg,#4a4a4f,#2a2a2e 22%,#1c1c1f 50%,#2d2d31 78%,#55555a)}.iphone,.iphone-screen{display:block;position:relative}.iphone-screen{border-radius:calc(var(--w)*.158);isolation:isolate;width:100%;height:100%;box-shadow:0 0 0 calc(var(--w)*.01)#000;overflow:hidden}.iphone-shot{display:block;position:absolute;inset:0}.iphone-shot.has-bar{top:6.2%}.iphone-shot img{object-fit:cover;object-position:top;width:100%;height:100%;display:block}.iphone-bar{z-index:2;height:6.2%;font:600 calc(var(--w)*.056)/1 -apple-system,BlinkMacSystemFont,SF Pro Text,system-ui,sans-serif;letter-spacing:-.01em;justify-content:space-between;position:absolute;top:0;left:0;right:0}.iphone-bar,.iphone-bar>span{align-items:center;display:flex}.iphone-bar>span{justify-content:center;width:34.5%;padding-top:1%}.iphone-bar>span:first-child{padding-left:4%}.iphone-bar>span:last-child{padding-right:4%}.iphone-icons{align-items:center;gap:calc(var(--w)*.014);display:inline-flex}.iphone-icons svg{height:calc(var(--w)*.036);fill:currentColor;width:auto}.iphone-icons svg:last-child{height:calc(var(--w)*.04)}.iphone-island{background:#000;width:29%;height:3.6%;top:1.35%}.iphone-home,.iphone-island{z-index:3;border-radius:999px;position:absolute;left:50%;transform:translate(-50%)}.iphone-home{mix-blend-mode:multiply;background:#0000008c;width:35%;height:.55%;bottom:.9%}.iphone-btn{z-index:-1;width:calc(var(--w)*.016);background:linear-gradient(90deg,#3a3a3e,#5b5b60);border-radius:2px;position:absolute}.iphone-btn-action{left:calc(var(--w)*-.012);height:4.2%;top:17%}.iphone-btn-up{top:25%}.iphone-btn-down,.iphone-btn-up{left:calc(var(--w)*-.012);height:7.5%}.iphone-btn-down{top:34.5%}.iphone-btn-power{right:calc(var(--w)*-.012);height:11%;top:28%}.pscreen-phone{cursor:zoom-in;transition:transform .3s var(--ease);padding:4px 6px 10px;display:block}.pscreen-phone:hover{transform:translateY(-4px)}.pscreens{gap:18px;padding-left:6px}@media (max-width:900px){.iphone{--w:172px}}.iphone-shot.has-safe{bottom:3.6%}.iphone-safe{z-index:1;height:3.6%;position:absolute;bottom:0;left:0;right:0}@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}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@font-face{font-family:geist;src:url(/_next/static/media/22a5144ee8d83bca-s.p.woff2) format("woff2");font-display:swap;font-weight:400 700;font-style:normal}@font-face{font-family:geist Fallback;src:local("Arial");ascent-override:94.56%;descent-override:27.76%;line-gap-override:0.00%;size-adjust:106.28%}.__className_c9b2e8{font-family:geist,geist Fallback;font-style:normal}.__variable_c9b2e8{--font-geist:"geist","geist Fallback"}@font-face{font-family:geistMono;src:url(/_next/static/media/7d4881bb7e1bf84d-s.p.woff2) format("woff2");font-display:swap;font-weight:400 500;font-style:normal}@font-face{font-family:geistMono Fallback;src:local("Arial");ascent-override:76.43%;descent-override:22.43%;line-gap-override:0.00%;size-adjust:131.49%}.__className_58a590{font-family:geistMono,geistMono Fallback;font-style:normal}.__variable_58a590{--font-geist-mono:"geistMono","geistMono Fallback"}@font-face{font-family:instrument;src:url(/_next/static/media/e6099e249fd938cc-s.p.woff2) format("woff2");font-display:swap;font-weight:400;font-style:normal}@font-face{font-family:instrument;src:url(/_next/static/media/9cc5b37ab1350db7-s.p.woff2) format("woff2");font-display:swap;font-weight:400;font-style:italic}@font-face{font-family:instrument Fallback;src:local("Arial");ascent-override:128.92%;descent-override:40.37%;line-gap-override:0.00%;size-adjust:76.79%}.__className_de8f87{font-family:instrument,instrument Fallback}.__variable_de8f87{--font-instrument:"instrument","instrument Fallback"}@font-face{font-family:interTight;src:url(/_next/static/media/103fc5fac08dcb15-s.p.woff2) format("woff2");font-display:swap;font-weight:500 700;font-style:normal}@font-face{font-family:interTight Fallback;src:local("Arial");ascent-override:99.65%;descent-override:24.81%;line-gap-override:0.00%;size-adjust:97.21%}.__className_75d6ac{font-family:interTight,interTight Fallback;font-style:normal}.__variable_75d6ac{--font-inter-tight:"interTight","interTight Fallback"}@font-face{font-family:jakarta;src:url(/_next/static/media/636a5ac981f94f8b-s.woff2) format("woff2");font-display:swap;font-weight:400 700;font-style:normal}@font-face{font-family:jakarta Fallback;src:local("Arial");ascent-override:98.16%;descent-override:20.99%;line-gap-override:0.00%;size-adjust:105.75%}.__className_f1e4e5{font-family:jakarta,jakarta Fallback;font-style:normal}.__variable_f1e4e5{--font-jakarta:"jakarta","jakarta Fallback"}@font-face{font-family:figtree;src:url(/_next/static/media/de42cfb9a3b980ae-s.woff2) format("woff2");font-display:swap;font-weight:400 700;font-style:normal}@font-face{font-family:figtree Fallback;src:local("Arial");ascent-override:95.06%;descent-override:25.02%;line-gap-override:0.00%;size-adjust:99.94%}.__className_ac268b{font-family:figtree,figtree Fallback;font-style:normal}.__variable_ac268b{--font-figtree:"figtree","figtree Fallback"}@font-face{font-family:roboto;src:url(/_next/static/media/1e41be92c43b3255-s.woff2) format("woff2");font-display:swap;font-weight:400 700;font-style:normal}@font-face{font-family:roboto Fallback;src:local("Arial");ascent-override:92.43%;descent-override:24.32%;line-gap-override:0.00%;size-adjust:100.37%}.__className_26cd33{font-family:roboto,roboto Fallback;font-style:normal}.__variable_26cd33{--font-roboto:"roboto","roboto Fallback"}@font-face{font-family:kodchasan;src:url(/_next/static/media/a990303e6fa76b90-s.woff2) format("woff2");font-display:swap;font-weight:700;font-style:normal}@font-face{font-family:kodchasan Fallback;src:local("Arial");ascent-override:88.27%;descent-override:23.79%;line-gap-override:0.00%;size-adjust:116.01%}.__className_c9d06d{font-family:kodchasan,kodchasan Fallback;font-weight:700;font-style:normal}.__variable_c9d06d{--font-kodchasan:"kodchasan","kodchasan Fallback"}@font-face{font-family:fredoka;src:url(/_next/static/media/bca7023bf625e650-s.woff2) format("woff2");font-display:swap;font-weight:400 700;font-style:normal}@font-face{font-family:fredoka Fallback;src:local("Arial");ascent-override:95.32%;descent-override:23.10%;line-gap-override:0.00%;size-adjust:102.19%}.__className_d1ca84{font-family:fredoka,fredoka Fallback;font-style:normal}.__variable_d1ca84{--font-fredoka:"fredoka","fredoka Fallback"}@font-face{font-family:dmMono;src:url(/_next/static/media/0e96d314a90a6138-s.woff2) format("woff2");font-display:swap;font-weight:400;font-style:normal}@font-face{font-family:dmMono Fallback;src:local("Arial");ascent-override:75.44%;descent-override:23.58%;line-gap-override:0.00%;size-adjust:131.49%}.__className_c96d0c{font-family:dmMono,dmMono Fallback;font-weight:400;font-style:normal}.__variable_c96d0c{--font-dm-mono:"dmMono","dmMono Fallback"}@font-face{font-family:instrumentSans;src:url(/_next/static/media/26d0ba92e140f0dc-s.woff2) format("woff2");font-display:swap;font-weight:400 600;font-style:normal}@font-face{font-family:instrumentSans Fallback;src:local("Arial");ascent-override:93.97%;descent-override:24.22%;line-gap-override:0.00%;size-adjust:103.22%}.__className_baa7c8{font-family:instrumentSans,instrumentSans Fallback;font-style:normal}.__variable_baa7c8{--font-instrument-sans:"instrumentSans","instrumentSans Fallback"}@font-face{font-family:jost;src:url(/_next/static/media/9dd75fadc5b3df29-s.woff2) format("woff2");font-display:swap;font-weight:400 500;font-style:normal}@font-face{font-family:jost Fallback;src:local("Arial");ascent-override:112.02%;descent-override:39.26%;line-gap-override:0.00%;size-adjust:95.51%}.__className_5beba3{font-family:jost,jost Fallback;font-style:normal}.__variable_5beba3{--font-jost:"jost","jost Fallback"}@font-face{font-family:cormorant;src:url(/_next/static/media/7b89a4fd5e90ede0-s.woff2) format("woff2");font-display:swap;font-weight:300 500;font-style:normal}@font-face{font-family:cormorant;src:url(/_next/static/media/e18f83c737786aa7-s.woff2) format("woff2");font-display:swap;font-weight:300 500;font-style:italic}@font-face{font-family:cormorant Fallback;src:local("Arial");ascent-override:105.47%;descent-override:32.76%;line-gap-override:0.00%;size-adjust:87.60%}.__className_507349{font-family:cormorant,cormorant Fallback}.__variable_507349{--font-cormorant:"cormorant","cormorant Fallback"}@font-face{font-family:manrope;src:url(/_next/static/media/8760c4774489e4ba-s.woff2) format("woff2");font-display:swap;font-weight:400 600;font-style:normal}@font-face{font-family:manrope Fallback;src:local("Arial");ascent-override:106.45%;descent-override:29.96%;line-gap-override:0.00%;size-adjust:100.14%}.__className_dfddb0{font-family:manrope,manrope Fallback;font-style:normal}.__variable_dfddb0{--font-manrope:"manrope","manrope Fallback"}@font-face{font-family:shadowsTwo;src:url(/_next/static/media/fbd3ad5ecd46222b-s.woff2) format("woff2");font-display:swap;font-weight:400;font-style:normal}@font-face{font-family:shadowsTwo Fallback;src:local("Arial");ascent-override:125.22%;descent-override:37.29%;line-gap-override:0.00%;size-adjust:89.29%}.__className_a9cd82{font-family:shadowsTwo,shadowsTwo Fallback;font-weight:400;font-style:normal}.__variable_a9cd82{--font-shadows:"shadowsTwo","shadowsTwo Fallback"}@font-face{font-family:dmSans;src:url(/_next/static/media/13971731025ec697-s.woff2) format("woff2");font-display:swap;font-weight:400 600;font-style:normal}@font-face{font-family:dmSans Fallback;src:local("Arial");ascent-override:94.36%;descent-override:29.49%;line-gap-override:0.00%;size-adjust:105.13%}.__className_d6d7fc{font-family:dmSans,dmSans Fallback;font-style:normal}.__variable_d6d7fc{--font-dm-sans:"dmSans","dmSans Fallback"}@font-face{font-family:bagel;src:url(/_next/static/media/af31dca3ef7f3865-s.woff2) format("woff2");font-display:swap;font-weight:400;font-style:normal}@font-face{font-family:bagel Fallback;src:local("Arial");ascent-override:111.48%;descent-override:27.68%;line-gap-override:0.00%;size-adjust:104.05%}.__className_469c4f{font-family:bagel,bagel Fallback;font-weight:400;font-style:normal}.__variable_469c4f{--font-bagel:"bagel","bagel Fallback"}@font-face{font-family:outfit;src:url(/_next/static/media/7b0b24f36b1a6d0b-s.woff2) format("woff2");font-display:swap;font-weight:400 700;font-style:normal}@font-face{font-family:outfit Fallback;src:local("Arial");ascent-override:100.84%;descent-override:26.22%;line-gap-override:0.00%;size-adjust:99.17%}.__className_41ff96{font-family:outfit,outfit Fallback;font-style:normal}.__variable_41ff96{--font-outfit:"outfit","outfit Fallback"}@font-face{font-family:satoshi;src:url(/_next/static/media/d9396795aa5ec363-s.woff2) format("woff2");font-display:swap;font-weight:300 900;font-style:normal}@font-face{font-family:satoshi Fallback;src:local("Arial");ascent-override:92.36%;descent-override:21.95%;line-gap-override:9.14%;size-adjust:109.35%}.__className_66d84b{font-family:satoshi,satoshi Fallback;font-style:normal}.__variable_66d84b{--font-satoshi:"satoshi","satoshi Fallback"}@font-face{font-family:poppins;src:url(/_next/static/media/8888a3826f4a3af4-s.woff2) format("woff2");font-display:swap;font-weight:500;font-style:normal}@font-face{font-family:poppins;src:url(/_next/static/media/0484562807a97172-s.woff2) format("woff2");font-display:swap;font-weight:600;font-style:normal}@font-face{font-family:poppins Fallback;src:local("Arial");ascent-override:91.82%;descent-override:30.61%;line-gap-override:8.74%;size-adjust:114.36%}.__className_2233a6{font-family:poppins,poppins Fallback}.__variable_2233a6{--font-poppins:"poppins","poppins Fallback"}@font-face{font-family:inter;src:url(/_next/static/media/e4af272ccee01ff0-s.woff2) format("woff2");font-display:swap;font-weight:400 700;font-style:normal}@font-face{font-family:inter Fallback;src:local("Arial");ascent-override:89.79%;descent-override:22.36%;line-gap-override:0.00%;size-adjust:107.89%}.__className_9cdfcf{font-family:inter,inter Fallback;font-style:normal}.__variable_9cdfcf{--font-inter:"inter","inter Fallback"}