:root{color-scheme:light;--paper: #eeeae2;--paper-bright: #f7f3eb;--ink: #151515;--muted: #69665f;--rule: #a9a49b;--accent: #d92d20;--cobalt: #2457d6;--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-snap: cubic-bezier(.2, .75, .25, 1);font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Arial,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}html,body{min-width:320px;margin:0;background:var(--paper)}body{color:var(--ink);overflow-x:hidden}button,a{-webkit-tap-highlight-color:transparent}.error-page{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(480px,46%) minmax(0,54%);grid-template-rows:92px minmax(0,1fr) 54px;min-height:100vh;min-height:100dvh;overflow:hidden;background-color:var(--paper)}.error-page:before,.error-page:after{position:absolute;z-index:20;pointer-events:none;content:"";background:var(--ink)}.error-page:before{top:0;left:30px;width:1px;height:14px}.error-page:after{top:30px;left:0;width:14px;height:1px}.site-header{z-index:5;grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;padding:max(22px,env(safe-area-inset-top)) clamp(24px,4vw,68px) 18px;border-bottom:1px solid color-mix(in srgb,var(--ink) 55%,transparent)}.wordmark{color:var(--ink);font-family:Arial Black,Franklin Gothic Heavy,Impact,sans-serif;font-size:clamp(17px,1.4vw,24px);font-weight:900;letter-spacing:-.055em;line-height:1;text-decoration:none}.wordmark-accent,.wordmark-dot{color:var(--accent)}.protocol,.error-label,.coordinate,.site-footer,.instruction{font-family:Courier New,Courier,monospace;letter-spacing:.08em}.protocol{margin:0;color:var(--muted);font-size:10px;font-weight:700}.protocol span{color:var(--accent)}.copy{z-index:4;grid-column:1;grid-row:2;align-self:center;padding:0 clamp(38px,4.8vw,98px) 3vh clamp(38px,5.2vw,106px)}.error-label{display:flex;align-items:center;gap:11px;margin:0 0 clamp(17px,3vh,38px);color:var(--muted);font-size:clamp(9px,.75vw,12px);font-weight:700;white-space:nowrap}.error-label:after{width:clamp(34px,5vw,78px);height:1px;content:"";background:var(--rule)}.error-label span{color:var(--cobalt)}h1{max-width:9ch;margin:0;font-family:Arial Black,Franklin Gothic Heavy,Impact,sans-serif;font-size:clamp(60px,6.5vw,132px);font-weight:900;letter-spacing:-.075em;line-height:.82;text-wrap:balance}h1 span{color:var(--accent)}.lede{margin:clamp(30px,4.2vh,54px) 0 0;color:var(--muted);font-size:clamp(17px,1.32vw,24px);font-weight:560;letter-spacing:-.02em;line-height:1.35}.reaction{position:absolute;margin:5px 0 0;color:var(--accent);font-family:Courier New,monospace;font-size:13px;font-weight:700}.instruction{display:flex;gap:15px;align-items:flex-start;margin-top:clamp(34px,5.5vh,66px);color:var(--muted);font-size:clamp(9px,.7vw,11px);font-weight:700;line-height:1.5}.instruction:before{width:2px;height:30px;content:"";background:var(--cobalt)}.instruction-index{color:var(--cobalt)}.instruction p{margin:0}.instruction strong{display:block;color:var(--ink);font-weight:700}.mobile-instruction{display:none}.portrait-zone{position:relative;z-index:2;grid-column:2;grid-row:2 / 4;min-width:0}.portrait-zone:after{display:none}.ghost-code{position:absolute;top:52%;left:0;z-index:-2;width:max-content;margin:0;color:transparent;font-family:Arial Black,Franklin Gothic Heavy,Impact,sans-serif;font-size:clamp(240px,24vw,500px);font-weight:900;letter-spacing:-.09em;line-height:.7;opacity:.11;transform:translate(-50%,-50%);-webkit-text-stroke:clamp(1px,.14vw,3px) var(--ink);-webkit-user-select:none;user-select:none}.calibration{position:absolute;z-index:-1;opacity:.25;pointer-events:none}.calibration-x{top:35.5%;right:5%;left:8%;border-top:1px dashed var(--rule)}.calibration-y{top:8%;bottom:5%;left:58%;border-left:1px dashed var(--rule)}.coordinate{position:absolute;z-index:3;margin:0;color:var(--muted);font-size:clamp(8px,.6vw,10px);font-weight:700}.coordinate-top{top:5%;right:5%;color:var(--cobalt)}.coordinate-bottom{right:6%;bottom:4%;writing-mode:vertical-rl}.portrait{position:absolute;right:0;bottom:0;z-index:2;display:block;width:min(40vw,760px);min-width:620px;margin:0;padding:0;overflow:hidden;border:0;border-left:1px solid color-mix(in srgb,var(--rule) 68%,transparent);outline-offset:-14px;background:#e7e3dc;cursor:crosshair;transform-origin:58% 80%}.portrait:after{position:absolute;top:0;right:0;left:0;z-index:3;height:4px;background:var(--cobalt);content:"";pointer-events:none}.portrait:focus-visible{outline:3px solid var(--accent)}.portrait-photo,.portrait-photo img{display:block;width:100%;height:auto}.portrait-photo img{filter:saturate(.96) contrast(1.02);mix-blend-mode:multiply}.eye-overlay{position:absolute;inset:0;display:block;width:100%;height:100%;overflow:visible;pointer-events:none}.portrait:hover .portrait-photo{transform:scale(1.004)}.portrait-photo{transition:transform .5s var(--ease-out);transform-origin:center bottom}.pupil{will-change:transform}.eyelid{transform:scaleY(0);transform-box:fill-box;transform-origin:center top;transition:transform 55ms ease-in}.is-blinking .eyelid{transform:scaleY(1)}.portrait.is-hurt{animation:hurt .26s var(--ease-snap)}.site-footer{z-index:6;grid-column:1;grid-row:3;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(30px,5vw,90px);border-top:1px solid color-mix(in srgb,var(--ink) 38%,transparent);color:var(--muted);font-size:clamp(7px,.55vw,9px);font-weight:700}.site-footer p{margin:0}.redacted{color:var(--accent);text-decoration:line-through 2px var(--ink)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes hurt{0%,to{transform:translate(0) rotate(0)}26%{transform:translate(-3px) rotate(-.3deg)}58%{transform:translate(4px) rotate(.35deg)}80%{transform:translate(-2px) rotate(-.15deg)}}@keyframes copy-enter{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes portrait-enter{0%{opacity:0;transform:translate(28px)}to{opacity:1;transform:translate(0)}}.is-ready .copy>*{animation:copy-enter .6s var(--ease-out) both}.is-ready .copy>:nth-child(2){animation-delay:70ms}.is-ready .copy>:nth-child(3){animation-delay:.13s}.is-ready .copy>:nth-child(5){animation-delay:.19s}.is-ready .portrait{animation:portrait-enter .85s 50ms var(--ease-out) both}@media(max-width:1180px){.error-page{grid-template-columns:minmax(410px,45%) minmax(0,55%)}.copy{padding-right:22px}.portrait{right:0;width:min(51vw,620px);min-width:520px}.ghost-code{left:0}}@media(max-width:767px){.error-page{grid-template-columns:1fr;grid-template-rows:minmax(64px,auto) auto minmax(300px,1fr) auto;min-height:100svh;overflow-x:hidden;overflow-y:visible}.site-header{grid-column:1;min-height:64px;padding:max(18px,env(safe-area-inset-top)) 20px 14px}.protocol{font-size:8px}.copy{grid-column:1;grid-row:2;align-self:start;padding:clamp(22px,4vh,36px) 20px 0;text-align:center}.error-label{justify-content:center;margin-bottom:17px}.error-label:after{display:none}h1{max-width:none;font-size:clamp(49px,15.5vw,78px);line-height:.86}.lede{margin-top:18px;font-size:clamp(14px,4vw,18px);line-height:1.28}.reaction{right:0;left:0}.instruction{justify-content:center;margin-top:clamp(18px,3vh,28px);font-size:9px;text-align:left}.instruction:before{height:28px}.desktop-instruction{display:none}.mobile-instruction{display:inline}.portrait-zone{grid-column:1;grid-row:3;min-height:300px;overflow:hidden;border-top:3px solid var(--cobalt);background:#e7e3dc}.portrait:after{display:none}.ghost-code{display:none}.portrait{top:0;right:50%;bottom:auto;width:min(84vw,500px);min-width:360px;border-left:0;transform:translate(50%);transform-origin:center bottom}.portrait.is-hurt{animation:hurt-mobile .26s var(--ease-snap)}.portrait:hover .portrait-photo{transform:none}.calibration-x{top:38%;right:6%;left:6%}.calibration-y{left:50%}.coordinate-top{top:4%;right:15px}.coordinate-bottom{right:10px;bottom:18px}.site-footer{grid-column:1;grid-row:4;min-height:calc(38px + env(safe-area-inset-bottom));padding:0 20px env(safe-area-inset-bottom);font-size:7px}.site-footer p:first-child{max-width:28ch}.is-ready .portrait{animation:portrait-enter-mobile .8s 40ms var(--ease-out) both}}@keyframes hurt-mobile{0%,to{transform:translate(50%)}30%{transform:translate(calc(50% - 3px)) rotate(-.3deg)}65%{transform:translate(calc(50% + 4px)) rotate(.35deg)}}@keyframes portrait-enter-mobile{0%{opacity:0;transform:translate(50%,24px)}to{opacity:1;transform:translate(50%)}}@media(max-height:700px)and (min-width:768px){.error-page{min-height:700px;overflow-y:auto}.instruction{margin-top:28px}.portrait{width:570px;min-width:570px}}@media(max-width:374px){.protocol{display:none}.copy{padding-top:18px}.instruction{margin-top:16px}.portrait-zone{min-height:285px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.pupil{transform:none!important}}
