*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--dark: #0e0e0e;--mid: #1a1a1a;--text: #e8e8e8;--muted: #999;--accent: #2dcfbe}html{scroll-behavior:smooth;scroll-padding-top:5rem}body{background-color:var(--dark);color:var(--text);font-family:Georgia,serif;line-height:1.7}a:focus-visible,button:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.skip-link{background:var(--accent);color:#061412;font-weight:700;left:1rem;padding:.65rem .9rem;position:fixed;text-decoration:none;top:1rem;transform:translateY(-160%);transition:transform .2s ease;z-index:400}.skip-link:focus{transform:translateY(0)}nav{position:fixed;top:0;width:100%;z-index:100;display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem;background:linear-gradient(to bottom,rgba(14,14,14,.95),transparent)}nav .logo{display:flex;align-items:center;gap:.75rem;text-decoration:none}nav .logo img{height:42px;width:54px;object-fit:contain}nav .logo span{font-size:1rem;font-weight:700;color:var(--text);letter-spacing:.05em}nav ul{list-style:none;display:flex;gap:2rem}nav ul a{color:var(--text);text-decoration:none;font-size:.9rem;letter-spacing:.08em;text-transform:uppercase;opacity:.85;transition:opacity .2s,color .2s}nav ul a:hover{opacity:1;color:var(--accent)}section{max-width:800px;margin:0 auto;padding:5rem 2rem}section h2{font-size:1.5rem;font-weight:400;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin-bottom:1.5rem;padding-bottom:.5rem;border-bottom:1px solid #2a2a2a}section p{font-size:1.05rem;margin-bottom:1rem}.gallery{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.gallery-meta{color:var(--muted);font-size:.95rem;margin-top:-.75rem;margin-bottom:1.5rem}.gallery-item{margin:0}.gallery a{display:block;overflow:hidden;border-radius:3px}.gallery img{width:100%;height:260px;object-fit:cover;display:block;transition:transform .3s ease}.gallery a:hover img{transform:scale(1.03)}.gallery-caption{color:var(--muted);font-size:.9rem;line-height:1.45;margin-top:.55rem}.gallery-caption strong{color:var(--text);display:block;font-weight:400}.gallery-lightbox{align-items:center;background:#080808f0;display:none;inset:0;justify-content:center;padding:1rem;position:fixed;z-index:300}.gallery-lightbox.is-open{display:flex}.gallery-lightbox img{max-height:calc(100vh - 8rem);max-width:min(100%,1100px);object-fit:contain;width:auto}.gallery-lightbox-caption{color:var(--text);font-size:.95rem;line-height:1.4;margin-top:.75rem;text-align:center}.gallery-lightbox-inner{max-width:100%}.gallery-lightbox button{background:#1a1a1ad9;border:1px solid rgba(255,255,255,.18);border-radius:3px;color:var(--text);cursor:pointer;font:inherit;line-height:1;padding:.85rem 1rem;position:absolute}.gallery-lightbox button:hover{border-color:var(--accent);color:var(--accent)}.gallery-lightbox-close{right:1rem;top:1rem}.gallery-lightbox-prev,.gallery-lightbox-next{top:50%;transform:translateY(-50%)}.gallery-lightbox-prev{left:1rem}.gallery-lightbox-next{right:1rem}@media(max-width:600px){.gallery{grid-template-columns:1fr}.gallery img{height:220px}.gallery-lightbox{padding:4rem .75rem 1rem}.gallery-lightbox img{max-height:calc(100vh - 10rem)}.gallery-lightbox-prev,.gallery-lightbox-next{bottom:1rem;top:auto;transform:none}}.archive-group{margin-bottom:2.5rem}.archive-group h3{font-size:.8rem;text-transform:uppercase;letter-spacing:.15em;color:var(--muted);margin-bottom:1rem;padding-bottom:.4rem;border-bottom:1px solid #222}.divider{width:60px;height:1px;background:var(--accent);margin:0 auto;opacity:.3}footer{text-align:center;padding:3rem 2rem;color:var(--muted);font-size:.85rem;border-top:1px solid #1a1a1a}footer a{color:var(--accent);text-decoration:none}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important}.gallery a:hover img{transform:none}}@media(max-width:600px){nav{padding:.75rem 1rem;gap:.5rem}nav .logo{flex-shrink:0}nav ul{gap:.75rem;flex-wrap:nowrap;overflow-x:auto;padding:.25rem 0}nav ul a{font-size:.72rem;white-space:nowrap}nav .logo span{display:none}}
