/* A quiet lighting system; every effect has a finite arrival or an input.
   Content is visible by default. No-JS and reduced-motion retain the layout. */
.archive-design { --am-ease:cubic-bezier(.22,1,.36,1); }
.am-room-scene { position:absolute; inset:0; z-index:-2; }
.archive-design .tl-hero-photo img { z-index:0; }
.am-room-light { position:absolute; inset:0; width:100%; height:100%; z-index:1; pointer-events:none; }
.am-room-shade,.am-room-bank { opacity:0; }
.am-room-lamp { opacity:.38; }
.am-room-ceiling { opacity:.5; }
.archive-design .am-card { position:relative; isolation:isolate; }
.archive-design .am-card::before {
  content:''; position:absolute; inset:0; z-index:3; pointer-events:none;
  background:radial-gradient(460px circle at var(--am-x,50%) var(--am-y,0%),rgba(149,183,255,.13),transparent 68%);
  opacity:0;
}
.archive-design .am-card::after {
  content:''; position:absolute; top:-1px; left:12%; right:12%; height:1px; z-index:4; pointer-events:none;
  background:linear-gradient(90deg,transparent,#8fb2ff,transparent); opacity:0; transform:scaleX(.55);
}
.archive-design .am-card:focus-visible { border-color:#688cdb; }
.archive-design .am-card:focus-visible::before,.archive-design .am-card:focus-visible::after { opacity:1; }
.archive-design .am-card:focus-visible::after { transform:scaleX(1); }
.archive-design .am-display { position:relative; }
.archive-design .am-display::after {
  content:''; position:absolute; top:0; left:12%; right:12%; height:2px; z-index:3; pointer-events:none;
  background:linear-gradient(90deg,transparent,#a8c5ff,transparent);
  box-shadow:0 2px 20px 2px rgba(71,125,255,.3); opacity:.8;
}
.archive-design .ak-sponsor-tabs a { position:relative; border-bottom-color:transparent; }
.archive-design .ak-sponsor-tabs a::after {
  content:''; position:absolute; height:3px; left:0; right:0; bottom:0;
  background:var(--ak-blue); transform:scaleX(0); transform-origin:left;
}
.archive-design .ak-sponsor-tabs a[aria-selected=true]::after { transform:scaleX(1); }
@media (hover:hover) and (pointer:fine) {
  .archive-design .am-card:hover { border-color:#688cdb; }
  .archive-design .am-card:hover::before,.archive-design .am-card:hover::after { opacity:1; }
  .archive-design .am-card:hover::after { transform:scaleX(1); }
}
@media (prefers-reduced-motion:no-preference) {
  .archive-design .am-card { transition:transform .55s var(--am-ease),border-color .4s ease; }
  .archive-design .am-card::before { transition:opacity .5s ease; }
  .archive-design .am-card::after { transition:opacity .4s ease,transform .65s var(--am-ease); }
  .archive-design .am-card :is(.ak-card__photo,.ak-era__photo,.ak-sponsor__photo,.ak-topic__visual--photo,.mf-era__photo,.sp-index-card__photo) img { transition:transform .85s var(--am-ease); }
  .archive-design .am-card :is(.text-link > span:last-child,.ak-era__arrow,.ak-sponsor__arrow) { transition:translate .5s var(--am-ease); }
  .archive-design .am-card:focus-visible { transform:translateY(-5px); }
  .archive-design .am-card:focus-visible :is(.ak-card__photo,.ak-era__photo,.ak-sponsor__photo,.ak-topic__visual--photo,.mf-era__photo,.sp-index-card__photo) img { transform:scale(1.035); }
  .archive-design .am-card:focus-visible :is(.text-link > span:last-child,.ak-era__arrow,.ak-sponsor__arrow) { translate:3px 0; }
  .archive-design :is(.tl-primary,.button,.ak-view-switch a,.xr-controls button) { transition:transform .35s var(--am-ease),background-color .25s ease; }
  .archive-design :is(.tl-primary,.button,.ak-view-switch a,.xr-controls button):active { transform:scale(.97); transition-duration:.1s; }
  .archive-design .ak-sponsor-tabs a::after { transition:transform .45s var(--am-ease); }
  @media (hover:hover) and (pointer:fine) {
    .archive-design .am-card:hover { transform:translateY(-5px); }
    .archive-design .am-card:hover :is(.ak-card__photo,.ak-era__photo,.ak-sponsor__photo,.ak-topic__visual--photo,.mf-era__photo,.sp-index-card__photo) img { transform:scale(1.035); }
    .archive-design .am-card:hover :is(.text-link > span:last-child,.ak-era__arrow,.ak-sponsor__arrow) { translate:3px 0; }
  }
}
@media (prefers-reduced-motion:reduce) {
  .archive-design .am-card { transform:none!important; }
  .am-room-light { display:none; }
}
