@charset "utf-8";
/* HP4U: stop WPBakery/The7 full-width row jump (CLS) */

/* Viewport-safe width that excludes the scrollbar width */
:root{ --vw-safe: calc(100vw - (100vw - 100%)); }

/* Full-bleed rows/sections created by WPBakery */
.vc_section[data-vc-full-width="true"],
.vc_row[data-vc-full-width="true"]{
  position: relative;
  box-sizing: border-box;

  /* Make them full width from first paint (no JS calc -> no jump) */
  width: var(--vw-safe) !important;
  left: 50% !important;
  margin-left: calc(-0.5 * var(--vw-safe)) !important;
  margin-right: calc(-0.5 * var(--vw-safe)) !important;
  right: auto !important;
}
.hp4u-team--cols-3 .hp4u-team-card {
    flex: 0 0 33.333%;
    max-width: calc((100% - 2 * 2px) / 3);
}
    .hp4u-team-figure { position:relative; overflow:hidden; }
    .hp4u-team-figure > img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; display:block;  max-width: 100%;  aspect-ratio: var(--hp4u-card-ratio, 800/700)}
/* Use dynamic viewport units when supported (best on mobile) */
@supports (width: 100dvw) {
  .vc_section[data-vc-full-width="true"],
  .vc_row[data-vc-full-width="true"]{
    width: 100dvw !important;
    margin-left: -50dvw !important;
    margin-right: -50dvw !important;
  }
}

/* Ensure inner containers keep their intended width */
.vc_section[data-vc-full-width="true"] > .vc_row,
.vc_row[data-vc-full-width="true"] > .vc_row{
  width: auto !important;
  left: auto !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* Prevent accidental horizontal scrolling in modern browsers */
body{ overflow-x: clip; }

.hp4u-team, .hp4u-faq {
  content-visibility: auto;
  contain-intrinsic-size: 1px 800px; /* reserve space to avoid jumps */
}
