/* ============================================================
   styles-testimonials.css
   Mockup overlay — loads AFTER styles.css.
   Replaces the text-only testimonial cards with video cards
   that reuse the existing .testimonials section + .testimonial-grid
   layout (so all responsive breakpoints inherit).
   ============================================================ */

/* Section heading: give the eyebrow more weight when we're
   leading with video proof instead of stylized blockquotes. */
.testimonials .section-heading {
  margin-bottom: 44px;
}

/* Featured pull-quote sitting above the video grid.
   Optional — adds editorial weight before the videos load. */
.testimonials-pullquote {
  max-width: 920px;
  margin: 0 auto 56px;
  padding: 0 clamp(8px, 2vw, 24px);
  text-align: center;
}

.testimonials-pullquote blockquote {
  margin: 0 0 18px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(1.7rem, 2.6vw, 2.6rem);
  font-weight: 500;
  line-height: 1.18;
  color: var(--ink);
  letter-spacing: -0.01em;
}

.testimonials-pullquote cite {
  display: block;
  font-style: normal;
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #8a6c29;
}

.testimonials-pullquote cite span {
  display: block;
  margin-top: 4px;
  font-weight: 400;
  letter-spacing: 0.04em;
  text-transform: none;
  color: #59615e;
}

/* Video card variant — slots into the existing .testimonial-grid.
   Override the min-height so the video sets the card's vertical rhythm. */
.testimonial-card-video {
  display: grid;
  grid-template-rows: auto auto auto;
  align-content: start;
  min-height: 0;
  padding: 0;
  background: rgba(255, 253, 248, 0.92);
  border: 1px solid var(--line);
  overflow: hidden;
}

.testimonial-video-wrap {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  background: var(--navy);
  overflow: hidden;
}

.testimonial-video-wrap video {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  background: var(--navy);
}

/* Subtle play-affordance scrim — fades on hover, hides once playing.
   We can't directly select "playing" without JS, so this is a visual
   nudge that the poster is a video, not a still image. */
.testimonial-video-wrap::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    180deg,
    rgba(18, 35, 54, 0) 55%,
    rgba(18, 35, 54, 0.32) 100%
  );
  pointer-events: none;
  transition: opacity 240ms ease;
}

.testimonial-card-video:hover .testimonial-video-wrap::after {
  opacity: 0.6;
}

/* Card body — quote + attribution under the video. */
.testimonial-card-video blockquote {
  margin: 0;
  padding: 28px clamp(22px, 2.4vw, 32px) 14px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(1.05rem, 1.3vw, 1.22rem);
  font-weight: 500;
  line-height: 1.42;
  color: var(--ink);
  letter-spacing: -0.005em;
}

.testimonial-card-video figcaption {
  display: grid;
  gap: 4px;
  margin: 0;
  padding: 0 clamp(22px, 2.4vw, 32px) 28px;
  color: #59615e;
  font-size: 0.84rem;
  line-height: 1.5;
}

.testimonial-card-video figcaption strong {
  color: #8a6c29;
  font-size: 0.72rem;
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: 0.14em;
}

.testimonial-card-video figcaption span {
  color: #59615e;
}

/* Tighter grid gap looks better when each card carries its own
   strong rectangle (the video). */
.testimonials .testimonial-grid {
  gap: 22px;
}

/* Browser-native subtitle styling is ugly by default. Push the cue
   box up a hair so it doesn't collide with the control bar when
   captions are toggled on. */
.testimonial-video-wrap video::cue {
  background: rgba(18, 35, 54, 0.78);
  color: #fffdf8;
  font-family: Inter, ui-sans-serif, system-ui, sans-serif;
  font-size: 0.92em;
  line-height: 1.3;
  padding: 2px 6px;
}

/* Reduce pull-quote prominence on mobile so the videos lead. */
@media (max-width: 880px) {
  .testimonials-pullquote {
    margin-bottom: 36px;
  }

  .testimonials-pullquote blockquote {
    font-size: clamp(1.35rem, 4.4vw, 1.7rem);
  }
}

@media (max-width: 680px) {
  .testimonial-card-video blockquote {
    padding: 22px 20px 12px;
    font-size: 1.02rem;
  }

  .testimonial-card-video figcaption {
    padding: 0 20px 22px;
  }
}
