/* THE MIDWAY GOES STILL — EDITORIAL FINISH
   Photographs first. Quiet brass borders. Easier reading and listening.
   All original art, prose, and audio are untouched. */
:root { --midway-mount:#131c1f; --midway-brass:rgba(211,177,129,.48); }

/* VISUAL RESTRAINT: featured museum prints get a double keyline;
   smaller photographs have a single narrow edge. */
.gallery-grid .photo-plate {
  display:flex;
  flex-direction:column;
  overflow:hidden;
  padding:0!important;
  border:1px solid rgba(209,173,121,.40);
  border-radius:3px;
  background:#0c1519;
  box-shadow:0 8px 22px rgba(0,0,0,.28);
  min-width:0;
  transition:border-color .2s ease,box-shadow .2s ease;
}
.gallery-grid .photo-plate > img {
  display:block;
  flex:1 1 auto;
  min-height:0;
  width:100%;
  height:100%;
  border:0!important;
  border-radius:0;
  object-fit:cover;
  filter:brightness(1.035) saturate(.86) contrast(1.04);
}
.gallery-grid .photo-plate .gallery-item__caption {
  position:relative!important;
  inset:auto!important;
  flex:0 0 auto;
  display:block;
  width:100%;
  padding:12px 14px 13px!important;
  background:#121b1e!important;
  text-shadow:none!important;
  border-top:1px solid rgba(203,174,134,.22);
  color:#f2e6d5;
}
.gallery-grid .photo-plate .gallery-item__caption strong {
  font-size:1.24rem;
  line-height:1.18;
  font-weight:400;
  color:#f4e8d8;
}
.gallery-grid .photo-plate .gallery-item__caption small {
  font-size:.80rem;
  line-height:1.47;
  letter-spacing:0;
  color:#c9c7c0;
  margin-top:5px;
}
.gallery-grid--story > .photo-plate--feature {
  padding:4px!important;
  border-color:rgba(223,188,140,.65);
  background:#332b23;
  box-shadow:0 0 0 1px rgba(204,163,105,.25),0 16px 39px rgba(0,0,0,.37);
}
.gallery-grid--story > .photo-plate--feature > img {
  box-shadow:inset 0 0 0 1px rgba(240,211,164,.2);
}
.gallery-grid--story > .photo-plate--feature .gallery-item__caption {
  background:#172022!important;
  padding:15px 18px 17px!important;
}
.gallery-grid--story > .photo-plate--feature .gallery-item__caption strong {font-size:1.7rem!important;}
.gallery-grid--story > .photo-plate--feature .gallery-item__caption small {font-size:.91rem!important;}
.gallery-grid .photo-plate:hover,.gallery-grid .photo-plate:focus-visible {
  border-color:rgba(243,208,159,.84);
  box-shadow:0 13px 31px rgba(0,0,0,.37);
}
.gallery-grid .photo-plate:hover > img { filter:brightness(1.08) saturate(.89) contrast(1.04); }
.gallery-grid--appendix .photo-plate {border-color:rgba(189,158,118,.34);box-shadow:0 5px 15px rgba(0,0,0,.20)}
.gallery-grid--story {grid-auto-rows:250px;gap:18px;}
.gallery-grid--appendix {grid-auto-rows:230px;gap:15px;}
.gallery-mobile-tip { display:none; }

/* TYPOGRAPHY: readable archive labels on a small phone. */
.overline {font-size:.74rem;letter-spacing:.14em;line-height:1.5;}
.gallery-act__number {font-size:.74rem;letter-spacing:.12em;color:#d7b78b;}
.gallery-act__header h3 {letter-spacing:-.02em;}
.gallery-story-note {color:#d1c6b7;}
.soundtrack-aside__caption{font-size:.70rem;letter-spacing:.12em;color:#b9ac98;}
.recording-current__label{font-size:.69rem;letter-spacing:.11em;color:#d8b889;}
.recordings__count{font-size:.76rem;letter-spacing:.07em;}
.recording-row__name{font-size:1rem;}
.recording-row__duration{font-size:.78rem;color:#cbc6bd;}

/* FAIRY LIGHTS: present across the full site, but let the artworks remain primary. */
.gallery-section .midway-ambient-glimmer:nth-child(3n) {display:none;}
.gallery-section .midway-ambient-glimmer {filter:brightness(.77);}
.gallery-section .midway-fairy-strand {opacity:.62;}
.gallery-section .gallery-item:nth-child(3n)::after {display:none;}
.gallery-section .gallery-item::before,.gallery-section .gallery-item::after {filter:brightness(.7);}
.storybook-section .midway-ambient-glimmer,.soundtrack-section .midway-ambient-glimmer {filter:brightness(.72);}
.soundtrack-section .midway-fairy-strand {opacity:.58;}
.soundtrack-section .midway-ambient-glimmer:nth-child(4n) {display:none;}

/* A useful, unambiguous album action above the current song. */
.album-play{
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  width:100%;min-height:56px;
  margin:0 0 16px;
  padding:12px 16px;
  background:linear-gradient(110deg,#dcc098,#c9a678);
  border:1px solid #e4caa4;
  border-radius:3px;
  box-shadow:0 4px 14px rgba(0,0,0,.19);
  color:#102025;cursor:pointer;
  transition:filter .2s,transform .2s;
}
.album-play:hover{filter:brightness(1.07);transform:translateY(-1px)}
.album-play:focus-visible {outline:2px solid #fff0d4;outline-offset:3px;}
.album-play__main{font-weight:750;font-size:.91rem;white-space:nowrap;display:flex;align-items:center;gap:10px;}
.album-play__icon{display:grid;place-items:center;width:27px;height:27px;border:1px solid rgba(16,32,37,.4);border-radius:50%;font-size:.69rem;padding-left:2px}
.album-play__sub{font-size:.72rem;color:#344147;text-align:right;line-height:1.35;}
.recording-current {border-color:rgba(195,163,121,.35);box-shadow:none;}
.recording-current__cover img{background:#111a1d;}
.recording-current audio{width:100%;}
.recordings__playlist{margin-top:20px;}

@media(max-width:950px){
  .gallery-grid--story{grid-auto-rows:250px;gap:15px;}
  .gallery-grid--appendix{grid-auto-rows:215px;gap:12px;}
}
@media(max-width:780px){
  .soundtrack-layout{display:flex;flex-direction:column;gap:12px;}
  .soundtrack-aside{width:100%;position:static;}
  .soundtrack-aside .overline{font-size:.73rem;margin:0;}
  .soundtrack-aside h2{font-size:clamp(2.55rem,10vw,3.6rem);line-height:1.08;margin:9px 0 12px;}
  .soundtrack-aside > p:not(.overline){font-size:.91rem;line-height:1.55;margin:0 0 5px;max-width:42ch;}
  .soundtrack-aside > img,.soundtrack-aside__caption,.soundtrack-aside .listen-shortcut{display:none!important;}
  .soundtrack-content{padding-top:0;width:100%;}
  .recordings{padding:17px 15px 18px;margin-bottom:0;}
  .recordings h3{font-size:clamp(1.8rem,7vw,2.35rem);margin:11px 0 7px;}
  .recordings__intro{font-size:.88rem;line-height:1.5;margin:0 0 16px;}
  .recordings__count{font-size:.73rem;}
  .recording-current{padding:13px;}
  .recording-current__identity{grid-template-columns:86px minmax(0,1fr);gap:13px;margin-bottom:13px;}
  .recording-current__details h4{font-size:clamp(1.48rem,5vw,1.9rem);line-height:1.17;margin:5px 0;}
  .recording-current__details p{font-size:.76rem;line-height:1.4;}
  .recording-current__actions{margin-top:10px;}
  .recordings__playlist{margin-top:17px;}
  .recording-row__choose{min-height:57px;}
  .gallery-grid--story{grid-auto-rows:255px;gap:11px;}
  .gallery-grid--appendix{grid-auto-rows:218px;gap:11px;}
  .gallery-act__number{font-size:.71rem;}
  .gallery-act__header h3{font-size:1.75rem;}
}
@media(max-width:650px){
  .gallery-grid--story{grid-auto-rows:245px;gap:12px;}
  .gallery-grid--appendix{grid-auto-rows:212px;gap:11px;}
  .gallery-grid--story > .photo-plate--feature{height:325px;min-height:325px;}
  .gallery-grid--story > .photo-plate--wide{height:270px;min-height:270px;}
  .gallery-grid--story > .photo-plate:last-child:not(.photo-plate--feature){max-height:none;}
  .gallery-grid .photo-plate .gallery-item__caption{padding:10px 10px 12px!important;}
  .gallery-grid .photo-plate .gallery-item__caption strong{font-size:1.08rem!important;}
  .gallery-grid .photo-plate .gallery-item__caption small{font-size:.80rem!important;line-height:1.38!important;}
  .gallery-grid--story > .photo-plate--feature .gallery-item__caption{padding:12px 14px 14px!important;}
  .gallery-grid--story > .photo-plate--feature .gallery-item__caption strong{font-size:1.49rem!important;}
  .gallery-grid--story > .photo-plate--feature .gallery-item__caption small{font-size:.87rem!important;}
  .gallery-grid--appendix .photo-plate .gallery-item__caption strong{font-size:1rem!important;}
  .gallery-grid--appendix .photo-plate .gallery-item__caption small{font-size:.77rem!important;}
  .gallery-mobile-tip{display:block;font-size:.80rem;line-height:1.5;color:#c6b7a4;margin:-20px 0 26px;}
  .album-play{min-height:57px;padding:11px 12px;}
  .album-play__sub{font-size:.67rem;}
  .overline{font-size:.73rem;letter-spacing:.12em;}
  .gallery-act__number{font-size:.70rem;}
  .gallery-act__header h3{font-size:1.7rem;}
}
@media(max-width:375px){
  .gallery-grid--story{grid-auto-rows:236px;}
  .gallery-grid--story > .photo-plate--feature{height:312px;min-height:312px;}
  .gallery-grid--story > .photo-plate--wide{height:260px;min-height:260px;}
  .gallery-grid--appendix{grid-auto-rows:220px;}
  .album-play{align-items:flex-start;flex-direction:column;gap:4px;}
  .album-play__sub{text-align:left;padding-left:37px;}
}
@media(prefers-reduced-motion:reduce){
  .album-play,.gallery-grid .photo-plate{transition:none!important;}
}
