.bsp-pf-videos{width:100%;margin:0 auto;padding:1rem 0 2rem}.bsp-pf-videos__eyebrow{color:#d71920;font-weight:700;letter-spacing:.1em;font-size:.78rem;text-transform:uppercase;margin:0 0 .5rem}.bsp-pf-videos__heading{font-size:clamp(1.5rem,2.4vw,2.4rem);font-weight:800;text-transform:uppercase;margin:0 0 1.5rem}.bsp-pf-videos__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));gap:1.5rem}.bsp-pf-videos__card{min-width:0}.bsp-pf-videos__play{position:relative;display:block;width:100%;aspect-ratio:16/9;padding:0;border:0;background:#101820;cursor:pointer;overflow:hidden}.bsp-pf-videos__play img{width:100%;height:100%;object-fit:cover;display:block}.bsp-pf-videos__icon{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:#d71920;color:white;border-radius:8px;padding:12px 20px;font-size:20px;box-shadow:0 2px 12px #0007}.bsp-pf-videos__play:hover .bsp-pf-videos__icon{background:#a50c12}.bsp-pf-videos__play:focus-visible{outline:3px solid #d71920;outline-offset:3px}.bsp-pf-videos__card>iframe{width:100%;aspect-ratio:16/9;border:0;display:block}.bsp-pf-videos__description{margin:.4rem 0 .6rem;line-height:inherit}.bsp-pf-videos__watch{margin:.4rem 0 0}.bsp-pf-videos__watch a{text-decoration:underline;text-underline-offset:2px}.bsp-pf-videos__title{margin:.7rem 0 0}

/* v1.9.4: Video title (H3), description (body), and link typography
   intentionally inherit Divi Text module Design settings.
   Stable selectors remain available for custom per-module CSS. */

/* v1.9.5: Responsive grid sizing by number of video cards.
   Keep the Divi row and video section at their existing widths. */
@media (min-width: 768px) {
  .bsp-pf-videos__grid:has(> .bsp-pf-videos__card:only-child) {
    grid-template-columns: minmax(0, 70%);
  }
  .bsp-pf-videos__grid:has(> .bsp-pf-videos__card:nth-child(2):last-child) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .bsp-pf-videos__grid:has(> .bsp-pf-videos__card:nth-child(3)) {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (max-width: 767px) {
  .bsp-pf-videos__grid {
    grid-template-columns: minmax(0, 1fr);
  }
}
