.tp-video-strip{
  margin:22px 0;
  padding:16px;
  background:#111214;
  border:1px solid #24272b;
  border-radius:18px;
}

.tp-video-strip-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
  margin-bottom:14px;
}

.tp-video-strip-title{
  margin:0;
  font-size:22px;
  line-height:1.2;
  color:#10b981;
  background:none !important;
  box-shadow:none !important;
  border:none !important;
  padding:0 !important;
  display:block;
}

.tp-video-strip-link{
  color:#10b981;
  text-decoration:none;
  font-weight:700;
  white-space:nowrap;
}

.tp-video-card-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(220px, 280px));
  gap:16px;
  justify-content:start;
  align-items:start;
}

.tp-video-card{
  display:block;
  width:100%;
  max-width:280px;
  background:#17191c;
  border:1px solid #2a2f36;
  border-radius:16px;
  overflow:hidden;
  text-decoration:none;
  color:#eee;
  transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease;
}

.tp-video-card:hover{
  transform:translateY(-2px);
  border-color:#10b981;
  box-shadow:0 10px 25px rgba(0,0,0,.25);
}

.tp-video-thumb-wrap{
  position:relative;
  width:100%;
  aspect-ratio:16/9;
  background:#0c0d0f;
  overflow:hidden;
}

.tp-video-thumb{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.tp-video-play-badge{
  position:absolute;
  left:12px;
  bottom:12px;
  background:rgba(16,185,129,.95);
  color:#08110d;
  font-weight:800;
  font-size:12px;
  padding:7px 10px;
  border-radius:999px;
}

.tp-video-card-body{
  padding:12px;
}

.tp-video-card-title{
  font-weight:800;
  line-height:1.3;
  margin-bottom:6px;
  font-size:15px;
}

.tp-video-card-caption{
  color:#b9c0c8;
  font-size:13px;
  line-height:1.45;
}

.tp-video-shell{
  background:#111214;
  border:1px solid #24272b;
  border-radius:20px;
  padding:18px;
  max-width:1100px;
  margin:0 auto 24px auto;
}

.tp-video-player-wrap{
  background:#070809;
  border-radius:16px;
  overflow:hidden;
  border:1px solid #1c1f23;
}

.tp-video-player{
  display:block;
  width:100%;
  height:auto;
  max-height:72vh;
  background:#000;
}

.tp-video-page-title{
  margin:18px 0 10px;
  font-size:30px;
  color:#10b981;
}

.tp-video-caption{
  color:#cbd5e1;
  line-height:1.6;
  margin-bottom:18px;
}

.tp-video-related-products{
  margin-top:18px;
  padding-top:18px;
  border-top:1px solid #25292f;
}

.tp-video-section-title{
  font-size:20px;
  font-weight:800;
  margin-bottom:12px;
  color:#10b981;
}

.tp-video-related-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(170px, 220px));
  gap:14px;
  justify-content:start;
  align-items:start;
}

.tp-video-related-card{
  display:block;
  width:100%;
  max-width:220px;
  text-decoration:none;
  color:#eee;
  background:#17191c;
  border:1px solid #2a2f36;
  border-radius:14px;
  overflow:hidden;
}

.tp-video-related-card:hover{
  border-color:#10b981;
}

.tp-video-related-card img{
  width:100%;
  aspect-ratio:4/3;
  object-fit:cover;
  display:block;
}

.tp-video-related-name{
  display:block;
  padding:10px 12px;
  font-weight:700;
  font-size:14px;
  line-height:1.35;
}

#tpRelatedVideos{
  max-width:1180px;
  margin:24px auto 0 auto;
}

#tpVideoHomeFeatured{
  max-width:1180px;
  margin:18px auto;
}

@media (max-width:700px){
  .tp-video-shell{padding:12px;border-radius:16px}
  .tp-video-page-title{font-size:24px}
  .tp-video-card-grid{grid-template-columns:repeat(auto-fill, minmax(180px, 1fr))}
  .tp-video-related-grid{grid-template-columns:repeat(auto-fill, minmax(150px, 1fr))}
}

/* ===== TP VIDEO INLINE BUNDLE CARD ===== */
#bundleList #tpRelatedVideos.tp-video-inline-card{
  display:block !important;
  width:100% !important;
  box-sizing:border-box !important;
  margin:10px 0 0 0 !important;
  padding:10px !important;
  background:#0f1012 !important;
  border:1px solid #24272b !important;
  border-radius:10px !important;
  box-shadow:none !important;
}

#bundleList #tpRelatedVideos .tp-video-inline-title{
  margin:0 0 5px 0 !important;
  font-size:12px !important;
  line-height:1.2 !important;
  font-weight:800 !important;
  color:#10b981 !important;
}

#bundleList #tpRelatedVideos .tp-video-inline-text{
  margin:0 0 8px 0 !important;
  font-size:10px !important;
  line-height:1.35 !important;
  color:#cbd5e1 !important;
}

#bundleList #tpRelatedVideos .tp-video-inline-button{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:30px !important;
  padding:7px 10px !important;
  border-radius:8px !important;
  background:#10b981 !important;
  color:#051b12 !important;
  font-size:11px !important;
  font-weight:800 !important;
  text-decoration:none !important;
}

#bundleList #tpRelatedVideos .tp-video-inline-button:hover{
  filter:brightness(1.05) !important;
}

/* ===== TP VIDEO CTA UNDER BUNDLE ===== */
#tpRelatedVideos.tp-video-cta-box{
  display:block !important;
  width:100% !important;
  max-width:320px !important;
  margin:10px 0 0 0 !important;
  padding:10px !important;
  background:#111214 !important;
  border:1px solid #24272b !important;
  border-radius:12px !important;
  box-shadow:none !important;
}

#tpRelatedVideos .tp-video-cta-title{
  margin:0 0 6px 0 !important;
  font-size:13px !important;
  line-height:1.2 !important;
  font-weight:800 !important;
  color:#10b981 !important;
}

#tpRelatedVideos .tp-video-cta-text{
  margin:0 0 10px 0 !important;
  font-size:11px !important;
  line-height:1.35 !important;
  color:#cbd5e1 !important;
}

#tpRelatedVideos .tp-video-cta-button{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:34px !important;
  padding:8px 12px !important;
  border-radius:10px !important;
  background:#10b981 !important;
  color:#051b12 !important;
  font-size:12px !important;
  font-weight:800 !important;
  text-decoration:none !important;
}

#tpRelatedVideos .tp-video-cta-button:hover{
  filter:brightness(1.05) !important;
}

/* ===== TP VIDEO CTA MOUNT FIX ===== */
#videoCtaMount{
  margin-top:12px;
}

#videoCtaMount #tpRelatedVideos.tp-video-cta-box{
  display:block !important;
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:10px !important;
  background:#0f1012 !important;
  border:1px solid #24272b !important;
  border-radius:10px !important;
  box-shadow:none !important;
}

#videoCtaMount #tpRelatedVideos .tp-video-cta-title{
  margin:0 0 6px 0 !important;
  font-size:12px !important;
  line-height:1.2 !important;
  font-weight:800 !important;
  color:#10b981 !important;
}

#videoCtaMount #tpRelatedVideos .tp-video-cta-text{
  margin:0 0 8px 0 !important;
  font-size:10px !important;
  line-height:1.35 !important;
  color:#cbd5e1 !important;
}

#videoCtaMount #tpRelatedVideos .tp-video-cta-button{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:30px !important;
  padding:7px 10px !important;
  border-radius:8px !important;
  background:#10b981 !important;
  color:#051b12 !important;
  font-size:11px !important;
  font-weight:800 !important;
  text-decoration:none !important;
}

#videoCtaMount #tpRelatedVideos .tp-video-cta-button:hover{
  filter:brightness(1.05) !important;
}

/* ===== TP VIDEO CTA MICRO TUNE ===== */
#videoCtaMount{
  margin-top:10px;
}

#videoCtaMount #tpRelatedVideos.tp-video-cta-box{
  padding:8px 10px !important;
  border-radius:9px !important;
}

#videoCtaMount #tpRelatedVideos .tp-video-cta-title{
  font-size:11px !important;
  margin:0 0 4px 0 !important;
}

#videoCtaMount #tpRelatedVideos .tp-video-cta-text{
  font-size:10px !important;
  line-height:1.28 !important;
  margin:0 0 7px 0 !important;
}

#videoCtaMount #tpRelatedVideos .tp-video-cta-button{
  min-height:28px !important;
  padding:6px 10px !important;
  border-radius:7px !important;
  font-size:10px !important;
}

/* ===== TP VIDEO COPY POLISH ===== */
#videoCtaMount #tpRelatedVideos .tp-video-cta-title{
  letter-spacing:.01em !important;
}

#videoCtaMount #tpRelatedVideos .tp-video-cta-text{
  max-width:260px !important;
}

#videoCtaMount #tpRelatedVideos .tp-video-cta-button{
  min-width:118px !important;
}

/* ===== TP VIDEO CTA ALWAYS VISIBLE ===== */
#videoCtaMount{
  margin-top:12px;
}

#videoCtaMount:empty{
  display:none;
}

.product-image > #videoCtaMount{
  display:block;
}

#videoCtaMount #tpRelatedVideos.tp-video-cta-box{
  display:block !important;
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
}

/* ===== TP VIDEO SHOWCASE CENTER POLISH ===== */
.tp-video-shell{
  max-width:760px !important;
  margin:0 auto 24px auto !important;
  text-align:center !important;
}

.tp-video-player-wrap{
  max-width:640px !important;
  margin:0 auto 18px auto !important;
}

.tp-video-player{
  margin:0 auto !important;
}

.tp-video-page-title{
  text-align:center !important;
  margin:14px auto 10px auto !important;
  max-width:640px !important;
}

.tp-video-caption{
  text-align:center !important;
  max-width:560px !important;
  margin:0 auto 18px auto !important;
}

.tp-video-shell .btn.btn-secondary{
  margin:0 auto !important;
}

/* ===== TP HOME VIDEO STRIP TONE DOWN ===== */
#tpVideoHomeFeatured{
  max-width:780px !important;
  margin:18px auto 26px auto !important;
}

#tpVideoHomeFeatured .tp-video-strip{
  padding:14px !important;
  border-radius:16px !important;
}

#tpVideoHomeFeatured .tp-video-strip-head{
  margin-bottom:10px !important;
}

#tpVideoHomeFeatured .tp-video-strip-title{
  font-size:18px !important;
}

#tpVideoHomeFeatured .tp-video-strip-link{
  font-size:12px !important;
}

#tpVideoHomeFeatured .tp-video-card-grid{
  grid-template-columns:repeat(auto-fit, minmax(210px, 250px)) !important;
  gap:12px !important;
  justify-content:start !important;
}

#tpVideoHomeFeatured .tp-video-card{
  max-width:250px !important;
}

#tpVideoHomeFeatured .tp-video-card-body{
  padding:10px !important;
}

#tpVideoHomeFeatured .tp-video-card-title{
  font-size:14px !important;
  margin-bottom:4px !important;
}

#tpVideoHomeFeatured .tp-video-card-caption{
  font-size:12px !important;
  line-height:1.35 !important;
}

/* ===== TP HOME VIDEO COMPACT BELOW ALBUMS ===== */
#tpVideoHomeFeatured{
  max-width:280px !important;
  margin:16px 0 0 0 !important;
  padding:0 !important;
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
}

#tpVideoHomeFeatured .tp-video-strip-head{
  margin:0 0 8px 0 !important;
  gap:8px !important;
}

#tpVideoHomeFeatured .tp-video-strip-title{
  font-size:15px !important;
  line-height:1.2 !important;
  margin:0 !important;
}

#tpVideoHomeFeatured .tp-video-strip-link{
  font-size:11px !important;
}

#tpVideoHomeFeatured .tp-video-card-grid{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:0 !important;
  justify-content:start !important;
}

#tpVideoHomeFeatured .tp-video-card{
  width:100% !important;
  max-width:280px !important;
}

#tpVideoHomeFeatured .tp-video-card-body{
  padding:10px !important;
}

#tpVideoHomeFeatured .tp-video-card-title{
  font-size:14px !important;
  margin-bottom:4px !important;
}

#tpVideoHomeFeatured .tp-video-card-caption{
  font-size:12px !important;
  line-height:1.35 !important;
}

/* ===== TP HOME VIDEO TINY POLISH ===== */
#tpVideoHomeFeatured{
  margin:10px 0 0 0 !important;
}

#tpVideoHomeFeatured .tp-video-strip-head{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:10px !important;
  margin:0 0 6px 0 !important;
  padding:0 2px !important;
  max-width:280px !important;
}

#tpVideoHomeFeatured .tp-video-strip-title{
  font-size:14px !important;
  line-height:1.15 !important;
  margin:0 !important;
}

#tpVideoHomeFeatured .tp-video-strip-link{
  font-size:10px !important;
  line-height:1 !important;
  margin:0 !important;
  white-space:nowrap !important;
}

#tpVideoHomeFeatured .tp-video-card-grid{
  margin-top:0 !important;
}

#tpVideoHomeFeatured .tp-video-card{
  border-radius:14px !important;
}

#tpVideoHomeFeatured .tp-video-thumb-wrap{
  aspect-ratio:16/9 !important;
}

#tpVideoHomeFeatured .tp-video-card-body{
  padding:9px !important;
}

#tpVideoHomeFeatured .tp-video-card-title{
  font-size:13px !important;
  line-height:1.25 !important;
  margin-bottom:3px !important;
}

#tpVideoHomeFeatured .tp-video-card-caption{
  font-size:11px !important;
  line-height:1.3 !important;
}
