:root{--ground:#0a0a0b;--ground-deep:#060607;--surface:#121213;--surface-2:#17171a;--ink:#e9e6df;--ink-soft:#a29d93;--ink-faint:#847f74;--rule:#232325;--rule-bright:#3a3833;--silver:#d6cec0;--danger:#c9705a;--display:Didot, "Bodoni MT", "Sitka Display", "Hoefler Text", Georgia, serif;--body:Optima, Candara, "Gill Sans MT", "Segoe UI", Avenir, sans-serif;--gap:10px;--edge:34px}*,:before,:after{box-sizing:border-box}html{scrollbar-width:thin;scrollbar-color:var(--rule-bright) transparent}::-webkit-scrollbar{width:7px;height:7px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-corner{background:0 0}::-webkit-scrollbar-thumb{background:var(--rule);border-radius:0;transition:background .3s}::-webkit-scrollbar-thumb:hover{background:var(--rule-bright)}::-webkit-scrollbar-button{display:none}html,body{max-width:100%;margin:0;padding:0;overflow-x:hidden}body{background:var(--ground);color:var(--ink);font-family:var(--body);-webkit-font-smoothing:antialiased;min-height:100vh;font-size:17px;line-height:1.7}a{color:inherit;text-decoration:none}:focus-visible{outline:1px solid var(--silver);outline-offset:4px}img{-webkit-user-drag:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;pointer-events:none;max-width:100%;display:block}.nav{padding:30px var(--edge) 26px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;display:flex}.nav__mark{font-family:var(--display);letter-spacing:.28em;text-indent:.28em;white-space:nowrap;font-size:1.02rem}.nav__links{align-items:center;gap:26px;display:flex}.nav__links a{font-family:var(--display);color:var(--ink-faint);font-size:.95rem;font-style:italic;transition:color .3s}.nav__links a:hover,.nav__links a[aria-current=page]{color:var(--silver)}.nav__lang{font-family:var(--display);letter-spacing:.14em;color:var(--ink-faint);gap:6px;font-size:.82rem;display:flex}.nav__lang a[aria-current=true]{color:var(--silver)}.nav__ig{width:17px;height:17px;stroke:var(--ink-faint);fill:none;stroke-width:1.3px;transition:stroke .3s}.nav__links a:hover .nav__ig{stroke:var(--silver)}.mosaic{padding:8px var(--edge) 60px}.mosaic__inner{gap:var(--gap);flex-direction:column;width:100%;display:flex;container-type:inline-size}.mosaic__row{gap:var(--gap);max-width:100%;height:min(calc((100cqw - var(--gap)) / var(--sum)), 78vh);justify-content:center;display:flex}.tile{cursor:pointer;height:100%;aspect-ratio:var(--ratio);background:#000;border:0;flex:none;padding:0;display:block;position:relative;overflow:hidden}@media (max-width:620px){.mosaic__row{flex-wrap:wrap;height:auto}.tile{flex:0 0 100%;width:100%;height:auto}}.tile picture,.viewer__layer picture{display:contents}.tile img{object-fit:cover;z-index:1;width:100%;height:100%;transition:opacity 1s,filter .55s;position:relative}.tile:hover img,.tile:focus-visible img{filter:brightness(1.14)}.tile__placeholder{filter:blur(12px);background-position:50%;background-size:cover;position:absolute;inset:0;transform:scale(1.06)}.tile img.is-loaded+.tile__placeholder{opacity:0}.page{max-width:720px;padding:40px var(--edge) 120px;margin:0 auto}.page h1{font-family:var(--display);text-wrap:balance;margin:0 0 26px;font-size:clamp(2rem,4vw,2.8rem);font-weight:400;line-height:1.12}.page p{color:var(--ink-soft);white-space:pre-line;max-width:62ch;margin:0 0 16px}.page a.link{color:var(--silver);border-bottom:1px solid var(--rule-bright)}.form{flex-direction:column;gap:18px;max-width:560px;margin-top:26px;display:flex}.form__pair{grid-template-columns:1fr 1fr;gap:18px;display:grid}.form__field{flex-direction:column;gap:6px;display:flex}.form__field label{font-family:var(--display);color:var(--ink-faint);font-size:.88rem;font-style:italic}.form__hint{color:var(--rule-bright)}.form__field input,.form__field textarea{background:var(--surface);border:1px solid var(--rule);color:var(--ink);font-family:var(--body);border-radius:0;width:100%;padding:10px 12px;font-size:.95rem;transition:border-color .3s}.form__field textarea{resize:vertical;min-height:140px;line-height:1.6}.form__field input:focus,.form__field textarea:focus{border-color:var(--rule-bright);outline:none}.form__submit{font-family:var(--display);letter-spacing:.06em;color:var(--ink-soft);border:1px solid var(--rule-bright);cursor:pointer;background:0 0;align-self:flex-start;padding:10px 26px;font-size:.95rem;transition:color .3s,border-color .3s}.form__submit:hover:not(:disabled){color:var(--silver);border-color:var(--silver)}.form__submit:disabled{opacity:.5;cursor:default}.form__error{color:var(--danger);margin:0;font-size:.92rem}.form__done{font-family:var(--display);color:var(--silver);margin-top:26px;font-size:1.15rem;font-style:italic}.form__trap{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.toast{z-index:80;background:var(--surface-2);border:1px solid var(--rule-bright);max-width:min(90vw,460px);color:var(--ink-soft);font-family:var(--display);opacity:0;align-items:center;gap:18px;padding:13px 16px 13px 20px;font-size:.95rem;font-style:italic;line-height:1.4;transition:opacity .4s,transform .4s cubic-bezier(.33,0,.2,1);display:flex;position:fixed;bottom:32px;left:50%;transform:translate(-50%,14px)}.toast.is-shown{opacity:1;transform:translate(-50%)}.toast--error{border-color:var(--danger);color:var(--danger)}.toast__close{color:inherit;font-family:var(--body);cursor:pointer;opacity:.6;background:0 0;border:0;padding:0 2px;font-size:1.15rem;line-height:1;transition:opacity .25s}.toast__close:hover{opacity:1}@media (max-width:620px){.toast{font-size:.9rem;bottom:18px}}@media (prefers-reduced-motion:reduce){.toast{transition:opacity 1ms linear;transform:translate(-50%)}}.footer{border-top:1px solid var(--rule);margin:0 var(--edge);font-family:var(--display);color:var(--ink-faint);flex-wrap:wrap;justify-content:space-between;gap:12px;padding:24px 0 40px;font-size:.88rem;font-style:italic;display:flex}.viewer{background:var(--ground-deep);z-index:50;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.viewer__stage{width:min(68vw,1000px);height:66vh;position:relative}.viewer__layer{opacity:0;justify-content:center;align-items:center;transition:opacity .8s cubic-bezier(.33,0,.2,1),transform .8s cubic-bezier(.33,0,.2,1);display:flex;position:absolute;inset:0;transform:scale(1)}.viewer__layer img{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:100%}.viewer__layer.is-shown{opacity:1;transform:scale(1)}.viewer__layer.is-leaving{opacity:0;transform:scale(.985)}.viewer__layer.is-entering{opacity:0;transform:scale(1.015)}.viewer__caption{text-align:center;font-family:var(--display);color:var(--ink-faint);pointer-events:none;padding:0 20px;font-size:.92rem;font-style:italic;transition:opacity .45s;position:fixed;bottom:26px;left:0;right:0}.viewer__close{cursor:pointer;font-family:var(--display);color:var(--ink-faint);background:0 0;border:0;padding:8px;font-size:.95rem;font-style:italic;position:fixed;top:22px;right:26px}.viewer__close:hover{color:var(--silver)}.viewer__zone{cursor:pointer;width:22%;color:var(--ink-faint);background:0 0;border:0;align-items:center;padding:0 28px;transition:color .35s;display:flex;position:fixed;top:0;bottom:0}.viewer__zone--prev{justify-content:flex-start;left:0}.viewer__zone--next{justify-content:flex-end;right:0}.viewer__chevron{opacity:.55;width:20px;height:34px;transition:opacity .35s,transform .35s}.viewer__zone:hover,.viewer__zone:focus-visible{color:var(--silver)}.viewer__zone:hover .viewer__chevron,.viewer__zone:focus-visible .viewer__chevron{opacity:1}.viewer__zone--prev:hover .viewer__chevron{transform:translate(-3px)}.viewer__zone--next:hover .viewer__chevron{transform:translate(3px)}.empty{padding:80px var(--edge) 140px;font-family:var(--display);color:var(--ink-faint)}.empty h2{color:var(--ink-soft);margin:0 0 8px;font-size:1.6rem;font-weight:400}@media (max-width:880px){:root{--gap:0px;--edge:22px}body{font-size:16px}.nav{padding:22px var(--edge)}.nav__links{gap:18px}.viewer__stage{width:84vw;height:64vh}}@media (max-width:620px){:root{--gap:0px;--edge:16px}.nav{flex-direction:column;align-items:flex-start;gap:14px}.nav__links{flex-wrap:wrap;gap:16px}.nav__mark{letter-spacing:.2em;text-indent:.2em;font-size:.95rem}.footer{flex-direction:column;gap:8px}.form__pair{grid-template-columns:1fr}.viewer__close{top:14px;right:14px}.viewer__caption{font-size:.85rem;bottom:18px}.viewer__stage{width:88vw;height:62vh}}@media (prefers-reduced-motion:reduce){.viewer__layer{transition:opacity 1ms linear!important;transform:none!important}.tile img{transition:none}}.page--centered{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:70vh;display:flex}.page__code{font-family:var(--display);color:var(--ink-faint);opacity:.35;margin:0 0 8px;font-size:clamp(64px,14vw,132px);font-style:italic;line-height:1}.link--button{font:inherit;cursor:pointer;background:0 0;border:none;padding:0}::view-transition-old(page){mix-blend-mode:normal;animation-duration:.22s;animation-timing-function:ease;animation-fill-mode:both}::view-transition-new(page){mix-blend-mode:normal;animation-duration:.22s;animation-timing-function:ease;animation-fill-mode:both}::view-transition-old(page){animation-name:page-out}::view-transition-new(page){animation-name:page-in}@keyframes page-out{to{opacity:0}}@keyframes page-in{0%{opacity:0}}@media (prefers-reduced-motion:reduce){::view-transition-old(page){animation-duration:1ms}::view-transition-new(page){animation-duration:1ms}}.page__section{font-family:var(--display);color:var(--silver);margin:34px 0 -6px;font-size:19px;font-style:italic;font-weight:400}.page__section:first-child{margin-top:0}.footer__credit{color:var(--ink-faint);flex-wrap:wrap;align-items:center;gap:0 6px;font-size:.78rem;display:inline-flex}.footer__dot{opacity:.5;background:currentColor;border-radius:50%;width:3px;height:3px;margin:0 2px}.footer__link{color:var(--silver);border-bottom:1px solid #0000;text-decoration:none;transition:border-color .3s}.footer__link:hover,.footer__link:focus-visible{border-bottom-color:currentColor}
