:root{color-scheme:dark;--bg:#0c1418;--fg:#f1f1ec;--muted:#aeb9bb}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--fg);font:16px/1.6 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}a:focus-visible,button:focus-visible{outline:2px solid #d5e7eb;outline-offset:5px}.skip{position:absolute;top:-100px;background:var(--bg);padding:10px;z-index:20}.skip:focus{top:5px}header{display:flex;align-items:center;justify-content:space-between;padding:34px 4.5vw;gap:25px;border-bottom:1px solid #27353b}.brand{font-size:19px;font-weight:700;letter-spacing:.18em;line-height:1.3}.brand small{display:block;font-size:10px;font-weight:400;letter-spacing:.37em;margin-top:9px}.main-nav{display:flex;gap:32px;font-size:14px}.main-nav a:hover{text-decoration:underline;text-underline-offset:8px}.intro{padding:74px 4.5vw 42px;display:flex;justify-content:space-between;align-items:end;gap:25px}.eyebrow{font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);margin:0 0 20px}h1{font-size:clamp(50px,7.5vw,112px);line-height:1;font-weight:400;letter-spacing:-.055em;margin:0}.count{font-size:13px;color:var(--muted);margin:0 0 5px}.filters{padding:0 4.5vw 35px;display:flex;gap:30px;flex-wrap:wrap;font-size:14px}.filters a{color:var(--muted);border-bottom:1px solid transparent;padding:8px 0}.filters a[aria-current=page],.filters a:hover{color:var(--fg);border-color:var(--fg)}.gallery{padding:0 2vw 60px}.row{display:flex;gap:14px;margin-bottom:14px}.photo{display:block;position:relative;border:0;padding:0;background:#152228;min-width:0;overflow:hidden}.photo img{display:block;width:100%;height:auto;aspect-ratio:var(--ratio);object-fit:contain;transition:filter .3s}.photo:after{content:'View photograph ↗';position:absolute;bottom:0;left:0;right:0;text-align:left;padding:35px 20px 16px;font-size:14px;background:linear-gradient(transparent,#000a);opacity:0;transition:opacity .25s}.photo:hover:after,.photo:focus-visible:after{opacity:1}.photo:hover img{filter:brightness(.93)}.bottom{padding:35px 4.5vw 80px;display:flex;justify-content:space-between;align-items:center;gap:25px}.bottom p{font-size:clamp(24px,3vw,40px);letter-spacing:-.025em;margin:0}.bottom a{font-size:16px;border-bottom:1px solid #7a8b91;padding-bottom:8px}footer{border-top:1px solid #27353b;padding:28px 4.5vw;display:flex;justify-content:space-between;gap:20px;font-size:12px;color:var(--muted)}dialog{border:0;width:100vw;max-width:none;height:100dvh;max-height:none;padding:0;background:#070c10;inset:0;margin:0;color:var(--fg)}dialog::backdrop{background:#000}dialog[open]{display:flex;flex-direction:column}.viewer-top{display:flex;justify-content:space-between;align-items:center;padding:20px 25px;gap:20px}.viewer-top p{margin:0;font-size:14px}.viewer-top button{background:none;border:1px solid #65777e;padding:7px 15px}.viewer-stage{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;padding:0 72px;position:relative}.viewer-stage img{max-width:100%;max-height:100%;object-fit:contain}.move{position:absolute;top:50%;transform:translateY(-50%);background:#17232c;border:1px solid #607179;border-radius:50%;width:45px;height:45px;font-size:22px}.previous{left:16px}.next{right:16px}.viewer-bottom{text-align:center;padding:16px 24px 24px;font-size:13px;color:var(--muted);min-height:60px}.viewer-status{position:absolute;bottom:10px;background:#101d25;padding:8px 15px;max-width:80%;font-size:14px}.viewer-status:empty{display:none}body:has(dialog[open]){overflow:hidden}@media(max-width:760px){header{padding:25px 6vw;flex-wrap:wrap}.brand{font-size:15px}.main-nav{gap:22px;font-size:13px}.intro{padding:48px 6vw 26px;align-items:start;flex-direction:column;gap:20px}.eyebrow{font-size:11px}.filters{padding:0 6vw 24px;gap:23px}.gallery{padding:0 3vw 25px}.row{display:block;margin:0}.photo{width:100%;margin-bottom:12px}.photo:after{display:none}.bottom{padding:35px 6vw 55px;align-items:start;flex-direction:column}.bottom p{font-size:29px}footer{padding:25px 6vw;flex-wrap:wrap}.viewer-stage{padding:0 8px 58px}.move{top:auto;bottom:0;transform:none}.previous{left:calc(50% - 58px)}.next{right:calc(50% - 58px)}.viewer-top{padding:16px}.viewer-bottom{padding:15px}.viewer-status{bottom:60px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
