.roced-product-video {
  --rpv-ink: #0d0b0a;
  --rpv-rust: #b8643d;
  --rpv-stone: #eee9e3;
  --rpv-muted: rgba(13, 11, 10, .68);
  width: 100%;
  margin: clamp(64px, 7vw, 112px) 0;
  padding: clamp(56px, 6vw, 96px) max(20px, 4.5vw);
  background: var(--rpv-stone);
  color: var(--rpv-ink);
  font-family: Montserrat, Arial, sans-serif;
}

.roced-product-video *,
.roced-product-video *::before,
.roced-product-video *::after { box-sizing: border-box; }

.roced-product-video__inner {
  display: grid;
  grid-template-columns: minmax(260px, .7fr) minmax(420px, 1.3fr);
  gap: clamp(38px, 6vw, 96px);
  align-items: center;
  width: min(100%, 1280px);
  margin: 0 auto;
}

.roced-product-video__copy { max-width: 510px; }

.roced-product-video__eyebrow {
  margin: 0 0 22px !important;
  color: var(--rpv-rust) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: .18em;
  line-height: 1.4 !important;
}

.roced-product-video__copy h2 {
  margin: 0 0 24px !important;
  color: var(--rpv-ink) !important;
  font-family: "Libre Bodoni", Georgia, serif !important;
  font-size: clamp(36px, 3.3vw, 58px) !important;
  font-weight: 400 !important;
  letter-spacing: -.035em;
  line-height: 1 !important;
  text-transform: none !important;
}

.roced-product-video__media { width: 100%; }

/* Keep portrait videos comfortably inside the viewport on desktop. */
.roced-product-video--4-5,
.roced-product-video--9-16 {
  padding-top: clamp(40px, 5vh, 64px);
  padding-bottom: clamp(40px, 5vh, 64px);
}

.roced-product-video--4-5 .roced-product-video__media {
  width: min(100%, 420px) !important;
  max-width: 420px !important;
  justify-self: center;
}

.roced-product-video--9-16 .roced-product-video__media {
  width: min(100%, 330px) !important;
  max-width: 330px !important;
  justify-self: center;
}

.roced-product-video__player,
.roced-product-video__iframe {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  margin: 0;
  border: 0;
  border-radius: 0;
  background: #191512;
}

.roced-product-video--4-5 .roced-product-video__player,
.roced-product-video--4-5 .roced-product-video__iframe { aspect-ratio: 4 / 5; }
.roced-product-video--9-16 .roced-product-video__player,
.roced-product-video--9-16 .roced-product-video__iframe { aspect-ratio: 9 / 16; }

.roced-product-video__player {
  position: relative;
  overflow: hidden;
  padding: 0 !important;
  cursor: pointer;
  appearance: none;
}

.roced-product-video__player img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .45s ease;
}

.roced-product-video__player:hover img { transform: scale(1.018); }
.roced-product-video__player:focus-visible { outline: 3px solid var(--rpv-rust); outline-offset: 5px; }

.roced-product-video__play {
  position: absolute;
  inset: 50% auto auto 50%;
  width: clamp(58px, 5vw, 82px);
  height: clamp(58px, 5vw, 82px);
  transform: translate(-50%, -50%);
  filter: drop-shadow(0 8px 24px rgba(0, 0, 0, .18));
}

.roced-product-video__play svg { display: block; width: 100%; height: 100%; }
.roced-product-video__play circle { fill: #fff; stroke: none; }
.roced-product-video__play path { fill: var(--rpv-rust); }

@media (max-width: 820px) {
  .roced-product-video__inner { grid-template-columns: 1fr; }
  .roced-product-video__copy { max-width: 650px; }
  .roced-product-video--4-5 .roced-product-video__media { width: min(100%, 390px) !important; }
  .roced-product-video--9-16 .roced-product-video__media { width: min(100%, 320px) !important; }
}

@media (min-width: 821px) and (max-height: 800px) {
  .roced-product-video--4-5 .roced-product-video__media {
    width: min(100%, 370px) !important;
    max-width: 370px !important;
  }

  .roced-product-video--9-16 .roced-product-video__media {
    width: min(100%, 290px) !important;
    max-width: 290px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .roced-product-video__player img { transition: none; }
}
