/* Two deliberate light sources: hero signage and the sound exhibit. */
.optical-core img{display:block;width:100%;height:100%;object-fit:contain;transition:transform .35s ease-out;user-select:none}
.optical-core:after{display:none}
@media(prefers-reduced-motion:reduce){.optical-core img{transition:none}}
.hero-title h1 span{
  display:table;
  position:relative;
  isolation:isolate;
  padding:8px 20px 17px 10px;
  margin:12px 0 0 -10px;
  color:#f0ffa7;
  text-shadow:0 0 2px #fcffe6,0 0 10px #dcf65c66,0 0 28px #bdd43d33;
}
.hero-title h1 span:before{
  content:'';
  position:absolute;
  inset:0;
  z-index:-1;
  border:1px solid #98a74c99;
  border-radius:5px;
  background:linear-gradient(115deg,#d7ed5710,transparent 35%),#15181b;
  box-shadow:inset 0 0 0 4px #080d12,inset 0 0 0 5px #dbe97533,inset 0 0 24px #c8e14508,0 0 0 1px #06090e,0 5px 0 #07090c,0 13px 32px #0005,0 0 32px #bfd94c12;
}
.hero-title h1 span:after{
  content:'';
  position:absolute;
  width:38%;height:2px;
  bottom:0;left:12%;
  background:#e8fa91;
  box-shadow:0 0 5px #e8fa91bb,0 0 16px #c9e65177;
}
.sound-panel{
  clip-path:none;
  border:1px solid #74568d;
  border-radius:7px;
  background:radial-gradient(ellipse at 50% 25%,#56306b38,transparent 65%),#1a1027;
  box-shadow:inset 0 0 0 5px #100b17,inset 0 0 0 6px #b784e547,0 0 0 1px #09060e,0 8px 0 #090710,0 16px 36px #0004,0 0 30px #9a54c510;
}
.sound-panel:before{
  content:'';position:absolute;inset:12px;border:1px solid #b992da4d;border-radius:2px;
  pointer-events:none;
  box-shadow:inset 0 0 15px #ae68db08,0 0 10px #ac66cf0a;
}
.sound-panel:after{
  content:'';position:absolute;left:28px;right:28px;top:6px;height:2px;
  background:linear-gradient(90deg,transparent,#dcb3ff 20%,#e5ceff 75%,transparent);
  box-shadow:0 0 6px #cd9aef99,0 0 20px #a460db55;
  pointer-events:none;
}
.sound-panel .panel-top{color:#c4a5dc}
.sound-panel .panel-top>span:first-child{font-weight:600;letter-spacing:2px;color:#e0c6f2;text-shadow:0 0 10px #c17ce34d}
.sound-panel .wave-art i{background:linear-gradient(90deg,#72528f,#c39ce2,#eddaff);box-shadow:none}
.sound-panel .panel-bottom h3{color:#eadcf4;text-shadow:0 0 12px #b574d633}
.sound-panel .panel-bottom b{color:#e5c6ff;text-shadow:0 0 12px #b974e488}
.sound-panel:hover{border-color:#ae82cf}
@media(max-width:540px){
  .hero-title h1 span{padding:7px 12px 13px 7px;margin-left:-7px}
  .sound-panel:before{inset:9px}
}
