/* pc-hero.css — WebGL RGB PC hero stage */

.pc-assist-hero {
  position: relative;
  background: #050505;
  overflow: hidden;
  z-index: 1;
  min-height: clamp(520px, 85vh, 920px);
  isolation: isolate;
}

#pc-canvas {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  max-width: 100%;
  z-index: 1;
  display: block;
  touch-action: none;
  pointer-events: auto;
  cursor: grab;
}

#pc-canvas.is-dragging,
#pc-canvas.is-spinning {
  cursor: grabbing;
}

/* Phones / tablets: never steal vertical scroll — 3D is decorative only */
@media (hover: none), (pointer: coarse) {
  #pc-canvas {
    touch-action: pan-y;
    pointer-events: none;
    cursor: default;
  }
  #pc-canvas.is-dragging,
  #pc-canvas.is-spinning {
    cursor: default;
  }
}

.pc-assist-hero .hero-grad {
  position: absolute;
  inset: 0;
  background: linear-gradient(
    105deg,
    rgba(5, 5, 5, 0.95) 0%,
    rgba(5, 5, 5, 0.72) 42%,
    rgba(5, 5, 5, 0.22) 68%,
    rgba(5, 5, 5, 0.4) 100%
  );
  z-index: 2;
  pointer-events: none;
}

.pc-assist-hero .container {
  position: relative;
  z-index: 3;
  pointer-events: none;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

.pc-assist-hero a,
.pc-assist-hero button {
  pointer-events: auto;
}

.pc-assist-hero img {
  max-width: 100%;
  height: auto;
}

.pc-assist-hero .ps5-loader-overlay {
  position: absolute;
  inset: 0;
  background: #050505;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  z-index: 100;
  opacity: 1;
  transition: opacity 0.8s cubic-bezier(0.25, 1, 0.5, 1);
  pointer-events: none;
}

.pc-assist-hero .ps5-loader-overlay.fade-out {
  opacity: 0;
}

.pc-assist-hero .ps5-loader-logo {
  max-width: min(180px, 46vw);
  height: auto;
}

@media (max-width: 991px) {
  .pc-assist-hero {
    min-height: clamp(560px, 88vh, 820px);
    align-items: flex-start;
  }

  .pc-assist-hero .hero-grad {
    background: linear-gradient(
      180deg,
      rgba(5, 5, 5, 0.55) 0%,
      rgba(5, 5, 5, 0.88) 38%,
      rgba(5, 5, 5, 0.96) 100%
    );
  }
}

@media (max-width: 640px) {
  .pc-assist-hero {
    min-height: clamp(640px, 92vh, 900px);
  }
}

@media (max-height: 520px) and (orientation: landscape) {
  .pc-assist-hero {
    min-height: 100vh;
  }
}
