:root{--black:#080705;--panel:#0c0a07;--gold:#d9b45a;--gold2:#e8c66d;--cream:#f6ead0;--muted:#b7aa91;--line:rgba(217,180,90,.35)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--black);color:var(--cream);font-family:Georgia,"Times New Roman",serif}.site-header{min-height:96px;padding:24px 7vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:rgba(0,0,0,.88);position:sticky;top:0;z-index:10;backdrop-filter:blur(8px)}.brand{color:var(--gold);font-size:28px;letter-spacing:5px;text-transform:uppercase;text-decoration:none;font-weight:600}.site-header nav{display:flex;gap:28px}.site-header nav a{color:var(--cream);text-transform:uppercase;text-decoration:none;font-size:14px;letter-spacing:1px}.gallery-hero{text-align:center;padding:80px 7vw 60px;background:radial-gradient(circle at 50% -10%,rgba(217,180,90,.18),transparent 45%),#080705;border-bottom:1px solid var(--line)}.monogram{width:78px;height:78px;margin:0 auto 24px;border:2px solid var(--gold);border-radius:50%;display:grid;place-items:center;color:var(--gold);font-size:29px;box-shadow:0 0 35px rgba(217,180,90,.2)}.eyebrow{color:var(--gold);letter-spacing:4px;text-transform:uppercase;font-size:13px}.gallery-hero h1{margin:10px 0;color:var(--gold2);font-size:clamp(48px,8vw,92px);letter-spacing:9px;text-transform:uppercase}.gallery-hero .gallery-intro{max-width:760px;margin:20px auto 0;color:#eee2c8;font-size:20px;line-height:1.6}.gallery-count{display:inline-flex;justify-content:center;gap:7px;flex-wrap:wrap;margin:25px auto 0!important;padding:11px 18px;border:1px solid var(--line);background:rgba(217,180,90,.07);color:var(--muted)!important;font:600 14px/1.45 Arial,sans-serif!important;letter-spacing:.02em}.gallery-count strong{color:var(--gold2)}.gallery-section{padding:52px 7vw 90px;min-height:50vh}.filters{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-bottom:38px}.filter{font:700 14px Georgia,serif;text-transform:uppercase;letter-spacing:1px;padding:12px 18px;border:1px solid var(--line);background:#100d09;color:var(--cream);cursor:pointer}.filter:hover,.filter.active{background:linear-gradient(135deg,#f4d681,#b98222);color:#0b0703;border-color:var(--gold)}.gallery-grid{column-count:3;column-gap:18px}@media(min-width:900px){.gallery-grid{column-count:4}}.photo{display:block;width:100%;position:relative;margin:0 0 18px;padding:0;border:1px solid var(--line);background:#111;overflow:hidden;break-inside:avoid;cursor:zoom-in;text-align:left}.photo img{width:100%;height:auto;display:block;transition:transform .5s ease}.photo:hover img{transform:scale(1.035)}.photo-shade{position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.9))}.photo-meta{position:absolute;left:18px;right:18px;bottom:16px;text-shadow:0 2px 6px #000}.photo-meta small{display:block;color:var(--gold2);font-size:12px;letter-spacing:1px;text-transform:uppercase}.photo-meta strong{display:block;margin-top:5px;color:#fff;font-size:18px;line-height:1.25}.photo.hidden{display:none}.empty{text-align:center;border:1px solid var(--line);padding:50px;color:var(--muted);font-size:20px}.lightbox{width:100vw;height:100vh;max-width:none;max-height:none;margin:0;padding:34px;border:0;background:rgba(0,0,0,.96);color:#fff}.lightbox[open]{display:grid;place-items:center}.lightbox::backdrop{background:#000}.lightbox img{max-width:calc(100vw - 120px);max-height:calc(100vh - 110px);object-fit:contain}.lightbox button{position:fixed;border:0;background:rgba(0,0,0,.5);color:#fff;cursor:pointer;font-size:52px;z-index:2}.lightbox-close{right:22px;top:12px;width:56px;height:56px}.lightbox-prev{left:20px;top:45%}.lightbox-next{right:20px;top:45%}.lightbox-caption{position:fixed;bottom:18px;left:20%;right:20%;text-align:center;font-size:18px}.lightbox-caption small{color:var(--gold2);display:block}footer{padding:24px 7vw;color:#9e8b62;background:#050403;border-top:1px solid var(--line)}@media(max-width:760px){.site-header{display:block;padding:20px 6vw}.site-header nav{margin-top:16px;gap:16px;flex-wrap:wrap}.brand{font-size:22px}.gallery-hero{padding-top:54px}.gallery-section{padding-left:4vw;padding-right:4vw}.gallery-grid{column-count:1}.gallery-count{display:flex;width:max-content;max-width:100%;padding:10px 13px}.lightbox{padding:12px}.lightbox img{max-width:100%;max-height:80vh}.lightbox-prev,.lightbox-next{font-size:42px}.lightbox-caption{left:12%;right:12%}}
