:root{--color-ink:#181818;--color-page:#fff;--gutter:clamp(1rem, 2.5vw, 2rem);--ring-radius:min(34vmin, 22rem);--ease-orbit:cubic-bezier(.4, 0, .15, 1);--tone-cifuentes:#c0c1e1;--tone-kabute:#7ca7e3;--tone-rosinx:#e49c8b;--tone-doeslife:#aed09c;--tone-garconnnne:#c6bea1;--tone-macel:#98c8ca;--tone-monica:#eac6a5;--tone-diego:#9dc4d8;color:var(--color-ink);background:var(--color-page);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;-webkit-tap-highlight-color:transparent;font-synthesis:none;-webkit-font-smoothing:antialiased;font-family:Times New Roman,Times,serif}@supports (color:lab(0% 0 0)){:root{--color-ink:lab(8.36% -.00000745058 0);--color-page:lab(100% 0 0);--tone-cifuentes:lab(78.7026% 4.70221 -16.1645);--tone-kabute:lab(67.0461% -2.8125 -35.4673);--tone-rosinx:lab(71.435% 26.03 20.4003);--tone-doeslife:lab(80.0644% -18.9242 22.1013);--tone-garconnnne:lab(77.0217% -.79447 15.5708);--tone-macel:lab(77.2935% -15.7758 -6.56123);--tone-monica:lab(82.5123% 9.45368 21.6305);--tone-diego:lab(76.9693% -10.0707 -14.3512)}}*,:before,:after{box-sizing:border-box}html,body{background:var(--color-page)}body{overscroll-behavior:none;min-height:100dvh;margin:0}.site-header{z-index:1;padding:var(--gutter);pointer-events:none;position:relative}.site-header a{pointer-events:auto}.logo{color:inherit;display:inline-block;position:relative}.logo__word,.logo__seal{transition:opacity .9s var(--ease-orbit), scale .9s var(--ease-orbit);display:block}.logo__word{width:clamp(3.75rem,6vw,5.25rem);height:auto}.logo__seal{opacity:0;width:auto;height:clamp(2.35rem,6vw,3.15rem);position:absolute;top:50%;left:0;translate:0 -50%;scale:.88}.logo[data-mark=seal] .logo__word{opacity:0}.logo[data-mark=seal] .logo__seal{opacity:1;scale:1}.logo-seal__ring{transform-box:fill-box;transform-origin:50%;animation:18s linear infinite paused logo-orbit}.logo[data-mark=seal] .logo-seal__ring{animation-play-state:running}@keyframes logo-orbit{to{rotate:360deg}}.logo:focus-visible{outline-offset:4px;outline:1px solid}@media (prefers-reduced-motion:reduce){.logo__word,.logo__seal,.logo-seal__ring{transition:none;animation:none}}.home{z-index:1;pointer-events:none;position:fixed;inset:0}.quiet{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.ripple-field{pointer-events:none;border:0;width:100%;height:100%;display:block;position:fixed;inset:0}.world-map{--color-world:var(--color-page);--world-w:max(100vw, 120svh);pointer-events:none;animation:90s ease-in-out infinite alternate world-drift;position:fixed;inset:-4%;scale:1 -1}.world-map__land{background:var(--color-world);-webkit-mask:var(--world) calc(50% + var(--here-shift,0px)) 50% / var(--world-w) auto no-repeat, radial-gradient(closest-side, #000 40%, transparent);mask:var(--world) calc(50% + var(--here-shift,0px)) 50% / var(--world-w) auto no-repeat, radial-gradient(closest-side, #000 40%, transparent);filter:blur(1.5px);transition:background-color .7s cubic-bezier(.2,0,0,1),filter .7s cubic-bezier(.2,0,0,1);position:absolute;inset:0;-webkit-mask-composite:source-in;mask-composite:intersect}.world-map[data-shown] .world-map__land{filter:blur(.5px);background:#cacaca;background:lab(81.44% -.0000298023 0)}.world-map__frame{width:var(--world-w);aspect-ratio:2000/1002;translate:calc(-50% + var(--here-shift,0px)) -50%;position:absolute;top:50%;left:50%}.world-map__here{cursor:pointer;pointer-events:auto;background:0 0;border:0;place-items:center;width:1.5rem;height:1.5rem;margin:-.75rem;padding:0;display:grid;position:absolute;scale:1 -1}.world-map__here:before{content:"";aspect-ratio:1;background:var(--tone);width:calc(1.2*clamp(3px,.6vmin,6px));transition:opacity .4s cubic-bezier(.2,0,0,1),scale .4s cubic-bezier(.2,0,0,1),background-color .6s cubic-bezier(.2,0,0,1)}.world-map__fly{opacity:0;object-fit:contain;pointer-events:none;width:clamp(1.35rem,4vmin,2rem);height:auto;transition:opacity .4s cubic-bezier(.2,0,0,1),scale .4s cubic-bezier(.2,0,0,1);position:absolute;scale:.45}.world-map__here:hover:before,.world-map__here:focus-visible:before,.world-map__here[aria-pressed=true]:before{opacity:0;scale:.4}.world-map__here:hover .world-map__fly,.world-map__here:focus-visible .world-map__fly,.world-map__here[aria-pressed=true] .world-map__fly{opacity:1;animation:.6s cubic-bezier(.2,0,0,1) infinite alternate here-fly-buzz;scale:1.08}@keyframes here-fly-buzz{to{translate:1px -1px;rotate:3deg}}.world-map__here:focus-visible{outline-offset:2px;outline:1px solid}@keyframes world-drift{to{translate:2% 1.5%;rotate:1.5deg}}@media (prefers-reduced-motion:reduce){.world-map,.world-map__land{transition:none;animation:none}.world-map__here:before,.world-map__fly{transition:none}.world-map__here:hover:before,.world-map__here:focus-visible:before,.world-map__here[aria-pressed=true]:before{scale:1}.world-map__here:hover .world-map__fly,.world-map__here:focus-visible .world-map__fly,.world-map__here[aria-pressed=true] .world-map__fly{animation:none;scale:1}}.glyph-ring{--glyph:clamp(3px, .6vmin, 6px);--wash-size:calc(var(--ring-radius) * 2.3);pointer-events:none;width:0;height:0;rotate:var(--turn);transition:rotate 1.4s var(--ease-orbit);position:absolute;top:50%;left:50%}.glyph{width:var(--glyph);height:var(--glyph);margin:calc(var(--glyph) / -2);pointer-events:none;transform:rotate(var(--a)) translateY(calc(var(--ring-radius) * -1)) rotate(calc(var(--a) * -1)) scale(var(--s,1));animation:fade-in 1.2s cubic-bezier(.2, 0, 0, 1) calc(var(--k) * 16ms) both;position:absolute}html[data-reveal=closed] .glyph,html[data-reveal=opening] .glyph{opacity:0;animation:none}html[data-reveal=leaving] .glyph{animation:.8s cubic-bezier(.2,0,0,1) .38s both fade-in}html[data-reveal=done] .glyph{opacity:1;animation:none}.glyph--oval .colony,.glyph--cross svg{rotate:calc(var(--turn) * -1);transition:rotate 1.4s var(--ease-orbit)}.glyph--cross svg{animation:cross-life 9s ease-in-out calc(var(--k) * -136ms) infinite}.glyph:not(.glyph--cross){--cell:calc(var(--ring-radius) * .046);width:var(--cell);height:var(--cell);margin:calc(var(--cell) / -2)}.colony{transform-origin:50%;position:absolute;inset:0}.cell{width:calc(100% * (var(--stretch) + var(--wide) * (1 - var(--stretch))));height:calc(100% * (1 - var(--wide) * (1 - var(--stretch))));background:var(--color-ink);animation:cell-life 14s ease-in-out calc(var(--k) * -640ms) infinite;border-radius:50%;transition:background-color .6s cubic-bezier(.2,0,0,1);position:absolute;top:50%;left:50%;translate:-50% -50%}.glyph--cross{--size:calc(var(--glyph) * 4);width:var(--size);height:var(--size);margin:calc(var(--size) / -2);color:var(--color-ink);transition:color .6s cubic-bezier(.2,0,0,1)}.coptic-cross{fill:none;stroke:currentColor;stroke-width:1px;width:100%;height:100%;display:block;overflow:visible}.coptic-cross polygon{vector-effect:non-scaling-stroke}.glyph-segment:hover .cell,.glyph-segment:focus-within .cell,.glyph-segment[data-active] .cell{background:var(--tone)}.glyph-segment:hover .glyph--cross,.glyph-segment:focus-within .glyph--cross,.glyph-segment[data-active] .glyph--cross{color:var(--tone)}.mosaic-frame[data-open] .glyph--cross svg{animation:none;scale:1}.glyph-hit{width:calc(var(--ring-radius) * 2.4);height:calc(var(--ring-radius) * 2.4);margin:calc(var(--ring-radius) * -1.2);transform:rotate(var(--a));color:inherit;pointer-events:auto;touch-action:none;-webkit-touch-callout:none;display:block;position:absolute}.glyph-segment:focus-within .glyph{outline-offset:2px;outline:1px solid}.glyph-hit:focus-visible{outline:none}.glyph-wash{z-index:1;width:var(--wash-size);height:var(--wash-size);margin:calc(var(--wash-size) / -2);pointer-events:none;opacity:0;visibility:hidden;transition:opacity .6s cubic-bezier(.2,0,0,1),visibility 0s linear .6s;position:absolute;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-source-type:alpha;mask-mode:alpha}.mosaic-frame[data-open] .glyph-wash{opacity:1;visibility:visible;transition:opacity .6s cubic-bezier(.2,0,0,1),visibility}.glyph-wash__still{background:color-mix(in oklch, var(--wash-tone) 25%, var(--color-page));rotate:calc(var(--turn) * -1);transition:rotate 1.4s var(--ease-orbit);position:absolute;inset:0}.glyph-wash__slot{mix-blend-mode:multiply;width:200px;height:200px;filter:blur(var(--wash-blur,0px)) saturate(2.2);transform:scale(var(--wash-scale,1));transform-origin:50%;margin:-100px 0 0 -100px;position:absolute;top:50%;left:50%}.glyph-wash__canvas{width:100%;height:100%;display:block}@property --turn{syntax:"<angle>";inherits:true;initial-value:0deg}@keyframes cell-life{0%,to{scale:1}50%{scale:1.08}}@keyframes cross-life{0%,to{scale:1}50%{scale:1.3}}@keyframes fade-in{0%{opacity:0}}.mosaic-frame[data-dial] .glyph-ring,.mosaic-frame[data-dial] .glyph--oval .colony,.mosaic-frame[data-dial] .glyph--cross svg,.mosaic-frame[data-dial] .glyph-wash__still{transition:none}.mosaic-frame[data-scroll] .glyph-ring,.mosaic-frame[data-scroll] .glyph--oval .colony,.mosaic-frame[data-scroll] .glyph--cross svg,.mosaic-frame[data-scroll] .glyph-wash__still{transition-duration:.48s}.mosaic-frame[data-scroll] .mosaic-plate{transition-duration:.42s}.mosaic-frame[data-scroll] .mosaic-bleed{transition:opacity .42s cubic-bezier(.2,0,0,1),visibility 0s linear .42s}.mosaic-frame[data-scroll] .mosaic[data-open] .mosaic-bleed{transition:opacity .42s cubic-bezier(.2,0,0,1),visibility}@media (prefers-reduced-motion:reduce){.glyph-ring,.glyph,.cell,.glyph--oval .colony,.glyph--cross svg,.glyph-wash,.glyph-wash__still,.mosaic-frame[data-scroll] .glyph-ring,.mosaic-frame[data-scroll] .glyph--oval .colony,.mosaic-frame[data-scroll] .glyph--cross svg,.mosaic-frame[data-scroll] .glyph-wash__still{transition:none;animation:none}.cell,.glyph--cross svg{scale:none}}.ring-caption{top:var(--gutter);right:var(--gutter);z-index:2;text-align:right;pointer-events:none;margin:0;transition:opacity .4s cubic-bezier(.2,0,0,1);position:fixed}.ring-caption span{font-variant-numeric:tabular-nums;display:block}.mosaic-index{top:var(--gutter);right:var(--gutter);z-index:2;position:fixed}.mosaic-index ol{margin:0;padding:0;list-style:none}.mosaic-index a{color:inherit;text-decoration:none}.mosaic-index a:hover,.mosaic-index a[data-active]{text-underline-offset:2px;text-decoration:underline;text-decoration-thickness:1px}.mosaic-index a:focus-visible{outline-offset:4px;outline:1px solid}.mosaic-index__number{font-variant-numeric:tabular-nums;margin-right:.6em}@media (max-width:720px){:root{--ring-radius:min(40vmin, 22rem)}}.project{gap:var(--gutter);padding:var(--gutter);grid-template-rows:auto minmax(0,1fr) auto;display:grid;position:fixed;inset:0;overflow:hidden}.project p,.project h1{font:inherit;margin:0}.project a{color:inherit;text-decoration:none}.project a:hover,.project-bottom a,.project-foot a,.trail a,.trail [aria-current]{text-underline-offset:2px;text-decoration:underline;text-decoration-thickness:1px}.project a:focus-visible{outline-offset:4px;outline:1px solid}.project-slides:focus-visible{outline:none}.project-slides:focus-visible img.is-active{outline-offset:-6px;outline:1px solid}.project-top{justify-content:space-between;align-items:start;gap:calc(var(--gutter) * 3);display:flex}.project-text{max-width:52rem}.project-close{flex-shrink:0}.project-head{align-items:start;gap:calc(var(--gutter) * 2);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.trail{text-overflow:ellipsis;white-space:nowrap;margin:-6px;padding:6px;overflow:hidden}.project-missing{place-self:center}.project-stage{grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr);place-items:center;min-height:0;display:grid;position:relative;overflow:hidden}.project-stage[data-side=prev]{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='14' viewBox='0 0 28 14'%3E%3Cpath fill='%23181818' d='M6.73 1.02L7.77 1.02Q6.96 2.64 6.56 3.29Q6.15 3.94 5.1 5.25L26.91 5.25L26.91 6.63L5.1 6.63Q6.52 8.11 7.81 10.85L6.74 10.85Q4.98 8.88 3.71 7.87Q2.43 6.85 1.08 6.19L1.08 5.58Q2.27 5.07 3.6 4.03Q4.92 2.99 6.73 1.02Z'/%3E%3C/svg%3E") 1 6,w-resize}.project-stage[data-side=next]{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='14' viewBox='0 0 28 14'%3E%3Cpath fill='%23181818' d='M21.26 1.02Q23.08 3.01 24.4 4.04Q25.73 5.07 26.91 5.58L26.91 6.19Q25.55 6.85 24.28 7.87Q23.01 8.88 21.25 10.85L20.19 10.85Q21.48 8.11 22.89 6.63L1.08 6.63L1.08 5.25L22.89 5.25Q21.85 3.92 21.44 3.28Q21.03 2.64 20.22 1.02Z'/%3E%3C/svg%3E") 27 6,e-resize}.project-slides{pointer-events:none;background:0 0;border:0;padding:0;position:absolute;inset:0}.project-slides img{object-fit:contain;object-position:center;opacity:0;border-radius:5px;width:auto;max-width:100%;height:auto;max-height:100%;margin:auto;transition:opacity .24s linear .56s;position:absolute;inset:0}@property --dot{syntax:"<percentage>";inherits:false;initial-value:101%}@property --fill{syntax:"<percentage>";inherits:false;initial-value:160%}.project-slides img.is-active{--grain:clamp(14px, 1.6vw, 24px);z-index:1;opacity:1;-webkit-mask:radial-gradient(circle, #000 var(--dot), transparent calc(var(--dot) + 2%)) center / var(--grain) var(--grain), radial-gradient(circle, #000 var(--fill), transparent calc(var(--fill) + 12%)) center / 100% 100% no-repeat;mask:radial-gradient(circle, #000 var(--dot), transparent calc(var(--dot) + 2%)) center / var(--grain) var(--grain), radial-gradient(circle, #000 var(--fill), transparent calc(var(--fill) + 12%)) center / 100% 100% no-repeat;animation:dot-reveal .8s var(--ease-orbit) both;transition:none}@keyframes dot-reveal{0%{--dot:0%;--fill:0%}40%{--dot:62%;--fill:0%}to{--dot:101%;--fill:160%}}@media (prefers-reduced-motion:reduce){.project-slides img{transition:none}.project-slides img.is-active{animation:none}}.project-bottom{justify-content:space-between;align-items:end;gap:var(--gutter);flex-wrap:wrap;display:flex}.project-foot{justify-content:space-between;align-items:end;column-gap:calc(var(--gutter) * 2);grid-template-columns:minmax(0,36rem) max-content;display:grid}.project-about{text-wrap:pretty;align-items:end;display:grid}.project-about__text{gap:.5rem;display:grid}.project-next{justify-items:end;display:inline-grid}.project-about>*,.project-next>*{grid-area:1/1}.project-about__sizer,.project-next__sizer{visibility:hidden}.project-actions{white-space:nowrap;justify-items:end;gap:.5rem;display:grid}.project-actions__row{gap:calc(var(--gutter) * 1.5);display:flex}@media (max-width:52rem){.project-foot{row-gap:var(--gutter);grid-template-columns:minmax(0,1fr)}.project-about__sizer{display:none}.project-actions{justify-items:start}}.project-toggle{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;padding:0}.project-toggle:hover,.project-toggle[aria-pressed=true]{text-underline-offset:2px;text-decoration:underline;text-decoration-thickness:1px}.project-toggle:focus-visible{outline-offset:4px;outline:1px solid}.project-thumbs{scrollbar-width:none;justify-content:flex-end;gap:.35rem;max-width:min(22.5rem,100%);min-height:2rem;margin:-4px;padding:4px;display:flex;overflow-x:auto}.project-thumb{cursor:pointer;background:0 0;border:0;border-radius:0;flex:none;padding:0}.project-thumb:hover,.project-thumb:focus-visible,.project-thumb[aria-current]{outline-offset:2px;outline:1px solid}.project-thumb img{width:auto;max-width:2.75rem;height:auto;max-height:2rem;display:block}@media (max-width:52rem){.project-thumbs{justify-content:flex-start}.project-head{gap:.75rem var(--gutter);grid-template-columns:minmax(0,1fr) auto}.trail{grid-area:2/1/auto/-1}}.project-stage .branches{place-self:start center;width:min(70vw,100%);max-height:100%;margin:0;overflow:auto}.branches{--tick:1.25rem;--row:1.5em;line-height:var(--row);margin-top:6rem}.branches ul{margin:0;padding:0;list-style:none}.branches ul ul{margin-left:.3em}.branches ul ul li{padding-left:calc(var(--tick) + .4rem);position:relative}.branches ul ul li:before,.branches ul ul li:after{content:"";transition:transform .5s cubic-bezier(.2,0,0,1);transition-delay:calc(var(--i,0) * 45ms);position:absolute;left:0}.branches ul ul li:before{transform-origin:top;border-left:1px solid;top:0;bottom:0}.branches ul ul li:last-child:before{height:calc(var(--row) / 2);bottom:auto}.branches ul ul li:after{top:calc(var(--row) / 2);width:var(--tick);transform-origin:0;border-top:1px solid}.branch-row{transition:opacity .5s cubic-bezier(.2,0,0,1),color .2s;transition-delay:calc(var(--i) * 45ms), 0s;display:inline-block}.branch-discipline:before{content:"";vertical-align:.1em;background:currentColor;width:.4em;height:.4em;margin-right:.45em;display:inline-block}.branches[data-grown=false] .branch-row{opacity:0}.branches[data-grown=false] li:before{transform:scaleY(0)}.branches[data-grown=false] li:after{transform:scaleX(0)}.branches:has(a:hover,a:focus-visible) .branch-row{color:#18181859;color:lab(8.36% -.00000745058 0/.35)}.branches li:has(a:hover,a:focus-visible)>.branch-row{color:var(--color-ink)}@media (prefers-reduced-motion:reduce){.branches *,.branches :before,.branches :after{transition:none!important}}.project.information .project-top{justify-content:center}.project.information .project-text{text-align:center;max-width:none}.information-link{left:50%;bottom:var(--gutter);z-index:1;color:inherit;text-decoration:none;position:fixed;translate:-50%}.information-link:hover,.information-link:focus-visible{text-underline-offset:2px;text-decoration:underline;text-decoration-thickness:1px}.information-link:focus-visible{outline-offset:4px;outline:1px solid}.information-slides{text-align:center;max-width:36rem}.information-slides[data-moved] .information-slide{animation:.4s cubic-bezier(.2,0,0,1) information-in}@keyframes information-in{0%{opacity:0}}.information-line{margin:0}.information-facts{justify-items:center;gap:.35rem;font-style:normal;display:grid}.information-slide a{cursor:pointer}.information-slide nav a{white-space:nowrap}@media (prefers-reduced-motion:reduce){.information-slides[data-moved] .information-slide{animation:none}}.sound-toggle{right:var(--gutter);bottom:var(--gutter);z-index:1;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;position:fixed}.sound-toggle:hover{text-underline-offset:2px;text-decoration:underline;text-decoration-thickness:1px}.sound-toggle:focus-visible{outline-offset:3px;outline:1px solid}.tone-dot{color:var(--tone)}.cross-glyph{background:var(--tone);border-radius:3px;height:100%;display:block;position:relative}.cross-glyph span{aspect-ratio:1;background:var(--color-page);height:13%;position:absolute;top:50%;left:50%;translate:-50% -50%}.cross-glyph span:first-child{height:18%}.cross-glyph span:nth-child(2){translate:-194% -50%}.cross-glyph span:nth-child(3){translate:94% -50%}.cross-glyph span:nth-child(4){translate:-50% -194%}.cross-glyph span:nth-child(5){translate:-50% 94%}.project .person-link{text-decoration:underline;-webkit-text-decoration-color:var(--tone);text-decoration-color:var(--tone);text-underline-offset:3px;text-decoration-thickness:2px}.project .person-link:hover{text-decoration-color:currentColor}.person-mark{background:var(--tone);width:.6em;height:.6em;display:inline-block}.placeholder{color:#696969;color:lab(44.32% 0 0);font-style:italic}.person-stage{gap:var(--gutter);grid-template-rows:minmax(0,1fr) auto}.person-portrait{aspect-ratio:4/3;height:min(44svh,100%)}.person-work{text-align:center;max-width:44rem}.person-work a{white-space:nowrap}.reveal{z-index:10;cursor:pointer;position:fixed;inset:0}.reveal[data-phase=leaving]{pointer-events:none}.reveal-veil{background:var(--color-page);transition:opacity .72s cubic-bezier(.2,0,0,1) .46s;position:absolute;inset:0}.reveal[data-phase=leaving] .reveal-veil{opacity:0}@property --spin{syntax:"<angle>";inherits:true;initial-value:0deg}@property --open{syntax:"<number>";inherits:true;initial-value:0}@property --fold{syntax:"<number>";inherits:false;initial-value:0}.reveal-ring{--spin:-180deg;z-index:1;transform:rotate(var(--spin));transition:--spin 1.4s cubic-bezier(.2,0,0,1);position:absolute;top:50%;left:50%}.reveal[data-phase=opening] .reveal-ring,.reveal[data-phase=leaving] .reveal-ring{--spin:0deg}.reveal-tile{--open:0;--fold:0;width:calc(var(--ring-radius) * .32);aspect-ratio:1;margin:calc(var(--ring-radius) * -.16);background:var(--tone);opacity:clamp(0, 2.15 - var(--fold) * 2.15, 1);transform:rotate(var(--a)) translateY(calc(var(--ring-radius) * (-.3 - var(--open) * .6 - var(--fold) * .1))) rotate(calc(var(--a) * -1)) scale(calc(.34 + var(--open) * .66 - var(--fold) * .84));transition:--open 1.2s cubic-bezier(.2,0,0,1),--fold .9s cubic-bezier(.2,0,0,1);transition-delay:calc(var(--k) * 36ms), 0s;border-radius:50%;outline:1px solid #0000001a;outline:1px solid lab(0% 0 0/.1);position:absolute;overflow:hidden}.reveal[data-phase=opening] .reveal-tile,.reveal[data-phase=leaving] .reveal-tile{--open:1}.reveal[data-phase=leaving] .reveal-tile{--fold:1}.reveal-tile img{object-fit:cover;width:100%;height:100%;opacity:clamp(0, var(--open) * 2.4 - 1.4, 1);transform:rotate(calc(var(--spin) * -1)) scale(calc(1.14 - var(--open) * .14));display:block}.reveal-skip{z-index:2;right:var(--gutter);bottom:var(--gutter);color:inherit;font:inherit;cursor:pointer;opacity:0;background:0 0;border:0;padding:0;transition:opacity .4s cubic-bezier(.2,0,0,1);position:fixed}.reveal[data-phase=opening] .reveal-skip{opacity:1;transition-delay:.5s}.reveal[data-phase=leaving] .reveal-skip{opacity:0;transition-delay:0s}.reveal-skip:hover{text-underline-offset:2px;text-decoration:underline;text-decoration-thickness:1px}.reveal-skip:focus-visible{outline-offset:3px;outline:1px solid}@media (prefers-reduced-motion:reduce){.reveal-veil,.reveal-ring,.reveal-tile,.reveal-skip{transition:none}}.mosaic-stage{place-content:center;justify-items:center;gap:calc(var(--gutter) * 1.5);display:grid;position:absolute;inset:0}.mosaic,.mosaic-pager,.mosaic-index{pointer-events:auto}.mosaic{--cell:calc(var(--ring-radius) * 1.55 / var(--cols));width:calc(var(--cols) * var(--cell));height:calc(var(--rows) * var(--cell));color:inherit;touch-action:none;-webkit-touch-callout:none;display:block;position:relative}.mosaic:focus-visible{outline-offset:8px;outline:1px solid}.mosaic-frame{width:calc(var(--ring-radius) * 2 + 2rem);aspect-ratio:1;-webkit-user-select:none;user-select:none;place-items:center;display:grid;position:relative}.mosaic[data-shape=ring]{--cell:calc(var(--ring-radius) / 8.4);border-radius:50%}.mosaic-index li{opacity:0;transition:opacity .4s cubic-bezier(.2, 0, 0, 1) calc(var(--k) * 25ms), translate .4s cubic-bezier(.2, 0, 0, 1) calc(var(--k) * 25ms);translate:0 -.4em}.mosaic-index[data-open] li{opacity:1;translate:0}.mosaic-index li:has(a:focus-visible){opacity:1;translate:0}.mosaic-index:not([data-open]){pointer-events:none}.ring-caption[data-hidden]{opacity:0}.mosaic-caption{pointer-events:auto;cursor:default}.mosaic-caption[data-hidden]{pointer-events:none}.mosaic-field{top:calc(var(--cell) * -.5);left:calc(var(--cell) * -.5);width:calc((var(--cols) + 1) * var(--cell));height:calc((var(--rows) + 1) * var(--cell));pointer-events:none;position:absolute}.mosaic-ground,.mosaic-plate{clip-path:circle(0);position:absolute;inset:0}.mosaic-ground{background:var(--tone);transition:background-color .6s cubic-bezier(.2,0,0,1)}.mosaic[data-open] .mosaic-ground{background-color:#0000}.mosaic-plate{isolation:isolate;background:var(--tone);transition:background-color .9s cubic-bezier(.2,0,0,1)}.mosaic[data-open] .mosaic-plate{background-color:color-mix(in oklch, var(--tone) 25%, var(--color-page))}.mosaic-bleed{opacity:0;visibility:hidden;pointer-events:none;transition:opacity .9s cubic-bezier(.2,0,0,1),visibility 0s linear .9s;position:absolute;inset:0}.mosaic[data-open] .mosaic-bleed{opacity:1;visibility:visible;transition:opacity .9s cubic-bezier(.2,0,0,1),visibility}.mosaic-bleed__lift{width:var(--bleed-w,200px);height:var(--bleed-h,200px);opacity:.92;filter:blur(var(--bleed-blur,0px));transform:scale(var(--bleed-sx,1), var(--bleed-sy,1));transform-origin:0 0;position:absolute;top:0;left:0}.mosaic-bleed__canvas{width:100%;height:100%;display:block}.mosaic-image{--ratio:1;width:calc(100% * var(--zoom,1) * max(1, var(--ratio)));height:calc(100% * var(--zoom,1) * max(1, 1 / var(--ratio)));object-fit:fill;translate:calc(var(--focus-x,50%) * -1) calc(var(--focus-y,50%) * -1);mix-blend-mode:multiply;-webkit-user-select:none;user-select:none;position:absolute;top:50%;left:50%}.mosaic-pager{touch-action:none;gap:.35em;margin-block:-.9rem;padding-block:.9rem;display:flex}.mosaic-pager button{color:var(--color-ink);font:inherit;cursor:pointer;touch-action:none;background:0 0;border:0;padding:0;transition:color .4s cubic-bezier(.2,0,0,1);position:relative}.mosaic-pager button:after{content:"";position:absolute;inset:-.9rem -.18em}.mosaic-pager button:hover,.mosaic-pager button:focus-visible,.mosaic-pager button[aria-current]{color:var(--tone)}.mosaic-pager button:focus-visible{outline-offset:3px;outline:1px solid}@media (prefers-reduced-motion:reduce){.mosaic-ground,.mosaic-plate,.mosaic-bleed,.mosaic-frame,.mosaic-index li{transition:none}}::view-transition-group(*){animation-duration:.8s;animation-timing-function:var(--ease-orbit)}::view-transition-old(*){object-fit:cover;height:100%}::view-transition-new(*){object-fit:cover;height:100%}:root[data-transition]:not([data-morph]) *{view-transition-name:none!important}::view-transition-old(root){animation:none}::view-transition-new(root){animation:none}:root[data-transition=open]::view-transition-new(root){animation:iris .8s var(--ease-orbit) both}:root[data-transition=close]::view-transition-old(root){z-index:1;animation:iris .8s var(--ease-orbit) reverse both}@keyframes iris{0%{clip-path:circle(0 at var(--iris-x) var(--iris-y))}to{clip-path:circle(var(--iris-r) at var(--iris-x) var(--iris-y))}}.tool{gap:var(--gutter);min-height:100dvh;padding:var(--gutter);grid-template-rows:auto minmax(0,1fr) auto;display:grid}.tool-top{justify-content:space-between;align-items:start;gap:var(--gutter);display:flex}.tool-top a{color:inherit;text-decoration:none}.tool-top a:hover,.tool-top a:focus-visible{text-underline-offset:2px;text-decoration:underline;text-decoration-thickness:1px}.tool-top a:focus-visible{outline-offset:4px;outline:1px solid}.tool-stage{place-items:center;min-height:0;display:grid}.tool-film{--ring:8rem;isolation:isolate;width:min(100%, 34rem, calc((100dvh - 18rem) * var(--fit,1)));aspect-ratio:var(--aspect,1);background:var(--color-page);outline-offset:-1px;outline:1px solid #0000001a;outline:1px solid lab(0% 0 0/.1);position:relative;overflow:hidden}.tool-base,.tool-plate,.tool-plate img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.tool-base{opacity:0;transition:opacity .8s cubic-bezier(.2,0,0,1)}.tool-base[data-on]{opacity:1}.tool-plate{z-index:1}.tool-film[data-style=through] .tool-base,.tool-film[data-style=on] .tool-plate{opacity:0}.tool-glyph{z-index:2;left:var(--gx,50%);top:var(--gy,40%);pointer-events:none;width:0;height:0;rotate:var(--turn,0deg);position:absolute}.tool-dot-wrap,.tool-cross{width:calc(var(--ring) * .064);height:calc(var(--ring) * .064);margin:calc(var(--ring) * -.032);transform:rotate(var(--a)) translateY(calc(var(--ring) * -1)) rotate(calc(var(--a) * -1)) scale(var(--s,1));position:absolute;top:0;left:0}.tool-cell{width:calc(100% * (var(--stretch) + var(--wide) * (1 - var(--stretch))));height:calc(100% * (1 - var(--wide) * (1 - var(--stretch))));background:var(--color-ink);translate:-50% -50%;rotate:calc(var(--turn,0deg) * -1);animation:cell-life 14s ease-in-out calc(var(--k) * -640ms) infinite;border-radius:50%;position:absolute;top:50%;left:50%}.tool-cross{width:calc(var(--ring) * .28);height:calc(var(--ring) * .28);margin:calc(var(--ring) * -.14);color:var(--color-ink)}.tool-cross svg,.tool-stamp-cross svg{fill:none;stroke:currentColor;stroke-width:2px;width:100%;height:100%;filter:drop-shadow(0 0 .6px var(--color-page)) drop-shadow(0 0 .6px var(--color-page));animation:cross-life 9s ease-in-out calc(var(--k) * -136ms) infinite;display:block;overflow:visible}.tool-cross svg{rotate:calc(var(--turn,0deg) * -1)}.tool-cross svg polygon,.tool-stamp-cross svg polygon{vector-effect:non-scaling-stroke}.tool-film[data-style=through] .tool-cell{background:var(--tone)}.tool-film[data-style=through] .tool-cross{color:var(--tone)}.tool-film[data-style=stamp] .tool-glyph{opacity:0}.tool-stamp-cross{z-index:3;left:var(--sx,50%);top:var(--sy,50%);width:calc(var(--ring) * .28);height:calc(var(--ring) * .28);margin:calc(var(--ring) * -.14);color:var(--color-ink);pointer-events:none;display:none;position:absolute}.tool-film[data-style=stamp] .tool-stamp-cross{display:block}.tool-words{z-index:4;color:var(--color-ink);text-align:center;pointer-events:none;opacity:var(--words,1);margin:0;transition:opacity .5s cubic-bezier(.2,0,0,1);position:absolute;bottom:6%;left:8%;right:8%}.tool-words>span{display:block}.tool-film[data-style=through] .tool-bullet{color:var(--tone)}.tool-film[data-style=on] .tool-words,.tool-film[data-style=stamp] .tool-words{color:var(--color-page);mix-blend-mode:difference;text-align:right;inset:6% 6% auto 18%}.tool-film[data-playing=false] .tool-cell,.tool-film[data-playing=false] .tool-cross svg,.tool-film[data-playing=false] .tool-stamp-cross svg{animation-play-state:paused}.tool-form{gap:.85rem;width:min(100%,36rem);margin-inline:auto;display:grid}.tool-form p,.tool-form label{margin:0}.tool-sentence{line-height:1.9}.tool button{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;transition:scale .15s cubic-bezier(.2,0,0,1);position:relative}.tool button:after{content:"";position:absolute;inset:-.25rem -.08rem}.tool button:hover,.tool button:focus-visible,.tool button[aria-pressed=true]{text-underline-offset:2px;text-decoration:underline;text-decoration-thickness:1px}.tool button[aria-pressed=true]{color:var(--tone,var(--color-ink))}.tool button:focus-visible,.tool input:focus-visible,.tool-top a:focus-visible{outline-offset:3px;outline:1px solid}.tool button:active{scale:.96}.tool button:disabled{cursor:progress;opacity:.55}.tool button:disabled:active{scale:none}.tool label{display:block}.tool input{width:100%;color:inherit;font:inherit;background:0 0;border:0;border-bottom:1px solid;border-radius:0;margin-top:.15rem;padding:.2rem 0 .25rem;display:block}@media (max-width:720px){.tool{grid-template-rows:auto auto auto}}@media (prefers-reduced-motion:reduce){.tool button,.tool-base,.tool-words{transition:none}.tool button:active{scale:none}.tool-cell,.tool-cross svg,.tool-stamp-cross svg{animation:none}}
