:root{color-scheme:dark;--s-black:#070706;--s-bone:#e1d7c5;--s-dim:#9e927f;--s-line:rgba(225,214,190,.2);--s-amber:#a98b5a;--s-serif:"Iowan Old Style",Baskerville,"Times New Roman",serif;--s-sans:"Helvetica Neue","Arial Narrow",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--s-black)}body{margin:0;overflow-x:hidden;background:#050504;color:var(--s-bone);font-family:var(--s-sans)}a,button{color:inherit}.frequency-return,.frequency-next{position:fixed;z-index:80;top:22px;color:rgba(224,214,194,.56);font-size:10px;letter-spacing:.24em;text-decoration:none;transition:color .25s}.frequency-return{left:24px}.frequency-next{right:24px}.frequency-return:hover,.frequency-next:hover{color:var(--s-bone)}
.threshold{position:fixed;z-index:60;inset:0;display:grid;place-items:center;overflow:hidden;background:radial-gradient(ellipse at 50% 48%,#fffdf5 0,#f4ead2 38%,#c9b994 100%);box-shadow:inset 0 0 18vw rgba(255,255,255,.9);transition:visibility 0s linear 1.05s}.threshold__lights{position:absolute;inset:0;pointer-events:none}.threshold__lights i{position:absolute;width:clamp(150px,20vw,330px);aspect-ratio:1;border-radius:50%;background:#fffef8;box-shadow:0 0 18px 10px #fff,0 0 70px 32px #fff9e2,0 0 190px 100px rgba(255,244,211,.94),0 0 380px 190px rgba(255,255,255,.72)}.threshold__lights i:nth-child(1){left:-5%;top:-8%}.threshold__lights i:nth-child(2){right:-5%;top:-7%}.threshold__lights i:nth-child(3){left:-11%;top:40%}.threshold__lights i:nth-child(4){right:-10%;top:42%}.threshold__lights i:nth-child(5){left:8%;bottom:-17%}.threshold__lights i:nth-child(6){right:8%;bottom:-18%}.threshold__signal{position:relative;z-index:2;width:min(86vw,900px);text-align:center;color:#181611;text-shadow:0 1px rgba(255,255,255,.72),0 0 42px #fff}.threshold__signal>p{margin:0 0 28px;color:rgba(37,32,24,.58);font-size:9px;letter-spacing:.52em}.threshold h1{margin:0;font:400 clamp(3.2rem,8vw,8.8rem)/.79 var(--s-serif);letter-spacing:-.055em;color:rgba(19,17,13,.84)}.threshold h1 span{display:block}.threshold h1 span+span{margin-top:.18em;font-style:italic}.threshold__enter{display:grid;justify-items:center;gap:10px;margin:32px auto 0;padding:8px 18px;border:0;background:transparent;cursor:pointer;color:rgba(31,27,20,.72);font:9px var(--s-sans);letter-spacing:.4em;text-transform:uppercase}.threshold__enter img{display:block;width:70px;aspect-ratio:.625;object-fit:cover;border-radius:3px;box-shadow:0 5px 12px rgba(42,31,19,.34);transition:transform .18s,filter .18s}.threshold__enter:hover img,.threshold__enter:focus-visible img{transform:translateY(2px);filter:brightness(1.08)}.threshold__aside{position:absolute;right:26px;bottom:20px;margin:0;color:rgba(37,31,22,.48);font:italic 12px var(--s-serif)}.shadow.is-entered .threshold{visibility:hidden;background:#030303;box-shadow:none;animation:lights-out 1.05s linear forwards}.shadow.is-entered .threshold__lights i{opacity:0;box-shadow:none}.shadow.is-entered .threshold__signal,.shadow.is-entered .threshold__aside{animation:afterimage .3s ease-out forwards}@keyframes afterimage{0%{opacity:1;filter:brightness(5) blur(1px)}10%{opacity:.32;filter:brightness(1.8) blur(2px)}100%{opacity:0;filter:brightness(.15) blur(7px);transform:scale(1.01)}}@keyframes lights-out{0%,72%{opacity:1}100%{opacity:0}}
.shadow{position:relative;isolation:isolate;min-height:100svh;overflow:hidden;padding:30px clamp(20px,5vw,72px) 80px;background:radial-gradient(circle at 73% 16%,rgba(150,123,82,.13),transparent 29%),radial-gradient(circle at 18% 58%,rgba(119,105,83,.08),transparent 32%),#080706;opacity:.1;transform:scale(1.02);transition:opacity 1.4s .35s,transform 1.7s .25s}.shadow.is-entered .shadow{opacity:1;transform:none}.shadow:before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(0,0,0,.8),transparent 18% 82%,rgba(0,0,0,.8)),repeating-linear-gradient(0deg,rgba(255,255,255,.008) 0 1px,transparent 1px 4px);pointer-events:none}.shadow__smoke{position:absolute;z-index:-1;inset:0;width:100%;height:100%;opacity:.62;mix-blend-mode:screen;pointer-events:none}.shadow__haze{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none}.shadow__haze i{position:absolute;width:45%;height:18%;border-radius:50%;filter:blur(48px);background:radial-gradient(ellipse,rgba(220,209,188,.15),rgba(132,117,96,.04) 45%,transparent 72%);animation:wisp 25s ease-in-out infinite alternate}.shadow__haze i:nth-child(1){top:22%;left:-14%}.shadow__haze i:nth-child(2){top:49%;right:-14%;width:55%;animation-delay:-9s}.shadow__haze i:nth-child(3){bottom:4%;left:24%;animation-delay:-16s}@keyframes wisp{to{transform:translate3d(24%,-12%,0) rotate(10deg) scale(1.25,.8)}}.shadow__gramophone,.shadow__figure{position:absolute;z-index:-1;opacity:.055;filter:grayscale(1) sepia(.7);mix-blend-mode:screen;pointer-events:none}.shadow__gramophone{width:min(34vw,430px);left:28%;top:48%;animation:orbit 44s ease-in-out infinite alternate}.shadow__figure{width:min(18vw,220px);left:3%;top:25%;opacity:.075;animation:drift 38s ease-in-out -8s infinite alternate}@keyframes orbit{0%{transform:translate(-25vw,5vh) rotate(-25deg) scale(.5)}50%{transform:translate(27vw,-8vh) rotate(142deg) scale(1.1)}100%{transform:translate(-4vw,16vh) rotate(315deg) scale(.7)}}@keyframes drift{to{transform:translate(42vw,18vh) rotate(-130deg) scale(.7)}}
.shadow__mast{display:flex;justify-content:space-between;gap:20px;padding-bottom:13px;border-bottom:1px solid var(--s-line);color:rgba(224,214,194,.56);font-size:10px;letter-spacing:.25em}.shadow__hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.67fr);gap:clamp(35px,7vw,100px);align-items:center;min-height:650px;padding:70px 3vw 58px}.shadow__kicker{margin:0;color:#b5a78f;font-size:10px;letter-spacing:.31em;text-transform:uppercase}.shadow__statement h1{margin:17px 0 0;color:#d7c8ad;font:400 clamp(5.2rem,11vw,10.5rem)/.72 Impact,"Arial Narrow",sans-serif;letter-spacing:-.055em;text-transform:uppercase;text-shadow:3px 3px 0 #493c2c,8px 12px 28px #000;transform:scaleY(1.08);transform-origin:left bottom}.shadow__thesis{margin:44px 0 18px;font:italic clamp(1.5rem,3vw,2.5rem) var(--s-serif);letter-spacing:.04em}.shadow__explanation{max-width:620px;margin:0;color:#bdb29f;font:16px/1.7 var(--s-serif)}.shadow__explanation em{color:var(--s-bone)}.shadow__self{position:relative;width:min(100%,380px);margin:0 auto;transform:rotate(1.3deg)}.shadow__self:before{content:"";position:absolute;inset:-12px 12px 16px -14px;border:1px solid rgba(202,182,149,.34);transform:rotate(-3deg)}.shadow__self img{display:block;width:100%;max-height:490px;object-fit:cover;object-position:center 27%;filter:sepia(.4) grayscale(.28) contrast(1.2) brightness(.68);box-shadow:0 30px 90px #000}.shadow__self figcaption{position:absolute;left:-24px;bottom:30px;padding:11px 15px;border-left:2px solid var(--s-amber);background:rgba(8,7,6,.9);font-size:9px;letter-spacing:.2em}
.collections,.shadow-shelf,.correspondence{position:relative;z-index:3;max-width:1280px;margin:0 auto}.collections{padding:25px 0 110px;border-top:1px solid var(--s-line)}.collections__header{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:30px}.collections__header p,.shadow-shelf>header p,.correspondence>p:first-child{margin:0;color:#978b79;font-size:9px;letter-spacing:.25em;text-transform:uppercase}.collections__header h2,.shadow-shelf>header h2,.correspondence h2{margin:10px 0 0;font:400 clamp(2rem,4vw,3.7rem)/1 var(--s-serif);letter-spacing:-.03em}.collections__header>p{max-width:260px;text-align:right;line-height:1.5}.collection-doors{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.collection-doors a{position:relative;min-height:245px;padding:25px 20px;border:1px solid rgba(213,195,165,.23);background:rgba(23,20,16,.88);text-decoration:none;transition:transform .3s,background .3s,border-color .3s}.collection-doors a:nth-child(2){transform:translateY(12px)}.collection-doors a:nth-child(3){transform:translateY(-8px)}.collection-doors a:nth-child(4){transform:translateY(7px)}.collection-doors a:hover,.collection-doors a:focus-visible{z-index:2;background:#211c16;border-color:rgba(213,195,165,.55);transform:translateY(-5px)}.collection-doors span,.collection-doors small{display:block}.collection-doors span{color:#8c806f;font-size:9px;letter-spacing:.2em}.collection-doors strong{display:block;margin:42px 0 12px;font:400 1.55rem/1.05 var(--s-serif)}.collection-doors small{color:#aaa08f;font:13px/1.5 var(--s-serif)}
.shadow-shelf{padding:70px 0 100px;border-top:1px solid var(--s-line);scroll-margin-top:30px}.shadow-shelf>header{margin-bottom:36px}.artifact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,3vw,42px)}.shadow-object a{display:block;text-decoration:none}.shadow-object img,.shadow-object__blank{display:grid;width:100%;aspect-ratio:3/4;object-fit:cover;place-items:center;border:1px solid rgba(220,204,177,.26);background:#15120e;color:#6f6454;font:12px var(--s-sans);letter-spacing:.25em;filter:sepia(.28) brightness(.75);transition:filter .4s,transform .4s}.shadow-object a:hover img,.shadow-object a:focus-visible img{filter:sepia(.12) brightness(.96);transform:translateY(-5px)}.shadow-object__type{display:block;margin-top:16px;color:#8c806f;font-size:8px;letter-spacing:.22em}.shadow-object h3{margin:7px 0 8px;font:400 1.65rem var(--s-serif)}.shadow-object p{margin:0;color:#9f9585;font:14px/1.55 var(--s-serif)}.artifact-list{border-top:1px solid var(--s-line)}.artifact-list article a{display:grid;grid-template-columns:120px minmax(180px,.8fr) minmax(220px,1.2fr) 60px;gap:30px;align-items:start;padding:23px 4px;border-bottom:1px solid var(--s-line);text-decoration:none;transition:padding .3s,background .3s}.artifact-list article a:hover,.artifact-list article a:focus-visible{padding-left:14px;background:rgba(218,198,164,.035)}.artifact-list time,.artifact-list span{color:#8e826f;font-size:9px;letter-spacing:.15em}.artifact-list h3{margin:0;font:400 1.45rem var(--s-serif)}.artifact-list p{margin:0;color:#9e9484;font:14px/1.5 var(--s-serif)}.photo-wall{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-flow:dense;gap:14px}.photo-wall a{position:relative;grid-column:span 4;display:block;min-height:310px;overflow:hidden;background:#15120e;text-decoration:none}.photo-wall a:nth-child(4n+1){grid-column:span 5}.photo-wall a:nth-child(4n+2){grid-column:span 3}.photo-wall img{width:100%;height:100%;min-height:310px;object-fit:cover;filter:grayscale(.35) sepia(.32) brightness(.64);transition:filter .5s,transform .8s}.photo-wall a:hover img,.photo-wall a:focus-visible img{filter:grayscale(.1) sepia(.12) brightness(.9);transform:scale(1.025)}.photo-wall b{position:absolute;left:15px;bottom:13px;padding:6px 8px;background:rgba(7,6,5,.78);font:400 italic 13px var(--s-serif)}.photo-wall span{display:grid;min-height:310px;place-items:center;color:#736856;font-size:10px;letter-spacing:.2em}.empty-shelf{grid-column:1/-1;margin:0;padding:45px 0;color:#817767;font:italic 17px var(--s-serif)}.correspondence{padding:90px 0 100px;border-top:1px solid var(--s-line);text-align:center}.correspondence>p:not(:first-child){max-width:590px;margin:22px auto 34px;color:#a99e8d;font:16px/1.6 var(--s-serif)}.correspondence a{font-size:10px;letter-spacing:.25em;text-decoration:none;border-bottom:1px solid var(--s-amber);padding-bottom:7px}.shadow__footer{position:relative;z-index:3;display:flex;justify-content:space-between;align-items:end;gap:40px;max-width:1280px;margin:0 auto;padding-top:32px;border-top:1px solid var(--s-line)}.shadow__footer p{max-width:650px;margin:0;color:#a89c89;font:italic clamp(1.1rem,2.2vw,1.7rem)/1.45 var(--s-serif)}.shadow__footer span{color:#877b69;font-size:9px;letter-spacing:.22em;white-space:nowrap}
.shadow-object__story-link>img{height:auto;aspect-ratio:auto;object-fit:contain;object-position:center;background:#e8dfcf}
@media(max-width:850px){.threshold__aside{display:none}.shadow__hero{grid-template-columns:1fr;padding-top:100px}.shadow__self{width:min(78%,360px);justify-self:end}.collection-doors{grid-template-columns:repeat(2,1fr);gap:16px}.artifact-grid{grid-template-columns:repeat(2,1fr)}.artifact-list article a{grid-template-columns:90px 1fr}.artifact-list article p{grid-column:2}.artifact-list article span{display:none}.photo-wall a,.photo-wall a:nth-child(n){grid-column:span 6}.shadow__figure{width:35vw}.shadow__gramophone{width:62vw}}
@media(max-width:520px){.frequency-return,.frequency-next{top:15px}.frequency-return{left:15px}.frequency-next{right:15px}.threshold h1{font-size:17vw}.threshold__signal>p{letter-spacing:.3em}.shadow{padding-inline:18px}.shadow__mast span:last-child{display:none}.shadow__hero{padding:85px 0 65px}.shadow__statement h1{font-size:25vw}.shadow__self{width:82%}.collections__header{display:block}.collections__header>p{margin-top:12px;text-align:left}.collection-doors,.artifact-grid{grid-template-columns:1fr}.collection-doors a,.collection-doors a:nth-child(n){min-height:180px;transform:none}.collection-doors strong{margin-top:27px}.artifact-list article a{grid-template-columns:1fr;gap:7px}.artifact-list article p{grid-column:1}.photo-wall a,.photo-wall a:nth-child(n){grid-column:1/-1}.shadow__footer{display:block}.shadow__footer span{display:block;margin-top:30px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.threshold{position:relative;min-height:72svh}.threshold__enter{display:none}.shadow{opacity:1;transform:none}}

/* SHADOW opens directly into the room; keep the atmosphere without obscuring it. */
.photo-wall img,
.photo-wall a:hover img,
.photo-wall a:focus-visible img {
  transform: none;
  filter: grayscale(.35) sepia(.32) brightness(.64);
  transition: none;
}

.photo-wall a:focus-visible,
.shadow-photo-bay:focus-visible {
  outline: 1px solid var(--s-amber);
  outline-offset: 3px;
}

.shadow-photo-bay img,
.shadow-photo-bay:hover img,
.shadow-photo-bay:focus-visible img {
  transform: none;
  filter: saturate(.68) sepia(.16) brightness(.62);
  transition: none;
}

.shadow {
  background:
    radial-gradient(circle at 72% 18%, rgba(181, 150, 102, .2), transparent 32%),
    radial-gradient(circle at 20% 58%, rgba(150, 132, 102, .12), transparent 36%),
    #12100d;
  opacity: 1;
  transform: none;
  transition: none;
}

.shadow:before {
  background:
    linear-gradient(90deg, rgba(0, 0, 0, .42), transparent 16% 84%, rgba(0, 0, 0, .42)),
    repeating-linear-gradient(0deg, rgba(255, 255, 255, .012) 0 1px, transparent 1px 4px);
}

.shadow__hero {
  width: min(100%, 1600px);
  margin-inline: auto;
  min-height: 540px;
  padding: 58px 0 52px;
}

.collections,
.shadow-shelf,
.correspondence,
.shadow__footer {
  width: min(100%, 1600px);
  max-width: none;
}

.shadow__statement h1 {
  margin-top: 18px !important;
  color: #eadcc2;
  font-size: clamp(3.8rem, 7vw, 7.2rem);
  line-height: .78;
  text-shadow: 2px 2px 0 #594936, 5px 8px 22px rgba(0, 0, 0, .72);
  transform: none;
}

.channel-code {
  margin: 0 0 .45rem;
  color: #8f826f;
  font-size: .56rem;
  letter-spacing: .22em;
}

.shadow__thesis {
  margin-top: 30px;
  color: #eee2cc;
}

.shadow__explanation {
  color: #d3c6b1;
}

.shadow__self {
  width: min(100%, 340px);
}

.shadow__self img {
  max-height: 430px;
  filter: sepia(.25) grayscale(.14) contrast(1.08) brightness(.9);
  box-shadow: 0 24px 64px rgba(0, 0, 0, .72);
}

.photo-series {
  padding: clamp(22px, 3vw, 42px);
  border: 1px solid rgba(213, 195, 165, .22);
  background: rgba(12, 10, 8, .58);
  box-shadow: 0 30px 90px rgba(0, 0, 0, .2);
}

.photo-series__header {
  display: flex;
  justify-content: space-between;
  align-items: end;
  gap: 24px;
  margin-bottom: clamp(24px, 3vw, 44px);
  padding-bottom: 16px;
  border-bottom: 1px solid var(--s-line);
}

.photo-series__header p {
  margin: 0;
  color: #8f826f;
  font-size: 9px;
  letter-spacing: .24em;
  text-transform: uppercase;
}

.photo-series__header h3 {
  margin: 8px 0 0;
  color: #ded1ba;
  font: 400 clamp(1.8rem, 3vw, 3rem)/1 var(--s-serif);
}

.photo-series__frames {
  display: grid;
  grid-template-columns: minmax(0, 1.38fr) minmax(0, 1fr);
  gap: clamp(18px, 3vw, 50px);
  align-items: start;
}

.photo-series figure {margin: 0;}
.photo-series figure:nth-child(2) {margin-top: clamp(46px, 7vw, 105px);}

.photo-series .photo-series__wide {
  grid-column: 1 / -1;
  width: min(86%, 1280px);
  margin: clamp(34px, 5vw, 76px) auto 0;
}

.photo-series .photo-series__wide--offset {
  width: min(72%, 1080px);
  margin-left: auto;
  margin-right: 0;
}

.photo-series .photo-series__wide--bleed {width: 100%;}

.photo-series .photo-series__wide--offset-left {
  width: min(72%, 1080px);
  margin-left: 0;
  margin-right: auto;
}

.photo-series img {
  display: block;
  width: 100%;
  aspect-ratio: 2.842 / 1;
  object-fit: cover;
  border: 1px solid rgba(223, 207, 179, .22);
  box-shadow: 0 18px 50px rgba(0, 0, 0, .5);
}

.photo-series--single {
  width: min(86%, 1280px);
  margin: clamp(34px, 5vw, 76px) auto 0;
}

.photo-series--single img {aspect-ratio: 16 / 9;}

.photo-series--panorama {margin-top: clamp(34px, 5vw, 76px);}
.photo-series--panorama img {aspect-ratio: 2560 / 716;}

.photo-series--square {
  width: min(72%, 1040px);
  margin: clamp(34px, 5vw, 76px) auto 0;
}

.photo-series--square figure {width: min(100%, 760px); margin-inline: auto;}
.photo-series--square img {aspect-ratio: 1;}

.photo-series figcaption {
  display: flex;
  gap: 12px;
  margin-top: 12px;
  color: #9c907e;
  font: italic 13px var(--s-serif);
}

.photo-series figcaption span {
  color: #776b5a;
  font: 8px var(--s-sans);
  letter-spacing: .2em;
}

.photo-series + .photo-wall {margin-top: 50px;}

.shadow-photo-index__header {
  display: flex;
  justify-content: space-between;
  align-items: end;
  gap: 32px;
  margin-bottom: 34px;
}

.shadow-photo-index__header > p {
  max-width: 310px;
  margin: 0;
  color: #8e826f;
  font: 13px/1.6 var(--s-serif);
  text-align: right;
}

.shadow-photo-bays {
  display: grid;
  grid-template-columns: 1.35fr .65fr;
  grid-template-rows: repeat(3, 140px);
  gap: 12px;
}

.shadow-photo-bay {
  position: relative;
  display: block;
  overflow: hidden;
  border: 1px solid rgba(213, 195, 165, .2);
  background: #090807;
  text-decoration: none;
}

.shadow-photo-bay--europe {grid-row: 1 / 4;}
.shadow-photo-bay--pittsburgh {grid-column: 2;}
.shadow-photo-bay--landscape,
.shadow-photo-bay--afterimage {grid-column: 2;}
.shadow-photo-bay--landscape {grid-row: 1;}
.shadow-photo-bay--pittsburgh {grid-row: 2; margin-left: 9%;}
.shadow-photo-bay--afterimage {grid-row: 3; margin-left: 18%;}

.shadow-photo-bay img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(.68) sepia(.16) brightness(.62);
  transition: transform .8s ease, filter .5s ease;
}

.shadow-photo-bay--europe img {object-position: center;}
.shadow-photo-bay--afterimage img {object-position: 52% 48%;}

.shadow-photo-bay:after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 38%, rgba(5, 4, 3, .9));
  pointer-events: none;
}

.shadow-photo-bay span {
  position: absolute;
  z-index: 2;
  right: 22px;
  bottom: 19px;
  left: 22px;
  display: grid;
  gap: 5px;
}

.shadow-photo-bay small,
.shadow-photo-bay em {color: #a89b87; font: 8px var(--s-sans); letter-spacing: .2em; text-transform: uppercase;}
.shadow-photo-bay strong {font: 400 clamp(1.35rem, 2.6vw, 2.6rem)/1 var(--s-serif);}
.shadow-photo-bay em {font-style: normal; letter-spacing: .13em;}
.shadow-photo-bay:hover img,
.shadow-photo-bay:focus-visible img {transform: scale(1.025); filter: saturate(.9) sepia(.06) brightness(.82);}

.shadow-photo-index__all {
  display: block;
  width: fit-content;
  margin: 27px 0 0 auto;
  padding-bottom: 7px;
  border-bottom: 1px solid var(--s-amber);
  color: #b8ab96;
  font-size: 9px;
  letter-spacing: .22em;
  text-decoration: none;
}

.shadow-access {
  position: relative;
  z-index: 4;
  display: flex;
  justify-content: flex-end;
  gap: 1.25rem;
  width: min(100%, 1600px);
  margin: 0 auto;
  padding: 0 8rem 15px;
  border-bottom: 1px solid var(--s-line);
  color: #8f826f;
  font-size: 9px;
  letter-spacing: .2em;
  text-transform: uppercase;
}

.shadow-access::before {
  content: "SHADOW";
  margin-right: auto;
  color: #746959;
}

.shadow-access a {
  color: inherit;
  text-decoration: none;
  transition: color .2s ease;
}

.shadow-access a:hover,
.shadow-access a:focus-visible {
  color: var(--s-bone);
}

.shadow-access a:focus-visible {
  outline: 1px solid var(--s-amber);
  outline-offset: 4px;
}

.shadow-access__primary {
  color: #c5aa7e !important;
}

.shadow-membership {
  position: relative;
  z-index: 3;
  display: grid;
  grid-template-columns: minmax(0, .86fr) minmax(0, 1.14fr);
  gap: clamp(35px, 6vw, 90px);
  width: min(100%, 1600px);
  margin: 0 auto;
  padding: 78px 0 90px;
  border-top: 1px solid var(--s-line);
  scroll-margin-top: 30px;
}

.shadow-membership__introduction > p:first-child {
  margin: 0;
  color: #978b79;
  font-size: 9px;
  letter-spacing: .25em;
  text-transform: uppercase;
}

.shadow-membership__introduction h2 {
  max-width: 13ch;
  margin: 12px 0 24px;
  color: #e2d5bd;
  font: 400 clamp(2.2rem, 4.6vw, 4.5rem)/.96 var(--s-serif);
  letter-spacing: -.035em;
}

.shadow-membership__introduction > p:last-child {
  max-width: 590px;
  margin: 0;
  color: #b8ad9a;
  font: 16px/1.72 var(--s-serif);
}

.shadow-membership__details {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(22px, 3vw, 46px);
}

.shadow-membership__details > div {
  padding: 24px 0 0;
  border-top: 1px solid rgba(213, 195, 165, .28);
}

.shadow-membership__details h3 {
  margin: 0 0 18px;
  color: #d8cab1;
  font: 400 1.35rem/1.15 var(--s-serif);
}

.shadow-membership__details ul {
  display: grid;
  gap: 12px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.shadow-membership__details li {
  position: relative;
  padding-left: 17px;
  color: #a99e8c;
  font: 14px/1.55 var(--s-serif);
}

.shadow-membership__details li::before {
  content: "·";
  position: absolute;
  left: 0;
  color: var(--s-amber);
}

.shadow-membership__public-note,
.shadow-membership__actions {
  grid-column: 2;
}

.shadow-membership__public-note {
  margin: 0;
  padding-top: 18px;
  border-top: 1px solid rgba(213, 195, 165, .14);
  color: #8f8371;
  font: italic 13px/1.5 var(--s-serif);
}

.shadow-membership__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 16px 26px;
  margin-top: 0;
}

.shadow-membership__join,
.shadow-membership__signin {
  font-size: 9px;
  letter-spacing: .2em;
  text-decoration: none;
  text-transform: uppercase;
}

.shadow-membership__join {
  padding: 13px 17px;
  border: 1px solid #aa8d60;
  background: #aa8d60;
  color: #100e0b;
}

.shadow-membership__signin {
  padding-bottom: 6px;
  border-bottom: 1px solid rgba(213, 195, 165, .42);
  color: #b9ad99;
}

.shadow-membership__join:hover,
.shadow-membership__join:focus-visible {
  border-color: #d1b98f;
  background: #d1b98f;
}

.shadow-membership__signin:hover,
.shadow-membership__signin:focus-visible {
  color: var(--s-bone);
}

.shadow-object__byline {display:block;margin:-2px 0 10px;color:#b4a895;font:italic 12px/1.4 var(--s-serif);letter-spacing:.04em;}

@media(max-width:850px) {
  .shadow-access {padding-right: 5rem; padding-left: 5rem;}
  .shadow__hero {padding-top: 76px;}
  .shadow-membership {grid-template-columns: 1fr;}
  .shadow-membership__details {grid-template-columns: repeat(2, minmax(0, 1fr));}
  .shadow-membership__public-note,
  .shadow-membership__actions {grid-column: 1; margin-top: 0;}
}

@media(max-width:520px) {
  .shadow-access {
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: .8rem 1rem;
    margin-top: 28px;
    padding: 0 0 14px;
    font-size: 8px;
    letter-spacing: .14em;
  }
  .shadow-access::before {flex-basis: 100%;}
  .shadow__hero {padding: 70px 0 48px;}
  .shadow__statement h1 {font-size: 17vw;}
  .shadow__self {width: min(82%, 310px);}
  .photo-series {padding: 16px;}
  .photo-series__header {display: block;}
  .photo-series__header > p {margin-top: 12px;}
  .photo-series__frames {grid-template-columns: 1fr;}
  .photo-series figure:nth-child(2) {margin-top: 10px;}
  .photo-series .photo-series__wide {
    grid-column: auto;
    width: 100%;
    margin-top: 10px;
  }
  .photo-series .photo-series__wide--offset {margin-left: 0;}
  .photo-series--single {
    width: 100%;
    margin-top: 10px;
  }
  .photo-series--panorama {margin-top: 10px;}
  .photo-series__panorama-frame {
    overflow-x: auto;
    scrollbar-width: thin;
    scrollbar-color: #776b5a #12100d;
  }
  .photo-series--panorama img {
    width: 720px;
    max-width: none;
  }
  .photo-series--square {
    width: 100%;
    margin-top: 10px;
  }
  .shadow-photo-index__header {display: block;}
  .shadow-photo-index__header > p {margin-top: 14px; text-align: left;}
  .shadow-photo-bays {grid-template-columns: 1fr; grid-template-rows: repeat(4, 180px);}
  .shadow-photo-bay,
  .shadow-photo-bay--europe,
  .shadow-photo-bay--landscape,
  .shadow-photo-bay--pittsburgh,
  .shadow-photo-bay--afterimage {display: block; grid-column: 1; grid-row: auto; margin: 0; clip-path: none;}
  .shadow-membership {padding: 62px 0 72px;}
  .shadow-membership__details {grid-template-columns: 1fr;}
  .shadow-membership__actions {align-items: flex-start; flex-direction: column;}
}

/* SHADOW palette: descent, encounter, integration, revelation.
   Color-only overrides preserve the established room layout and behavior. */
:root {
  --s-abyss: #100f11;
  --s-black: #100f11;
  --s-charcoal: #2b2b2b;
  --s-indigo: #1a2238;
  --s-plum: #3b2443;
  --s-sage: #7a8b7b;
  --s-sulfur: #e1b80d;
  --s-bone: #ddd6c8;
  --s-dim: #aaa99f;
  --s-line: rgba(122, 139, 123, .28);
  --s-amber: #e1b80d;
}

html,
body {background: var(--s-abyss); color: var(--s-bone);}

.frequency-return,
.frequency-next {color: rgba(122, 139, 123, .78);}

.threshold {
  background:
    radial-gradient(ellipse at 50% 45%, #e7d35f 0, #a9b09a 38%, #313849 100%);
  box-shadow: inset 0 0 18vw rgba(225, 184, 13, .24);
}

.threshold__lights i {
  background: #e7d35f;
  box-shadow:
    0 0 18px 10px rgba(225, 184, 13, .72),
    0 0 70px 32px rgba(202, 196, 107, .46),
    0 0 190px 100px rgba(122, 139, 123, .36),
    0 0 380px 190px rgba(221, 214, 200, .22);
}

.threshold__signal {color: var(--s-abyss); text-shadow: 0 1px rgba(221, 214, 200, .56), 0 0 42px rgba(225, 184, 13, .28);}
.threshold__signal > p,
.threshold__aside {color: rgba(26, 34, 56, .68);}
.threshold h1 {color: rgba(16, 15, 17, .88);}
.threshold__enter {color: rgba(26, 34, 56, .82);}
.threshold__enter img {box-shadow: 0 5px 18px rgba(26, 34, 56, .42);}

.shadow {
  background:
    radial-gradient(circle at 76% 7%, rgba(225, 184, 13, .11), transparent 22%),
    radial-gradient(circle at 72% 18%, rgba(122, 139, 123, .23), transparent 34%),
    radial-gradient(circle at 18% 51%, rgba(59, 36, 67, .22), transparent 36%),
    linear-gradient(180deg, #1a2238 0%, #100f11 24%, #15121a 58%, #100f11 100%);
}

.shadow::before {
  background:
    linear-gradient(90deg, rgba(7, 9, 16, .7), transparent 16% 84%, rgba(7, 9, 16, .7)),
    repeating-linear-gradient(0deg, rgba(221, 214, 200, .01) 0 1px, transparent 1px 4px);
}

.shadow__haze i {
  background: radial-gradient(ellipse, rgba(122, 139, 123, .2), rgba(59, 36, 67, .08) 45%, transparent 72%);
}

.shadow__gramophone,
.shadow__figure {filter: grayscale(1) sepia(0) hue-rotate(180deg);}

.shadow__mast,
.shadow-access {color: rgba(162, 174, 162, .76);}
.shadow-access::before {color: rgba(122, 139, 123, .7);}
.shadow-access__primary {color: var(--s-sulfur) !important;}

.shadow-access {padding-inline: 0;}

.channel-code,
.shadow__kicker,
.collections__header p,
.shadow-shelf > header p,
.correspondence > p:first-child,
.photo-series__header p,
.shadow-membership__introduction > p:first-child {color: #95a497;}

.shadow__statement h1 {
  color: var(--s-bone);
  text-shadow: 2px 2px 0 rgba(59, 36, 67, .92), 5px 8px 22px rgba(4, 5, 10, .78);
}

.shadow__thesis {color: #e4dece;}
.shadow__explanation,
.shadow-membership__introduction > p:last-child {color: #c2beb4;}

.shadow__self::before {border-color: rgba(122, 139, 123, .54);}
.shadow__self img {
  filter: grayscale(.18) saturate(.7) contrast(1.08) brightness(.84);
  box-shadow: 0 24px 64px rgba(4, 5, 10, .76);
}
.shadow__self figcaption {border-left-color: var(--s-sulfur); background: rgba(26, 34, 56, .92);}

.collection-doors a {border-color: rgba(122, 139, 123, .34);}
.collection-doors a:nth-child(1) {background: rgba(26, 34, 56, .82);}
.collection-doors a:nth-child(2) {background: rgba(59, 36, 67, .68);}
.collection-doors a:nth-child(3) {background: rgba(42, 51, 47, .9);}
.collection-doors a:nth-child(4) {background: rgba(43, 43, 43, .88);}
.collection-doors a:hover,
.collection-doors a:focus-visible {background: #303a35; border-color: rgba(225, 184, 13, .72);}
.collection-doors span,
.shadow-object__type,
.artifact-list time,
.artifact-list span {color: #8f9f91;}
.collection-doors small,
.shadow-object p,
.artifact-list p {color: #aaa99f;}

.shadow-membership__introduction h2,
.shadow-membership__details h3,
.photo-series__header h3 {color: var(--s-bone);}
.shadow-membership__details > div {border-top-color: rgba(122, 139, 123, .42);}
.shadow-membership__details li {color: #aaa99f;}
.shadow-membership__details li::before {color: var(--s-sulfur);}
.shadow-membership__public-note {border-top-color: rgba(122, 139, 123, .22); color: #8f9f91;}
.shadow-membership__join {border-color: var(--s-sulfur); background: var(--s-sulfur); color: var(--s-abyss);}
.shadow-membership__join:hover,
.shadow-membership__join:focus-visible {border-color: #f0d55b; background: #f0d55b;}
.shadow-membership__signin {border-bottom-color: rgba(122, 139, 123, .58); color: #bcbcaf;}

.shadow-object img,
.shadow-object__blank {border-color: rgba(122, 139, 123, .35); background: var(--s-indigo); color: var(--s-sage); filter: grayscale(.14) saturate(.74) brightness(.82);}
.shadow-object a:hover img,
.shadow-object a:focus-visible img {filter: grayscale(0) saturate(.88) brightness(.96);}
.shadow-object__byline {color: #9da99e;}
.shadow-object__read {border-bottom-color: var(--s-sulfur); color: #c8c5ba;}
.artifact-list article a:hover,
.artifact-list article a:focus-visible {background: rgba(122, 139, 123, .055);}

.photo-series {border-color: rgba(122, 139, 123, .32); background: rgba(26, 34, 56, .46); box-shadow: 0 30px 90px rgba(4, 5, 10, .3);}
.photo-series img {border-color: rgba(122, 139, 123, .34); box-shadow: 0 18px 50px rgba(4, 5, 10, .56);}
.photo-series figcaption {color: #aaa99f;}
.photo-series figcaption span {color: #7f9181;}
.shadow-photo-index__header > p {color: #9da99e;}
.shadow-photo-bay {border-color: rgba(122, 139, 123, .32); background: var(--s-indigo);}
.shadow-photo-bay::after {background: linear-gradient(180deg, transparent 34%, rgba(16, 15, 17, .94));}
.shadow-photo-bay img,
.shadow-photo-bay:hover img,
.shadow-photo-bay:focus-visible img {filter: saturate(.62) sepia(0) brightness(.7);}
.shadow-photo-bay small,
.shadow-photo-bay em {color: #9cac9e;}
.shadow-photo-index__all,
.correspondence a {border-bottom-color: var(--s-sulfur); color: #c8c5ba;}

.correspondence > p:not(:first-child),
.shadow__footer p {color: #aaa99f;}
.shadow__footer span {color: #8f9f91;}

.photo-wall a {background: var(--s-indigo);}
.photo-wall img,
.photo-wall a:hover img,
.photo-wall a:focus-visible img {filter: grayscale(.2) saturate(.65) sepia(0) brightness(.7);}
.photo-wall b {background: rgba(26, 34, 56, .86);}
.photo-wall span,
.empty-shelf {color: #859687;}

.photo-wall a:focus-visible,
.shadow-photo-bay:focus-visible,
.shadow-access a:focus-visible {outline-color: var(--s-sulfur);}

@media(max-width:520px) {
  .photo-series__panorama-frame {scrollbar-color: var(--s-sage) var(--s-abyss);}
}

/* World navigation is a separate instrument from SHADOW's publication nav. */
.frequency-band {
  position: sticky;
  top: 0;
  z-index: 90;
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  min-height: 46px;
  padding: 0 clamp(18px, 2.4vw, 36px);
  border-bottom: 1px solid rgba(221, 214, 200, .64);
  background: #8f9f91;
  box-shadow: 0 8px 30px rgba(7, 9, 16, .34);
  color: var(--s-abyss);
}

.frequency-band .frequency-return,
.frequency-band .frequency-next {
  position: static;
  inset: auto;
  z-index: auto;
  display: flex;
  align-items: center;
  min-height: 46px;
  color: inherit;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: .24em;
  text-decoration: none;
  text-shadow: none;
  transition: color .2s ease;
}

.frequency-band .frequency-next {justify-self: end;}

.frequency-band .frequency-return:hover,
.frequency-band .frequency-next:hover,
.frequency-band .frequency-return:focus-visible,
.frequency-band .frequency-next:focus-visible {
  color: var(--s-bone);
  background: transparent;
  box-shadow: none;
  text-decoration: none;
}

.frequency-band .frequency-return:focus-visible,
.frequency-band .frequency-next:focus-visible {
  outline: 0;
  text-decoration: underline;
  text-decoration-color: rgba(221, 214, 200, .72);
  text-underline-offset: 5px;
}

@media(max-width:520px) {
  .frequency-band {
    min-height: 44px;
    padding-inline: 14px;
  }

  .frequency-band .frequency-return,
  .frequency-band .frequency-next {
    min-height: 44px;
    font-size: 8px;
    letter-spacing: .18em;
  }
}
