:where(a, button, summary):focus-visible {
  outline: 2px solid var(--cyan);
  outline-offset: 4px;
}

body.menu-open {
  overflow: hidden;
}

.engineering-copy {
  min-width: 0;
}

.ui-head button:disabled,
.crowd-stats button:disabled {
  cursor: wait;
  opacity: 0.7;
  pointer-events: none;
}

.set-tab[aria-selected="true"],
.app-tab[aria-selected="true"],
.channel[aria-selected="true"] {
  outline-offset: -2px;
}

@media (pointer: coarse) {
  .cursor-dot,
  .cursor-ring {
    display: none;
  }

  .cta {
    transform: none !important;
  }

  .channel,
  .app-tab,
  .set-tab {
    min-height: 48px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .engineering-image,
  .engineering-copy,
  .live-image,
  .live-copy,
  .live-shutter,
  .craft-card,
  .craft-copy,
  .tech-shot,
  .ident-core {
    opacity: 1 !important;
    transform: none !important;
    clip-path: none !important;
    filter: none !important;
    translate: none !important;
  }
}

/* Dedicated market and product offering gateway */
.market-pages { background: #050607; border-block: 1px solid var(--line); }
.market-page-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; margin-top: 5vw; }
.market-page-card { min-height: 680px; position: relative; overflow: hidden; border: 1px solid #ffffff24; background: #050607; color: #fff; }
.market-page-card>img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; filter: saturate(.7) brightness(.68); transition: transform .8s, filter .5s; }
.market-page-card:after { content: ''; position: absolute; inset: 0; background: linear-gradient(0deg,#030405f4 0%,#03040575 52%,#03040525),linear-gradient(90deg,#03040577,transparent); }
.market-page-card>span { position: absolute; z-index: 2; left: 28px; top: 25px; font: 400 .46rem var(--mono); color: var(--cyan); letter-spacing: .11em; }
.market-page-card.activation-card>span { color: #ff4ba5; }
.market-page-card>div { position: absolute; z-index: 2; left: 30px; right: 30px; bottom: 30px; }
.market-page-card small { color: #7f898b; font: 400 .42rem var(--mono); letter-spacing: .1em; }
.market-page-card h3 { max-width: 600px; margin: 18px 0; font: 900 clamp(3.3rem,5vw,6rem)/.82 var(--display); letter-spacing: -.04em; text-transform: uppercase; }
.market-page-card p { max-width: 480px; color: #9ca6a7; line-height: 1.65; }
.market-page-card b { display: inline-block; margin-top: 28px; color: var(--cyan); font: 500 .48rem var(--mono); letter-spacing: .08em; }
.market-page-card.activation-card b { color: #ff4ba5; }
.market-page-card:hover>img { transform: scale(1.045); filter: saturate(1) brightness(.82); }
.market-page-card:hover { border-color: #55e7ef66; }
.market-page-card.activation-card:hover { border-color: #ff4ba566; }
@media(max-width:800px){.market-page-grid{grid-template-columns:1fr}.market-page-card{min-height:580px}.market-page-card h3{font-size:3.7rem}}

/* Game-show audio and sound-design studio */
.audio-sfx {
  position: relative;
  overflow: hidden;
  background: #050708;
  border-block: 1px solid var(--line);
}

.audio-glow {
  position: absolute;
  width: 70vw;
  height: 70vw;
  left: -38vw;
  top: -30vw;
  border-radius: 50%;
  background: radial-gradient(circle, #55e7ef18, transparent 65%);
  pointer-events: none;
}

.audio-heading,
.sfx-console,
.audio-offer-head,
.audio-catalogue {
  position: relative;
  z-index: 1;
}

.sfx-console {
  margin: 5vw 0 7vw;
  border: 1px solid #354044;
  background: linear-gradient(145deg, #111619, #07090a 55%);
  box-shadow: 0 35px 90px #000a, inset 0 1px #ffffff0d;
}

.sfx-console-head {
  min-height: 52px;
  padding: 0 22px;
  display: grid;
  grid-template-columns: 1fr auto auto;
  align-items: center;
  gap: 28px;
  border-bottom: 1px solid #354044;
  font: 500 .52rem var(--mono);
  letter-spacing: .11em;
  color: #778285;
}

.sfx-console-head b { color: var(--red); }
.sfx-console-head b i { display: inline-block; width: 6px; height: 6px; margin-right: 8px; border-radius: 50%; background: var(--red); box-shadow: 0 0 12px var(--red); }

.sfx-display {
  display: grid;
  grid-template-columns: minmax(220px, .65fr) 1.35fr;
  min-height: 230px;
  position: relative;
  border-bottom: 1px solid #354044;
  background: linear-gradient(#071013dd, #05090b), repeating-linear-gradient(90deg, transparent 0 59px, #55e7ef0b 60px), repeating-linear-gradient(0deg, transparent 0 39px, #55e7ef0b 40px);
}

.sfx-display-meta { padding: 42px; border-right: 1px solid #263033; display: flex; flex-direction: column; align-items: flex-start; }
.sfx-display-meta span { font: 500 .55rem var(--mono); color: var(--red); letter-spacing: .15em; }
.sfx-display-meta b { margin: 16px 0 22px; font: 800 clamp(2.2rem, 4vw, 4.8rem)/.85 var(--display); letter-spacing: -.04em; }
.sfx-display-meta small { font: 500 .48rem var(--mono); color: var(--cyan); letter-spacing: .18em; }

.sfx-wave { display: flex; height: 150px; padding: 30px 4vw; align-items: center; justify-content: center; gap: clamp(3px, .65vw, 10px); }
.sfx-wave i { display: block; width: 3px; height: calc(12px + (var(--bar, 1) * 7px)); background: #55e7ef55; transform: scaleY(.45); transition: .25s; }
.sfx-wave i:nth-child(4n+1) { --bar: 3; }
.sfx-wave i:nth-child(5n+2) { --bar: 7; }
.sfx-wave i:nth-child(3n) { --bar: 5; }
.sfx-wave.playing i { background: var(--cyan); box-shadow: 0 0 12px #55e7ef88; animation: sfxMeter .32s ease-in-out infinite alternate; animation-delay: calc(var(--bar, 1) * -35ms); }
@keyframes sfxMeter { to { transform: scaleY(1.6); } }

.sfx-time { position: absolute; left: calc(32.5% + 30px); right: 30px; bottom: 18px; display: flex; align-items: center; gap: 12px; font: 400 .43rem var(--mono); color: #657174; }
.sfx-time i { height: 1px; flex: 1; background: #273235; }
.sfx-time b { color: var(--red); }

.sfx-pads { padding: 22px; display: grid; grid-template-columns: repeat(6, 1fr); gap: 10px; }
.sfx-pad { min-height: 118px; padding: 14px; position: relative; overflow: hidden; text-align: left; color: #aeb8ba; background: #0a0d0f; border: 1px solid #2b3437; cursor: pointer; transition: .25s; }
.sfx-pad:before { content: ''; position: absolute; inset: 0; opacity: 0; background: radial-gradient(circle at 50% 100%, #55e7ef2e, transparent 70%); transition: .25s; }
.sfx-pad span,.sfx-pad b,.sfx-pad small { position: relative; z-index: 1; display: block; }
.sfx-pad span { font: 400 .45rem var(--mono); color: #596467; }
.sfx-pad b { margin: 18px 0 7px; font: 700 .9rem var(--display); text-transform: uppercase; }
.sfx-pad small { font: 400 .38rem var(--mono); color: #667174; }
.sfx-pad i { position: absolute; left: 14px; right: 14px; bottom: 0; height: 2px; background: #263033; }
.sfx-pad:hover,.sfx-pad.active { color: #fff; border-color: #55e7ef77; transform: translateY(-3px); }
.sfx-pad:hover:before,.sfx-pad.active:before { opacity: 1; }
.sfx-pad.active i { background: var(--cyan); box-shadow: 0 0 15px var(--cyan); }

.sfx-routing { min-height: 58px; padding: 0 22px; display: flex; align-items: center; gap: 16px; border-top: 1px solid #2b3437; font: 400 .43rem var(--mono); letter-spacing: .08em; color: #596467; }
.sfx-routing b { color: #aab4b6; }
.sfx-routing i { color: var(--red); font-style: normal; }
.sfx-routing em { margin-left: auto; color: var(--cyan); font-style: normal; }

.audio-offer-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 22px; font: 500 .55rem var(--mono); letter-spacing: .12em; }
.audio-offer-head span { color: var(--cyan); }
.audio-offer-head p { color: #6c7779; letter-spacing: 0; }
.audio-catalogue { display: grid; grid-template-columns: repeat(2, 1fr); border-left: 1px solid #2b3437; border-top: 1px solid #2b3437; }
.audio-catalogue details { border-right: 1px solid #2b3437; border-bottom: 1px solid #2b3437; background: #080a0b; }
.audio-catalogue summary { min-height: 82px; padding: 0 24px; display: grid; grid-template-columns: 40px 1fr auto; align-items: center; cursor: pointer; list-style: none; }
.audio-catalogue summary::-webkit-details-marker { display: none; }
.audio-catalogue summary span { font: 400 .48rem var(--mono); color: #566164; }
.audio-catalogue summary h3 { font: 700 1.15rem var(--display); text-transform: uppercase; }
.audio-catalogue summary b { font: 300 1.3rem var(--mono); color: var(--cyan); transition: .25s; }
.audio-catalogue details[open] summary b { transform: rotate(45deg); color: var(--red); }
.audio-catalogue details[open] { background: linear-gradient(135deg, #0d1517, #080a0b); }
.audio-catalogue ul { margin: 0; padding: 0 28px 26px 64px; color: #879294; font: 400 .75rem/1.9 var(--mono); }
.audio-catalogue li::marker { color: var(--red); }

@media (max-width: 900px) {
  .sfx-pads { grid-template-columns: repeat(3, 1fr); }
  .sfx-display { grid-template-columns: 1fr; }
  .sfx-display-meta { border-right: 0; border-bottom: 1px solid #263033; padding: 30px; }
  .sfx-wave { height: 125px; }
  .sfx-time { left: 30px; }
}

@media (max-width: 650px) {
  .sfx-console { margin: 48px -4vw 65px; }
  .sfx-console-head { grid-template-columns: 1fr auto; padding: 0 16px; gap: 12px; }
  .sfx-console-head small { display: none; }
  .sfx-pads { grid-template-columns: repeat(2, 1fr); padding: 12px; }
  .sfx-pad { min-height: 110px; }
  .sfx-routing { padding: 15px; flex-wrap: wrap; gap: 9px; }
  .sfx-routing em { width: 100%; margin-left: 0; }
  .audio-offer-head { display: block; }
  .audio-offer-head p { margin-top: 10px; }
  .audio-catalogue { grid-template-columns: 1fr; }
  .audio-catalogue summary { min-height: 76px; padding: 0 18px; }
  .audio-catalogue ul { padding-left: 54px; padding-right: 18px; }
}

@media (prefers-reduced-motion: reduce) {
  .sfx-wave.playing i { animation: none; transform: scaleY(1); }
}
