:root{color-scheme:dark;--cream:#f2edce;--frame:34vw;--frame-height:calc(var(--frame)*.625);--step:44vh;--ease:cubic-bezier(.22,.7,.2,1)}
*{box-sizing:border-box}body{margin:0;background:#131511;color:var(--cream);font-family:Arial,Helvetica,sans-serif;font-size:14px;overflow:hidden}a{color:inherit;text-decoration:none}button,select{font:inherit;color:inherit}button{border:0;background:none;cursor:pointer}button,a,select{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,select:focus-visible{outline:1px solid var(--cream);outline-offset:6px}button:disabled{opacity:.3;cursor:default}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.atmosphere{position:fixed;inset:0;z-index:-2;overflow:hidden;background:#171a16}.atmosphere>img{width:100%;height:100%;object-fit:cover;transform:scale(1.035);filter:brightness(.5) saturate(.76);transition:opacity .45s ease;opacity:1}.ambient-film{position:absolute;inset:0;opacity:0;pointer-events:none;transition:opacity .3s ease;filter:brightness(.5) saturate(.76)}.ambient-film.is-playing{opacity:1}.ambient-film iframe{position:absolute;left:50%;top:50%;width:100vw;height:56.25vw;min-width:177.78vh;min-height:100vh;transform:translate(-50%,-50%);border:0}.shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.24),transparent 30%,transparent 70%,rgba(0,0,0,.24)),linear-gradient(0deg,rgba(0,0,0,.42),transparent 25%,transparent 78%,rgba(0,0,0,.28))}
.masthead{position:fixed;z-index:10;top:0;left:0;right:0;display:grid;grid-template-columns:19% 1fr 1fr auto;align-items:center;padding:23px 28px;pointer-events:none;text-shadow:0 1px 15px #0006}.masthead>*{pointer-events:auto}.brand{font-family:Georgia,'Times New Roman',serif;font-size:24px;letter-spacing:2px}.masthead h1,.masthead-note,.about-toggle{font-size:12px;text-transform:uppercase;font-weight:400;margin:0;letter-spacing:.025em}.masthead-note{justify-self:end;margin-right:70px;padding:8px 0}.about-toggle{line-height:1.7;padding:0;font-size:12px;text-transform:uppercase;font-weight:400;letter-spacing:.025em}
.stage{position:relative;height:100svh;min-height:560px;overflow:hidden;isolation:isolate;touch-action:pan-x pinch-zoom}.rail{position:absolute;inset:0}.media-card{position:absolute;width:var(--frame);height:var(--frame-height);top:48%;left:50%;padding:0;transform:translate(-50%,-50%) translateY(calc(var(--offset)*var(--step))) scale(.47);transition:transform .85s var(--ease),opacity .6s ease,filter .6s ease;opacity:.65;filter:brightness(.75);overflow:hidden;background:#20231f;will-change:transform}.media-card[data-current="true"]{transform:translate(-50%,-50%);opacity:1;filter:none;z-index:3}.media-card[data-distant="true"]{opacity:0;pointer-events:none}.media-card img{width:100%;height:100%;object-fit:cover;display:block}.media-card.image-failed img{opacity:0}.play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;border:1px solid #fff9;width:54px;height:54px;border-radius:50%;background:#0003;font-size:14px;opacity:0;transition:opacity .2s}.media-card[data-current="true"]:is(:hover,:focus-visible) .play{opacity:1}.kind{position:absolute;bottom:12px;left:14px;font-size:11px;letter-spacing:.1em;text-transform:uppercase;text-shadow:0 1px 10px #000}.media-card:not([data-current="true"]) .kind,.media-card:not([data-current="true"]) .play{display:none}
.guide{position:absolute;top:12%;bottom:11%;width:1px;background:repeating-linear-gradient(to bottom,#ede6c92e 0,#ede6c92e 1px,transparent 1px,transparent 9px);pointer-events:none}.guide-left{left:calc(50% - var(--frame)/2 - 15px)}.guide-right{right:calc(50% - var(--frame)/2 - 15px)}
.frame-meta,.frame-bottom{position:absolute;left:calc(50% - var(--frame)/2);width:var(--frame);display:flex;justify-content:space-between;gap:10px;font-family:'Courier New',monospace;font-size:11px;text-transform:uppercase;line-height:1.3;pointer-events:none}.frame-meta{bottom:calc(52% + var(--frame-height)/2 + 13px)}.frame-bottom{top:calc(48% + var(--frame-height)/2 + 12px)}.frame-bottom #publisher{text-align:center}.split-title{position:absolute;top:48%;left:0;right:0;transform:translateY(-50%);display:grid;grid-template-columns:1fr var(--frame) 1fr;align-items:center;gap:20px;margin:0;padding:0 4vw;pointer-events:none;font:italic 400 clamp(36px,5.3vw,100px)/.93 Georgia,'Times New Roman',serif;letter-spacing:-.07em;text-shadow:0 2px 24px #0002}.split-title span{max-width:100%;white-space:pre-line;text-wrap:balance}.split-title span:first-child{text-align:right}.split-title span:last-child{grid-column:3;text-align:left}
.caption{position:absolute;top:calc(48% + var(--frame-height)/2 + 44px);left:50%;transform:translateX(-50%);width:var(--frame);text-align:center}.caption p{margin:0;font-size:14px;line-height:1.5;text-wrap:pretty}.caption a{display:inline-block;font-size:11px;margin-top:10px;opacity:.65}.caption a:hover{opacity:1}.step-controls{position:absolute;right:27px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;align-items:center;gap:20px}.step-controls button{width:44px;height:44px;font-size:23px}.step-controls span{writing-mode:vertical-rl;font-size:10px;text-transform:uppercase;letter-spacing:.08em;opacity:.75}
.bottom{position:fixed;z-index:10;bottom:0;left:0;right:0;display:grid;grid-template-columns:19% 1fr auto auto;gap:20px;align-items:center;padding:22px 28px;font-size:11px;text-transform:uppercase;text-shadow:0 1px 14px #0007}.edition span{opacity:.65;margin-left:8px}.view-switch{display:flex;align-items:center;gap:10px}.view-switch button{padding:8px 0;text-transform:uppercase;font-size:11px;opacity:.5}.view-switch button[aria-pressed="true"]{opacity:1}.view-switch>span{opacity:.4}.signature{margin-left:35px}
.list-view{height:100svh;overflow-y:auto;padding:110px 9vw 110px;background:#10130be8}.list-intro p{text-transform:uppercase;font-size:11px;letter-spacing:.08em}.list-intro h2{font:italic 400 clamp(45px,6vw,90px)/1 Georgia,serif;letter-spacing:-.05em;margin:12px 0 50px}.project-row{width:100%;display:grid;grid-template-columns:35px 110px 1fr 140px 25px;align-items:center;text-align:left;gap:22px;padding:18px 0;border-top:1px solid #f2edce35}.project-row img{width:110px;aspect-ratio:16/10;object-fit:cover}.project-row .row-title{font:italic 400 30px/1.2 Georgia,serif}.project-row .row-number,.project-row .row-category{font-size:11px;text-transform:uppercase;opacity:.7}.project-row:hover .row-title{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:7px}
dialog{width:min(1120px,94vw);max-height:94svh;padding:20px;background:#111;color:var(--cream);border:1px solid #ffffff25}dialog::backdrop{background:#000d;backdrop-filter:blur(12px)}.viewer-top,.viewer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px}.viewer-top h2{font:400 22px Georgia,serif;margin:0}.viewer-top button{padding:10px;font-size:13px}.viewer-bottom{padding-top:15px;font-size:12px;color:#d2cfc0}#player{margin-top:16px;aspect-ratio:16/9;background:#000}#player iframe{height:100%;width:100%;border:0}noscript{position:fixed;inset:40% 15%;z-index:30;background:#111;padding:30px}
@media(min-width:1700px){:root{--frame:36vw}.caption p{font-size:16px}.frame-meta,.frame-bottom{font-size:12px}}
@media(max-width:850px){:root{--frame:44vw}.masthead{grid-template-columns:1fr 1fr auto;padding:22px}.masthead-note{position:fixed;right:22px;top:65px;margin:0;font-size:10px}.split-title{font-size:5.3vw;padding:0 3vw;gap:12px}.step-controls{right:8px}.step-controls span{display:none}.bottom{grid-template-columns:1fr 1fr auto;padding:18px 22px}.signature{display:none}.caption p{font-size:13px}.project-row{grid-template-columns:25px 90px 1fr 20px;gap:14px}.project-row .row-category{display:none}.project-row img{width:90px}.project-row .row-title{font-size:25px}}
@media(max-width:600px){:root{--frame:76vw;--step:43svh;--frame-height:calc(var(--frame)*.625)}.masthead{padding:20px 18px;grid-template-columns:1fr auto}.brand{font-size:21px}.masthead h1{position:fixed;left:18px;top:65px;justify-self:start}.masthead .about-toggle{justify-self:end;font-size:10px}.stage{min-height:540px}.media-card{top:44%}.media-card:not([data-current="true"]){transform:translate(-50%,-50%) translateY(calc(var(--offset)*var(--step))) scale(.32)}.split-title{top:calc(44% - var(--frame-height)/2 - 47px);display:flex;justify-content:center;gap:.22em;padding:0 30px;font-size:clamp(27px,7.8vw,45px);letter-spacing:-.065em;line-height:1;transform:translateY(-100%)}.split-title span{white-space:normal;text-align:center!important}.frame-meta{bottom:calc(56% + var(--frame-height)/2 + 12px);font-size:10px}.frame-bottom{top:calc(44% + var(--frame-height)/2 + 12px);font-size:10px}.caption{top:calc(44% + var(--frame-height)/2 + 43px)}.caption p{font-size:14px}.caption a{font-size:10px}.step-controls{top:44%;right:0;gap:4px}.step-controls button{width:35px;height:40px;font-size:18px}.guide{top:16%;bottom:14%}.bottom{grid-template-columns:1fr auto;gap:0;padding:15px 18px;background:linear-gradient(transparent,#0005)}.edition{display:none}.view-switch button{font-size:12px}.play{opacity:.85;width:43px;height:43px}.kind{font-size:9px}.list-view{padding:100px 22px}.list-intro h2{margin-bottom:30px}.project-row{grid-template-columns:18px 70px 1fr 15px;gap:10px}.project-row img{width:70px}.project-row .row-title{font-size:21px}.viewer-top h2{font-size:18px}.viewer-bottom{font-size:10px}dialog{padding:12px}}
@media(max-height:650px) and (min-width:601px){:root{--frame:30vw;--step:44svh}.caption{top:calc(48% + var(--frame-height)/2 + 34px)}.caption p{font-size:12px}.caption a{margin-top:5px}.stage{min-height:440px}.bottom{padding-bottom:12px}.masthead{padding-top:15px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;scroll-behavior:auto!important}.media-card{will-change:auto}}
.icon{display:inline-block;width:1em;height:1em;vertical-align:-.125em;flex-shrink:0;pointer-events:none}.play .icon{width:18px;height:18px}.play .icon-play{transform:translateX(1px)}.step-controls .icon{width:22px;height:22px}.project-row>.icon{width:16px;height:16px}
#close-viewer{appearance:none;-webkit-appearance:none;border:0;background:transparent;box-shadow:none;outline:none}#close-viewer:focus-visible{text-decoration:underline;text-underline-offset:4px}

dialog[data-media="photos"] #player{height:min(60svh,650px);aspect-ratio:auto;display:grid;place-items:center;touch-action:pan-y pinch-zoom}dialog[data-media="photos"] #player>img{width:100%;height:100%;min-height:0;object-fit:contain}.photo-status{padding:24px;text-align:center;font-size:14px;line-height:1.5}.photo-controls{display:flex;align-items:center;justify-content:center;gap:24px;padding-top:8px}.photo-controls button{width:44px;height:44px;display:grid;place-items:center}.photo-controls .icon{width:22px;height:22px}.photo-controls span{min-width:60px;text-align:center;font:12px 'Courier New',monospace}dialog[data-media="photos"] .viewer-bottom{align-items:flex-start;padding-top:8px;line-height:1.5}dialog[data-media="photos"] #player-note{max-width:75%}dialog[data-media="photos"] #viewer-source{flex-shrink:0}@media(max-width:600px){dialog[data-media="photos"] #player{height:52svh}dialog[data-media="photos"] .viewer-bottom{flex-direction:column;gap:8px}dialog[data-media="photos"] #player-note{max-width:100%;font-size:12px}}

#player-note:empty{display:none}dialog[data-media="film"] #viewer-source{margin-left:auto}

.brand{justify-self:start;text-align:left}#access-about{width:100%;max-width:none;height:100svh;max-height:none;inset:0;margin:0;padding:0;border:0;background:#11140ff5;overflow-y:auto}#access-about::backdrop{background:#0c0f0be8;backdrop-filter:blur(18px)}.about-top{position:sticky;top:0;z-index:1;background:#11140f;display:flex;align-items:center;justify-content:space-between;padding:23px 28px;gap:24px}.about-top .brand{display:block}.about-content{width:min(760px,100%);margin:clamp(35px,12svh,130px) auto 0;padding:0 48px 60px}.about-content h2{margin:0 0 30px;font:italic 400 clamp(36px,5vw,64px)/1.1 Georgia,serif;letter-spacing:-.04em}.about-intro{margin:0;font-size:clamp(20px,2.1vw,28px);line-height:1.5;text-wrap:pretty}.about-detail{max-width:580px;margin:24px 0 0;font-size:16px;line-height:1.65;color:#d2cfc0}.about-links{display:flex;flex-wrap:wrap;gap:12px 32px;margin-top:38px}.about-links a,.about-home{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1px;font-size:14px}.about-home{margin-top:18px;color:#d2cfc0}@media(max-width:850px){.about-top{padding:22px}}@media(max-width:600px){.about-top{padding:20px 18px;display:grid;grid-template-columns:1fr auto;align-items:center;align-content:start;min-height:102px}.about-top #about-toggle-slot{display:flex;align-items:center}.about-top .about-toggle{font-size:10px}.about-content{margin-top:clamp(24px,7svh,70px);padding:0 28px 36px}.about-content h2{font-size:40px;margin-bottom:26px}.about-links{flex-direction:column;align-items:flex-start;gap:4px;margin-top:26px}.about-home{margin-top:10px}}

@media(max-height:650px) and (min-width:601px){.about-top{padding-top:15px}}
#access-about-toggle{appearance:none;-webkit-appearance:none;border:0;box-shadow:none;outline:none}#access-about-toggle:focus-visible{text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1px}
.filter{position:relative;min-width:0}#category-filter{position:relative;appearance:none;-webkit-appearance:none;background:transparent;border:0;border-radius:0;box-shadow:none;outline:none;max-width:180px;padding:8px 20px 8px 4px;font-size:11px;text-transform:uppercase;text-align:left}#category-filter::after{content:"";position:absolute;right:5px;top:50%;width:5px;height:5px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:translateY(-70%) rotate(45deg)}#category-filter:focus-visible{text-decoration:underline;text-underline-offset:4px}#category-menu{position:absolute;right:0;bottom:calc(100% + 12px);width:240px;max-width:calc(100vw - 36px);max-height:min(65svh,520px);overflow-y:auto;overscroll-behavior:contain;padding:8px;background:#171a16;color:var(--cream);color-scheme:dark;text-shadow:none;box-shadow:0 12px 40px #0006}#category-menu button{display:block;width:100%;min-height:44px;padding:12px;text-align:left;font-size:12px;text-transform:uppercase;border:0;border-radius:0;outline:none;box-shadow:none;background:transparent}#category-menu button[aria-checked="true"]{text-decoration:underline;text-underline-offset:4px}#category-menu button:is(:hover,:focus-visible){background:#292d25}@media(max-width:600px){#category-filter{max-width:160px}}
