/* ==========================================================================
   CYBERPUNK HERO SHOWCASE - PERFECTLY BALANCED STAGE
   THE MISCREANT STUDIOS | Inset Left Clearance & Grounded Controller
   ========================================================================== */

/* Fullscreen Standalone Hero Shell */
.hero-standalone-wrapper {
  min-height: 100vh;
  display: flex;
  align-items: center;
  position: relative;
  width: 100%;
  padding: 40px 0;
  background-image: url('../../images/hero/hero-full-bg.jpg');
  background-size: cover;
  background-position: 42% center;
  background-repeat: no-repeat;
  overflow: hidden;
}

/* Container with elegant left inset */
.hero-standalone-wrapper .app-container {
  max-width: 100%;
  margin: 0;
  padding-left: clamp(24px, 3.5vw, 55px);
  padding-right: clamp(24px, 3.2vw, 44px);
  width: 100%;
}

.hero-main-grid {
  display: grid;
  grid-template-columns: 1.4fr 1fr;
  align-items: center;
  gap: 32px;
  position: relative;
  width: 100%;
}

/* Left Content Column - Layered underneath the controller and ambient particles */
.hero-content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: fit-content;
  z-index: 5;
  transform: translateY(-20px);
  margin-left: 0;
  position: relative;
}

/* Uppercase Single Line Brand Title - Sized to fit comfortably clear of joystick */
.hero-title {
  font-size: clamp(2.85rem, 4.7vw, 5.1rem);
  line-height: 1.05;
  margin-bottom: 0;
  color: #ffffff;
  font-weight: 800;
  letter-spacing: -0.015em;
  text-transform: uppercase;
  white-space: nowrap;
  text-align: center;
}

/* DIGITAL CHAOS SIMULATOR - Proportionally scaled and tracked to match title width */
.hero-tagline {
  font-family: var(--font-mono);
  font-size: clamp(1.1rem, 1.6vw, 1.45rem);
  font-weight: 600;
  letter-spacing: 0.45em;
  text-transform: uppercase;
  color: #ffffff;
  text-shadow: none;
  filter: none;
  margin-top: 22px;
  text-align: center;
  width: 100%;
  opacity: 0.95;
  cursor: default;
}

/* Gradient Text Highlight for "MISCREANT" */
.text-gradient-purple {
  background: linear-gradient(135deg, #a855f7 0%, #c084fc 45%, #e879f9 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  display: inline-block;
  text-shadow: 0 0 45px rgba(168, 85, 247, 0.45);
}

/* Right Visual Stage Area */
.hero-visual-stage {
  min-height: 580px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

.controller-hotspot {
  width: 100%;
  height: 520px;
}

/* Foreground Atmosphere & Controller Layer (Layer 1: Sits in front of the text) */
.hero-foreground-layer {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url('../../images/hero/hero-foreground-controller.png');
  background-size: cover;
  background-position: 42% center;
  background-repeat: no-repeat;
  pointer-events: none;
  z-index: 10;
}

/* ==========================================================================
   CYBERPUNK GHOSTING TRANSITION SYSTEM ("Ghost In" & "Ghost Out")
   ========================================================================== */
.ghost-screen {
  opacity: 1;
  filter: blur(0px) brightness(1);
  transform: scale(1) translateY(0);
  transition: 
    opacity 0.75s cubic-bezier(0.16, 1, 0.3, 1),
    filter 0.75s cubic-bezier(0.16, 1, 0.3, 1),
    transform 0.75s cubic-bezier(0.16, 1, 0.3, 1);
  will-change: opacity, filter, transform;
}

/* ==========================================================================
   CYBERPUNK CORNER TELEMETRY HUD (Pure CSS Studio Brackets)
   ========================================================================== */
.cyber-hud-layer {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 5;
  overflow: hidden;
}

.hud-corner {
  position: absolute;
  display: flex;
  align-items: center;
  gap: 8px;
  font-family: var(--font-mono);
  font-size: 0.65rem;
  letter-spacing: 0.16em;
  color: rgba(192, 132, 252, 0.45);
  text-transform: uppercase;
  user-select: none;
}

.hud-bracket {
  font-size: 0.95rem;
  line-height: 1;
  color: rgba(192, 132, 252, 0.65);
  text-shadow: 0 0 10px rgba(192, 132, 252, 0.4);
}

.hud-tag {
  color: rgba(255, 255, 255, 0.6);
  font-weight: 700;
}

.hud-sub {
  color: rgba(148, 163, 184, 0.4);
  font-size: 0.58rem;
}

.hud-top-left {
  top: clamp(22px, 3.8vh, 38px);
  left: clamp(24px, 3.5vw, 52px);
}

.hud-top-right {
  top: clamp(22px, 3.8vh, 38px);
  right: clamp(24px, 3.5vw, 52px);
}

.hud-bottom-left {
  bottom: clamp(20px, 3.2vh, 32px);
  left: clamp(24px, 3.5vw, 52px);
}

.hud-bottom-right {
  bottom: clamp(20px, 3.2vh, 32px);
  right: clamp(24px, 3.5vw, 52px);
}

@media (max-width: 992px) {
  .hud-sub {
    display: none;
  }
}

@media (max-width: 768px) {
  .cyber-hud-layer {
    display: none;
  }
}

/* ==========================================================================
   1. INTERACTIVE 3D HOLOGRAPHIC GLARE & METALLIC FOIL SHEEN
   ========================================================================== */
.carousel-card::before,
.arsenal-card::before {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: 20px;
  background: radial-gradient(
    circle at var(--glare-x, 50%) var(--glare-y, 50%),
    rgba(255, 255, 255, 0.32) 0%,
    rgba(192, 132, 252, 0.22) 25%,
    rgba(56, 189, 248, 0.12) 50%,
    transparent 75%
  );
  opacity: var(--glare-opacity, 0);
  pointer-events: none;
  z-index: 15;
  mix-blend-mode: overlay;
  transition: opacity 0.25s ease;
}

/* ==========================================================================
   2. RGB CHROMATIC ABERRATION & NEURAL GLITCH BURST ON SLIDE CHANGE
   ========================================================================== */
.chromatic-flash {
  animation: chromaticAberrationGlitch 0.14s cubic-bezier(0.25, 1, 0.5, 1) forwards;
}

@keyframes chromaticAberrationGlitch {
  0% {
    filter: drop-shadow(-4px 0 0 rgba(244, 63, 94, 0.85)) 
            drop-shadow(4px 0 0 rgba(56, 189, 248, 0.85));
    transform: translate3d(-1px, 1px, 0);
  }
  35% {
    filter: drop-shadow(5px 0 0 rgba(244, 63, 94, 0.9)) 
            drop-shadow(-5px 0 0 rgba(56, 189, 248, 0.9)) 
            hue-rotate(20deg);
    transform: translate3d(2px, -1px, 0);
  }
  70% {
    filter: drop-shadow(-2px 0 0 rgba(244, 63, 94, 0.5)) 
            drop-shadow(2px 0 0 rgba(56, 189, 248, 0.5));
    transform: translate3d(-1px, 0, 0);
  }
  100% {
    filter: drop-shadow(0 0 0 transparent);
    transform: translate3d(0, 0, 0);
  }
}

