:root{color-scheme:dark;--bg:#111210;--line:#30332c;--fg:#f5f4ec;--muted:#b7b9ad;--accent:#ddfb76;font-family:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--fg)}[hidden]{display:none!important}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.wrap{width:min(1200px,calc(100% - 88px));margin-inline:auto}.top,.footer{display:flex;align-items:center;justify-content:space-between;gap:16px}.top{min-height:82px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:900;letter-spacing:.055em}.brand span,.nav-link,.footer{font-family:Consolas,monospace;font-size:12px;color:var(--muted)}.nav-link:hover,.footer a:hover{color:var(--accent)}.hero{position:relative;isolation:isolate;overflow:hidden;padding:82px 0 76px;border-bottom:1px solid var(--line)}.eyebrow,.count{font:700 12px/1.5 Consolas,monospace;letter-spacing:.12em;color:var(--accent);margin:0 0 20px}.eyebrow span{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--accent);margin-right:8px}.hero h1{font-size:clamp(58px,10vw,142px);line-height:.88;letter-spacing:-.09em;margin:0}.hero h1 em{color:var(--accent);font-style:normal}.intro,.contact p:not(.eyebrow){font-size:18px;line-height:1.55;color:var(--muted);max-width:435px;margin:26px 0}.button{background:var(--accent);color:#181c0f;display:inline-flex;align-items:center;gap:22px;padding:14px 18px;font-weight:800;border-radius:5px}.button:hover{background:#f0ffa9}.hero-index{position:absolute;z-index:-1;right:4%;bottom:12%;font-weight:900;font-size:clamp(130px,29vw,425px);line-height:.8;letter-spacing:-.15em;color:transparent;-webkit-text-stroke:1px #343a28;transform:rotate(-9deg);user-select:none}.hero-index span{font-size:.36em;vertical-align:top;letter-spacing:0}.work{padding:55px 0 72px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:12px}.section-head .eyebrow{margin-bottom:10px}h2{font-size:clamp(36px,5vw,62px);line-height:.95;letter-spacing:-.06em;margin:0}.count{color:var(--muted);margin:0}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px 16px}.card{display:block;text-align:left;padding:0;color:inherit;background:none;border:0;min-width:0}.shot{display:block;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#222;aspect-ratio:16/9}.shot img{display:block;width:100%;height:100%;object-fit:contain;transition:transform .2s}.card:hover .shot img{transform:scale(1.035)}.card strong{display:block;font-size:16px;margin:10px 0 4px;overflow-wrap:anywhere}.meta,.empty{color:var(--muted);font:12px/1.5 Consolas,monospace}.contact{border-top:1px solid var(--line);padding:56px 0 62px}.footer{border-top:1px solid var(--line);padding-block:24px}dialog{width:min(960px,calc(100% - 24px));padding:0;color:var(--fg);background:#181916;border:1px solid var(--line);border-radius:8px}dialog::backdrop{background:#000d}.dialog-head{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;gap:12px}.dialog-head h2{font-size:20px;letter-spacing:0;overflow-wrap:anywhere}.dialog-head button{color:var(--fg);background:transparent;border:1px solid var(--line);border-radius:5px;font-size:24px;width:40px;height:40px}dialog img,dialog video{display:block;width:100%;max-height:75vh;object-fit:contain;background:#111}
.video-shot{display:grid;place-items:center;background:radial-gradient(ellipse at 50% 45%,#3a4325,#181b14 73%)}.play-icon{display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:var(--accent);color:#181c0f;font-size:20px;padding-left:3px;transition:transform .2s}.card:hover .play-icon{transform:scale(1.1)}

.video-shot{position:relative}.video-shot img,.video-shot video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.play-icon{position:relative;box-shadow:0 3px 18px #0008}
.preview-stage{display:grid;grid-template-columns:clamp(28px,6vw,54px) minmax(0,1fr) clamp(28px,6vw,54px);align-items:center}.preview-media{grid-column:2;grid-row:1}.preview-arrow{grid-row:1;justify-self:center;width:clamp(25px,5vw,44px);aspect-ratio:1;border:1px solid var(--line);border-radius:50%;background:#20221c;color:var(--fg);font-size:clamp(20px,4vw,34px);line-height:1;padding:0 0 .08em}.preview-arrow:hover{background:var(--accent);color:#181c0f}#preview-prev{grid-column:1}#preview-next{grid-column:3}.preview-position{text-align:center;margin:8px 0}
@media(max-width:820px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.wrap{width:calc(100% - 48px)}}@media(max-width:480px){.wrap{width:calc(100% - 32px)}.top{min-height:65px}.brand span{display:none}.hero{padding:62px 0 54px}.intro,.contact p:not(.eyebrow){font-size:16px}.grid{grid-template-columns:1fr}.work{padding-block:42px}.count{font-size:10px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}

.media-filters{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:24px 0 10px}
.media-filters button{padding:8px 14px;border:1px solid var(--line);border-radius:99px;background:transparent;color:var(--muted);font-size:13px}
.media-filters button:hover{border-color:var(--accent)}
.media-filters button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:#151710}
.media-filters .all-work{margin-left:auto;padding:6px 10px;border-color:transparent;font-size:12px}
.media-filters .all-work[aria-pressed=true]{background:transparent;border-color:var(--accent);color:var(--accent)}
.filter-menu{margin:0 0 24px;width:fit-content;max-width:100%}
.filter-menu summary{display:inline-flex;align-items:center;gap:8px;cursor:pointer;padding:7px 11px;border:1px solid var(--line);border-radius:6px;color:var(--muted);font-size:13px;list-style:none}
.filter-menu summary::-webkit-details-marker{display:none}
.filter-menu summary::after{content:'';width:6px;height:6px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:translateY(-2px) rotate(45deg)}
.filter-menu[open] summary::after{transform:translateY(2px) rotate(225deg)}
.filter-menu summary:hover,.filter-menu[open] summary{color:var(--fg)}
.filter-menu summary:focus-visible,.filter-fields select:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.filter-indicator{font-size:11px;color:var(--accent)}
.filter-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,145px),1fr));gap:12px;width:min(330px,calc(100vw - 48px));margin-top:10px;padding:12px;border:1px solid var(--line);border-radius:6px;background:#181916}
.filter-fields label{min-width:0;display:grid;gap:5px;font-size:12px;color:var(--muted)}
.filter-fields select{width:100%;min-height:34px;border:1px solid var(--line);border-radius:4px;background:var(--bg);color:var(--fg);font:inherit;padding:0 6px}
