html.lenis,html.lenis body{height:auto}.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:clip}.lenis [data-lenis-prevent],.lenis [data-lenis-prevent-wheel],.lenis [data-lenis-prevent-touch],.lenis [data-lenis-prevent-vertical],.lenis [data-lenis-prevent-horizontal]{overscroll-behavior:contain}.lenis.lenis-smooth iframe{pointer-events:none}.lenis.lenis-autoToggle{transition-behavior:allow-discrete;transition-property:overflow;transition-duration:1ms}:root{--stage:1440px;--vw:min(1vw, 14.4px);--bg:#fff;--ink:#111;--muted:#8c8c8c;--line:#e7e7e5;--soft:#f4f4f2;--accent:#ff5b1f;--bar:64px;--pad-x:calc(4 * var(--vw));--sans:"Geist", system-ui, -apple-system, "Segoe UI", sans-serif;--serif:"Instrument Serif", "Times New Roman", serif;--mono:"Geist Mono", ui-monospace, Menlo, monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}html,body{background:var(--bg);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.5}img{max-width:none;display:block}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}ul,ol{margin:0;padding:0;list-style:none}h1,h2,h3,p,figure,blockquote{margin:0}::selection{background:var(--ink);color:#fff}:focus-visible{outline:2px solid var(--ink);outline-offset:4px}.serif{font-family:var(--serif);letter-spacing:-.01em;font-weight:400}.serif em,em.serif{font-style:italic}.small{letter-spacing:.01em;font-size:13px}.muted{color:var(--muted)}.right{text-align:right}.label{top:calc(var(--bar) + 28px);left:var(--pad-x);font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:11px;position:absolute}.line-mask{clip-path:inset(0 calc(-100 * var(--vw)) 0 calc(-100 * var(--vw)));margin:-.14em 0 -.3em;padding:.14em 0 .3em;display:block}.line-mask>span{display:inline-block}.h-viewport{height:100svh;position:sticky;top:0;overflow:hidden}.h-track{width:max-content;height:100%;transform-style:preserve-3d;display:flex;position:relative}.page{background:var(--bg);flex:none;justify-content:center;min-width:100vw;height:100%;display:flex;position:relative}.panel{height:100%;padding:calc(var(--bar) + 72px) var(--pad-x) calc(var(--bar) + 24px);flex:none;position:relative}.lift{display:inline-flex}.lift__ch{flex-direction:column;height:1.3em;line-height:1.3em;display:inline-flex;overflow:hidden}.lift__ch>span{transition:transform .55s cubic-bezier(.7,0,.2,1);transition-delay:calc(var(--i) * 14ms)}.lift-host:hover .lift__ch>span,.lift-host:focus-visible .lift__ch>span{transform:translateY(-100%)}.topbar,.bottombar{z-index:40;max-width:var(--stage);height:var(--bar);padding:0 var(--pad-x);align-items:center;gap:24px;margin-inline:auto;display:flex;position:fixed;left:0;right:0}.topbar{justify-content:space-between;font-size:14px;top:0}.topbar__name{font-weight:500}.topbar{grid-template-columns:1fr auto 1fr;display:grid}.topbar__name{justify-self:start}.topbar__status{justify-self:end}.menu__groups{align-items:center;gap:0;display:flex}.menu__group{white-space:nowrap;align-items:center;display:flex}.menu__sep{color:#cfcfcb;margin:0 20px;font-weight:300}.menu__label{color:var(--muted);transition:color .3s}.menu__group.is-open .menu__label,.menu__label:hover{color:var(--ink)}.menu__group.is-open .menu__label{font-weight:500}.menu__subs{align-items:center;gap:18px;padding-left:12px;display:flex;overflow:hidden}.menu__slash{color:var(--line);font-size:18px;line-height:1}.menu__sub{color:var(--muted);align-items:center;gap:7px;transition:color .3s;display:inline-flex;position:relative}.menu__sub:hover,.menu__sub.is-current{color:var(--ink)}.menu__dot{background:var(--ink);border-radius:50%;width:5px;height:5px}.crumb{display:none;overflow:hidden}.crumb>span{display:inline-block}.topbar__status{white-space:nowrap;align-items:center;gap:8px;display:inline-flex}.topbar__status i{background:var(--accent);border-radius:50%;width:6px;height:6px;animation:2.2s infinite pulse}@keyframes pulse{0%{box-shadow:0 0 #ff5b1f80}70%{box-shadow:0 0 0 7px #ff5b1f00}to{box-shadow:0 0 #ff5b1f00}}.bottombar{pointer-events:none;justify-content:center;bottom:0}.bottombar__hint{color:var(--muted);align-items:center;gap:12px;display:inline-flex}.mouse{border:1.5px solid;border-radius:9px;flex:none;width:16px;height:25px;position:relative}.mouse:after{content:"";background:currentColor;border-radius:2px;width:2px;height:5px;margin-left:-1px;animation:1.8s cubic-bezier(.65,0,.35,1) infinite wheel;position:absolute;top:5px;left:50%}@keyframes wheel{0%{opacity:0;transform:translateY(-2px)}25%{opacity:1}75%{opacity:1;transform:translateY(7px)}to{opacity:0;transform:translateY(9px)}}.cursor{z-index:100;pointer-events:none;position:fixed;top:0;left:0}.cursor>span{background:var(--ink);color:#fff;border-radius:50%;place-items:center;display:grid;transform:translate(-50%,-50%)}.cursor em{font-family:var(--serif);font-size:22px}@media (pointer:coarse){.cursor{display:none}}.intro{width:calc(100 * var(--vw));align-items:center;display:flex;overflow:hidden}.intro__inner{width:100%}.wm{font-family:var(--sans);font-weight:600;font-size:calc(17.4 * var(--vw));letter-spacing:-.07em;text-transform:uppercase;line-height:.82}.wm__row{justify-content:center;align-items:center;display:flex}.wm__mask{margin:-.08em -.04em -.1em;padding:.08em .04em .1em;display:inline-block;overflow:hidden}.wm__mask>span{display:inline-block}.wm__window{background:var(--soft);flex:none;height:.7em;margin:0 .06em 0 .02em;display:inline-block;position:relative;overflow:hidden}.wm__window--static{width:.62em}.cycle{display:block;position:absolute;inset:0}.cycle__mask{position:absolute;inset:0;overflow:hidden}.cycle__mask img{object-fit:cover;object-position:top center;width:100%;height:100%}.intro__sub{text-align:center;justify-items:center;margin-top:4vh;display:grid}.intro__role{max-width:min(100%, calc(70 * var(--vw)));font-size:clamp(22px, calc(2.1 * var(--vw)), 34px);text-wrap:balance;line-height:1.12}.statement{width:calc(74 * var(--vw));align-items:center;display:flex}.statement__text{max-width:calc(60 * var(--vw));font-size:clamp(30px, calc(3.7 * var(--vw)), 64px);letter-spacing:-.035em;font-weight:400;line-height:1.08}.work-intro{width:calc(36 * var(--vw));flex-direction:column;justify-content:center;gap:28px;display:flex}.work-intro__title{font-size:clamp(72px, calc(8.4 * var(--vw)), 160px);line-height:.82}.work-card{width:calc(38 * var(--vw));padding-inline:calc(2 * var(--vw));display:flex}.work-card.is-high{align-items:flex-start}.work-card.is-low{align-items:flex-end}.work-card__link{width:100%;display:block}.reveal-img{background:var(--soft);position:relative;overflow:hidden}.reveal-img__mask,.shot__mask{position:absolute;inset:0;overflow:hidden}.reveal-img img{object-fit:cover;object-position:top center;width:100%;height:100%}.reveal-img--whole img{object-fit:contain;object-position:center}.shot{position:relative}.work-card .reveal-img{aspect-ratio:4/3;height:auto}.work-card__caption{border-top:1px solid var(--line);grid-template-columns:36px 1fr auto;align-items:baseline;gap:12px;margin-top:16px;padding-top:14px;display:grid}.work-card__title{font-size:clamp(20px, calc(1.7 * var(--vw)), 28px);font-style:italic;font-family:var(--serif);letter-spacing:0;font-weight:400;line-height:1.15}.work-card__arrow{font-size:20px;transition:transform .5s cubic-bezier(.22,1,.36,1)}.work-card__link:hover .work-card__arrow{transform:translate(4px,-4px)rotate(45deg)}.about-a{width:calc(66 * var(--vw));align-items:end;gap:calc(4 * var(--vw));grid-template-columns:auto 1fr;display:grid}.about-a__img{aspect-ratio:4/5;height:64vh}.about-a__text{max-width:36ch;font-size:clamp(17px, calc(1.3 * var(--vw)), 21px);line-height:1.55}.about-b{width:calc(58 * var(--vw));flex-direction:column;justify-content:center;gap:28px;display:flex}.about-b__title{width:fit-content;max-width:100%;font-size:clamp(64px, calc(7 * var(--vw)), 128px);line-height:.9}.xp-row{padding:18px 0;position:relative}.xp-row__line{background:var(--line);transform-origin:0;height:1px;position:absolute;top:0;left:0;right:0}.xp-row__grid{grid-template-columns:1fr 1.3fr 190px;align-items:start;gap:24px;display:grid}.xp-row__company{letter-spacing:-.025em;font-size:24px;font-weight:500}.about-b__foot{border-top:1px solid var(--line);gap:6px;padding-top:18px;display:grid}.playground{gap:calc(4 * var(--vw));display:flex}.playground__head{width:calc(22 * var(--vw));flex-direction:column;justify-content:center;gap:24px;display:flex}.playground__title{font-size:clamp(64px, calc(7 * var(--vw)), 128px);line-height:.85}.playground__grid{--cell:calc((100svh - var(--bar) * 2 - 96px - 16px) / 2);grid-template-rows:repeat(2, var(--cell));grid-auto-flow:column;grid-auto-columns:var(--cell);gap:16px;display:grid}.shot{background:var(--soft);overflow:hidden}.shot img{object-fit:cover;width:100%;height:100%;transition:transform 1.2s cubic-bezier(.22,1,.36,1)}.shot:hover img{transform:scale(1.06)}.words{height:100%;display:flex}.quote{width:calc(48 * var(--vw));flex-direction:column;justify-content:center;gap:32px;display:flex}.quote__mark{z-index:-1;top:16%;left:calc(2 * var(--vw));font-size:calc(26 * var(--vw));color:var(--soft);line-height:1;position:absolute}.quote__text{max-width:22ch;font-size:clamp(26px, calc(2.7 * var(--vw)), 46px);line-height:1.12}.quote figcaption{gap:2px;display:grid}.quote figcaption strong{font-weight:500}.contact{width:calc(100 * var(--vw));text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:6vh;display:flex}.wm--contact{font-size:calc(12.5 * var(--vw));text-transform:none;letter-spacing:-.065em}.wm--contact .wm__row{justify-content:center;gap:.04em}.wm--contact em.serif{letter-spacing:-.03em;font-size:1.12em;line-height:.9}.contact__row{flex-wrap:wrap;justify-content:center;align-items:center;gap:18px 40px;font-size:18px;display:flex}.contact__cta{background:var(--ink);color:#fff;border-radius:999px;align-items:center;gap:10px;padding:16px 26px;transition:background-color .3s;display:inline-flex}.contact__cta:hover{background:var(--accent)}.contact__foot{left:var(--pad-x);right:var(--pad-x);bottom:calc(var(--bar) + 20px);justify-content:space-between;display:flex;position:absolute}.contact__foot button{gap:6px;display:inline-flex}.copy-email{text-align:left;gap:2px;display:grid}.copy-email__window{height:1.3em;font-size:22px;line-height:1.3em;display:block;overflow:hidden}.copy-email__window>span{display:block}.copy-email__hint{font-family:var(--serif);color:var(--muted);font-style:italic}@media (width<=760px){:root{--bar:56px;--pad-x:calc(6 * var(--vw))}.menu{display:none}.crumb{display:inline-flex}.topbar__name{display:none}.topbar{grid-template-columns:1fr auto}.topbar__avail{display:none}.statement{width:calc(100 * var(--vw))}.statement__text{max-width:none;font-size:calc(8 * var(--vw))}.work-intro{width:calc(76 * var(--vw))}.work-card{width:calc(84 * var(--vw));padding-inline:calc(4 * var(--vw))}.work-card .reveal-img{height:46vh}.about-a{width:calc(100 * var(--vw));grid-template-columns:1fr;align-content:center;gap:24px}.about-a__img{aspect-ratio:auto;height:38vh}.panel{padding-top:calc(var(--bar) + 48px)}.about-b{width:calc(100 * var(--vw));gap:14px}.about-b__title{font-size:52px}.xp-row{padding:10px 0}.xp-row__company{font-size:18px}.xp-row__grid{grid-template-columns:1fr 140px;gap:2px 12px;font-size:14px}.xp-row__grid>span:nth-child(2){grid-column:1}.xp-row__grid>span:nth-child(3){grid-area:1/2/span 2}.about-b__foot{padding-top:10px;font-size:14px}.xp-row__grid .right{text-align:left}.playground__head{width:calc(72 * var(--vw))}.quote{width:calc(92 * var(--vw))}.quote__text{font-size:calc(7.4 * var(--vw))}.wm--contact{font-size:calc(16 * var(--vw))}}@media (prefers-reduced-motion:reduce){.topbar__status i{animation:none}}.chapter{width:calc(34 * var(--vw));flex-direction:column;justify-content:center;gap:28px;display:flex}.chapter__title{font-size:clamp(72px, calc(8.2 * var(--vw)), 156px);line-height:.84}.chapter__note{max-width:30ch}.case-feature{width:calc(82 * var(--vw));gap:calc(4 * var(--vw));grid-template-columns:1.5fr 1fr;align-items:center;display:grid}.case-feature__link{text-align:left;width:100%;display:block}.case-feature .reveal-img{height:62vh}.case-feature__text{align-content:center;gap:22px;display:grid}.case-feature__title{font-size:clamp(36px, calc(3.6 * var(--vw)), 64px);letter-spacing:-.04em;font-weight:500;line-height:1}.case-feature__title em{letter-spacing:-.01em;font-size:.92em;font-weight:400}.case-feature__summary{color:#444;max-width:40ch}.btn-line{border-bottom:1px solid var(--ink);justify-self:start;align-items:center;gap:10px;padding:14px 0;font-size:16px;display:inline-flex}.btn-line span[aria-hidden]{transition:transform .5s cubic-bezier(.22,1,.36,1)}.btn-line:hover span[aria-hidden]{transform:translate(6px)}.turn{z-index:300;perspective:2200px;pointer-events:all;filter:drop-shadow(0 0 36px #14110c4d);height:100lvh;position:fixed;top:0;left:0;right:0}.turn__title{font-size:clamp(56px, calc(8 * var(--vw)), 140px);line-height:1}.cv-root{transform-style:preserve-3d;position:absolute;inset:0}.cv-strip{transform-style:preserve-3d;position:absolute}.cv-face,.cv-back{backface-visibility:hidden;position:absolute;overflow:hidden}.cv-face{background:var(--bg)}.cv-back{background:#ece9e3}.cv-content{place-content:center;justify-items:center;gap:14px;display:grid;position:absolute}.cv-face__text{justify-items:center;gap:14px;display:grid}.cv-shade{pointer-events:none;background:#14110c;position:absolute;inset:0}.cs{max-width:var(--stage);--cs-pad:max(calc(4 * var(--vw)), 20px);padding:0 var(--cs-pad);margin-inline:auto}.cs-top{z-index:40;max-width:var(--stage);height:var(--bar);padding:0 var(--cs-pad);-webkit-backdrop-filter:blur(12px);background:#ffffffdb;grid-template-columns:1fr auto 1fr;align-items:center;margin-inline:auto;font-size:14px;display:grid;position:fixed;top:0;left:0;right:0}.cs-top__right{justify-self:end}.cs-back{border:1px solid var(--line);border-radius:999px;justify-self:start;align-items:center;gap:10px;padding:8px 16px 8px 12px;transition:border-color .3s,background-color .3s;display:inline-flex}.cs-back:hover{border-color:var(--ink)}.cs-top__bar{background:var(--ink);transform-origin:0;height:1px;position:absolute;bottom:0;left:0;right:0}.cs-hero{padding-top:calc(var(--bar) + 10vh);gap:32px;display:grid}.cs-title{font-size:clamp(64px, calc(12 * var(--vw)), 220px);letter-spacing:-.065em;font-weight:600;line-height:.86}.cs-title .line-mask>span{display:inline-block}.cs-title__sub{letter-spacing:-.02em;font-size:.42em;font-weight:400;line-height:1.1}.cs-meta{border-top:1px solid var(--line);grid-template-columns:repeat(4,1fr);gap:24px;margin:12px 0 0;padding-top:18px;display:grid}.cs-meta dd{margin:4px 0 0}.cs-cover{aspect-ratio:1660/1248;background:var(--soft);width:100%;margin-inline:auto;overflow:hidden}.cs-cover img{object-fit:cover;width:100%;height:100%}.cs-section{padding:14vh 0 0}.cs-section__grid{gap:calc(4 * var(--vw));grid-template-columns:1fr 1.4fr;align-items:start;display:grid}.cs-section__head{top:calc(var(--bar) + 24px);gap:8px;display:grid;position:sticky}.cs-section__head h2{font-size:clamp(40px, calc(4.4 * var(--vw)), 76px);line-height:.95}.cs-section__body{max-width:62ch;font-size:clamp(17px, calc(1.25 * var(--vw)), 20px);color:#333;gap:18px;line-height:1.6;display:grid}.cs-section__body p{margin:0}.cs-goals{display:grid}.cs-goals li{border-top:1px solid var(--line);grid-template-columns:40px 1fr;gap:12px;padding:16px 0;display:grid}.cs-goals li span{padding-top:5px}.cs-media{margin-top:7vh}.cs-frame{--crop:1.232;aspect-ratio:1660/1248;background:var(--soft);width:100%;margin-inline:auto;position:relative;overflow:hidden}.cs-frame__mask{position:absolute;inset:0;overflow:hidden}.cs-frame img,.compare img{object-fit:cover;width:100%;height:100%}.compare{--crop:1.232;aspect-ratio:1660/1248;background:var(--soft);touch-action:pan-y;-webkit-user-select:none;user-select:none;cursor:ew-resize;width:100%;margin-inline:auto;position:relative;overflow:hidden}.compare>img{transform:scale(var(--crop));position:absolute;inset:0}.compare__before{position:absolute;inset:0}.compare__before img{transform:scale(var(--crop))}.compare__tag{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffffe6;border-radius:999px;padding:6px 12px;position:absolute;top:18px}.compare__tag--before{left:18px}.compare__tag--after{background:var(--ink);color:#fff;right:18px}.compare__handle{background:#fff;width:1px;margin-left:-.5px;position:absolute;top:0;bottom:0;box-shadow:0 0 0 .5px #00000026}.compare__knob{letter-spacing:.1em;background:#fff;border-radius:50%;place-items:center;width:46px;height:46px;font-size:15px;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 6px 20px #0000002e}.cs-end{justify-items:start;gap:28px;padding:22vh 0 14vh;display:grid}.cs-end__back{font-size:clamp(44px, calc(7 * var(--vw)), 120px);letter-spacing:-.05em;text-align:left;font-weight:500;line-height:1}.cs-end__back .serif{font-weight:400}.cs-end__back:hover span[aria-hidden]{display:inline-block;transform:translate(-10px)}@media (width<=760px){.chapter{width:calc(76 * var(--vw))}.case-feature{width:calc(100 * var(--vw));grid-template-rows:34vh auto;grid-template-columns:1fr;align-content:center;gap:20px}.case-feature .reveal-img{height:34vh}.case-feature__title{font-size:34px}.case-feature__summary{display:none}.cs-section__grid,.cs-meta{grid-template-columns:1fr}.cs-section__head{position:static}.cs-top__mid{display:none}.cs-top{grid-template-columns:1fr auto}}.wm__cycle{justify-items:center;padding:.08em .04em .1em;display:grid;overflow:hidden}.wm__word{grid-area:1/1;display:flex}.intro__pre{text-align:center;font-size:clamp(24px, calc(2.6 * var(--vw)), 44px);margin-bottom:5vh;line-height:1}.intro__pre em{font-style:italic}@media (width<=1024px){:root{--pad-x:calc(6 * var(--vw))}.h-track{flex-direction:column;width:100%;height:max-content}.page{width:100%;min-width:0;height:auto;min-height:100svh;padding:calc(var(--bar) + 12px) 0 calc(var(--bar) + 12px);flex-direction:column;justify-content:center;align-items:stretch}.panel{width:100%;height:auto;padding:28px var(--pad-x);border-left:0}.label{margin-bottom:18px;display:block;position:static}.topbar,.bottombar{background:var(--bg)}.menu{display:none}.crumb{display:inline-flex}.topbar__name{display:none}.topbar{grid-template-columns:1fr auto}.intro{width:100%;min-height:calc(100svh - var(--bar) * 2 - 24px);flex:1}.chapter{justify-content:flex-start;gap:16px;width:100%;padding-bottom:4px}.chapter__title{font-size:clamp(56px, calc(15 * var(--vw)), 120px)}.chapter__note{max-width:44ch}.case-feature{grid-template-rows:auto;grid-template-columns:1fr;align-content:start;gap:22px;width:100%}.case-feature .reveal-img{height:42svh}.case-feature__title{font-size:clamp(32px, calc(7 * var(--vw)), 56px)}.work-card{width:100%;padding-inline:var(--pad-x)}.work-card .reveal-img{height:auto}.playground{flex-direction:column;gap:24px;width:100%}.playground__head{gap:14px;width:auto}.playground__title{font-size:clamp(56px, calc(15 * var(--vw)), 120px)}.playground__grid{grid-template-rows:none;grid-template-columns:repeat(2,1fr);grid-auto-rows:auto;grid-auto-columns:auto;grid-auto-flow:row;gap:10px}.shot{aspect-ratio:1}.statement{flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:28px;width:100%}.statement__text{max-width:none;font-size:clamp(28px, calc(7 * var(--vw)), 52px)}.about-a{grid-template-columns:1fr;align-items:start;gap:22px;width:100%}.about-a__img{aspect-ratio:auto;height:46svh}.about-a__text{max-width:52ch}.about-b{justify-content:flex-start;width:100%}.about-b__title{font-size:clamp(52px, calc(13 * var(--vw)), 100px)}.words{border-left:0;flex-direction:column;height:auto}.quote{width:100%;padding:40px var(--pad-x);gap:22px}.quote__mark{top:0;left:var(--pad-x);font-size:calc(48 * var(--vw))}.quote__text{max-width:none;font-size:clamp(24px, calc(5.6 * var(--vw)), 40px)}.contact{width:100%;min-height:calc(100svh - var(--bar) * 2 - 24px);border-left:0}.contact__foot{width:100%;margin-top:6vh;position:static}.wm--contact{font-size:clamp(60px, calc(17 * var(--vw)), 140px)}}.cf{gap:calc(6 * var(--vw));min-height:100svh;padding:calc(var(--bar) + 12vh) 0 12vh;grid-template-columns:1fr 1.1fr;align-items:start;display:grid}.cf__intro{top:calc(var(--bar) + 12vh);gap:24px;display:grid;position:sticky}.cf__title{font-size:clamp(56px, calc(8 * var(--vw)), 150px);letter-spacing:-.06em;font-weight:600;line-height:.9}.cf__title .serif{letter-spacing:-.02em;font-weight:400}.cf__lead{max-width:34ch;font-size:clamp(17px, calc(1.3 * var(--vw)), 21px);color:#444;line-height:1.5}.cf__links a{border-bottom:1px solid var(--line)}.cf-dot{background:var(--accent);vertical-align:middle;border-radius:50%;width:6px;height:6px;margin-right:6px;display:inline-block}.cf__form{gap:8px;display:grid}.cf-field{gap:4px;display:grid}.cf-field label{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:11px}.cf-field label span{color:var(--accent)}.cf-input{border:0;border-bottom:1px solid var(--line);width:100%;color:var(--ink);font:inherit;font-size:clamp(18px, calc(1.5 * var(--vw)), 22px);background:0 0;border-radius:0;outline:none;padding:10px 0 14px;transition:border-color .3s}textarea.cf-input{resize:vertical;min-height:150px;line-height:1.5}.cf-input::placeholder{color:#b8b8b4}.cf-input:hover{border-color:#bdbdb8}.cf-input:focus{border-color:var(--ink)}.cf-field.has-error .cf-input{border-color:var(--accent)}.cf-error{min-height:20px;color:var(--accent);font-size:13px}.cf-error--form{min-height:0}.cf-trap{opacity:0;width:1px;height:1px;position:absolute;left:-9999px}.cf__actions{flex-wrap:wrap;align-items:center;gap:14px 24px;margin-top:12px;display:flex}.cf__submit{background:var(--ink);color:#fff;border-radius:999px;align-items:center;gap:10px;padding:16px 28px;font-size:17px;transition:background-color .3s,opacity .3s;display:inline-flex}.cf__submit:hover{background:var(--accent)}.cf__submit:disabled{opacity:.6;cursor:progress}.cf__done{justify-items:start;gap:20px;padding:8px 0;display:grid}.cf__done-title{font-size:clamp(48px, calc(6 * var(--vw)), 96px);line-height:1}.cf__done p{color:#444;max-width:36ch;font-size:19px}@media (width<=1024px){.cf{padding-top:calc(var(--bar) + 6vh);grid-template-columns:1fr;gap:40px}.cf__intro{position:static}.cf__title{font-size:clamp(52px, calc(15 * var(--vw)), 110px)}.contact__row{flex-flow:column;gap:18px}}.menu-btn,.mnav{display:none}@media (width<=1024px){.menu-btn{justify-self:end;align-items:center;padding:8px 0 8px 16px;font-weight:500;display:inline-flex}.mnav{z-index:41;top:var(--bar);padding:12px var(--pad-x) 40px;background:var(--bg);flex-direction:column;gap:22px;display:flex;position:fixed;bottom:0;left:0;right:0;overflow-y:auto}.mnav__group{flex-direction:column;gap:6px;display:flex}.mnav__label{margin-bottom:2px}.mnav__home,.mnav__item{text-align:left;font-size:clamp(32px, calc(9 * var(--vw)), 52px);color:var(--muted);align-items:center;gap:12px;padding:4px 0;line-height:1.1;display:flex}.mnav__home.is-current,.mnav__item.is-current{color:var(--ink)}.mnav__home.is-current:before,.mnav__item.is-current:before{content:"";background:var(--ink);border-radius:50%;flex:none;width:8px;height:8px}}.turn__load{width:min(220px, calc(50 * var(--vw)));background:#14110c1f;border-radius:2px;height:2px;margin-top:26px;display:block;overflow:hidden}.turn__load i{background:var(--ink);transform-origin:0;height:100%;animation:2.4s cubic-bezier(.55,.1,.3,1) forwards turn-load;display:block}@keyframes turn-load{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.cv-face__text{opacity:0;transition:opacity .55s .2s,transform .7s cubic-bezier(.22,1,.36,1) .2s;transform:translateY(18px)}.turn--in .cv-face__text{opacity:1;transform:none}.turn--out .cv-face__text{opacity:0;transition:opacity .35s,transform .5s cubic-bezier(.45,0,.55,1);transform:translateY(-18px)}.cf-modal{z-index:200;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fafaf873;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.cf-modal__card{width:min(520px,100%);padding:clamp(28px, calc(4 * var(--vw)), 44px);border:1px solid var(--line);background:var(--bg);border-radius:24px;justify-items:start;gap:20px;display:grid;box-shadow:0 30px 80px #14110c24}.cf-modal__card .cf__done-title{font-size:clamp(40px, calc(5 * var(--vw)), 64px)}.cf-modal__card p{color:#444;font-size:18px}.cf-modal__card .cf__submit{justify-content:center;width:100%}.panel.top{padding-top:calc(var(--bar) + 17vh);justify-content:flex-start}.skills-wide,.skills{margin-left:calc(12.7 * var(--vw))}.skills-wide{width:calc(125 * var(--vw))}.skills-row{gap:calc(3 * var(--vw));align-items:flex-start;display:flex}.skill-card{width:calc(27 * var(--vw));flex-direction:column;flex:none;gap:14px;padding-top:18px;display:flex;position:relative}.skill-card__line{background:var(--line);transform-origin:0;height:1px;position:absolute;top:0;left:0;right:0}.skill-card__title{font-size:clamp(26px, calc(2.4 * var(--vw)), 40px);white-space:nowrap;line-height:1.05}.skill-card__text{color:#444;font-size:clamp(15px, calc(1.2 * var(--vw)), 19px);line-height:1.5}.skills{width:calc(72 * var(--vw))}.skills__block{border-top:1px solid var(--line);gap:14px;padding-top:18px;display:grid}.tools-list{font-size:clamp(28px, calc(2.8 * var(--vw)), 44px);flex-wrap:wrap;gap:8px 28px;font-style:italic;line-height:1.1;display:flex}@media (width<=1024px){.skills-wide,.skills{width:100%;margin-left:0}.skills-row{flex-direction:column;gap:52px;margin-top:0}.skill-card{width:100%}.skill-card__title{white-space:normal;font-size:32px}.panel.top{padding:80px var(--pad-x);gap:36px}.skills-row{gap:52px}.skills{gap:44px}.skill-card{gap:16px;padding-top:22px}.xp-row{padding:18px 0}.skill-card__text{font-size:16px}.tools-list{font-size:30px}}.mock{background:#ececec;border-radius:1.1cqw;width:100%;overflow:hidden;box-shadow:0 2.4cqw 6cqw #14110c2e,0 0 0 1px #14110c14;container-type:inline-size}.mock__bar{background:#dcdcdc;align-items:flex-end;gap:2cqw;height:3.4cqw;padding:0 1.4cqw;display:flex}.mock__dots{align-self:center;gap:.7cqw;display:flex}.mock__dots i{border-radius:50%;width:1cqw;height:1cqw}.mock__tab{color:#444;font-size:1.15cqw;font-family:var(--sans);background:#ececec;border-radius:.8cqw .8cqw 0 0;padding:.7cqw 2cqw}.mock__url{background:#ececec;align-items:center;gap:1.6cqw;height:3.6cqw;padding:0 1.6cqw;display:flex}.mock__nav{color:#666;letter-spacing:.4cqw;white-space:pre;font-size:1.5cqw}.mock__pill{color:#333;height:2.4cqw;font-size:1.2cqw;font-family:var(--sans);background:#fff;border-radius:99px;flex:1;align-items:center;gap:.8cqw;padding:0 1.4cqw;display:flex}.mock__pill i{background:#2fa84f;border-radius:50%;width:.9cqw;height:.9cqw}.mock__screen{aspect-ratio:16/9;background:#000;position:relative;overflow:hidden}.od{transform-origin:0 0;width:1920px;height:1080px;font-family:"Rubik", var(--sans);color:#fff;position:absolute;top:0;left:0}.od img{-webkit-user-select:none;user-select:none;max-width:none;display:block}.od-stage{background:#060606;position:absolute;inset:0;overflow:hidden}.od-chrome{-webkit-user-select:none;user-select:none;max-width:none;position:absolute;top:0;left:0}.od-canvas{background:linear-gradient(#000 0%,#0f0f0f 48.558%,#06140a 100%);width:1920px;position:absolute;left:0;overflow:hidden}.od-zoom,.od-pan{position:absolute;inset:0}.od-zoom{transform-origin:960px 447px}.od-grid{background-image:radial-gradient(circle,#fff3 1.3px,#0000 1.7px);background-position:8px 8px;background-size:32px 32px;width:2180px;height:983px;position:absolute;top:0;left:0}.od-vm{flex-direction:column;align-items:center;width:173px;height:97px;display:flex;position:absolute}.od-vm__circle{background:#181818;border:1px solid #3fb950;border-radius:50%;place-items:center;width:48px;height:48px;display:grid;position:relative;box-shadow:0 4px 12px #11111140}.od-vm__circle--idle{border-color:#1f1f1f}.od-vm__circle--warning{border-color:#f5a623;box-shadow:0 4px 6px #11111140}.od-vm__warn{background:#181818;border:1px solid #f5a623;border-radius:50%;place-items:center;padding:4px;display:grid;position:absolute;top:-5px;right:-1.5px}.od-vm__name{color:#fff;align-items:center;gap:4px;margin-top:8px;font-size:14px;line-height:17px;display:flex}.od-vm__circle--idle~.od-vm__name,.od-vm__circle--idle~.od-vm__meta{color:#757575}.od-dot{width:8px;height:8px;position:relative}.od-dot img{width:12px;height:12px;position:absolute;top:-2px;left:-2px}.od-vm__meta{color:#959595;white-space:nowrap;align-items:center;gap:4px;margin-top:4px;font-size:12px;line-height:20px;display:flex}.od-vm__meta i{background:currentColor;border-radius:50%;width:2px;height:2px}.od-ripple{pointer-events:none;border:2px solid #3fb950;border-radius:50%;position:absolute;inset:-1px}.od-ring{position:absolute;top:317px;left:830.5px}.od-disk{box-sizing:border-box;background:#181818;border:1px solid #3fb950;border-radius:50%;place-items:center;width:32px;height:32px;display:grid;position:absolute}.od-disk-label{text-align:center;white-space:nowrap;flex-direction:column;align-items:center;gap:1px;width:80px;display:flex;position:absolute}.od-disk-label b{color:#fff;font-size:10px;font-weight:500;line-height:normal}.od-disk-label span{color:#959595;font-size:9px;font-weight:400;line-height:normal}.od-cursor{pointer-events:none;width:16.1px;height:26.04px;position:absolute;top:640px;left:1400px}.od-cursor img{width:117.4%;height:110.76%;position:absolute;top:-5.38%;left:-8.7%}.od-badge{color:#fff;white-space:nowrap;border-radius:99px;padding:2px 8px;font-size:10px;font-weight:400;line-height:normal}.od-badge--ok{background:#2a7b35}.od-badge--warn{background:#a36f17}.od-vm__badge{position:absolute;top:105px;left:50%;translate:-50%}.od-ringbadge{top:541.35px;left:960.5px}.od-panel{background:#000;width:600px;height:1011px;font-size:14px;position:absolute;top:69px;left:1320px;overflow:hidden}.od-group{flex-direction:column;display:flex;position:absolute;inset:0}.od-panel__head{box-sizing:border-box;border-bottom:1px solid #1f1f1f;flex:none;justify-content:space-between;align-items:flex-start;height:73px;padding:16px;display:flex}.od-panel__title{color:#fff;align-items:center;gap:4px;font-size:20px;font-weight:400;line-height:24px;display:flex}.od-panel__info{color:#959595;align-items:center;gap:4px;margin-top:4px;font-size:12px;line-height:20px;display:flex}.od-panel__info i{background:#959595;border-radius:50%;width:2px;height:2px}.od-panel__info img{width:12px;height:12px}.od-panel__x{border-radius:4px;padding:8px}.od-panel__x img{width:14px;height:14px}.od-panel__sec{border-bottom:1px solid #1f1f1f;flex-direction:column;flex:none;align-items:stretch;gap:16px;padding:16px;display:flex}.od-panel__sec--tight{gap:8px}.od-panel__sec h4{color:#fff;margin:0;font-size:16px;font-weight:500;line-height:normal}.od-alert{background:#a36f1733;border:1px solid #f5a62366;border-radius:8px;gap:8px;padding:12px;display:flex}.od-alert>img{flex:none;width:14px;height:14px;margin-top:3px}.od-alert__body{flex:1;min-width:0}.od-alert b{color:#fff;font-size:14px;font-weight:500;line-height:normal;display:block}.od-alert p{color:#959595;margin:4px 0 0;font-size:12px;line-height:20px}.od-plan{gap:16px;display:flex}.od-plan>div{flex-direction:column;flex:1;align-items:flex-start;gap:4px;display:flex}.od-plan span{color:#959595;font-size:12px;line-height:20px}.od-plan span.od-badge{color:#fff;font-size:10px;line-height:normal}.od-plan b{color:#fff;font-size:14px;font-weight:400;line-height:normal}.od-checks{gap:8px;display:flex}.od-check{box-sizing:border-box;background:#111;border:1px solid #1f1f1f;border-radius:8px;flex-direction:column;align-items:center;gap:4px;width:136px;padding:12px;display:flex}.od-check img{width:24px;height:24px}.od-check span{color:#757575;font-size:12px;line-height:20px}.od-check b{color:#fff;font-size:16px;font-weight:500;line-height:normal}.od-check em{color:#959595;text-align:center;font-size:12px;font-style:normal;line-height:normal}.od-tabs{border-bottom:1px solid #1f1f1f;flex:none;padding-top:4px;display:flex}.od-tabs span{color:#959595;border-bottom:1px solid #0000;flex:1;justify-content:center;align-items:center;gap:4px;padding:8px;font-size:12px;display:flex}.od-tabs span img{width:14px;height:14px}.od-tabs .is-on{color:#fff;border-bottom-color:#3fab48}.od-panel__sec--charts{border-bottom:0;flex:1;min-height:0;overflow:hidden}.od-mon{justify-content:space-between;align-items:center;display:flex}.od-mon h4{margin:0}.od-range{box-sizing:border-box;color:#fff;background:#181818;border:1px solid #1f1f1f;border-radius:4px;align-items:center;gap:8px;min-height:40px;padding:12px 16px;font-size:14px;display:flex;box-shadow:0 4px 8px #00000040}.od-range img{width:16px;height:16px}.od-lc{box-sizing:border-box;background:#111;border:1px solid #1f1f1f;border-radius:8px;flex-direction:column;flex:none;gap:16px;padding:16px;display:flex}.od-lc__head b{color:#fff;font-size:16px;font-weight:500;line-height:normal;display:block}.od-lc__head span{color:#757575;margin-top:4px;font-size:12px;line-height:20px;display:block}.od-lc__plot{gap:8px;display:flex}.od-lc__y{color:#757575;flex-direction:column;justify-content:space-between;align-items:flex-end;width:36px;height:160px;font-size:10px;line-height:normal;display:flex}.od-lc__canvas{flex:1;height:160px;position:relative}.od-lc__canvas i{background:#1f1f1f;height:1px;position:absolute;left:0;right:0}.od-lc__canvas img{width:100%;position:absolute;left:0}.od-lc__x{color:#757575;margin-left:44px;font-size:10px;line-height:normal;display:flex}.od-lc__x span{flex:1}.cs-demo{width:100%}.cs-group__head{gap:10px;margin-bottom:5vh;display:grid}.cs-group__head h2{font-size:clamp(48px, calc(6 * var(--vw)), 96px);font-weight:400;line-height:.95}.case-feature--soon .case-feature__link{cursor:default;position:relative}.soon-badge{z-index:2;border:1px solid var(--line);color:var(--ink);-webkit-backdrop-filter:blur(8px);background:#ffffffeb;border-radius:99px;align-items:center;gap:8px;padding:8px 14px;display:inline-flex;position:absolute;bottom:18px;left:18px}.soon-badge i,.soon-note i{background:var(--accent);border-radius:50%;width:6px;height:6px}.soon-note{border:1px dashed #cfcfcb;border-radius:999px;flex-wrap:wrap;align-items:center;gap:8px;width:fit-content;padding:12px 18px;font-size:15px;display:inline-flex}.book-intro{z-index:500;background:#f8f8f8;transition:opacity .55s;position:fixed;inset:0}.book-intro__hit{z-index:2;touch-action:none;will-change:transform;width:0;height:0;position:absolute;top:0;left:0}.book-intro.is-fading{opacity:0;pointer-events:none}.book-intro__canvas{z-index:1;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.book-intro__hint{z-index:3;height:var(--bar);pointer-events:none;justify-content:center;align-items:center;transition:opacity .4s;display:flex;position:absolute;bottom:0;left:0;right:0}.book-intro__hint.is-gone{opacity:0}.hint-click{opacity:.7;border:1.5px solid;border-radius:50%;width:20px;height:20px;position:relative}.hint-click:after{content:"";background:currentColor;border-radius:50%;animation:1.8s ease-in-out infinite hint-click;position:absolute;inset:4px}@keyframes hint-click{0%,to{opacity:.4;transform:scale(.45)}50%{opacity:1;transform:scale(1)}}.book-intro .sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.book-intro__hint,.book-intro__hint .bottombar__hint{color:#111}.book-intro__hint .hint-click{opacity:1;border-color:#111}.topbar__end{grid-column:3;justify-self:end;align-items:center;gap:14px;display:flex}.topbar__close{width:30px;height:30px;color:inherit;place-items:center;transition:color .25s,transform .25s;display:inline-grid}.topbar__close.is-hidden{opacity:0;pointer-events:none;width:0;margin-left:-14px;overflow:hidden}.topbar__close{transition:color .25s,transform .25s,width .35s,margin .35s,opacity .25s}.topbar__close svg{width:16px;height:16px}.topbar__close:hover,.topbar__close:focus-visible{color:#ff5b1f;transform:rotate(90deg)}.book-intro--enter{opacity:0;transition:opacity .3s}.book-intro--enter.is-in{opacity:1}.book-intro--enter.is-in.is-fading{opacity:0;transition-duration:.55s}.cs--wide .cs-cover,.cs--wide .cs-frame,.cs--wide .compare{--crop:1;aspect-ratio:16/9}.cs--wide .cs-cover img,.cs--wide .cs-frame img,.cs--wide .compare img{object-fit:contain}.cs--wide .cs-frame[style*=--ar],.cs--wide .compare[style*=--ar]{aspect-ratio:var(--ar)}.cs--wide .compare__before img{object-fit:cover}.cs-fullbox{background:var(--soft);padding:64px}.cs-full{width:100%;height:auto;display:block}@media (width<=600px){.cs-fullbox{padding:20px}}.cs-cover--whole{aspect-ratio:auto}.cs-cover--whole img{object-fit:contain;height:auto;display:block}.cs-group__body{width:100%;font-size:clamp(17px, calc(1.25 * var(--vw)), 20px);color:#333;gap:18px;margin-top:14px;line-height:1.6;display:grid}.cs-group__body p{margin:0}.od-vm__circle--plain{border-color:#1f1f1f}.dd-ring{position:absolute;top:317px;left:830.5px}.dd-vm{top:403px;left:874px}.dd-disk{top:279px;left:545px}.dd-cursor{pointer-events:none;width:32px;height:32px;position:absolute;top:720px;left:1500px}.dd-grab{pointer-events:none;width:28px;height:28px;position:absolute;top:714px;left:1490px}.cs-demos{gap:5vh;display:grid}.cs-demo-tag{margin-bottom:12px;display:block}.is-ring{position:absolute;top:345.5px;left:829.5px}.is-vm{transform-origin:86.5px 24px;top:431.5px;left:873px;scale:1.15}.is-sweep{position:absolute;top:376.44px;left:1043.59px;overflow:visible}.is-badge{box-sizing:border-box;background:#181818;border:1px solid;border-radius:99px;place-items:center;width:14px;height:14px;display:grid;position:absolute;top:370.94px;left:1065.09px}.av-vm{top:432px;left:874px}.av-info{width:173px;height:41px;margin-top:8px;position:relative}.av-name{color:#fff;justify-content:center;align-items:center;gap:4px;height:17px;font-size:14px;line-height:17px;display:flex}.av-name.is-dim{color:#757575}.av-meta{color:#959595;white-space:nowrap;justify-content:center;align-items:center;gap:4px;width:100%;font-size:12px;line-height:20px;display:flex;position:absolute;top:21px;left:0}.av-meta.is-dim{color:#757575}.av-meta i{background:currentColor;border-radius:50%;width:2px;height:2px}.av-spin{width:12px;height:12px;display:block}.av-ic{width:16px;height:16px;position:absolute;top:15px;left:15px}.av-patch{position:absolute}.av-patch--badge{background:#000;width:66px;height:22px;top:17px;left:1451px}.av-patch--menu{background:#181818;width:112px;height:24px;top:76px;left:1747px}.av-badge{box-sizing:border-box;color:#fff;white-space:nowrap;border-radius:99px;align-items:center;height:16px;padding:0 8px;font-size:10px;line-height:12px;display:flex;position:absolute;top:19px;left:1453px}.av-badge--neutral{background:#181818;border:1px solid #1f1f1f}.av-badge--running{background:#2a7b35}.av-act{white-space:nowrap;align-items:center;gap:4px;padding:4px 8px;font-size:12px;font-weight:500;line-height:12px;display:flex;position:absolute;top:78px;left:1749px}.av-toast{box-sizing:border-box;filter:drop-shadow(0 4px 4px #00000040);background:#181818;border:1px solid #1f1f1f;border-radius:4px;align-items:flex-start;gap:4px;width:400px;padding:8px;display:flex;position:absolute;top:1023px;left:1496px}.av-toast b{color:#3fb950;flex:1;font-size:14px;font-weight:500;line-height:14px}.av-cursor{pointer-events:none;width:32px;height:32px;position:absolute;top:700px;left:1100px}.av-scrim{background:#000000bf;width:1920px;height:1080px;position:absolute;top:0;left:0}.av-center{pointer-events:none;justify-content:center;align-items:center;width:1920px;height:1080px;display:flex;position:absolute;top:1px;left:0}.av-box{box-sizing:border-box;background:#111;border:1px solid #1f1f1f;border-radius:12px;flex-direction:column;gap:24px;min-width:400px;max-width:400px;padding:24px;display:flex;box-shadow:0 0 32px #00000080}.av-box__top{flex-direction:column;gap:16px;display:flex}.av-box__icon{box-sizing:border-box;background:#181818;border:1px solid #1f1f1f;border-radius:8px;align-self:flex-start;place-items:center;width:34px;height:34px;display:grid}.av-box__text{flex-direction:column;gap:8px;display:flex}.av-box__text b{color:#fff;font-size:16px;font-weight:500;line-height:normal}.av-box__text p{color:#757575;margin:0;font-size:12px;line-height:1.5}.av-box__btns{gap:8px;display:flex}.av-btn{box-sizing:border-box;text-align:center;color:#fff;background:#181818;border:1px solid #1f1f1f;border-radius:4px;flex:1;padding:8px 12px;font-size:12px;font-weight:500;line-height:14px}.av-btn--primary{background:#3fab48;border-color:#ffffff1a}.av-create{box-sizing:border-box;background:#111;border:1px solid #1f1f1f;border-radius:8px;flex-direction:column;gap:8px;width:400px;padding:16px;display:flex;box-shadow:0 4px 8px #00000040}.av-create__title{color:#757575;font-size:14px;line-height:normal}.av-create__btn{box-sizing:border-box;background:#181818;border:1px solid #1f1f1f;border-radius:4px;align-items:center;gap:4px;padding:12px 16px;display:flex}.av-create__btn b{color:#fff;flex:1;font-size:14px;font-weight:500;line-height:16px}.av-create__btn img{width:16px;height:16px}.cs-source{margin:14px 0 0;line-height:1.5}.cs-source a{color:inherit;text-underline-offset:3px;text-decoration:underline}
