*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--base-bg:#f3f1ee;--base-surface:#ffffff;--base-fg:#1a1a1a;--base-border:rgba(0,0,0,0.08);--base-hover:rgba(0,0,0,0.03);--background:var(--base-bg);--surface:var(--base-surface);--foreground:var(--base-fg);--border:var(--base-border);--hover:var(--base-hover);--ease-spring:cubic-bezier(0.34,1.56,0.64,1);--dur-fast:0.2s;--z-lightbox:9999}html.dark{--base-bg:#242526;--base-surface:#1a1a1a;--base-fg:#f3f1ee;--base-border:rgba(255,255,255,0.08);--base-hover:rgba(255,255,255,0.06)}body,html{min-height:100%;overflow-x:hidden;overflow-y:auto;scroll-behavior:smooth;background:var(--background);color:var(--foreground);font-family:Figtree,sans-serif;font-weight:300}main.art-layout{display:block;padding:2rem 50px 80px;min-height:100vh}.grid{max-width:1200px;margin:0 auto}.grid:after{content:"";display:block;clear:both}.grid-item{width:30%;margin:10px;float:left;cursor:pointer;border:none;padding:0;background:rgba(128,128,128,.08);transition:box-shadow .2s ease}.grid-item,.grid-item img{display:block;border-radius:8px}.grid-item img{width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .4s ease,transform .2s ease}.grid-item img.loaded{opacity:1}.grid-item:hover{box-shadow:0 8px 24px rgba(0,0,0,.15)}.grid-item:hover img{transform:scale(1.02);-webkit-clip-path:inset(0 round 8px);clip-path:inset(0 round 8px)}@media (prefers-reduced-motion:reduce){.grid-item img{transition:none}.grid-item:hover img{transform:none}}@media (max-width:900px){.grid-item{width:45%}}@media (max-width:500px){.grid-item{width:100%}main.art-layout{padding:1rem 1rem 80px}}.lightbox-scrim{display:flex;position:fixed;inset:0;z-index:var(--z-lightbox);background:rgba(0,0,0,.55);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);align-items:center;justify-content:center;cursor:zoom-out;animation:lightboxFade .25s ease}@keyframes lightboxFade{0%{opacity:0}to{opacity:1}}.lightbox-figure{display:flex;flex-direction:column;align-items:center;gap:.9rem;cursor:default}.lightbox-stack{display:flex;position:relative}.lightbox-image{max-width:min(90vw,1000px);max-height:90vh;object-fit:contain;border-radius:6px;box-shadow:0 24px 80px rgba(0,0,0,.6)}.lightbox-image--full{opacity:0;transition:opacity .25s ease}.lightbox-image--full.loaded{opacity:1}.has-placeholder .lightbox-image--full{position:absolute;inset:0;width:100%;height:100%}@media (prefers-reduced-motion:reduce){.lightbox-image--full{transition:none}}html,html *{cursor:url(/images/cursor.png) 16 16,auto!important}html.dark,html.dark *{cursor:url(/images/cursor-dark.png) 16 16,auto!important}.theme-bar{position:fixed;bottom:0;left:50%;transform:translateX(-50%);z-index:3000;padding:20px 40px 10px}.theme-bar-pill{width:40px;height:6px;border-radius:99px;margin:0 auto;background:color-mix(in srgb,var(--foreground) 35%,transparent);transition:opacity var(--dur-fast) var(--ease-spring),transform var(--dur-fast) var(--ease-spring)}.theme-bar.open .theme-bar-pill,.theme-bar:focus-within .theme-bar-pill{opacity:0;transform:scaleX(.6) translateY(4px)}.theme-bar-tray{position:absolute;bottom:6px;left:50%;display:flex;align-items:center;padding:3px;background:color-mix(in srgb,var(--surface) 72%,transparent);border:1px solid var(--border);border-radius:10px;backdrop-filter:blur(32px) saturate(1.6);-webkit-backdrop-filter:blur(32px) saturate(1.6);white-space:nowrap;opacity:0;transform:translateX(-50%) translateY(10px) scale(.92);pointer-events:none;transition:opacity .35s var(--ease-spring),transform .35s var(--ease-spring)}.theme-bar.open .theme-bar-tray,.theme-bar:focus-within .theme-bar-tray{opacity:1;pointer-events:auto;transform:translateX(-50%) translateY(0) scale(1);box-shadow:0 8px 32px rgba(0,0,0,.1),0 1px 4px rgba(0,0,0,.06)}.theme-bar-btn{display:flex;align-items:center;gap:8px;padding:6px 12px;border:none;border-radius:7px;background:transparent;color:var(--foreground);font-family:inherit;font-size:11px;letter-spacing:.09em;text-transform:uppercase;cursor:pointer;transition:background var(--dur-fast)}.theme-bar-btn:hover{background:var(--hover)}