.elementor-kit-6{--e-global-color-primary:#091A34;--e-global-color-secondary:#910B17;--e-global-color-text:#575F67;--e-global-color-accent:#BA1A1A;--e-global-color-vxink:#141D23;--e-global-color-vxinkstr:#282A29;--e-global-color-vxink900:#111211;--e-global-color-vxink400:#535554;--e-global-color-vxink100:#BCBDBD;--e-global-color-vxnavy900:#040B16;--e-global-color-vxnavy50:#E6E8EB;--e-global-color-vxwhite:#FFFFFF;--e-global-color-vxsurf50:#F0F1F1;--e-global-color-vxsurf600:#606664;--e-global-color-vxsurf800:#3A3E3D;--e-global-typography-primary-font-family:"IBM Plex Sans";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"IBM Plex Sans";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Inter";--e-global-typography-accent-font-weight:500;--e-global-typography-vxstrong-font-family:"Inter";--e-global-typography-vxstrong-font-weight:600;--e-global-typography-vxdata-font-family:"IBM Plex Mono";--e-global-typography-vxdata-font-weight:500;--e-global-typography-vxdatabold-font-family:"IBM Plex Mono";--e-global-typography-vxdatabold-font-weight:700;color:#575F67;font-family:"Inter", Sans-serif;font-size:16px;font-weight:400;line-height:24px;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1344px;}.e-con{--container-max-width:1344px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* VIBE-EX global constraints — ported from _reference/css/base.css.
   Do not remove: each one prevents a real, silent layout defect. */
body { overflow-wrap: break-word; }

@media (max-width: 1024px) {
  /* `.elementor-heading-title` is required alongside the tag list: the heading widget
     renders as a <div> or <span> whenever header_size is set to one (which is what
     Elementor falls back to for markup the reference writes as <blockquote>, a tag the
     widget cannot emit). Such an element matches none of the tag .elementor-kit-6s, so it did
     not hyphenate — the PM highlight quote wrapped to 6 lines against the reference's 5,
     making the block 39px taller at 375. */
  h1, h2, h3, h4, h5, h6, p, li, dd, dt, figcaption, blockquote,
  .elementor-heading-title { hyphens: auto; }
}

.elementor-widget-image a { display: block; font-size: 0; line-height: 0; }

/* Same defect one level down: Elementor renders the <img> itself as inline-block
   (it centres images with text-align), so an image with no wrapping anchor still
   collects descender space from its own line box — the Solution link's 16px arrow
   made its row 33.6px instead of 29.6px. base.css declares `img { display:block }`
   globally, so this is a like-for-like port, not a workaround. */
.elementor-widget-image img { display: block; }

/* Global button behaviour, ported from base.css `.vx-btn`. Site-wide there,
   so site-wide here — repeating it per widget would drift. */
.elementor-button { white-space: nowrap; }
.elementor-button:focus-visible { outline: 2px solid #BA1A1A; outline-offset: 2px; }

@media (max-width: 767px) {
  /* base.css:157 — .vx-btn goes full-width at mobile. The `width` half of that
     rule was missed in the original port; without it every CTA shrink-wraps. */
  .elementor-button { width: 100%; white-space: normal; text-align: center; }
}/* End custom CSS */