/* DVH Global Dark Theme */
html,body{background:#0a0a0b!important;color:#f0f0f2!important;font-family:"Segoe UI",system-ui,-apple-system,sans-serif!important;overflow-x:hidden;margin:0;padding:0}
a{color:#e01f26;text-decoration:none}a:hover{color:#c0181e}
body.elementor-template-canvas{margin:0;padding:0}

/* XPRO Header */
.xpro-theme-builder-header{position:sticky;top:0;z-index:900;width:100%;background:rgba(10,10,11,.93);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid #2a2a30;box-sizing:border-box}
.xpro-theme-builder-header nav.xpro-theme-builder-header-nav{margin:0;padding:0}
.xpro-theme-builder-header .p-main-title{display:none}
.main-title.xpro-hidden{display:none!important}

/* XPRO Footer */
#xpro-theme-builder-footer{background:#141416;border-top:1px solid #2a2a30;margin-top:80px}

/* Scrollbar */
::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:#141416}
::-webkit-scrollbar-thumb{background:#3a3a42;border-radius:3px}
::-webkit-scrollbar-thumb:hover{background:#8a8a95}

/* Elementor containers inherit dark bg */
.e-con,.e-con-inner{background-color:inherit}

/* WPForms dark */
.wpforms-container .wpforms-form input[type=text],
.wpforms-container .wpforms-form input[type=email],
.wpforms-container .wpforms-form input[type=tel],
.wpforms-container .wpforms-form select,
.wpforms-container .wpforms-form textarea{background:#0a0a0b!important;border:1px solid #2a2a30!important;border-radius:10px!important;color:#f0f0f2!important;padding:11px 14px!important;font-size:.9rem!important;font-family:inherit!important;width:100%!important;box-sizing:border-box!important;transition:border-color .22s!important}
.wpforms-container .wpforms-form input:focus,.wpforms-container .wpforms-form select:focus,.wpforms-container .wpforms-form textarea:focus{border-color:#e01f26!important;outline:none!important;box-shadow:0 0 0 3px rgba(224,31,38,.12)!important}
.wpforms-container .wpforms-form .wpforms-field-label{color:#8a8a95!important;font-size:.75rem!important;font-weight:700!important;text-transform:uppercase!important;letter-spacing:.06em!important;margin-bottom:7px!important;display:block!important}
.wpforms-container .wpforms-form button[type=submit],.wpforms-container .wpforms-form .wpforms-submit{background:#e01f26!important;color:#fff!important;border:none!important;border-radius:10px!important;padding:13px 26px!important;font-size:.95rem!important;font-weight:700!important;cursor:pointer!important;width:100%!important;transition:background .22s!important;margin-top:8px!important}
.wpforms-container .wpforms-form button[type=submit]:hover,.wpforms-container .wpforms-form .wpforms-submit:hover{background:#c0181e!important}
.wpforms-container{color:#f0f0f2!important}
.wpforms-field-sublabel{color:#8a8a95!important;font-size:.72rem!important}
.wpforms-confirmation-container-full{color:#7ec87e!important;background:#1c2a1c!important;border:1px solid #3a6b3a!important;border-radius:10px!important;padding:16px!important}

/* === DVH Video Grid === */

/* Grid container responsive overrides */
.e-con.e-grid > .e-con-inner {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}
@media (max-width: 1024px) {
  .e-con.e-grid > .e-con-inner {
    grid-template-columns: repeat(3, 1fr) !important;
  }
}
@media (max-width: 767px) {
  .e-con.e-grid > .e-con-inner {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 12px !important;
  }
}
@media (max-width: 480px) {
  .e-con.e-grid > .e-con-inner {
    grid-template-columns: 1fr !important;
  }
}

/* Video card base */
.dvh-video-card {
  background: #1c1c20;
  border: 1px solid #2a2a30;
  border-radius: 16px;
  overflow: hidden;
  cursor: pointer;
  transition: border-color .22s cubic-bezier(.4,0,.2,1),
              transform .22s cubic-bezier(.4,0,.2,1),
              box-shadow .22s cubic-bezier(.4,0,.2,1);
  display: flex;
  flex-direction: column;
}
.dvh-video-card:hover {
  border-color: #e01f26;
  transform: translateY(-4px);
  box-shadow: 0 14px 36px rgba(0,0,0,.5);
}

/* Thumbnail image inside card */
.dvh-video-card .elementor-widget-image img,
.dvh-video-card .elementor-image img {
  width: 100% !important;
  height: 170px !important;
  object-fit: cover !important;
  display: block !important;
  transition: transform .4s ease !important;
}
.dvh-video-card:hover .elementor-widget-image img,
.dvh-video-card:hover .elementor-image img {
  transform: scale(1.06) !important;
}

/* Card headings */
.dvh-video-card h3.elementor-heading-title {
  font-size: 14px;
  font-weight: 700;
  line-height: 1.45;
  color: #f0f0f2;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* text-editor paragraph resets */
.dvh-video-card .elementor-text-editor p {
  margin: 0;
}
