/* Video + YouTube thumbnail style */
/* Wrapper: centers the block and caps its max width */
.video-wrapper {
  max-width: 1200px;
  margin: 2rem auto;   /* vertical rhythm + horizontal centering */
  text-align: center;  /* centers the audio player below */
}

/* 16:9 aspect-ratio box for embeds */
.video-inner {
  position: relative;
  width: 100%;
  padding-bottom: 56.25%; /* 9/16 */
  overflow: hidden;
  border-radius: 8px;     /* soft corners */
}

/* Make the iframe fill the ratio box */
.video-inner iframe {
  position: absolute;
  top: 0; left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

/* Audio player: full width under the video, centered */
.video-wrapper audio {
  display: flex;         /* allows margin: auto centering */
  margin: 1rem auto 0;
  width: 100%;
}

/* Section heading styling */
.hero h2 {
  text-align: center;
  margin: 2rem 0 1rem;
  font-size: 2rem;
  color: var(--color-accent);
}

/* YouTube thumbnail: matches the 16:9 ratio box */
.yt-thumb {
  position: relative;
  width: 100%;
  padding-bottom: 56.25%;
  background: #000;   /* fallback behind the image */
  cursor: pointer;
  overflow: hidden;
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
  margin-bottom: 1rem;
}

/* Thumb image fills the box (no distortion) */
.yt-thumb img {
  position: absolute;
  top: 0; left: 0;
  width: 100%;
  height: 100%;
  object-fit: contain; /* show the whole image, may letterbox */
}

/* Overlay play button: centered circular control */
.play-button {
  position: absolute; left: 50%; top: 50%;
  transform: translate(-50%, -50%);
  width: 84px; height: 84px;
  border-radius: 9999px;
  display: grid; place-items: center;
  background: rgba(0, 0, 0, 0.55);
  backdrop-filter: blur(2px);
  color: #e12020;   /* SVG inherits via currentColor */
  transition: transform 150ms ease, box-shadow 150ms ease, background 150ms ease, opacity 150ms ease;
  pointer-events: none; /* clicks go to .yt-thumb */
}

/* SVG inside the button: sized and color-inherited */
.play-button .play-svg {
  width: 60px; height: 60px;
  fill: currentColor;
}