[data-cold]{content-visibility:hidden}html.ph{scroll-snap-type:y mandatory;overscroll-behavior:none;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body.ph-body{overscroll-behavior:none}html.ph-locked,html.ph-entry{overflow:hidden}.ph-root[data-entering] .ph-reticle,.ph-root[data-entering] .ph-reel{visibility:hidden}.ph-root[data-barwait] .ph-bar{background:color-mix(in srgb, var(--bg) calc(var(--ph-bar-a,0) * 100%), transparent)}.ph-root[data-barwait] .ph-bar:after{opacity:var(--ph-bar-a,0)}.ph-root[data-barwait] .ph-nav{opacity:var(--ph-bar-a,0)!important}html.ph,body.ph-body{background:var(--bg);margin:0}body.ph-body{color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;height:auto;overflow:visible}.ph-host{position:relative}.ph-root{--ph-h:100dvh;--ph-pc:80px;--ph-ps:252px;color:var(--ink);font-family:var(--sans);position:relative}.ph-root *,.ph-root :before,.ph-root :after{box-sizing:border-box;-webkit-tap-highlight-color:transparent}.ph-root button{font:inherit;color:inherit;cursor:pointer;text-align:inherit;touch-action:manipulation;background:0 0;border:0;margin:0;padding:0}.ph-root button:focus-visible{outline:1.5px solid var(--acc);outline-offset:3px}:where(.ph-root) :where(p,h1,h2){margin:0}.ph-stagebox{z-index:0;background:var(--bg);pointer-events:none;position:fixed;inset:0;overflow:hidden}.ph-stage{transform-origin:0 0;position:absolute;top:0;left:0}.ph-img,.ph-vid{object-fit:fill;-webkit-user-drag:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block;position:absolute;top:0;left:0}.ph-vid{z-index:1;background:0 0}.ph-vid.on{z-index:3}.ph-vid.fade{transition:opacity .12s linear}.ph-img{z-index:2;opacity:0}.ph-img.fadeout{transition:opacity .1s linear}.ph-reticle{z-index:2;pointer-events:none;position:fixed;inset:0;overflow:hidden}.ph-mk{background:var(--ink);width:5px;height:5px;margin:-2.5px 0 0 -2.5px;position:absolute;top:0;left:0}.ph-tag{width:190px;height:21px;font:700 11px/1 var(--mono);letter-spacing:.12em;white-space:nowrap;background:color-mix(in srgb, var(--bg) 92%, transparent);visibility:hidden;position:absolute;top:0;left:0}.ph-tag>div{position:absolute;top:5px;left:7px}.ph-rule{background:var(--ink);opacity:.5;width:400px;height:1px;position:absolute;top:0;left:0}.ph-reel{position:relative;overflow-x:clip}.ph-sec{height:var(--ph-h);scroll-snap-align:start;scroll-snap-stop:always;flex-direction:column;justify-content:flex-end;display:flex;position:relative}.ph-cover{justify-content:space-between}.ph-sheet{z-index:1;background:var(--bg);padding:calc(env(safe-area-inset-top) + 84px) 20px 12px;position:relative}.ph-sheet:after{content:"";background:var(--hair);pointer-events:none;height:1px;position:absolute;bottom:-1px;left:0;right:0}.ph-thesis{font:800 23px/1.2 var(--sans);letter-spacing:-.02em}.ph-thesis.ph-r{margin-top:1px;font-weight:300}.ph-facts{font:500 13px/1.45 var(--sans);color:var(--ink2);margin-top:6px}.ph-panel{z-index:3;background:var(--bg);border-top:1px solid var(--hair2);padding:16px 20px calc(env(safe-area-inset-bottom) + min(4px, env(safe-area-inset-bottom)));flex-direction:column;display:flex;position:relative}.ph-pc{min-height:var(--ph-pc);padding-top:14px}.ph-pc .ph-title{margin-top:4px;font-size:20px}.ph-pc .ph-row{display:none}.ph-ps{min-height:var(--ph-ps)}.ph-root[data-compact] .ph-sheet{padding:calc(env(safe-area-inset-top) + 72px) 20px 8px}.ph-root[data-compact] .ph-thesis{font-size:19px;line-height:1.18}.ph-root[data-compact] .ph-thesis.ph-r{margin-top:0}.ph-root[data-compact] .ph-facts{margin-top:4px;font-size:11.5px;line-height:1.35}.ph-root[data-compact] .ph-pc{padding-top:10px}.ph-root[data-compact] .ph-pc .ph-lbl{display:none}.ph-root[data-compact] .ph-pc .ph-title{margin-top:0;font-size:19px}.ph-lbl{font:500 11px/1.35 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--label)}.ph-title{font:780 26px/1.15 var(--sans);letter-spacing:-.015em;margin-top:8px}.ph-sum{font:400 15px/1.45 var(--sans);color:var(--ink2);margin-top:8px}.ph-small{font:500 12.5px/1.4 var(--sans);color:var(--label);margin-top:auto;padding-top:10px}.ph-row{justify-content:space-between;align-items:center;min-height:44px;margin-top:4px;display:flex}.ph-pc .ph-row{margin-top:auto}.ph-go{font:600 14px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;min-height:44px;padding-right:14px}.ph-ticks{font:500 11px/1 var(--mono);color:var(--label);margin-left:auto;display:flex}.ph-tick{text-align:center;min-width:36px;min-height:44px;font:inherit}.ph-tick.on{color:var(--acc-text);font-weight:700}.ph-fileey{opacity:0;letter-spacing:.06em;position:absolute;top:16px;left:20px;right:20px}.ph-verify{font:700 11px/1.3 var(--mono);letter-spacing:.12em;color:var(--acc-text);opacity:0;position:absolute;top:79px;left:20px;right:20px}.ph-nums{left:20px;right:20px;bottom:calc(22px + env(safe-area-inset-bottom));opacity:0;pointer-events:none;flex-wrap:wrap;gap:8px 24px;display:flex;position:absolute}.ph-nums div{font:300 30px/1 var(--sans);white-space:nowrap}.ph-nums small{font:500 11px/1.2 var(--mono);letter-spacing:.1em;color:var(--label);text-transform:uppercase;margin-top:6px;display:block}.ph-root[data-compact] .ph-sum,.ph-root[data-compact] .ph-small{display:none}.ph-cbx{position:relative}.ph-cbx>canvas{width:100%;height:calc(100% - 2px);image-rendering:pixelated;position:absolute;top:1px;left:0}.ph-index{z-index:3;height:auto;min-height:var(--ph-h);background:var(--bg);padding:calc(env(safe-area-inset-top) + 64px + 24px) 20px calc(env(safe-area-inset-bottom) + 48px);display:block}.ph-h{font:780 26px/1.15 var(--sans);letter-spacing:-.015em}.ph-ixg{margin-top:28px}.ph-ixh{border-bottom:1px solid var(--hair2);margin:0;padding-bottom:6px}.ph-ixl{margin:0;padding:0;list-style:none}.ph-ix{border-bottom:1px solid var(--hair);text-align:left;grid-template-columns:64px minmax(0,1fr);align-items:baseline;column-gap:12px;width:100%;min-height:48px;padding:10px 0;display:grid}.ph-ix .n{font:700 11px/1.3 var(--mono);letter-spacing:.08em;color:var(--acc-text);white-space:nowrap}.ph-ix .t{font:650 16px/1.25 var(--sans);letter-spacing:-.01em;color:var(--ink)}.ph-ix .s{font:500 12.5px/1.35 var(--sans);letter-spacing:0;color:var(--label);margin-top:2px;display:block}.ph-ix:active{background:color-mix(in srgb, var(--ink) 5%, transparent)}.ph-contact{scroll-margin-top:calc(env(safe-area-inset-top) + 76px);margin-top:48px;padding-top:4px}.ph-dl{grid-template-columns:minmax(0,1fr);margin:16px 0 8px;display:grid}.ph-dl dt{margin:14px 0 2px}.ph-dl dd{font:500 16px/1.35 var(--sans);color:var(--ink);margin:0}.ph-ctl{margin:18px 0 0;padding:0;list-style:none}.ph-ct{border-bottom:1px solid var(--hair)}.ph-cta{min-height:48px;color:var(--ink);align-items:center;gap:12px;padding:6px 0;text-decoration:none;display:flex}.ph-cta .n{min-width:84px;font:700 11px/1.3 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--acc-text);flex:none}.ph-cta .t{min-width:0;font:600 16px/1.25 var(--sans);overflow-wrap:anywhere;flex:1}.ph-cta .ar{font:500 16px/1 var(--sans);margin-left:auto}.ph-cta:focus-visible,.ph-ix:focus-visible{outline-offset:-2px}.ph-mail{font:600 16px/1.3 var(--sans);color:var(--ink);overflow-wrap:anywhere;-webkit-user-select:text;user-select:text;-webkit-touch-callout:default;padding:0 0 12px;display:block}html.ph-landscape{overflow:hidden}html.ph-nosnap,html.ph-nosnap-ix{scroll-snap-type:none}.ph-bar{z-index:4;height:calc(64px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 20px 0;background:var(--bg);justify-content:space-between;align-items:center;display:flex;position:fixed;top:0;left:0;right:0}.ph-bar:after{content:"";background:var(--hair);pointer-events:none;height:1px;position:absolute;bottom:-1px;left:0;right:0}.ph-barfile{left:134px;right:14px;top:calc(env(safe-area-inset-top) + 10px);opacity:0;visibility:hidden;pointer-events:none;min-width:0;height:44px;font:600 11.5px/1 var(--sans);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:8px;display:flex;position:absolute}.ph-barfile b{font:700 11px/1 var(--mono);letter-spacing:.1em;color:var(--acc-text);flex:none}.ph-barfile span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.ph-brand{display:block}.ph-a{font:800 17px/1 var(--sans);letter-spacing:-.01em;text-transform:uppercase;display:block}.ph-b{font:700 11px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;margin-top:6px;display:block}.ph-nav{gap:12px;display:flex}.ph-navb{min-width:44px;min-height:44px;font:600 11.5px/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;padding:0 6px}.ph-back{left:14px;top:calc(env(safe-area-inset-top) + 10px);min-height:44px;font:600 11.5px/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;opacity:0;visibility:hidden;padding:0 6px;position:absolute}.ph-land{z-index:20;background:var(--bg);padding:max(24px, env(safe-area-inset-top)) max(24px, env(safe-area-inset-right)) max(24px, env(safe-area-inset-bottom)) max(24px, env(safe-area-inset-left));text-align:center;font:600 16px/1.4 var(--sans);justify-content:center;align-items:center;display:none;position:fixed;inset:0}.ph-root[data-land] .ph-land{display:flex}.ph-fail{font:500 15px/1.5 var(--sans);color:var(--ink2);padding:84px 20px}html.ph,html.ph *{-webkit-tap-highlight-color:transparent}.ph-root :is(button,a,[role=button]):active,.ph-gate :is(button):active{outline:1.5px solid var(--acc);outline-offset:-1.5px;background:color-mix(in srgb, var(--ink) 7%, transparent)}.ph-root :is(button,a,[role=button]):focus-visible,.ph-gate :is(button):focus-visible{outline:1.5px solid var(--acc);outline-offset:3px}.ph-sec>.ph-panel:after{content:"";background:var(--bg);pointer-events:none;height:calc(100lvh - 100svh);position:absolute;top:100%;left:0;right:0}.ph-svh{visibility:hidden;pointer-events:none;width:0;height:100svh;position:fixed;top:0;left:0}.ph-vid{pointer-events:none}.ph-vid::-webkit-media-controls{-webkit-appearance:none;display:none!important}.ph-vid::-webkit-media-controls-panel{-webkit-appearance:none;display:none!important}.ph-vid::-webkit-media-controls-start-playback-button{-webkit-appearance:none;display:none!important}.ph-vid::-webkit-media-controls-overlay-play-button{-webkit-appearance:none;display:none!important}.ph-root input,.ph-root textarea,.ph-root select,.ph-gate input{font-size:max(16px,1em)}
