@font-face{font-family:Albert Sans;src:url(/fonts/albert-sans-400.woff)format("woff");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Albert Sans;src:url(/fonts/albert-sans-400i.woff)format("woff");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Albert Sans;src:url(/fonts/albert-sans-600.woff)format("woff");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Albert Sans;src:url(/fonts/albert-sans-700.woff)format("woff");font-weight:700;font-style:normal;font-display:swap}:root{--bg:#f7f6f2;--surface:#fff;--ink:#14201c;--muted:#5a6762;--line:#e2e1da;--accent:#0b6b52;--accent-ink:#fff;--accent-soft:#e3efe8;--glow:#0b6b521f;--el-c:#1d3a31;--el-n:#4c7a94;--el-o:#cc4b2d;--el-s:#d9a93b;--el-h:#e4ebe5;--el-i:#7a5fa6;--el-na:#8892b0;--mol-ink:#0f1d18;--mol-bond:#8ca394;--feature-bg:#e8efe9;--radius:14px;--wrap:70rem;--font:"Albert Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#0e1412;--surface:#151d1a;--ink:#e6ece9;--muted:#9aa8a2;--line:#26302c;--accent:#5fd0a5;--accent-ink:#08110e;--accent-soft:#17302a;--glow:#5fd0a51a;--el-c:#5e9c86;--el-n:#7fb0cc;--el-o:#e8735a;--el-s:#f0c55a;--el-h:#dfe7e2;--el-i:#a58bd0;--el-na:#a9b2d0;--mol-ink:#050a08;--mol-bond:#6b8a7b;--feature-bg:#121b18}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--bg);color:var(--ink);font:400 1.125rem/1.65 var(--font);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0}img{max-width:100%;height:auto;display:block}a{color:var(--accent);text-underline-offset:.18em;text-decoration-thickness:1px}a:hover{text-decoration-thickness:2px}:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:4px}h1,h2,h3{letter-spacing:-.02em;margin:0 0 .6em;font-weight:700;line-height:1.15}h1{letter-spacing:-.035em;font-size:clamp(2.1rem,1.3rem + 3.6vw,3.9rem)}h2{font-size:clamp(1.35rem,1.1rem + 1vw,1.75rem)}h3{font-size:1.2rem}p{margin:0 0 1em}.wrap{width:min(100% - 2.5rem, var(--wrap));margin-inline:auto}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}.skip{background:var(--accent);color:var(--accent-ink);z-index:10;border-radius:8px;padding:.5rem 1rem;position:absolute;top:-3rem;left:1rem}.skip:focus{top:1rem}.site-header{z-index:5;background:color-mix(in srgb, var(--bg) 85%, transparent);-webkit-backdrop-filter:saturate(1.4)blur(12px);border-bottom:1px solid var(--line);position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:1rem;min-height:4.5rem;display:flex}.brand{color:var(--ink);letter-spacing:-.01em;align-items:center;gap:.65rem;font-size:1.15rem;font-weight:600;text-decoration:none;display:inline-flex}.brand-mark{width:2.25rem;height:2.25rem}.brand-mark rect{fill:var(--accent)}.brand-mark path{stroke:var(--accent-ink)}.nav{align-items:center;gap:2rem;display:flex}.nav ul{gap:1.4rem;margin:0;padding:0;list-style:none;display:flex}.nav a{color:var(--muted);font-size:1.1rem;font-weight:500;text-decoration:none}.nav a:hover,.nav a[aria-current]{color:var(--ink)}.nav a[aria-current=page]{box-shadow:inset 0 -2px 0 var(--accent)}.lang-switch{border:1px solid var(--line);border-radius:999px;gap:.25rem!important;padding:.15rem!important}.lang-switch a{letter-spacing:.04em;border-radius:999px;padding:.25rem .75rem;display:block;font-size:.95rem!important}.lang-switch a[aria-current]{background:var(--ink);color:var(--bg);box-shadow:none}.nav-toggle{display:none}@media (width<=51.99rem){.nav-desktop{display:none}.nav-toggle{display:block}.nav-toggle>summary{cursor:pointer;border-radius:10px;place-content:center;gap:5px;width:2.6rem;height:2.6rem;list-style:none;display:grid}.nav-toggle>summary::-webkit-details-marker{display:none}.nav-toggle>summary span{background:var(--ink);border-radius:2px;width:22px;height:2px;transition:transform .2s,opacity .2s;display:block}.nav-toggle[open]>summary span:first-child{transform:translateY(7px)rotate(45deg)}.nav-toggle[open]>summary span:nth-child(2){opacity:0}.nav-toggle[open]>summary span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.nav{background:var(--bg);border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:1.25rem;padding:1.25rem 1.25rem 1.75rem;position:absolute;top:100%;left:0;right:0}.nav-mobile .nav-links{flex-direction:column;gap:.9rem;font-size:1.15rem}}.hero{padding:clamp(3.5rem,8vw,7rem) 0 clamp(2.5rem,5vw,4rem);position:relative}.hero:before{content:"";aspect-ratio:1;background:radial-gradient(closest-side, var(--glow), transparent 70%);z-index:-1;pointer-events:none;width:min(44rem,80vw);position:absolute;inset:-2rem -20vw auto auto}.hero{align-items:center;gap:clamp(2rem,4vw,4rem);display:grid}@media (width>=60rem){.hero{grid-template-columns:1.1fr .9fr}}.hero h1{max-width:18ch;font-size:clamp(2.1rem,1.3rem + 2.8vw,3.5rem)}.eyebrow{text-transform:uppercase;letter-spacing:.1em;color:var(--accent);margin-bottom:1.25rem;font-size:.9rem;font-weight:600}.lead{color:var(--muted);max-width:60ch;font-size:clamp(1.1rem,1rem + .4vw,1.3rem)}.hero-name{color:var(--ink);margin-top:2rem;font-weight:600}.hero-name:before{content:"";background:var(--accent);vertical-align:middle;width:2rem;height:2px;margin-right:.75rem;display:inline-block}.section{border-top:1px solid var(--line);padding:clamp(2.5rem,5vw,4.5rem) 0}.section-title{text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin-bottom:1.5rem;font-size:.95rem;font-weight:600}.cards{grid-template-columns:repeat(auto-fit,minmax(18rem,1fr));gap:1.25rem;display:grid}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1.75rem;transition:transform .2s,box-shadow .2s,border-color .2s;position:relative}.cards .card:hover{border-color:color-mix(in srgb, var(--accent) 35%, var(--line));transform:translateY(-3px);box-shadow:0 12px 32px -18px #00000059}.card h3{font-size:1.25rem}.card p{color:var(--muted)}.card-index{font:600 .9rem/1 var(--mono);color:var(--accent);margin-bottom:1rem;display:inline-block}.tags{flex-wrap:wrap;gap:.4rem;margin:1.25rem 0 0;padding:0;list-style:none;display:flex}.tags li,.badge{background:var(--accent-soft);color:var(--accent);border-radius:999px;padding:.25rem .75rem;font-size:.88rem;font-weight:500}.badge{margin-bottom:.75rem;display:inline-block}.split{grid-template-columns:1fr;gap:3rem;display:grid}@media (width>=52rem){.split{grid-template-columns:1fr 1.2fr}}.button{background:var(--ink);color:var(--bg);border-radius:999px;padding:.65rem 1.15rem;font-size:1.02rem;font-weight:600;text-decoration:none;display:inline-block}.button:hover{background:var(--accent);color:var(--accent-ink)}.button.ghost{color:var(--ink);border:1px solid var(--line);background:0 0}.button.ghost:hover{border-color:var(--accent);color:var(--accent)}.contact p{max-width:50ch;font-size:1.25rem}.profiles{flex-wrap:wrap;gap:.5rem;margin:1.5rem 0 0;padding:0;list-style:none;display:flex}.profiles a{border:1px solid var(--line);color:var(--ink);border-radius:999px;padding:.4rem .9rem;font-size:1rem;text-decoration:none;display:inline-block}.profiles a:hover{border-color:var(--accent);color:var(--accent)}.page-head{padding:clamp(3rem,6vw,5rem) 0 2rem}.page-head h1{font-size:clamp(2rem,1.4rem + 2.6vw,3.2rem)}.prose-list{gap:0;padding-bottom:4rem;display:grid}.topic{border-top:1px solid var(--line);align-items:center;gap:2rem;padding:clamp(2.5rem,5vw,4rem) 0;display:grid}@media (width>=52rem){.topic{grid-template-columns:1fr 1.1fr;gap:4rem}.topic:nth-child(2n) .topic-figure{order:-1}}.topic h2{margin-top:.25rem}.topic p{color:var(--muted);max-width:62ch}.topic-figure{background:radial-gradient(70% 70% at 50% 45%, var(--glow), transparent 75%), var(--surface);border:1px solid var(--line);border-radius:24px;margin:0;padding:clamp(1rem,3vw,2rem)}.rv{width:100%;height:auto;display:block;overflow:visible}.rv .axis{stroke:var(--muted);stroke-width:1.5px}.rv .lbl{font:600 20px var(--mono);fill:var(--ink)}.rv .lbl-s1{fill:var(--accent)}.rv .lbl-t1,.rv .lbl-hop{fill:var(--el-o)}.rv .s0{stroke:var(--ink);stroke-width:3.5px;fill:none}.rv .s1{stroke:var(--accent);stroke-width:3.5px;fill:none}.rv .t1{stroke:var(--el-o);stroke-width:3.5px;fill:none}.rv .packet{fill:var(--accent);fill-opacity:.22;stroke:var(--accent);stroke-width:1.5px}.rv .traj{fill:var(--accent);stroke:var(--mol-ink);stroke-width:1.5px}.rv .traj-t{fill:var(--el-o)}.rv .excite{stroke:var(--el-n);stroke-width:3px}.rv .excite-head{fill:var(--el-n)}.rv .hop{stroke:var(--el-o);stroke-width:2.5px;stroke-dasharray:5 5}.rv .hop-head{fill:var(--el-o)}.rv .flow,.rv .vib{stroke:var(--muted);stroke-width:2.5px}.rv .flow-head,.rv .vib-head{fill:var(--muted)}.rv .plot-bg{fill:var(--bg);stroke:var(--line);stroke-width:1.5px}.rv .diag{stroke:var(--muted);stroke-width:1.5px;stroke-dasharray:4 6}.rv .dot{fill:var(--accent);stroke:var(--mol-ink);stroke-width:1.2px}.rv .sheet-bg{fill:var(--accent-soft);stroke:var(--accent);stroke-width:1.5px}.rv .sheet-glass{fill:var(--surface);fill-opacity:.6;stroke:var(--accent);stroke-width:1.5px;stroke-dasharray:7 6}.rv .contour{fill:none;stroke:var(--accent);stroke-width:1.5px;opacity:.55}.rv .connector{stroke:var(--accent);stroke-width:1px;stroke-dasharray:3 5;opacity:.6}.rv .bar-ink{fill:var(--ink)}.rv .bar{fill:var(--muted);opacity:.45}.rv .bar-accent{fill:var(--accent)}.rv .env{fill:none;stroke:var(--muted);stroke-width:1.5px;stroke-dasharray:4 6}.rv .pulse{fill:none;stroke:url(#chirp);stroke-width:3px}.rv .st-red{stop-color:var(--el-o)}.rv .ml-sky{fill:var(--el-c);stroke:var(--mol-ink);stroke-width:2.5px}.rv .ml-star{fill:var(--el-h);opacity:.8}.rv .ml-hill{fill:var(--accent);opacity:.55}.rv .ml-ground{fill:var(--mol-bond);stroke:var(--mol-ink);stroke-width:2.5px}.rv .ml-stem{fill:none;stroke:var(--accent);stroke-width:3px;stroke-linecap:round}.rv .ml-petal{fill:var(--el-h);stroke:var(--mol-ink);stroke-width:1.6px}.rv .ml-petal-pink{fill:var(--el-o);stroke:var(--mol-ink);stroke-width:1.6px}.rv .ml-centre{fill:var(--el-s);stroke:var(--mol-ink);stroke-width:1.6px}.rv .ml-bell{fill:var(--el-i);stroke:var(--mol-ink);stroke-width:1.4px}.rv .ml-bottle{fill:var(--el-i);stroke:var(--mol-ink);stroke-width:2.5px}.rv .ml-shine{fill:#fff;opacity:.3}.rv .ml-mono{fill:none;stroke:#fff;stroke-width:5px;stroke-linecap:round;stroke-linejoin:round;opacity:.9}.rv .ml-cap{fill:var(--el-s);stroke:var(--mol-ink);stroke-width:2.5px}.rv .ml-wing{fill:var(--el-n);stroke:var(--mol-ink);stroke-width:2px}.rv .ml-wing-low{fill:color-mix(in srgb, var(--el-n) 70%, #fff)}.rv .ml-body{stroke:var(--mol-ink);stroke-width:4px;stroke-linecap:round}.rv .ml-text{font:800 68px var(--font);letter-spacing:.02em;fill:var(--el-s);stroke:var(--mol-ink);stroke-width:2.5px;paint-order:stroke}.rv .ml-box{fill:none;stroke:var(--accent);stroke-width:2px;stroke-dasharray:7 5}.rv .ml-handle{fill:var(--surface);stroke:var(--accent);stroke-width:2.2px}.rv .st-blue{stop-color:var(--el-n)}.prose{max-width:46rem;padding:clamp(3rem,6vw,5rem) 0 4rem}.prose h1{font-size:clamp(1.9rem,1.4rem + 2vw,2.7rem)}.prose pre{background:var(--surface);border:1px solid var(--line);font:.85rem/1.55 var(--mono);border-radius:10px;padding:1rem 1.25rem;overflow-x:auto}.prose code{font-family:var(--mono);background:var(--accent-soft);border-radius:4px;padding:.1em .35em;font-size:.9em}.prose pre code{background:0 0;padding:0}.back{font-size:.95rem}.note-lang{color:var(--muted);font-style:italic}.note-list{gap:1rem;margin:0;padding:0 0 4rem;list-style:none;display:grid}.note-list a{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--ink);padding:1.5rem;text-decoration:none;display:block}.note-list a:hover{border-color:var(--accent)}.note-list h2{margin-bottom:.4rem;font-size:1.2rem}.note-list p{color:var(--muted);margin:0}.pub-browser{padding-bottom:4rem}.filters{z-index:2;background:var(--bg);padding:0;border:0;flex-wrap:wrap;gap:.5rem;margin:0 0 2rem;padding-block:.75rem;display:flex;position:sticky;top:4.25rem}.filters input{opacity:0;pointer-events:none;position:absolute}.filters label{cursor:pointer;border:1px solid var(--line);-webkit-user-select:none;user-select:none;border-radius:999px;padding:.4rem .9rem;font-size:1rem;font-weight:500}.filters label span{color:var(--muted);margin-left:.2rem;font-size:.8rem}.filters input:checked+label{background:var(--ink);color:var(--bg);border-color:var(--ink)}.filters input:checked+label span{color:inherit;opacity:.7}.filters input:focus-visible+label{outline:3px solid var(--accent);outline-offset:2px}.pub-browser:has(#f-paper:checked) .pub-group:not([data-type=paper]),.pub-browser:has(#f-chapter:checked) .pub-group:not([data-type=chapter]),.pub-browser:has(#f-talk:checked) .pub-group:not([data-type=talk]),.pub-browser:has(#f-poster:checked) .pub-group:not([data-type=poster]),.pub-browser:has(#f-software:checked) .pub-group:not([data-type=software]),.pub-browser:has(#f-other:checked) .pub-group:not([data-type=other]){display:none}.pub-group{border-top:1px solid var(--line);margin-bottom:2.5rem;padding-top:1.5rem}.pub-group-title{margin-bottom:1.5rem;font-size:clamp(1.3rem,1.1rem + .8vw,1.6rem)}.pub-group-title span{font:500 .95rem var(--mono);color:var(--muted);margin-left:.4rem}.pub-numbered{grid-template-columns:3.2rem 1fr;column-gap:.75rem;display:grid}.pub-numbered>p{grid-column:2}.pub-num{font:600 1rem/1.4 var(--mono);color:var(--accent);text-align:right;grid-row:1/span 3}.year{font:600 1rem/1.6 var(--mono);color:var(--accent)}.pubs{margin:0;padding:0;list-style:none}.pub{padding:0 0 1.25rem}.pub p{margin:0}.pub-title{font-weight:600;line-height:1.4}.pub-title a{color:var(--ink);text-decoration:none}.pub-title a:hover{color:var(--accent);text-decoration:underline}.pub-authors{color:var(--muted);font-size:1rem}.pub-authors strong{color:var(--ink);font-weight:600}.pub-venue{color:var(--muted);font-size:.98rem;font-style:italic}.pub-venue .badge{margin:.25rem 0 0 .4rem;font-style:normal}.pubs.compact .pub{border-bottom:1px solid var(--line);margin-bottom:1rem;padding-bottom:1rem}.teaching{grid-template-columns:repeat(auto-fit,minmax(20rem,1fr));gap:1.25rem;padding-bottom:4rem;display:grid}.teach h3{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-top:1.5rem;font-size:.9rem}.teach ul{padding-left:1.1rem}.teach .file-links{flex-wrap:wrap;gap:.5rem;padding:0;list-style:none;display:flex}.teach .file-links a{background:var(--accent-soft);border-radius:999px;padding:.45rem .9rem;font-weight:500;text-decoration:none;display:inline-block}.teach-images{grid-template-columns:1fr;gap:.75rem;margin:1rem 0;display:grid}.teach-images img{border:1px solid var(--line);background:#fff;border-radius:10px}.books{color:var(--muted);font-size:.92rem}.not-found{color:var(--muted);gap:.75rem;padding:0;list-style:none;display:grid}.site-footer{border-top:1px solid var(--line);color:var(--muted);padding:2rem 0 2.5rem;font-size:1rem}.footer-inner{flex-wrap:wrap;justify-content:space-between;gap:1rem;display:flex}.footer-inner p{margin:0}.footer-inner ul{flex-wrap:wrap;gap:1.25rem;margin:0;padding:0;list-style:none;display:flex}.footer-inner a{color:var(--muted)}.footer-inner a:hover{color:var(--ink)}.mol{width:100%;height:auto;display:block;overflow:visible}:is(.mol,.rv) .e-C{fill:var(--el-c)}:is(.mol,.rv) .e-N{fill:var(--el-n)}:is(.mol,.rv) .e-O{fill:var(--el-o)}:is(.mol,.rv) .e-S{fill:var(--el-s)}:is(.mol,.rv) .e-H{fill:var(--el-h)}:is(.mol,.rv) .e-I{fill:var(--el-i)}:is(.mol,.rv) .e-Na{fill:var(--el-na)}:is(.mol,.rv) .ink{stroke:var(--mol-ink)}:is(.mol,.rv) .bond{stroke:var(--mol-bond)}:is(.mol,.rv) .hl{fill:#fff;fill-opacity:.35}:is(.mol,.rv) .sheet{stroke:var(--mol-ink)}:is(.mol,.rv) .cell{stroke:var(--mol-bond)}.pes{width:100%;height:100%;display:block}.pes-line{stroke:var(--accent);stroke-width:1.1px}.pes-path{stroke:var(--ink);stroke-width:2px;stroke-dasharray:2 7;stroke-linecap:round;opacity:.7}.pes-min{fill:var(--accent)}.pes-ts{fill:var(--bg);stroke:var(--accent);stroke-width:2px}.hud{font:500 clamp(.95rem, .8rem + .45vw, 1.15rem)/1.35 var(--mono);letter-spacing:.06em;color:var(--muted);padding-left:.9rem;position:absolute}.hud:before{content:"";background:var(--accent);width:.45rem;height:.45rem;position:absolute;top:.3em;left:0}.hud b{color:var(--ink);font-weight:600}.hero-art{margin:0}.layers{aspect-ratio:1;perspective:1600px;cursor:pointer;outline:none;position:relative}.stack,.layer{transform-style:preserve-3d;transition:transform .9s cubic-bezier(.2,.7,.2,1),border-color .6s,background-color .6s,box-shadow .6s;position:absolute;inset:0}.layer{border:1.5px dashed #0000;border-radius:28px}.layer-bg{background:radial-gradient(60% 55% at 62% 45%, var(--glow), transparent 70%), var(--surface);border:1px solid var(--line);overflow:hidden}.layer-mol .mol{width:84%;position:absolute;top:12%;left:8%}.hud-name{top:7%;left:7%}.hud-event{top:7%;right:6%}.hud-path{bottom:7%;left:7%}@media (width<=30rem){.hud-event{top:auto;bottom:3.5%;right:4%}.hud-path{display:none}}.layers:hover .stack,.layers:focus-visible .stack,.layers:focus .stack{transform:rotateX(54deg)rotate(-32deg)scale(.68)translateY(20%)}.layers:hover .layer-mol,.layers:focus .layer-mol{border-color:var(--accent);background-color:color-mix(in srgb, var(--surface) 55%, transparent);transform:translateZ(135px);box-shadow:0 40px 60px -30px #00000059}.layers:hover .layer-hud,.layers:focus .layer-hud{border-color:var(--accent);background-color:color-mix(in srgb, var(--surface) 20%, transparent);transform:translateZ(270px)}.layers:focus-visible{outline:3px solid var(--accent);outline-offset:8px;border-radius:28px}@media (prefers-reduced-motion:no-preference){.stack{animation:3.4s cubic-bezier(.45,0,.2,1) 1.2s backwards peek-stack}.layer-mol{animation:3.4s cubic-bezier(.45,0,.2,1) 1.2s backwards peek-mol}.layer-hud{animation:3.4s cubic-bezier(.45,0,.2,1) 1.2s backwards peek-hud}}@keyframes peek-stack{0%,to{transform:none}35%,65%{transform:rotateX(54deg)rotate(-32deg)scale(.68)translateY(20%)}}@keyframes peek-mol{0%,to{transform:none}35%,65%{transform:translateZ(135px)}}@keyframes peek-hud{0%,to{transform:none}35%,65%{transform:translateZ(270px)}}.layers-note{border-left:3px solid var(--accent);max-width:60ch;color:var(--ink);padding-left:1rem}.layers-note span{font-weight:600}.cta-wide{display:none}@media (width>=60rem){.cta-wide{display:inline}.cta-narrow{display:none}}.card-visual{align-items:center;height:6.5rem;margin:-.5rem 0 1rem;display:flex}.card-visual .mol{width:auto;height:100%}.feature{background:var(--feature-bg);border-block:1px solid var(--line);padding:clamp(3rem,7vw,6rem) 0}.feature-inner{align-items:center;gap:clamp(2rem,4vw,4rem);display:grid}@media (width>=52rem){.feature-inner{grid-template-columns:.9fr 1.1fr}}.feature-text h2{font-size:clamp(1.8rem,1.3rem + 2vw,2.7rem)}.feature-text p:not(.eyebrow){color:var(--muted);max-width:55ch}.feature-art{margin:0}.crystal{position:relative}.crystal .mol{max-width:34rem;margin-inline:auto}.hud-crystal{top:0;left:0}.crystal.is-3d>svg{display:none}.crystal-canvas{aspect-ratio:1;cursor:grab;touch-action:pan-y;outline:none;width:100%;max-width:34rem;margin-inline:auto;display:block}.crystal-canvas.is-dragging{cursor:grabbing}.crystal-canvas:focus-visible{outline:3px solid var(--accent);outline-offset:6px;border-radius:16px}.crystal-hint{text-align:center;font:500 .95rem/1.4 var(--mono);color:var(--muted);margin:.4rem 0 0}.feature-art figcaption{color:var(--muted);text-align:center;margin-top:.75rem;font-size:.98rem}.poster-figure{justify-items:center;display:grid}.layers--poster{aspect-ratio:640/360;width:100%}.layers--poster .layer{border-radius:6px}.layers--poster .layer svg{width:100%;height:100%;position:absolute;inset:0}.layers--poster .pz0{box-shadow:0 18px 40px -24px #00000073}.pp-paper{fill:#f4f1ea}.pp-grid{stroke:#ddd8cc;stroke-width:.8px}.pp-blue{fill:#2f5d8a}.pp-red{fill:#cc4b2d}.pp-violet{fill:#7a5fa6}.pp-s{fill:none;stroke-width:40px}.pp-s-xl{stroke-width:48px}.pp-s-green{stroke:#0b6b52}.pp-s-violet{stroke:#7a5fa6}.pp-s-red{stroke:#cc4b2d}.pp-s-ochre{stroke:#e8b33c}.pp-s-blue{stroke:#2f5d8a}.pp-t{opacity:.72}.pp-peel{font:600 30px var(--font);letter-spacing:-.02em;fill:#14201c}.layers--poster .pz1{--z:26px}.layers--poster .pz2{--z:52px}.layers--poster .pz3{--z:78px}.layers--poster .pz4{--z:104px}.layers--poster .pz5{--z:130px}.layers--poster .pz6{--z:156px}.layers--poster .pz7{--z:182px}.layers--poster .pz8{--z:208px}.layers--poster:hover .stack,.layers--poster:focus .stack{transform:rotateX(56deg)rotate(-28deg)scale(.56)translateY(34%)}.layers--poster:hover .layer:not(.pz0),.layers--poster:focus .layer:not(.pz0){transform:translateZ(var(--z));border-color:color-mix(in srgb, var(--accent) 70%, transparent);background-color:#f4f1ea1f}@media (prefers-reduced-motion:no-preference){.layers--poster .stack{animation-name:peek-poster}.layers--poster .layer:not(.pz0){animation:3.4s cubic-bezier(.45,0,.2,1) 1.2s backwards peek-pz}}@keyframes peek-poster{0%,to{transform:none}35%,65%{transform:rotateX(56deg)rotate(-28deg)scale(.56)translateY(34%)}}@keyframes peek-pz{0%,to{transform:none}35%,65%{transform:translateZ(var(--z))}}.poster-hint{font:500 .95rem/1.4 var(--mono);color:var(--muted);text-align:center;margin-top:1.25rem}.hint-touch{display:none}@media (hover:none){.hint-hover{display:none}.hint-touch{display:inline}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}
