.archive-hero{position:relative;min-height:clamp(680px,82vh,820px);display:grid;align-items:end;background:var(--ink);overflow:hidden}
.archive-hero__image{position:absolute;inset:0;background:center 38%/cover no-repeat;transform:scale(1.015);transition:background-image .4s ease}
.archive-hero__scrim{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,10,10,.94) 0%,rgba(10,10,10,.68) 48%,rgba(10,10,10,.2) 100%),linear-gradient(0deg,rgba(10,10,10,.74),transparent 55%)}
.archive-hero__inner{position:relative;width:100%;padding-top:clamp(72px,9vw,112px);padding-bottom:clamp(48px,6vw,76px);color:var(--paper)}
.archive-hero .display{max-width:13ch;color:var(--paper);font-size:clamp(48px,6.4vw,88px)}
.archive-back{display:inline-block;margin-bottom:clamp(32px,4vw,56px);color:rgba(248,245,239,.88);font-size:12px;font-weight:600;letter-spacing:.16em;text-decoration:none;text-transform:uppercase}
.archive-hero__body{max-width:48ch;margin:28px 0 32px;color:#E0DBD2;font-size:18px;line-height:1.65}
.archive-totals{display:flex;flex-wrap:wrap;gap:10px 32px;border-top:1px solid rgba(248,245,239,.26);padding-top:22px;font-size:12px;letter-spacing:.14em;text-transform:uppercase}
.archive-totals strong{font-size:18px;letter-spacing:0;color:#fff}
.archive-browser{padding-top:clamp(64px,9vw,120px);padding-bottom:clamp(72px,10vw,132px)}
.archive-browser__head{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,480px);gap:48px;align-items:end}
.archive-browser__head .body{margin:0}
.archive-filters{display:grid;grid-template-columns:2fr 1fr 1fr;gap:2px;margin-top:48px;background:var(--linen);border:1px solid var(--linen)}
.archive-filters label{display:flex;flex-direction:column;gap:8px;background:var(--paper);padding:18px}
.archive-filters label>span{color:var(--ink);font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}
.archive-filters .input,.archive-filters .select{border:0;border-bottom:1px solid var(--edge);padding:9px 2px;background-color:transparent}
.archive-results{margin:24px 0 18px;color:var(--hint);font-size:13px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}
.archive-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:3px}
.archive-card{position:relative;grid-column:span 4;min-height:360px;border:0;padding:0;overflow:hidden;background:var(--ink);color:#fff;text-align:left;cursor:pointer}
.archive-card:nth-child(7n+1),.archive-card:nth-child(7n+5){grid-column:span 8;min-height:520px}
.archive-card__image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .55s cubic-bezier(.2,.65,.2,1),filter .3s}
.archive-card::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(10,10,10,.92),rgba(10,10,10,.04) 72%)}
.archive-card__copy{position:absolute;z-index:1;left:0;right:0;bottom:0;padding:26px}
.archive-card__city{display:block;margin-bottom:9px;color:#F4C9B8;font-size:11px;font-weight:600;letter-spacing:.24em;text-transform:uppercase}
.archive-card__title{display:block;max-width:28ch;font:400 clamp(21px,2vw,30px)/1.12 var(--serif)}
.archive-card__count{display:block;margin-top:13px;color:rgba(255,255,255,.75);font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}
.archive-card:hover .archive-card__image,.archive-card:focus-visible .archive-card__image{transform:scale(1.045);filter:brightness(1.08)}
.archive-card:focus-visible{outline:3px solid var(--ember);outline-offset:3px;z-index:2}
.archive-empty{border-top:2px solid var(--ink);padding:44px 0}.archive-empty h3{margin:0 0 8px;color:var(--ink)}.archive-empty p{margin:0 0 20px}
.album-dialog{position:fixed;inset:0;width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:0;border:0;overflow:hidden;background:var(--ink);color:var(--paper)}
.album-dialog::backdrop{background:rgba(10,10,10,.94)}
.album-dialog__shell{position:absolute;inset:0;width:100%;max-width:1644px;height:100%;margin:0 auto;padding:clamp(24px,5vw,72px);overflow-y:auto;scroll-behavior:auto}
.album-dialog__close{position:fixed;z-index:3;top:22px;right:22px;border:1px solid rgba(248,245,239,.55);background:rgba(10,10,10,.75);color:var(--paper);padding:11px 15px;font:600 11px/1 var(--grotesk);letter-spacing:.16em;text-transform:uppercase;cursor:pointer}
.album-dialog__head{margin:0 0 36px}.album-dialog__head .h2{color:var(--paper);max-width:24ch}.album-dialog__head>p:last-child{color:#BFBAB1}
.album-media{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:4px}
.album-media figure{grid-column:span 4;margin:0;background:#171717;min-height:260px}.album-media figure:nth-child(5n+1){grid-column:span 8}.album-media img,.album-media video{width:100%;height:100%;min-height:260px;object-fit:cover}
.album-media figcaption{padding:12px 14px;color:#CFC9BE;font-size:13px}
.album-progress{max-width:720px;margin:32px 0 0;border-left:3px solid var(--ember);padding:18px 20px;background:#171717;color:#CFC9BE}
body.has-dialog{overflow:hidden}
@media(max-width:900px){.archive-card,.archive-card:nth-child(7n+1),.archive-card:nth-child(7n+5){grid-column:span 6;min-height:390px}.archive-browser__head{grid-template-columns:1fr}.archive-filters{grid-template-columns:1fr 1fr}.archive-filters label:first-child{grid-column:1/-1}.album-media figure,.album-media figure:nth-child(5n+1){grid-column:span 6}}
@media(max-width:620px){.archive-hero{min-height:690px}.archive-hero__scrim{background:linear-gradient(0deg,rgba(10,10,10,.95),rgba(10,10,10,.35))}.archive-back{margin-bottom:48px}.archive-filters{grid-template-columns:1fr}.archive-filters label:first-child{grid-column:auto}.archive-card,.archive-card:nth-child(7n+1),.archive-card:nth-child(7n+5){grid-column:1/-1;min-height:420px}.album-media figure,.album-media figure:nth-child(5n+1){grid-column:1/-1}.album-dialog__head{padding-top:48px}}
@media(prefers-reduced-motion:reduce){.archive-card__image{transition:none}.archive-hero__image{transform:none;transition:none}}
