/* EHN Marketing Vault 1.2.1: isolated public-only catalog styles.
   Preloaded in wp_head even if a shortcode is rendered inside WPBakery. */
.ehnmv-public-vault {
  color:#15171b;
  font-family:inherit;
  max-width:100%;
  min-width:0;
}
.ehnmv-public-vault *, .ehnmv-public-vault *::before, .ehnmv-public-vault *::after {box-sizing:border-box;}
.ehnmv-public-vault [hidden] {display:none!important;}
.ehnmv-public-vault .ehnmv-public-toolbar {
  display:flex;align-items:flex-end;justify-content:space-between;
  flex-wrap:wrap;gap:18px 26px;margin:0 0 18px;
}
.ehnmv-public-vault .ehnmv-public-heading h2 {font-size:clamp(23px,2vw,30px);font-weight:760;letter-spacing:-.025em;line-height:1.2;margin:0 0 6px;}
.ehnmv-public-vault .ehnmv-public-heading p {font-size:14px;color:#69727e;margin:0;}
.ehnmv-public-vault .ehnmv-public-controls {
  display:flex;flex:1 1 400px;justify-content:flex-end;align-items:flex-end;
  gap:12px;flex-wrap:wrap;
}
.ehnmv-public-vault .ehnmv-public-controls label {min-width:175px;flex:0 1 240px;display:block;margin:0;}
.ehnmv-public-vault .ehnmv-public-controls label:first-child {flex:1 1 240px;max-width:360px;}
.ehnmv-public-vault .ehnmv-public-controls label span {display:block;font-size:12px;font-weight:700;color:#424853;margin-bottom:7px;}
.ehnmv-public-vault .ehnmv-public-search,
.ehnmv-public-vault .ehnmv-public-category {
  width:100%;min-width:0;min-height:45px;margin:0;padding:10px 12px;
  background:#fff;border:1px solid #dadee4;border-radius:9px;
  color:#17191d;box-shadow:none;font:inherit;font-size:14px;
}
.ehnmv-public-vault .ehnmv-public-search:focus,
.ehnmv-public-vault .ehnmv-public-category:focus {outline:2px solid var(--ehnmv-public-accent,#3452ff);outline-offset:1px;}
.ehnmv-public-vault .ehnmv-public-count {font-size:13px;color:#7a828d;margin:0 0 13px;}

/* Fixed four/two/one-column responsive grid, not auto-fill. */
.ehnmv-public-vault .ehnmv-public-grid {
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));
  align-items:stretch;gap:20px;width:100%;min-width:0;
}
.ehnmv-public-vault .ehnmv-public-card {
  display:flex;min-width:0;flex-direction:column;border:1px solid #e0e4e9;
  border-radius:12px;overflow:hidden;background:#fff;
}
.ehnmv-public-vault .ehnmv-public-card--featured {border-color:var(--ehnmv-public-accent,#3452ff);}
.ehnmv-public-vault .ehnmv-public-media {
  position:relative;display:flex;justify-content:center;align-items:center;
  width:100%;aspect-ratio:16/10;background:var(--ehnmv-public-light,#f3f4f6);
  overflow:hidden;
}
.ehnmv-public-vault .ehnmv-public-media--bg-dark {background:var(--ehnmv-public-dark,#24272d);}
.ehnmv-public-vault .ehnmv-public-media--contain {padding:18px;}
.ehnmv-public-vault .ehnmv-public-media--cover {padding:0;}
.ehnmv-public-vault .ehnmv-public-media img {
  display:block!important;width:100%!important;height:100%!important;
  max-width:100%!important;max-height:100%!important;
  object-fit:contain!important;object-position:center!important;
  border:0!important;border-radius:0!important;margin:0!important;padding:0!important;
  box-shadow:none!important;
}
.ehnmv-public-vault .ehnmv-public-media--cover img {object-fit:cover!important;}
.ehnmv-public-vault .ehnmv-public-placeholder {
  display:flex;align-items:center;justify-content:center;
  color:#9ca4b2;opacity:1;line-height:1;
}
.ehnmv-public-vault .ehnmv-public-media--bg-dark .ehnmv-public-placeholder {color:#c8cfdb;}
.ehnmv-public-vault .ehnmv-public-placeholder svg {display:block;width:64px;height:64px;max-width:100%;}
.ehnmv-public-vault .ehnmv-public-ext,
.ehnmv-public-vault .ehnmv-public-locked-badge {
  position:absolute;bottom:12px;right:12px;z-index:2;
  background:#0e1116;color:#fff;font-size:11px;line-height:1;
  padding:7px 9px;border-radius:6px;font-weight:750;
}
.ehnmv-public-vault .ehnmv-public-locked-badge {
  bottom:auto;right:auto;top:12px;left:12px;
  background:#fff;color:#383c45;border:1px solid #e0e3ea;
}
.ehnmv-public-vault .ehnmv-public-body {display:flex;flex:1;flex-direction:column;min-width:0;padding:20px;}
.ehnmv-public-vault .ehnmv-public-eyebrow {font-size:11px;letter-spacing:.075em;text-transform:uppercase;color:var(--ehnmv-public-accent,#3452ff);font-weight:800;margin-bottom:7px;}
.ehnmv-public-vault .ehnmv-public-body h3 {font-size:19px;letter-spacing:-.015em;line-height:1.35;color:#111317;margin:0 0 9px;font-weight:760;overflow-wrap:anywhere;}
.ehnmv-public-vault .ehnmv-public-desc {font-size:13px;line-height:1.55;color:#68717e;margin:0 0 16px;}
.ehnmv-public-vault .ehnmv-public-bottom {margin-top:auto;padding-top:16px;}
.ehnmv-public-vault .ehnmv-public-filemeta {border-top:1px solid #e9ebef;padding:14px 0;color:#7a828d;font-size:12px;font-weight:650;}

/* One explicit action style for both links and submit buttons.
   Reset theme/Salient button backgrounds, pseudo elements, transforms and shadows. */
.ehnmv-public-vault .ehnmv-public-card a.ehnmv-public-action,
.ehnmv-public-vault .ehnmv-public-card button.ehnmv-public-action {
  -webkit-appearance:none!important;appearance:none!important;
  display:flex!important;flex-direction:row!important;align-items:center!important;
  justify-content:center!important;gap:10px!important;
  position:relative!important;width:100%!important;max-width:none!important;
  min-height:48px!important;height:auto!important;
  margin:0!important;padding:12px 14px!important;
  text-align:center!important;text-decoration:none!important;
  text-transform:none!important;letter-spacing:0!important;
  font-family:inherit!important;font-size:14px!important;font-weight:750!important;
  line-height:1.35!important;
  border:0!important;border-radius:9px!important;
  background:var(--ehnmv-public-accent,#3452ff)!important;
  background-image:none!important;color:#fff!important;
  box-shadow:none!important;filter:none!important;
  cursor:pointer!important;opacity:1!important;
  transform:translateY(0)!important;
  transition:transform .19s ease,box-shadow .19s ease!important;
}
.ehnmv-public-vault .ehnmv-public-card a.ehnmv-public-action::before,
.ehnmv-public-vault .ehnmv-public-card a.ehnmv-public-action::after,
.ehnmv-public-vault .ehnmv-public-card button.ehnmv-public-action::before,
.ehnmv-public-vault .ehnmv-public-card button.ehnmv-public-action::after {display:none!important;content:none!important;}
.ehnmv-public-vault .ehnmv-public-card .ehnmv-public-action svg {
  display:block!important;width:18px!important;height:18px!important;
  min-width:18px!important;flex-shrink:0;stroke:currentColor!important;
}
.ehnmv-public-vault .ehnmv-public-card .ehnmv-public-action span {color:inherit!important;}
.ehnmv-public-vault .ehnmv-public-card a.ehnmv-public-action:hover,
.ehnmv-public-vault .ehnmv-public-card button.ehnmv-public-action:hover {
  background:var(--ehnmv-public-accent,#3452ff)!important;
  color:#fff!important;transform:translateY(-3px)!important;
  box-shadow:0 9px 18px rgba(30,51,140,.16)!important;
}
.ehnmv-public-vault .ehnmv-public-card a.ehnmv-public-action:active,
.ehnmv-public-vault .ehnmv-public-card button.ehnmv-public-action:active {transform:translateY(-1px)!important;}
.ehnmv-public-vault .ehnmv-public-card a.ehnmv-public-action:focus-visible,
.ehnmv-public-vault .ehnmv-public-card button.ehnmv-public-action:focus-visible {outline:3px solid var(--ehnmv-public-accent,#3452ff)!important;outline-offset:3px!important;}
.ehnmv-public-vault .ehnmv-public-unlock {margin:0;}
.ehnmv-public-vault .ehnmv-public-unlock label {display:block;font-weight:700;font-size:12px;margin-bottom:7px;}
.ehnmv-public-vault .ehnmv-public-unlock input {
  display:block;width:100%;border:1px solid #d4d9e1;border-radius:8px;
  min-height:43px;background:#fff;color:#191b1f;font:inherit;
  font-size:14px;padding:10px 12px;margin:0 0 9px;box-shadow:none;
}
.ehnmv-public-vault .ehnmv-public-unlock input:focus {outline:2px solid var(--ehnmv-public-accent,#3452ff);outline-offset:1px;}
.ehnmv-public-vault .ehnmv-public-unlock input[aria-invalid="true"] {border-color:#c12c2c;}
.ehnmv-public-vault .ehnmv-public-error {font-size:12px;color:#a12121;margin:1px 0 10px;}
.ehnmv-public-vault .ehnmv-public-empty,
.ehnmv-public-vault .ehnmv-public-no-match {padding:30px 16px;text-align:center;border:1px dashed #d9dde3;border-radius:10px;background:#f9fafb;color:#666e7a;}
@media (max-width:1023px) {
  .ehnmv-public-vault .ehnmv-public-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}
}
@media (max-width:639px) {
  .ehnmv-public-vault .ehnmv-public-toolbar {display:block;}
  .ehnmv-public-vault .ehnmv-public-controls {justify-content:stretch;margin-top:18px;}
  .ehnmv-public-vault .ehnmv-public-controls label,
  .ehnmv-public-vault .ehnmv-public-controls label:first-child {flex:1 1 100%;max-width:none;}
  .ehnmv-public-vault .ehnmv-public-grid {grid-template-columns:minmax(0,1fr);gap:14px;}
  .ehnmv-public-vault .ehnmv-public-body {padding:17px;}
}
@media (prefers-reduced-motion:reduce) {
  .ehnmv-public-vault .ehnmv-public-card .ehnmv-public-action {transition:none!important;}
  .ehnmv-public-vault .ehnmv-public-card .ehnmv-public-action:hover {transform:none!important;box-shadow:none!important;}
}
