@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500;600&family=Space+Grotesk:wght@600;700&display=swap');
:root{--bg:#101112;--panel:#191b1d;--ink:#e7e5e1;--muted:#919394;--red:#e24936;--line:#e7e5e125;--ease:cubic-bezier(.22,1,.36,1);color:var(--ink);background:var(--bg);font-family:'IBM Plex Mono',monospace;font-size:12px;line-height:1.7;color-scheme:dark}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scrollbar-width:none;scroll-padding-top:100px}html::-webkit-scrollbar{display:none}body{overflow-x:clip;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer;border:0;background:none}button:disabled{opacity:.4;cursor:default}a,button{-webkit-tap-highlight-color:transparent}img{display:block;max-width:100%}em{font-style:normal;color:var(--red)}[hidden]{display:none!important}::selection{background:var(--red);color:#fff}:focus-visible{outline:1px solid var(--red);outline-offset:5px}main:focus{outline:none}.skip{position:fixed;top:-100px;left:24px;z-index:500;background:var(--red);padding:12px}.skip:focus{top:15px}.header{position:fixed;z-index:50;left:0;top:0;width:100%;height:95px;padding:29px 36px;display:flex;align-items:flex-start;justify-content:space-between;pointer-events:none}.header>*{pointer-events:auto}.brand{display:grid;grid-template-columns:auto auto auto;align-items:center;gap:5px;font-family:'Space Grotesk',Arial,sans-serif;line-height:1;text-shadow:0 0 16px #fff2}.brand strong{font-size:32px;letter-spacing:-3px}.brand>span{font-size:23px;font-weight:700;letter-spacing:-1.6px}.brand i{font:17px/1 monospace;color:var(--red);font-style:normal;align-self:start;margin-left:3px}.identity{position:absolute;left:36px;top:80px;color:var(--muted);font-size:8px;line-height:1.7;letter-spacing:.5px;pointer-events:none}.menu-button{display:flex;gap:13px;align-items:center;min-height:44px;font-size:10px;margin-top:-7px}.menu-button span{color:var(--red);font-size:17px}.desktop-nav{position:fixed;left:36px;bottom:39px;display:flex;flex-direction:column;gap:0;font-size:10px;min-width:160px}.desktop-nav a{display:flex;align-items:center;gap:14px;min-height:28px;color:#a6a6a5;transition:color .2s}.desktop-nav a>span{font-size:8px;color:#6e7071}.desktop-nav a>b{font-weight:400;opacity:0;color:var(--red);margin-left:auto}.desktop-nav a:hover,.desktop-nav a[aria-current]{color:#fff}.desktop-nav a:hover>b,.desktop-nav a[aria-current]>b{opacity:1}.desktop-nav a[aria-current]>span{color:var(--red)}#mobile-menu{position:fixed;inset:0;background:#101112f5;z-index:45;backdrop-filter:blur(20px);padding:130px max(8%,24px) 50px;display:flex;flex-direction:column;justify-content:center}#mobile-menu nav{width:min(600px,100%);margin:auto;display:flex;flex-direction:column}#mobile-menu a{display:flex;align-items:center;gap:30px;min-height:70px;border-bottom:1px solid var(--line);font-size:clamp(18px,3vw,32px)}#mobile-menu a>span{font-size:10px;color:var(--red)}#mobile-menu a>b{margin-left:auto;font-weight:400;color:var(--red)}#mobile-menu>p{font-size:8px;color:var(--muted);text-align:center;margin-top:35px}.footer{position:relative;margin:80px 36px 0 240px;border-top:1px solid var(--line);padding:24px 0;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;font-size:8px;color:var(--muted)}.footer>div{display:flex;gap:20px;align-items:center}.footer button,.footer a{min-height:44px;display:inline-flex;align-items:center}.footer a:hover,.footer button:hover{color:var(--ink)}.no-script{padding:30px;margin-left:240px;color:var(--muted)}
.field-directory{margin:0 36px 0 240px;padding-top:100px;scroll-margin-top:0}.directory-heading{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:end;padding-bottom:40px;border-bottom:1px solid var(--line)}.directory-heading>p{grid-column:1/-1;color:var(--red);font-size:9px}.directory-heading h2{font-size:30px;line-height:1.3;font-weight:400;letter-spacing:-1.3px}.directory-heading>span{font-size:8px;color:var(--muted)}.directory-entry{position:relative;display:grid;grid-template-columns:110px minmax(140px,210px) 1fr 25px;gap:25px;align-items:center;padding:40px 0;border-bottom:1px solid var(--line)}.directory-entry>span{font-size:9px;color:var(--muted);align-self:start}.directory-entry>div{overflow:hidden;background:var(--panel)}.directory-entry img{width:100%;height:145px;object-fit:cover;transition:transform .8s var(--ease)}.directory-entry:hover img{transform:scale(1.035)}.directory-entry h3{font-size:25px;font-weight:400;letter-spacing:-1px}.directory-entry>p{grid-column:3;font-size:10px;color:var(--muted);margin-top:-65px;max-width:240px}.directory-entry>b{grid-column:4;grid-row:1;font-size:20px;color:var(--red);font-weight:400}.directory-note{display:flex;justify-content:space-between;gap:30px;padding-top:45px;font-size:10px;color:var(--muted)}.directory-note a{color:var(--ink)}
.catalog-head{padding:155px 36px 55px 240px;max-width:1400px}.catalog-head>p:first-child{color:var(--red);font-size:9px;margin-bottom:24px}.catalog-head h1{font-size:clamp(30px,4vw,60px);font-weight:400;line-height:1.25;letter-spacing:-2.3px;margin-bottom:20px}.catalog-head h1>span{color:var(--red)}.catalog-head>p{font-size:11px;color:var(--muted)}.catalog-head>span{display:block;font-size:9px;color:var(--muted);margin-top:30px}.catalog-head>a{display:inline-block;margin-top:20px;color:var(--red)}.catalog{margin:0 36px 0 240px}.gallery-toolbar{display:flex;justify-content:space-between;gap:25px;align-items:center;padding:16px 0;border-block:1px solid var(--line);margin-bottom:35px;font-size:9px}.gallery-toolbar nav{display:flex;gap:25px}.gallery-toolbar>p{font-size:8px;color:var(--muted)}#gallery{columns:2;column-gap:24px}.photo-card{display:block;width:100%;break-inside:avoid;text-align:left;margin-bottom:28px}.photo-card img{width:100%;height:auto;transition:filter .3s}.photo-card:hover img{filter:brightness(1.06)}.photo-caption{display:flex;justify-content:space-between;align-items:start;gap:12px;font-size:9px;color:var(--muted);padding-top:12px}.photo-caption>span:last-child{font-size:8px;color:var(--red);white-space:nowrap}#gallery-status{font-size:11px;color:var(--muted);margin-bottom:18px}.archive-end{border-top:1px solid var(--line);padding:30px 0;display:flex;justify-content:space-between;align-items:center;gap:25px;font-size:9px}.archive-end>span{font-size:8px;color:var(--muted)}.archive-end a{color:var(--red);min-height:44px;display:flex;align-items:center}.field-notes{margin:0 36px 0 240px;display:grid;grid-template-columns:1.2fr 1fr;gap:7%;align-items:start}.field-notes figure>img{width:100%;height:auto}.field-notes figcaption{font-size:8px;color:var(--muted);margin-top:12px}.field-notes article>p:first-child{font-size:9px;color:var(--red);margin-bottom:20px}.field-notes h2{font-size:24px;font-weight:400;letter-spacing:-1px;margin-bottom:25px}.field-notes article>p{font-size:12px;line-height:1.9;color:#b5b4b1;margin-bottom:22px}.field-notes article>a{display:inline-flex;align-items:center;min-height:44px;color:var(--red);font-size:11px}
.contact-grid{margin:0 36px 0 240px;display:grid;grid-template-columns:1fr 1.15fr;gap:10%;align-items:start}.contact-details>p:first-child{font-size:9px;color:var(--red);margin-bottom:20px}.contact-details>a{display:block;min-height:44px;font-size:12px;overflow-wrap:anywhere}.contact-details>p{font-size:11px;color:var(--muted);margin-top:25px;line-height:1.9}.contact-details>p:last-child{margin-top:16px}label{display:block;color:var(--muted);font-size:10px;margin-bottom:9px}input,select,textarea{display:block;width:100%;border:1px solid #ffffff25;background:#16181a;padding:13px;font-size:16px;min-height:48px;border-radius:0;margin-bottom:25px}input:focus,select:focus,textarea:focus{outline:1px solid var(--red);outline-offset:-1px}textarea{resize:vertical}.solid{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:50px;border:1px solid #d94c3c;color:var(--ink);background:#e2493615;padding:13px 16px;font-size:11px;transition:background .2s}.solid:hover{background:#e2493630}.form-note{font-size:10px;color:var(--muted);line-height:1.8;margin:18px 0}.muted{color:var(--muted)}
dialog{background:var(--bg);color:var(--ink);border:1px solid #fff3;overscroll-behavior:contain}dialog::backdrop{background:#080909ed;backdrop-filter:blur(14px)}body:has(dialog[open]){overflow:hidden}#studio{width:min(680px,94vw);max-height:88svh;margin:auto;padding:28px}.studio-top{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:25px;gap:20px}.studio-top h2{font-size:24px;line-height:1.3;font-weight:400;letter-spacing:-1px}.studio-top h2>span{color:var(--red)}.studio-top button{font-size:10px;min-height:44px}#login-form>.muted{font-size:11px;margin-bottom:20px}#studio-status{font-size:11px;color:#df8f85;line-height:1.8;margin-top:20px;overflow-wrap:anywhere}.admin-tabs{display:flex;gap:20px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:10px;margin-bottom:25px}.admin-tabs button{font-size:11px;min-height:44px}.admin-tabs button[aria-pressed=true]{color:var(--red)}input[type=file]{font-size:12px}.admin-actions{display:flex;gap:15px;flex-wrap:wrap;margin-bottom:25px}.admin-actions>button{min-height:44px;font-size:11px}.admin-actions .solid{width:auto}.admin-photo{display:grid;grid-template-columns:65px minmax(0,1fr) auto;align-items:center;gap:15px;padding:12px 0;border-bottom:1px solid var(--line)}.admin-photo img{width:65px;height:80px;object-fit:contain}.admin-photo p{font-size:11px}.admin-photo select{margin:8px 0;padding:8px;font-size:14px}.admin-photo small{font-size:9px;color:var(--muted)}.admin-photo>button{font-size:10px;color:#df8f85;min-height:44px}#viewer{width:100%;height:100svh;max-width:none;max-height:none;margin:0;border:0;padding:20px 3%;overflow:hidden}#viewer[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:18px}.viewer-top,.viewer-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:11px}.viewer-top button,.viewer-bottom button,.viewer-bottom a{min-height:44px;display:flex;align-items:center}.viewer-bottom button{font-size:24px;min-width:44px}.viewer-bottom a{color:var(--red)}#viewer-image{width:100%;height:100%;min-height:0;object-fit:contain}#viewer-count{font-size:9px;color:var(--muted)}.motion-off *,.motion-off *::before,.motion-off *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
@media(min-width:1600px){.catalog,.field-directory,.field-notes,.contact-grid,.footer{max-width:1300px;margin-right:auto}.catalog-head{max-width:1500px}}
@media(max-width:1000px){.directory-entry{grid-template-columns:80px 140px 1fr 20px;gap:18px}.directory-entry>p{margin-top:-35px}.field-notes{grid-template-columns:1fr;gap:40px}.field-notes figure{max-width:650px}.contact-grid{grid-template-columns:1fr;gap:45px}.contact-details{max-width:450px}.contact-grid form{max-width:650px}.photo-caption{flex-wrap:wrap;gap:6px}}
@media(max-width:980px){.header{padding:21px 20px;height:80px;background:linear-gradient(#101112c9,transparent)}.brand strong{font-size:29px}.brand>span{font-size:21px}.identity{left:20px;top:65px;font-size:7px}.desktop-nav{display:none}.menu-button{font-size:9px;margin-top:-5px}.menu-button span{font-size:17px}.footer{margin:50px 20px 0;padding:22px 0;gap:12px;font-size:8px}.footer>span{flex-basis:100%}.footer>div{gap:20px;flex-wrap:wrap}.footer>a{overflow-wrap:anywhere;font-size:9px}.catalog-head{padding:130px 20px 40px}.catalog-head h1{font-size:clamp(28px,8vw,45px);letter-spacing:-1.5px}.catalog-head>p:first-child{font-size:8px;margin-bottom:20px}.catalog-head>p{font-size:10px}.catalog{margin-inline:20px}.gallery-toolbar{margin-bottom:24px;font-size:9px}.gallery-toolbar>p{display:none}.gallery-toolbar nav{gap:25px}#gallery{column-gap:12px}.photo-card{margin-bottom:22px}.photo-caption{font-size:8px;padding-top:9px}.photo-caption>span:last-child{font-size:7px}.archive-end{align-items:start;flex-direction:column;gap:10px;padding-block:25px}.field-directory{margin:0 20px;padding-top:60px}.directory-heading{gap:15px;padding-bottom:30px}.directory-heading h2{font-size:25px}.directory-heading>p{font-size:8px}.directory-heading>span{display:none}.directory-entry{grid-template-columns:1fr 24px;gap:15px;padding:30px 0}.directory-entry>span{grid-column:1/-1;font-size:8px}.directory-entry>div{grid-column:1/-1}.directory-entry img{height:230px;object-position:center 40%}.directory-entry h3{font-size:25px;grid-column:1;grid-row:auto}.directory-entry>p{grid-column:1;grid-row:auto;margin:0;font-size:10px}.directory-entry>b{grid-column:2;grid-row:3}.directory-note{flex-direction:column;gap:15px;padding-top:30px;font-size:10px}.field-notes{margin:0 20px;gap:32px}.field-notes h2{font-size:22px}.field-notes article>p{font-size:12px}.contact-grid{margin:0 20px;gap:35px}.contact-details>a{font-size:clamp(10px,3.2vw,13px)}.contact-details>p{font-size:10px;margin-top:15px}.contact-grid form{border-top:1px solid var(--line);padding-top:25px}#mobile-menu{padding-top:110px}#mobile-menu a{min-height:65px;font-size:21px;gap:20px}.no-script{margin:0;padding:25px;font-size:10px}#studio{padding:20px}.studio-top h2{font-size:22px}.admin-photo{grid-template-columns:48px minmax(0,1fr) auto;gap:8px}.admin-photo img{width:48px;height:65px}.admin-photo select{font-size:16px}.viewer-top{font-size:10px;overflow-wrap:anywhere}.viewer-bottom{display:grid;grid-template-columns:44px 1fr 44px;gap:8px}.viewer-bottom a{grid-row:2;grid-column:1/-1;justify-self:center;font-size:10px}.viewer-bottom #viewer-next{grid-row:1;grid-column:3}.viewer-bottom #viewer-count{grid-row:1;grid-column:2;justify-self:center}}
@media(max-width:360px){#gallery{columns:1}.header{padding-inline:16px}.identity{left:16px}.catalog,.field-notes,.contact-grid{margin-inline:16px}.catalog-head{padding-inline:16px}.directory-entry img{height:190px}.brand strong{font-size:26px}.brand>span{font-size:18px}.footer{margin-inline:16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
body:has(#mobile-menu:not([hidden])) .desktop-nav{visibility:hidden}
