:root {
  --arcade-primary-color: #F2C14E; /* Main brand color */
  --arcade-secondary-color: #FFD36B; /* Accent color */
  --arcade-bg-color: #0A0A0A; /* Page background */
  --arcade-card-bg: #111111; /* Card background */
  --arcade-text-main: #FFF6D6; /* Main text color for dark backgrounds */
  --arcade-border-color: #3A2A12; /* Border color */
  --arcade-glow-color: #FFD36B; /* Glow effect color */
  --arcade-button-gradient: linear-gradient(180deg, #FFD86A 0%, #DDA11D 100%); /* Button gradient */
}

.page-arcade {
  background-color: var(--arcade-bg-color);
  color: var(--arcade-text-main); /* Text color for the entire page-arcade container */
  font-family: Arial, sans-serif;
  line-height: 1.6;
  font-size: 16px;
}

/* Hero Section */
.page-arcade__hero-section {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  overflow: hidden;
  padding-top: 10px; /* Small top padding, body handles --header-offset */
  padding-bottom: 60px;
  background-color: #000; /* Ensure black background behind video/image */
}

.page-arcade__video-container {
  position: relative;
  width: 100%;
  max-width: 1600px; /* Max width for the video container */
  margin: 0 auto;
  padding-bottom: 56.25%; /* 16:9 Aspect Ratio (divide 9 by 16 = 0.5625) */
  height: 0;
  overflow: hidden;
  background-color: #000;
  cursor: pointer;
}

.page-arcade__video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.page-arcade__video-overlay-button {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: var(--arcade-button-gradient);
  color: #ffffff;
  padding: 15px 30px;
  border-radius: 50px;
  text-decoration: none;
  font-weight: bold;
  font-size: 1.2em;
  z-index: 10;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  box-shadow: 0 0 15px var(--arcade-glow-color);
  white-space: nowrap;
  word-wrap: normal;
  box-sizing: border-box;
  max-width: 90%; /* Ensure button doesn't overflow */
}

.page-arcade__video-overlay-button:hover {
  transform: translate(-50%, -50%) scale(1.05);
  box-shadow: 0 0 25px var(--arcade-glow-color);
}

.page-arcade__hero-content {
  position: relative;
  z-index: 5;
  max-width: 900px;
  margin-top: 40px; /* Space below video/image */
  padding: 0 20px;
}

.page-arcade__main-title {
  font-size: clamp(2em, 4vw, 3.2em); /* Responsive H1 font size */
  font-weight: 700;
  line-height: 1.2;
  color: var(--arcade-primary-color);
  text-shadow: 0 0 10px rgba(255, 211, 107, 0.5);
  margin-bottom: 20px;
}

.page-arcade__description {
  font-size: 1.1em;
  color: var(--arcade-text-main);
  margin-bottom: 30px;
}