/* Youthquake case: original project assets, within mazer's case template. */
.yq-copy { max-width: 36rem; }
.yq-visit { margin-top: 1.75rem; }
.yq-film { background: #10141a; }
.yq-film video { display: block; width: 100%; height: auto; aspect-ratio: 1258 / 720; }
.yq-identity { display: grid; place-items: center; background: #0b1114; padding: clamp(3rem, 10vw, 9rem) clamp(2rem, 9vw, 8rem); }
.yq-identity img { width: 100%; height: auto; }
.yq-stage-title { margin-top: 2.8rem; margin-bottom: 1.2rem; font-weight: 400; }
.yq-section-intro { margin-bottom: 2.5rem; }
.yq-visuals { padding-top: 0; padding-bottom: 0; }
.yq-gallery { background: #0b1114; }
.yq-launch img { width: 100%; height: auto; }
/* Original campaign exports, shown in full without cropping artwork or logos. */
.yq-banners { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(1rem, 2.5vw, 2.5rem); padding: clamp(1rem, 4vw, 3.5rem); background: #000; align-items: start; }
.yq-banner { margin: 0; background: #111; }
.yq-banner img { display: block; width: 100%; height: auto; }
.yq-live-link { display: flex; justify-content: space-between; align-items: center; gap: 1.5rem; margin-top: 1.8rem; }
.yq-live-link p { max-width: 32rem; color: var(--ink-2); }
.yq-live-link .btn { flex-shrink: 0; }
.yq-results { margin-top: 2.2rem; max-width: 36rem; padding-left: 1.2rem; }
.yq-results li + li { margin-top: 1rem; }
.yq-disclaimer { margin-top: 3rem; }
@media (max-width: 700px) {
  .yq-banners { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .yq-live-link { flex-direction: column; align-items: flex-start; }
}
