@font-face{font-family:Unbounded;font-weight:600 800;font-display:swap;src:url(/fonts/unbounded-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+1E??}@font-face{font-family:Unbounded;font-weight:600 800;font-display:swap;src:url(/fonts/unbounded-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+2000-206F}:root{--bg:#0b0a07;--gold:#d4a938;--cream:#f7f1df;--muted:#a89c80;--serif:ui-serif, "Palatino Linotype", Palatino, Georgia, serif}*{box-sizing:border-box}html,body{margin:0}body{background:radial-gradient(ellipse 120% 70% at 50% -10%, #231c0e 0%, var(--bg) 60%) fixed, var(--bg);color:var(--cream);font-family:var(--serif);-webkit-font-smoothing:antialiased;min-height:100vh}body.lock{overflow:hidden}.top{text-align:center;padding:clamp(36px,7vw,72px) 16px clamp(20px,4vw,36px)}.eyebrow{letter-spacing:.42em;color:var(--gold);margin:0 0 10px;font-family:Unbounded,sans-serif;font-size:12px;font-weight:700}h1{letter-spacing:.02em;margin:0;font-size:clamp(30px,5.4vw,52px);font-weight:400}.grid{grid-template-columns:repeat(4,1fr);gap:clamp(14px,2.4vw,32px);max-width:1180px;margin:0 auto;padding:0 16px clamp(48px,8vw,96px);display:grid}@media (width<=900px){.grid{grid-template-columns:repeat(3,1fr)}}@media (width<=560px){.grid{grid-template-columns:repeat(2,1fr)}}.card{all:unset;cursor:pointer;perspective:900px;opacity:0;animation:.7s cubic-bezier(.2,.7,.2,1) forwards rise;display:block;transform:translateY(18px)}.card .face{aspect-ratio:2/3;transform:rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));background:#1a150c;border-radius:4.6%/3.2%;transition:transform .25s,box-shadow .25s;display:block;position:relative;overflow:hidden;box-shadow:0 14px 34px #0000008c,0 0 0 1px #d4a9382e}.card img{object-fit:cover;width:100%;height:100%;display:block}.card .face:after{content:"";pointer-events:none;background:radial-gradient(circle at var(--gx,50%) var(--gy,30%), #fff0c847, transparent 55%);opacity:0;transition:opacity .25s;position:absolute;inset:0}.card:hover .face,.card:focus-visible .face{box-shadow:0 22px 50px #0009,0 0 0 1px #d4a93880,0 0 40px #d4a9381f}.card:hover .face:after{opacity:1}.card:focus-visible .face{outline:2px solid var(--gold);outline-offset:4px}.card .name{text-align:center;letter-spacing:.08em;color:var(--muted);margin-top:12px;font-size:15px;display:block}@keyframes rise{to{opacity:1;transform:none}}.viewer{z-index:10;background:radial-gradient(90% 70% at 50% 40%,#1d170b 0%,#050403 75%);animation:.3s fade;position:fixed;inset:0}.viewer[hidden]{display:none}@keyframes fade{0%{opacity:0}}#stage{touch-action:none;cursor:grab;width:100%;height:calc(100% - 118px);display:block;position:absolute;top:0;left:0}#stage:active{cursor:grabbing}.viewer button{all:unset;cursor:pointer;z-index:2;background:#f7f1df0f;border:1px solid #d4a93847;border-radius:50%;place-items:center;width:48px;height:48px;transition:background .2s,border-color .2s;display:grid;position:absolute}.viewer button:hover{border-color:var(--gold);background:#d4a93824}.viewer button:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.viewer button svg{fill:none;width:22px;height:22px;stroke:var(--cream);stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round}.viewer .close{top:max(16px, env(safe-area-inset-top));right:16px}.viewer .nav{top:calc(50% - 59px);transform:translateY(-50%)}.viewer .prev{left:16px}.viewer .next{right:16px}.caption{left:0;right:0;bottom:max(22px, env(safe-area-inset-bottom));text-align:center;pointer-events:none;padding:0 72px;position:absolute}.caption .glyph{color:var(--gold);margin:0;font-size:20px}.caption h2{letter-spacing:.04em;margin:2px 0 6px;font-size:clamp(24px,4vw,34px);font-weight:400}.caption .hint{color:var(--muted);letter-spacing:.04em;margin:0;font-size:13px}.loading{pointer-events:none;letter-spacing:.4em;color:var(--gold);opacity:0;place-items:center;font-family:Unbounded,sans-serif;font-size:11px;transition:opacity .2s;display:grid;position:absolute;inset:0}.loading.on{opacity:1}@media (width<=560px){.viewer .nav{top:auto;bottom:max(26px, env(safe-area-inset-bottom));transform:none}}@media (prefers-reduced-motion:reduce){.card{opacity:1;animation:none;transform:none}.card .face{transition:none}.viewer{animation:none}}
