*{margin:0;padding:0;box-sizing:border-box}
:root{--bg:#0a0a0a;--fg:#555;--dim:#555;--accent:#555}
body{background:var(--bg);color:var(--fg);font:16px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;min-height:100vh}
.wrap{max-width:720px;margin:0 auto;padding:2rem 1.5rem}
nav{display:flex;gap:1.5rem;margin-bottom:3rem;font-size:.95rem}
nav a{color:var(--dim);text-decoration:none;transition:color .2s}
nav a:hover,nav a.active{color:var(--fg)}
h1{font-weight:300;font-size:1.8rem;margin-bottom:1.5rem;letter-spacing:.02em}
h2{font-weight:300;font-size:1.2rem;color:var(--accent);margin:2.5rem 0 1rem}
p{margin-bottom:1rem}
a{color:var(--fg)}
img{max-width:100%;height:auto;display:block;margin-bottom:1.5rem;border-radius:2px}
.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}
.gallery img{margin:0;cursor:zoom-in}
.gallery img.zoom{position:fixed;inset:0;width:auto;height:auto;max-width:90vw;max-height:90vh;margin:auto;object-fit:contain;z-index:999;cursor:zoom-out;background:rgba(0,0,0,.9)}
.contact{list-style:none}
.contact li{margin-bottom:.5rem;color:var(--dim)}
.contact a{color:var(--accent);text-decoration:none}
.contact a:hover{color:var(--fg)}
.credit{color:var(--dim);font-size:.85rem;margin-top:.5rem}
iframe{width:100%;border:0;border-radius:4px;filter:invert(.92) hue-rotate(180deg) contrast(.9)}
.subtle{color:var(--dim);font-size:.9rem;margin-bottom:2rem}