/* Collection navigation and artwork viewing, shared across both worlds. */
:root { --header-offset: 84px; }
html { scroll-padding-top: var(--header-offset); }
.site-header { background: rgba(244,240,232,.94); border-bottom: 1px solid var(--hairline); }
.collection-nav { display: flex; align-items: center; justify-content: center; gap: clamp(18px,3vw,40px); }
.collection-nav a { display: inline-flex; align-items: center; min-height: 32px; }
.collection-nav a[aria-current]::after { right: 0; }
a:focus-visible, button:focus-visible { outline: 2px solid currentColor; outline-offset: 5px; }
.hero #hero-title { align-self:center;margin:0;font-family:Georgia,'Times New Roman',serif;font-size:clamp(150px,31vw,540px);font-weight:400;line-height:.72;letter-spacing:-.082em;transform:translateX(-.04em); }
.collection-action { grid-column:2; margin:32px 0 0; font-size:11px; letter-spacing:.1em; text-transform:uppercase; }
.collection-action a { display:inline-block; padding:12px 0; border-bottom:1px solid currentColor; }
.artwork-open { display:block; position:relative; width:100%; border:0; padding:0; background:transparent; cursor:zoom-in; color:var(--ink); }
.artwork-open:focus-visible { outline-offset:-4px; }
.artwork-hint { position:absolute; bottom:12px; right:12px; padding:9px 11px; background:rgba(247,245,239,.94); font:10px/1.4 Arial,Helvetica,sans-serif; letter-spacing:.1em; text-transform:uppercase; opacity:0; transition:opacity .2s ease; }
.artwork-open:hover .artwork-hint, .artwork-open:focus-visible .artwork-hint { opacity:1; }
.work-meta { grid-template-columns:90px minmax(0,1fr); gap:10px 18px; }
.work-line { grid-column:2; justify-self:start; text-align:left; min-width:0; }
.artwork-viewer { width:100%; max-width:none; height:100dvh; max-height:none; margin:0; padding:22px clamp(18px,4vw,64px) 16px; border:0; background:#20221e; color:#f7f5ef; overflow-y:auto; overscroll-behavior:contain; }
.artwork-viewer[open] { display:flex; flex-direction:column; }
.artwork-viewer::backdrop { background:#20221e; }
body.viewer-open { overflow:hidden; }
.viewer-top,.viewer-bottom { display:flex; justify-content:space-between; align-items:center; gap:16px; flex-shrink:0; }
.viewer-series { margin:0; font-size:10px; letter-spacing:.17em; text-transform:uppercase; color:#c5cab8; }
.artwork-viewer button { min-height:44px; border:0; padding:10px 0; background:transparent; color:inherit; font:11px/1.4 Arial,Helvetica,sans-serif; letter-spacing:.08em; cursor:pointer; }
.artwork-viewer button:hover { color:#c5cab8; }
.viewer-image { min-height:120px; flex:1; display:flex; justify-content:center; align-items:center; padding:12px 0; }
.viewer-image img { display:block; width:auto; height:auto; max-width:100%; max-height:calc(100dvh - 265px); object-fit:contain; }
.viewer-caption { text-align:center; }
#viewer-number { margin:8px 0; font-size:10px; letter-spacing:.15em; color:#c5cab8; }
#viewer-title { margin:0; font:normal clamp(24px,3vw,36px)/1.15 Georgia,'Times New Roman',serif; }
#viewer-description { margin:8px 0 18px; font:italic 15px/1.5 Georgia,'Times New Roman',serif; color:#d5d8cb; }
.viewer-bottom { border-top:1px solid rgba(247,245,239,.2); }
.viewer-feedback { min-height:18px; margin:0; font-size:11px; text-align:center; color:#d5d8cb; }
.viewer-link { width:100%; padding:10px; color:var(--ink); background:var(--bone-soft); border:0; }
.viewer-link[hidden] { display:none; }
.media-error { padding:12px; font-size:12px; line-height:1.5; }
.media-error[hidden] { display:none; }
@media(hover:none) { .artwork-hint { opacity:1; } }
@media(max-width:760px) {
  :root { --header-offset:108px; }
  .site-header { grid-template-columns:1fr auto; gap:4px 12px; padding:10px 18px 8px; }
  .collection-nav { grid-row:2; grid-column:1 / -1; justify-content:flex-start; gap:28px; }
  .collection-nav a { min-height:38px; font-size:10px; }
  .count { grid-row:1; grid-column:2; font-size:9px; }
  .brand { min-height:26px; display:flex; align-items:center; font-size:10px; }
  .signal-hero,.air-hero { padding-top:122px; }
  .hero #hero-title { font-size:clamp(132px,45vw,230px);line-height:.78; }
  .collection-action { grid-column:1; }
  .work-meta { grid-template-columns:76px minmax(0,1fr); }
  .artwork-viewer { padding:12px 18px; }
  .viewer-bottom { gap:10px; }
  .artwork-viewer button { font-size:10px; letter-spacing:.03em; }
  .viewer-image img { max-height:calc(100dvh - 280px); }
}
@media(max-height:550px) { .viewer-image { flex:none; } .viewer-image img { max-height:70dvh; } }

