.avr-wrap{width:100%;font-family:"Manrope",system-ui,sans-serif}
.avr-wrap *,.avr-wrap *::before,.avr-wrap *::after{box-sizing:border-box}
.avr-router{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:clamp(56px,9vw,150px);
  padding:clamp(28px,4vw,56px);border-radius:28px;background:#fff;border:1px solid #EDEFF7;overflow:hidden;isolation:isolate;contain:layout paint;
  box-shadow:0 2px 12px rgba(0,0,0,.04)}
.avr-router::before{content:"";position:absolute;inset:0;z-index:-2;background-image:radial-gradient(#D3D6E0 1px,transparent 1.2px);background-size:22px 22px;opacity:.55;
  -webkit-mask:radial-gradient(80% 90% at 50% 50%,#000,transparent);mask:radial-gradient(80% 90% at 50% 50%,#000,transparent);pointer-events:none}
.avr-wrap .avr-wires{position:absolute;top:0;left:0;width:100%;height:100%;max-width:none;z-index:-1;pointer-events:none;overflow:visible}
.avr-wires .base{fill:none;stroke:#D3D6E0;stroke-width:1.5}
.avr-wires .lit{fill:none;stroke:url(#avr-routeGrad);stroke-width:2.25;stroke-linecap:round}
.avr-wires .pk{fill:#3086E3}
.avr-wires .pk-halo{fill:rgba(70,186,227,.28)}

/* lists: hard reset against theme / Elementor list styles */
.avr-wrap ul.avr-ins,.avr-wrap ul.avr-outs{list-style:none!important;margin:0!important;padding:0!important}
.avr-wrap .avr-ins{display:grid;gap:12px;justify-items:start}
.avr-wrap .avr-ins li,.avr-wrap .avr-outs li{margin:0!important;list-style:none!important}
.avr-wrap .avr-ins li::marker,.avr-wrap .avr-outs li::marker{content:none}
.avr-wrap .avr-in{display:inline-flex;align-items:center;gap:10px;padding:10px 16px 10px 14px;border-radius:999px;background:#EDEFF7;font-size:15px;font-weight:600;line-height:1.3;color:#40424D;
  transition:background-color .35s,color .35s,box-shadow .35s}
.avr-wrap .avr-in::before{content:"";width:7px;height:7px;flex:0 0 7px;border-radius:50%;background:#BCBFCC;transition:background-color .3s,box-shadow .3s}
.avr-wrap .avr-in.is-firing{background:#fff;color:#3161CC;box-shadow:0 0 0 1px rgba(48,134,227,.35),0 10px 24px -12px rgba(49,97,204,.6)}
.avr-wrap .avr-in.is-firing::before{background:#3086E3;box-shadow:0 0 0 4px rgba(48,134,227,.18)}

/* hub: spinning gradient border, GPU-friendly (rotate a clipped layer, no per-frame mask repaint) */
.avr-hub{position:relative;display:grid;place-items:center;width:clamp(170px,17vw,220px);aspect-ratio:2.1;border-radius:24px;isolation:isolate;
  box-shadow:0 24px 60px -24px rgba(49,97,204,.55)}
.avr-hub .avr-ring{position:absolute;inset:-2px;border-radius:26px;overflow:hidden;z-index:0;transform:translateZ(0)}
.avr-hub .avr-ring::before{content:"";position:absolute;left:50%;top:50%;width:150%;aspect-ratio:1;margin:-75% 0 0 -75%;
  background:conic-gradient(#46BAE3,#3161CC,#78C7E3,#3086E3,#46BAE3);will-change:transform;animation:avrSpin 6s linear infinite}
.avr-hub .avr-face{position:absolute;inset:0;border-radius:24px;background:#fff;z-index:1;box-shadow:0 0 0 1px #EDEFF7}
.avr-wrap .avr-hub svg{position:relative;z-index:2;width:78%;height:auto;display:block;max-width:none}
@keyframes avrSpin{to{transform:rotate(360deg)}}
.avr-hub::after{content:"";position:absolute;inset:0;border-radius:inherit;z-index:-1;box-shadow:0 0 0 0 rgba(48,134,227,.35);pointer-events:none}
.avr-hub.is-pulse::after{animation:avrPulse 1s cubic-bezier(.16,1,.3,1)}
@keyframes avrPulse{0%{box-shadow:0 0 0 0 rgba(48,134,227,.45)}100%{box-shadow:0 0 0 26px rgba(48,134,227,0)}}

.avr-wrap .avr-outs{display:grid;gap:12px;justify-items:end}
.avr-wrap .avr-partner{position:relative;width:min(100%,290px);display:flex;flex-direction:column;gap:3px;padding:16px 20px;border-radius:16px;background:#fff;border:1px solid #D3D6E0;
  transition:border-color .4s,box-shadow .5s,transform .6s cubic-bezier(.16,1,.3,1)}
.avr-wrap .avr-partner::after{content:"";position:absolute;right:16px;top:50%;width:8px;height:8px;margin-top:-4px;border-radius:50%;background:#D3D6E0;transition:background-color .3s,box-shadow .3s}
.avr-wrap .avr-partner.is-active{border-color:rgba(48,134,227,.55);transform:translateX(-6px);box-shadow:0 18px 40px -22px rgba(49,97,204,.7)}
.avr-wrap .avr-partner.is-active::after{background:#3086E3;box-shadow:0 0 0 5px rgba(48,134,227,.18)}
.avr-wrap .avr-logo{display:flex;align-items:center;height:36px;margin-bottom:6px}
.avr-wrap .avr-logo img{display:block!important;width:auto!important;max-width:190px!important;height:26px;object-fit:contain;object-position:left center;border:0!important;border-radius:0!important;box-shadow:none!important;opacity:1!important}
.avr-wrap .avr-logo .lg-aws{height:34px!important}
.avr-wrap .avr-logo .lg-anthropic{height:15px!important}
.avr-wrap .avr-logo .lg-openai{height:26px!important}
.avr-wrap .avr-logo .lg-eleven{height:17px!important}
.avr-wrap .avr-name{display:none;font-size:clamp(19px,1.7vw,23px);font-weight:700;letter-spacing:-.02em;color:#1E1E24;transition:color .4s}
.avr-wrap .avr-partner.use-fallback .avr-logo{display:none}
.avr-wrap .avr-partner.use-fallback .avr-name{display:block}
.avr-wrap .avr-partner.is-active .avr-name{color:#3161CC}
.avr-wrap .avr-tag{font-size:13px;line-height:1.35;color:#6E7180}

@media (max-width:960px){
  .avr-router{grid-template-columns:1fr;justify-items:center;gap:56px}
  .avr-wrap .avr-ins{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
  .avr-wrap .avr-outs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;justify-items:stretch}
  .avr-wrap .avr-partner{width:auto}
  .avr-wrap .avr-partner.is-active{transform:translateY(-4px)}
}
@media (max-width:640px){
  .avr-router{padding:28px 18px;gap:44px;border-radius:22px}
  .avr-wrap .avr-outs{grid-template-columns:1fr}
  .avr-wrap .avr-in{font-size:14px;padding:9px 14px 9px 12px}
}
@media (prefers-reduced-motion:reduce){.avr-hub .avr-ring::before{animation:none}}
/* Avahi home v3 (page 37337) | full page CSS. Paste into: Edit with Elementor > Page Settings (gear) > Advanced > Custom CSS */
.page-id-37340 .elementor-38328 .elementor-element.elementor-element-68ed8683 .elementor-button{
      padding: 10px 10px 10px 10px !important;
}
.elementor[data-elementor-type=wp-page] {
  --blue: #3161CC;
  --blue-2: #366ADF;
  --mid: #3086E3;
  --light: #46BAE3;
  --sky: #78C7E3;
  --paper: #FAFBFF;
  --cloud: #EDEFF7;
  --smoke: #D3D6E0;
  --steel: #BCBFCC;
  --space: #9DA2B3;
  --graphite: #6E7180;
  --arsenic: #40424D;
  --ink: #1E1E24;
  --grad: linear-gradient(135deg, #46BAE3 0%, #3086E3 50%, #3161CC 100%);
  --grad-x: linear-gradient(90deg, #3161CC 0%, #3086E3 50%, #46BAE3 100%);
  --grad-ink: linear-gradient(90deg, #3161CC 0%, #3086E3 75%, #46BAE3 130%);
  --ease: cubic-bezier(.2, .7, .2, 1);
  --ease-out: cubic-bezier(.16, 1, .3, 1);
  --wrap: 1240px;
  --gutter: clamp(20px, 4vw, 40px);
  --sec: clamp(96px, 11vw, 168px);
  --r-md: 22px;
  --r-lg: 28px;
  --panel-m: clamp(8px, 1vw, 14px);
  --panel-r: clamp(24px, 2.8vw, 44px);
  background: var(--paper);
  color: var(--arsenic);
  font-size: 17px;
  line-height: 1.6;
  overflow-x: clip;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale
}

:where(.elementor[data-elementor-type=wp-page]) *,
:where(.elementor[data-elementor-type=wp-page]) *::before,
:where(.elementor[data-elementor-type=wp-page]) *::after {
  box-sizing: border-box
}

 

:where(.elementor[data-elementor-type=wp-page]) .elementor-widget-text-editor p {
  margin: 0
}

:where(.elementor[data-elementor-type=wp-page]) .elementor-heading-title {
  margin: 0;
  text-wrap: balance;
  text-transform: none !important
}

:where(.elementor[data-elementor-type=wp-page]) .elementor-widget-text-editor,
:where(.elementor[data-elementor-type=wp-page]) .elementor-widget-text-editor p,
:where(.elementor[data-elementor-type=wp-page]) .elementor-tab-title,
:where(.elementor[data-elementor-type=wp-page]) .elementor-tab-title a,
:where(.elementor[data-elementor-type=wp-page]) .elementor-tab-content {
  text-transform: none !important
}

:where(.elementor[data-elementor-type=wp-page]) a {
  text-decoration: none !important
}

:where(.elementor[data-elementor-type=wp-page]) :focus-visible {
  outline: 2px solid var(--light);
  outline-offset: 3px;
  border-radius: 8px
}

:where(.elementor[data-elementor-type=wp-page]) .e-con {
  gap: 0 !important;
  padding: 0 !important;
  min-height: 0
}

:where(.elementor[data-elementor-type=wp-page])>.e-con {
  margin: 0 !important;
  max-width: none !important;
  width: 100% !important;
  border-radius: 0
}

:where(.elementor[data-elementor-type=wp-page])>.e-con>.e-con-inner {
  max-width: none !important;
  width: 100% !important;
  padding: 0 !important;
  gap: 0 !important
}

:where(.elementor[data-elementor-type=wp-page]) .e-con>.elementor-widget,
:where(.elementor[data-elementor-type=wp-page]) .e-con-inner>.elementor-widget {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important
}

:where(.elementor[data-elementor-type=wp-page]) .elementor-widget-html:has(>[data-avx]) {
  display: none !important
}

.avx-wrap,
.e-con:has(>*>[data-avx=wrap]) {
  width: min(100% - 2*var(--gutter), var(--wrap)) !important;
  margin-inline: auto !important
}

:where(.elementor[data-elementor-type=wp-page]) .elementor-widget-image img {
  display: block;
  max-width: 100%;
  height: auto
}

.grad-text {
  background: var(--grad-x);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent !important;
  -webkit-text-fill-color: transparent;
  /* Keep the gradient continuous across wrapped lines. Never transform this
     element or put transformed children in it: Safari then paints no text. */
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone
}

:where(.elementor[data-elementor-type=wp-page]) h2.elementor-heading-title {
  font-size: clamp(34px, 4.5vw, 62px) !important;
  line-height: 1.05 !important;
  letter-spacing: -.035em !important;
  font-weight: 700 !important;
  color: var(--ink) !important
}

:where(.elementor[data-elementor-type=wp-page]) .e-con:has(>*>[data-eb])>.elementor-widget-text-editor:nth-child(1 of .elementor-widget-text-editor),
.avx-eyebrow {
  display: inline-flex !important;
  width: auto !important;
  align-items: center;
  gap: 12px;
  font-size: 12.5px !important;
  font-weight: 500 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
  color: var(--space) !important;
  line-height: 1 !important
}

:where(.elementor[data-elementor-type=wp-page]) .e-con:has(>*>[data-eb])>.elementor-widget-text-editor:nth-child(1 of .elementor-widget-text-editor)::before,
.avx-eyebrow::before {
  content: "";
  width: 22px;
  height: 2px;
  border-radius: 2px;
  background: var(--grad)
}

:where(.elementor[data-elementor-type=wp-page]) .e-con:has(>*>[data-lede])>.elementor-widget-text-editor:nth-last-child(1 of .elementor-widget-text-editor),
:where(.elementor[data-elementor-type=wp-page]) .e-con:has(>*>[data-lede])>.elementor-widget-text-editor:nth-last-child(1 of .elementor-widget-text-editor) p {
  font-size: clamp(17px, 1.35vw, 19px) !important;
  line-height: 1.65 !important;
  color: var(--graphite) !important;
  max-width: 56ch
}

:where(.elementor[data-elementor-type=wp-page]) .e-con:has(>*>*>[data-dark]) h2.elementor-heading-title {
  color: #fff !important
}

:where(.elementor[data-elementor-type=wp-page]) .e-con:has(>*>*>[data-dark]) .e-con:has(>*>[data-eb])>.elementor-widget-text-editor:nth-child(1 of .elementor-widget-text-editor) {
  color: var(--cloud) !important
}

:where(.elementor[data-elementor-type=wp-page]) .e-con:has(>*>*>[data-dark]) .e-con:has(>*>[data-lede])>.elementor-widget-text-editor:nth-last-child(1 of .elementor-widget-text-editor),
:where(.elementor[data-elementor-type=wp-page]) .e-con:has(>*>*>[data-dark]) .e-con:has(>*>[data-lede])>.elementor-widget-text-editor:nth-last-child(1 of .elementor-widget-text-editor) p {
  color: var(--steel) !important
}

:where(.elementor[data-elementor-type=wp-page]) {
  --arrow: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E");
  --arrow-w: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E");
  --arrow-b: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233161CC' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E");
  --arrow-wd: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cg transform='rotate(-45 12 12)'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/g%3E%3C/svg%3E")
}

:where(.elementor[data-elementor-type=wp-page]) .elementor-widget-button {
  width: auto !important;
  max-width: 100% !important
}

:where(.elementor[data-elementor-type=wp-page]) .elementor-button {
  --h: 52px;
  position: relative;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-height: var(--h);
  padding: 0 26px !important;
  border: 0;
  border-radius: 999px !important; 
  font-weight: 700 !important;
  font-size: 16px !important;
  letter-spacing: -.005em !important;
  line-height: 1.15 !important;
  text-transform: none !important;
  text-decoration: none !important;
  white-space: nowrap;
  isolation: isolate;
  cursor: pointer;
  box-shadow: none;
  transition: transform .45s var(--ease-out), box-shadow .35s ease, background-color .3s, color .3s, border-color .3s, background-position .6s var(--ease)
}

:where(.elementor[data-elementor-type=wp-page]) .elementor-button .elementor-button-content-wrapper {
  display: inline-flex !important;
  flex-direction: row !important;
  align-items: center;
  gap: 12px
}

:where(.elementor[data-elementor-type=wp-page]) .elementor-button .elementor-button-text {
  font: inherit;
  color: inherit !important;
  text-transform: none !important
}

.e-con:has(>*>[data-avx=hero-actions]) .elementor-button,
.e-con:has(>*>[data-avx=rapid-copy]) .elementor-button,
.e-con:has(>*>[data-avx=cta-actions]) .elementor-button {
  --h: 60px;
  padding: 0 32px !important;
  font-size: 18px !important
}

.e-con:has(>*>[data-avx=hero-actions]) .elementor-button .elementor-button-content-wrapper::after,
.e-con:has(>*>[data-avx=rapid-copy]) .elementor-button .elementor-button-content-wrapper::after,
.e-con:has(>*>[data-avx=path-side]) .elementor-button .elementor-button-content-wrapper::after,
.e-con:has(>*>[data-avx=cta-actions]) .elementor-widget-button:nth-child(1 of .elementor-widget-button) .elementor-button .elementor-button-content-wrapper::after {
  content: "";
  flex: none;
  width: 30px;
  height: 30px;
  margin-right: -12px;
  border-radius: 50%;
  background: var(--ai, var(--arrow-w)) center/16px 16px no-repeat, var(--ab, rgba(255, 255, 255, .18));
  transition: transform .45s var(--ease-out), background-color .3s
}

.e-con:has(>*>[data-avx=hero-actions]) .elementor-button:hover .elementor-button-content-wrapper::after,
.e-con:has(>*>[data-avx=rapid-copy]) .elementor-button:hover .elementor-button-content-wrapper::after,
.e-con:has(>*>[data-avx=path-side]) .elementor-button:hover .elementor-button-content-wrapper::after,
.e-con:has(>*>[data-avx=cta-actions]) .elementor-widget-button:nth-child(1 of .elementor-widget-button) .elementor-button:hover .elementor-button-content-wrapper::after {
  transform: rotate(-45deg)
}

.e-con:has(>*>[data-avx=hero-actions]) .elementor-button,
.e-con:has(>*>[data-avx=rapid-copy]) .elementor-button,
.e-con:has(>*>[data-avx=hero-actions]) .elementor-button:hover,
.e-con:has(>*>[data-avx=rapid-copy]) .elementor-button:hover,
.e-con:has(>*>[data-avx=hero-actions]) .elementor-button:focus,
.e-con:has(>*>[data-avx=rapid-copy]) .elementor-button:focus,
.e-con:has(>*>[data-avx=hero-actions]) .elementor-button:visited,
.e-con:has(>*>[data-avx=rapid-copy]) .elementor-button:visited {
  color: #fff !important;
  background: linear-gradient(90deg, #3161CC 0%, #3086E3 45%, #46BAE3 100%) !important;
  background-size: 180% 100% !important
}

.e-con:has(>*>[data-avx=hero-actions]) .elementor-button::after,
.e-con:has(>*>[data-avx=rapid-copy]) .elementor-button::after {
  content: "";
  position: absolute;
  inset: -2px;
  border-radius: inherit;
  padding: 2px;
  z-index: -1;
  opacity: 0;
  pointer-events: none;
  background: conic-gradient(from var(--spin, 0deg), #3086E3, #78C7E3, #3086E3, #78C7E3, #3086E3);
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask: linear-gradient(#000 0 0) content-box exclude, linear-gradient(#000 0 0);
  transition: opacity .3s
}

.e-con:has(>*>[data-avx=hero-actions]) .elementor-button:hover,
.e-con:has(>*>[data-avx=rapid-copy]) .elementor-button:hover {
  background-position: 100% 0 !important;
  box-shadow: 0 10px 34px -8px rgba(48, 134, 227, .6) !important
}

.e-con:has(>*>[data-avx=hero-actions]) .elementor-button:hover::after,
.e-con:has(>*>[data-avx=rapid-copy]) .elementor-button:hover::after {
  opacity: 1;
  animation: avx-spin 3s linear infinite
}

@property --spin {
  syntax: "\3c angle>";
  inherits: false;
  initial-value: 0deg
}

@keyframes avx-spin {
  to {
    --spin: 360deg
  }
}

/* Awards section spacing (like the 2nd screenshot). Section class: avm-sec awards */

.avm-sec.awards {
  padding-top: clamp(104px, 11.5vw, 184px) !important;
  padding-bottom: clamp(104px, 11.5vw, 184px) !important;
  padding-left: max(24px, calc((100% - 1570px) / 2)) !important;
  padding-right: 0 !important;
  overflow: hidden;
}

@media (max-width:960px) {
  .avm-sec.awards {
    padding-right: 24px !important
  }
}

.e-con:has(>*>[data-avx=stories-side]) .elementor-button,
.e-con:has(>*>[data-avx=path-side]) .elementor-button,
.e-con:has(>*>[data-avx=stories-side]) .elementor-button:visited,
.e-con:has(>*>[data-avx=path-side]) .elementor-button:visited {
  color: var(--blue) !important;
  background: transparent !important;
  border: 1.5px solid var(--blue) !important;
  --ai: var(--arrow-b);
  --ab: rgba(49, 97, 204, .1)
}

.e-con:has(>*>[data-avx=stories-side]) .elementor-button:hover,
.e-con:has(>*>[data-avx=path-side]) .elementor-button:hover,
.e-con:has(>*>[data-avx=stories-side]) .elementor-button:focus,
.e-con:has(>*>[data-avx=path-side]) .elementor-button:focus {
  color: #fff !important;
  background: var(--blue) !important;
  border-color: var(--blue) !important;
  --ai: var(--arrow-w);
  --ab: rgba(255, 255, 255, .18)
}

.e-con:has(>*>[data-avx=cta-actions]) .elementor-widget-button:nth-child(1 of .elementor-widget-button) .elementor-button,
.e-con:has(>*>[data-avx=cta-actions]) .elementor-widget-button:nth-child(1 of .elementor-widget-button) .elementor-button:visited,
.e-con:has(>*>[data-avx=cta-actions]) .elementor-widget-button:nth-child(1 of .elementor-widget-button) .elementor-button:focus {
  color: var(--blue) !important;
  background: #fff !important;
  --ai: var(--arrow-b);
  --ab: var(--cloud)
}

.e-con:has(>*>[data-avx=cta-actions]) .elementor-widget-button:nth-child(1 of .elementor-widget-button) .elementor-button:hover {
  color: var(--blue) !important;
  background: #fff !important;
  box-shadow: 0 14px 40px -10px rgba(0, 0, 0, .35) !important
}

.e-con:has(>*>[data-avx=cta-actions]) .elementor-widget-button:nth-child(2 of .elementor-widget-button) .elementor-button,
.e-con:has(>*>[data-avx=cta-actions]) .elementor-widget-button:nth-child(2 of .elementor-widget-button) .elementor-button:visited,
.e-con:has(>*>[data-avx=cta-actions]) .elementor-widget-button:nth-child(2 of .elementor-widget-button) .elementor-button:focus {
  color: #fff !important;
  border: 1px solid rgba(255, 255, 255, .34) !important;
  background: rgba(255, 255, 255, .04) !important;
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px)
}

.e-con:has(>*>[data-avx=cta-actions]) .elementor-widget-button:nth-child(2 of .elementor-widget-button) .elementor-button:hover {
  color: #fff !important;
  background: rgba(255, 255, 255, .14) !important;
  border-color: rgba(255, 255, 255, .6) !important
}

.e-con:has(>*>[data-avx=cta-actions]) .elementor-button {
  transition: transform .5s var(--ease-out), box-shadow .35s, background-color .3s, color .3s, border-color .3s
}

.e-con:has(>*>[data-avx=svc-foot]) .elementor-button,
.svc__nav .elementor-button,
.e-con:has(>*>[data-avx=svc-foot]) .elementor-button:hover,
.svc__nav .elementor-button:hover,
.e-con:has(>*>[data-avx=svc-foot]) .elementor-button:focus,
.svc__nav .elementor-button:focus,
.e-con:has(>*>[data-avx=svc-foot]) .elementor-button:visited,
.svc__nav .elementor-button:visited {
  --h: 38px;
  padding: 0 !important;
  background: none !important;
  border: 0 !important;
  color: #fff !important;
  font-size: 16px !important;
  box-shadow: none !important
}

.e-con:has(>*>[data-avx=svc-foot]) .elementor-button .elementor-button-content-wrapper::after,
.svc__nav .elementor-button .elementor-button-content-wrapper::after {
  content: "";
  flex: none;
  width: 42px;
  height: 38px;
  border-radius: 999px;
  background: var(--arrow-w) center/18px 18px no-repeat, linear-gradient(90deg, #78C7E3, #488FDC)
}

.e-con:has(>*>[data-avx=svc-foot]) .elementor-button:hover .elementor-button-content-wrapper::after,
.svc__nav .elementor-button:hover .elementor-button-content-wrapper::after {
  background: var(--arrow-wd) center/18px 18px no-repeat, linear-gradient(90deg, #78C7E3, #488FDC)
}

.e-con:has(>*>*>[data-avx=hero]) {
  position: relative;
  min-height: 100svh !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  background: #000 !important;
  overflow: hidden !important;
  isolation: isolate;
  color: #fff;
  text-align: center
}

.e-con:has(>*>*>[data-avx=hero])::before {
  content: "" !important;
  position: absolute;
  inset: -15%;
  z-index: -1;
  background: radial-gradient(38% 46% at 28% 38%, rgba(49, 97, 204, .55), transparent 70%), radial-gradient(34% 42% at 74% 62%, rgba(70, 186, 227, .32), transparent 70%), radial-gradient(30% 30% at 55% 20%, rgba(48, 134, 227, .25), transparent 70%), #000;
  animation: avx-drift 22s ease-in-out infinite alternate;
  opacity: 1 !important
}

.e-con:has(>*>*>[data-avx=hero])::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(to top, rgba(0, 0, 0, .75), transparent 40%), rgba(2, 1, 1, .47)
}

.e-con:has(>*>*>[data-avx=hero])>.e-con-inner>.elementor-widget-html:has(.avx-hero-video) {
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
  pointer-events: none
}

.avx-hero-video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0;
  transition: opacity 1.4s ease
}

.avx-hero-video.is-ready {
  opacity: 1
}

.e-con:has(>*>*>[data-avx=hero])>.e-con-inner {
  position: static !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  padding: 150px var(--gutter) 190px !important
}

.e-con:has(>*>*>[data-avx=hero])>.e-con-inner>.elementor-widget,
.e-con:has(>*>*>[data-avx=hero])>.e-con-inner>.e-con {
  position: relative;
  z-index: 2
}

@keyframes avx-drift {
  0% {
    transform: translate3d(0, 0, 0) scale(1)
  }
  50% {
    transform: translate3d(3%, -2%, 0) scale(1.06)
  }
  100% {
    transform: translate3d(-3%, 2%, 0) scale(1.02)
  }
}

.e-con:has(>*>*>[data-avx=hero]) .elementor-widget-text-editor:nth-child(1 of .elementor-widget-text-editor) {
  font-size: clamp(17px, 1.6vw, 20px) !important;
  font-weight: 500 !important;
  line-height: 1.3 !important;
  letter-spacing: -.45px;
  color: #fff !important;
  margin-bottom: 22px !important
}

.e-con:has(>*>*>[data-avx=hero]) h1.elementor-heading-title {
  font-size: clamp(38px, 6.25vw, 80px) !important;
  line-height: 110px !important;
  font-weight: 600 !important;
  letter-spacing: -.6px !important;
  color: #fff !important;
  max-width: 14.5em;
  margin-inline: auto !important
}

.e-con:has(>*>*>[data-avx=hero]) h1 .grad-text {
  background-size: 200% 100%;
  animation: avx-sheen 7s ease-in-out infinite alternate
}

@keyframes avx-sheen {
  from {
    background-position: 0% 0
  }
  to {
    background-position: 100% 0
  }
}

.e-con:has(>*>*>[data-avx=hero]) .elementor-widget-text-editor:nth-child(2 of .elementor-widget-text-editor) {
  max-width: 900px !important;
  margin: 28px auto 0 !important;
  font-size: clamp(17px, 1.55vw, 20px) !important;
  line-height: 1.45 !important;
  color: #fff !important;
  font-weight: 400
}

.e-con:has(>*>[data-avx=hero-actions]) {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  gap: 16px !important;
  margin-top: 40px !important;
  width: auto !important
}

.e-con:has(>*>*>[data-avx=hero])>.e-con-inner>.e-con:has(>*>[data-avx=logos]) {
  position: absolute !important;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 3 !important;
  width: auto !important;
  padding: 26px 0 30px !important;
  border-top: 1px solid rgba(255, 255, 255, .09) !important;
  background: linear-gradient(to top, #000 62%, rgba(0, 0, 0, .85)) !important;
  -webkit-mask: linear-gradient(90deg, transparent, #000 9%, #000 91%, transparent);
  mask: linear-gradient(90deg, transparent, #000 9%, #000 91%, transparent);
  overflow: hidden !important
}

.e-con:has(>*>[data-avx=logos-track]) {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  width: max-content !important
}

.e-con:has(>*>[data-avx=logos-track]).is-on {
  animation: avx-marquee var(--dur, 60s) linear infinite
}

.e-con:has(>*>[data-avx=logos]):hover .e-con:has(>*>[data-avx=logos-track]) {
  animation-play-state: paused
}

.e-con:has(>*>[data-avx=logos-track])>.elementor-widget-image {
  flex: none !important;
  width: auto !important;
  margin: 0 clamp(48px, 5.5vw, 84px) 0 0 !important
}

.e-con:has(>*>[data-avx=logos-track]) img {
  display: block !important;
  height: 28px !important;
  width: auto !important;
  max-width: none !important;
  object-fit: contain;
  opacity: .62;
  transition: opacity .25s
}

.e-con:has(>*>[data-avx=logos-track]) img:hover {
  opacity: 1
}

.e-con:has(>*>[data-avx=logos-track])>.elementor-widget-image:nth-child(8n+1 of .elementor-widget-image) img {
  height: 25.8px !important
}

.e-con:has(>*>[data-avx=logos-track])>.elementor-widget-image:nth-child(8n+2 of .elementor-widget-image) img {
  height: 28.9px !important
}

.e-con:has(>*>[data-avx=logos-track])>.elementor-widget-image:nth-child(8n+3 of .elementor-widget-image) img {
  height: 23.6px !important
}

.e-con:has(>*>[data-avx=logos-track])>.elementor-widget-image:nth-child(8n+4 of .elementor-widget-image) img {
  height: 27.2px !important
}

.e-con:has(>*>[data-avx=logos-track])>.elementor-widget-image:nth-child(8n+5 of .elementor-widget-image) img {
  height: 28.1px !important
}

.e-con:has(>*>[data-avx=logos-track])>.elementor-widget-image:nth-child(8n+6 of .elementor-widget-image) img {
  height: 26.4px !important
}

.e-con:has(>*>[data-avx=logos-track])>.elementor-widget-image:nth-child(8n+7 of .elementor-widget-image) img {
  height: 33.3px !important
}

.e-con:has(>*>[data-avx=logos-track])>.elementor-widget-image:nth-child(8n+8 of .elementor-widget-image) img {
  height: 35.3px !important
}

@keyframes avx-marquee {
  to {
    transform: translateX(-50%)
  }
}

/* Awards slider: the slide direction is set in home-v3.js (no mirroring: a
   flipped, masked strip with per-logo flips glitches in Safari). */

.e-con:has(>*>*>[data-avx=awards]) {
  position: relative;
  background: var(--paper) !important;
  color: var(--ink);
  padding: clamp(104px, 11.5vw, 184px) 0 !important;
  overflow: hidden !important;
  isolation: isolate
}

.e-con:has(>*>*>[data-avx=awards])::before {
  content: "" !important;
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background: radial-gradient(50% 75% at 68% 50%, rgba(120, 199, 227, .2), transparent 72%), radial-gradient(30% 60% at 8% 50%, rgba(49, 97, 204, .07), transparent 70%);
  opacity: 1 !important
}

.e-con:has(>*>[data-avx=awards-inner]) {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center !important;
  gap: clamp(32px, 5vw, 72px) !important;
  padding-left: max(var(--gutter), calc((100% - var(--wrap))/2)) !important
}

.e-con:has(>*>[data-avx=awards-inner]) h2.elementor-heading-title {
  font-size: clamp(34px, 4vw, 60px) !important;
  white-space: nowrap
}

.e-con:has(>*>[data-avx=awards-rail]) {
  overflow: hidden !important;
  padding: 28px 0 !important;
  -webkit-mask: linear-gradient(90deg, transparent 0, #000 14%, #000 90%, transparent 100%);
  mask: linear-gradient(90deg, transparent 0, #000 14%, #000 90%, transparent 100%)
}

.e-con:has(>*>[data-avx=awards-track]) {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  width: max-content !important
}

.e-con:has(>*>[data-avx=awards-track]).is-on {
  animation: avx-marquee var(--dur, 60s) linear infinite reverse
}

.e-con:has(>*>[data-avx=awards-rail]):hover .e-con:has(>*>[data-avx=awards-track]) {
  animation-play-state: paused
}

.e-con:has(>*>[data-avx=awards-track])>.elementor-widget-image {
  width: auto !important;
  flex: none !important;
  margin-right: clamp(44px, 5.5vw, 88px) !important
}

.e-con:has(>*>[data-avx=awards-track]) img {
  height: clamp(104px, 11.6vw, 168px) !important;
  width: auto !important;
  max-width: none !important;
  transition: transform .5s var(--ease-out), filter .5s;
  filter: drop-shadow(0 10px 18px rgba(30, 30, 36, .08))
}

.e-con:has(>*>[data-avx=awards-track])>.elementor-widget-image:nth-child(7n of .elementor-widget-image) img {
  height: clamp(84px, 9.2vw, 134px) !important;
  border-radius: 6px
}

.e-con:has(>*>[data-avx=awards-track]) img:hover {
  transform: scale(1.06);
  filter: drop-shadow(0 16px 26px rgba(49, 97, 204, .22))
}

.e-con:has(>*>*>[data-avx=svc]) {
  --gx: 70%;
  --gy: 60%;
  position: relative;
  background: #000 !important;
  color: #fff;
  padding-top: clamp(96px, 10vw, 150px) !important;
  margin: 0 0 var(--panel-m) !important;
  isolation: isolate;
  overflow: clip !important;
  clip-path: polygon(calc(var(--panel-m) + 34px) 0, calc(100% - var(--panel-m) - 22px) 0, calc(100% - var(--panel-m)) 22px, calc(100% - var(--panel-m)) calc(100% - 22px), calc(100% - var(--panel-m) - 22px) 100%, calc(var(--panel-m) + 22px) 100%, var(--panel-m) calc(100% - 22px), var(--panel-m) 34px)
}

.e-con:has(>*>*>[data-avx=svc])::before {
  content: "" !important;
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  opacity: 1 !important;
  background: radial-gradient(50% 40% at var(--gx) var(--gy), rgba(49, 97, 204, .28), transparent 70%);
  transition: background .8s
}

.e-con:has(>*>*>[data-avx=svc])>.e-con-inner {
  display: block !important
}

.svc__bg {
  position: sticky;
  top: 0;
  height: 100vh;
  margin-top: calc(-1 * clamp(96px, 10vw, 150px));
  margin-bottom: -100vh;
  z-index: 0;
  pointer-events: none;
  -webkit-mask: linear-gradient(to bottom, transparent 0, #000 12%, #000 88%, transparent 100%);
  mask: linear-gradient(to bottom, transparent 0, #000 12%, #000 88%, transparent 100%)
}

.svc__bg canvas {
  display: block;
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%
}

.e-con:has(>*>*>[data-avx=svc])>.e-con-inner>.elementor-widget-html:has(.svc__bg) {
  position: relative;
  z-index: 0
}

.e-con:has(>*>[data-avx=svc-head]) {
  width: min(100% - 2*var(--gutter) - 2*var(--panel-m), var(--wrap)) !important;
  margin-inline: auto !important;
  position: relative;
  z-index: 1;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 28px 72px !important;
  align-items: end !important;
  padding-bottom: clamp(40px, 5vw, 72px) !important
}

.e-con:has(>*>[data-avx=svc-head])>.elementor-widget-text-editor:nth-child(1 of .elementor-widget-text-editor) {
  grid-column: 1/-1
}

.e-con:has(>*>[data-avx=svc-head]) h2.elementor-heading-title {
  font-size: clamp(40px, 6vw, 84px) !important;
  letter-spacing: -.045em !important;
  line-height: .98 !important;
  color: #fff !important
}

.e-con:has(>*>[data-avx=svc-head])>.elementor-widget-text-editor:nth-child(2 of .elementor-widget-text-editor),
.e-con:has(>*>[data-avx=svc-head])>.elementor-widget-text-editor:nth-child(2 of .elementor-widget-text-editor) p {
  font-size: clamp(17px, 1.4vw, 19px) !important;
  line-height: 1.65 !important;
  color: var(--steel) !important;
  max-width: 50ch
}

.e-con:has(>*>[data-avx=svc-panels]) {
  position: relative;
  z-index: 1;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  gap: 14px !important;
  overflow-x: auto !important;
  scroll-snap-type: x mandatory;
  scroll-padding-inline: calc(var(--gutter) + var(--panel-m));
  padding: 0 calc(var(--gutter) + var(--panel-m)) 6px !important;
  scrollbar-width: none;
  overscroll-behavior-x: contain
}

.e-con:has(>*>[data-avx=svc-panels])::-webkit-scrollbar {
  display: none
}

.e-con:has(>*>[data-avx=svc-panels])>.e-con {
  flex: 0 0 min(84vw, 460px) !important;
  width: auto !important;
  scroll-snap-align: start;
  position: relative;
  display: block !important;
  border-radius: var(--r-md);
  overflow: hidden !important;
  background: #000 !important;
  border: 1px solid rgba(255, 255, 255, .1) !important;
  transition: transform .5s var(--ease-out), border-color .4s
}

.e-con:has(>*>[data-avx=svc-panels])>.e-con:hover {
  transform: scale(1.02);
  border-color: rgba(120, 199, 227, .4) !important
}

.svc__media {
  position: relative;
  aspect-ratio: 2.05/1;
  overflow: hidden;
  background: radial-gradient(70% 80% at 30% 30%, rgba(49, 97, 204, .55), transparent 70%), radial-gradient(60% 70% at 80% 80%, rgba(70, 186, 227, .35), transparent 70%), #05070c
}

.svc__shade {
  display: none
}

.e-con:has(>*>[data-avx=svc-panels])>.e-con>.e-con {
  display: grid !important;
  gap: 10px !important;
  padding: 22px 22px 26px !important;
  position: relative
}

.e-con:has(>*>[data-avx=svc-panels])>.e-con>.e-con>.elementor-widget-text-editor:nth-child(1 of .elementor-widget-text-editor) {
  display: inline-flex !important;
  width: auto !important;
  justify-self: start;
  align-items: center;
  gap: 8px;
  font-size: 11.5px !important;
  font-weight: 500 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
  color: var(--sky) !important;
  line-height: 1.3 !important
}

.e-con:has(>*>[data-avx=svc-panels])>.e-con>.e-con>.elementor-widget-text-editor:nth-child(1 of .elementor-widget-text-editor)::before {
  content: "";
  flex: none;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--sky);
  box-shadow: 0 0 0 4px rgba(120, 199, 227, .18)
}

.e-con:has(>*>[data-avx=svc-panels]) h3.elementor-heading-title {
  font-size: clamp(24px, 5.5vw, 30px) !important;
  line-height: 1.12 !important;
  font-weight: 700 !important;
  letter-spacing: -.025em !important;
  color: #fff !important
}

.e-con:has(>*>[data-avx=svc-panels])>.e-con>.e-con>.elementor-widget-text-editor:nth-child(2 of .elementor-widget-text-editor),
.e-con:has(>*>[data-avx=svc-panels])>.e-con>.e-con>.elementor-widget-text-editor:nth-child(2 of .elementor-widget-text-editor) p {
  font-size: 16px !important;
  line-height: 1.6 !important;
  color: var(--steel) !important
}

.svc__go {
  position: static
}

.svc__go::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 4
}

.svc__go i {
  position: absolute;
  z-index: 5;
  pointer-events: none;
  right: 16px;
  top: 16px;
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  color: #fff;
  background: rgba(255, 255, 255, .08);
  border: 1px solid rgba(255, 255, 255, .2);
  transition: background .35s, border-color .35s, transform .45s var(--ease-out)
}

.svc__go i::before {
  content: "";
  width: 18px;
  height: 18px;
  background: currentColor;
  -webkit-mask: var(--arrow) center/contain no-repeat;
  mask: var(--arrow) center/contain no-repeat;
  transition: transform .45s var(--ease-out)
}

.e-con:has(>*>[data-avx=svc-panels])>.e-con:hover .svc__go i {
  background: var(--blue);
  border-color: var(--blue)
}

.e-con:has(>*>[data-avx=svc-panels])>.e-con:hover .svc__go i::before {
  transform: rotate(-45deg)
}

.e-con:has(>*>[data-avx=svc-panels])>.e-con>.elementor-widget-html {
  position: static !important
}

.svc__dots {
  display: flex;
  gap: 6px;
  justify-content: center;
  margin-top: 22px;
  padding: 0 var(--gutter)
}

.svc__dots span {
  width: 22px;
  height: 3px;
  border-radius: 3px;
  background: rgba(255, 255, 255, .18);
  transition: background .3s, width .4s var(--ease-out)
}

.svc__dots span.is-on {
  background: #fff;
  width: 40px
}

.e-con:has(>*>[data-avx=svc-foot]) {
  position: relative;
  z-index: 1;
  display: flex !important;
  flex-direction: row !important;
  justify-content: center !important;
  margin-top: 28px !important;
  padding: 0 var(--gutter) var(--sec) !important
}

.svc__nav,
.svc__wire,
.svc__bar {
  display: none
}

@media (min-width:1024px) and (min-height:620px) {
  .svc__scroller {
    position: relative;
    z-index: 1;
    height: calc(100vh + var(--count, 9) * 45vh)
  }
  .svc__sticky {
    position: sticky;
    top: 0;
    height: 100vh;
    padding: 84px 0 28px;
    display: flex;
    align-items: center
  }
  .svc__grid {
    display: grid;
    grid-template-columns: minmax(300px, 4fr) minmax(0, 8fr);
    gap: clamp(64px, 7vw, 112px);
    align-items: center;
    width: min(100% - 2*var(--gutter), 1320px);
    margin-inline: auto
  }
  .is-pinned .e-con:has(>*>[data-avx=svc-foot]) {
    display: none !important
  }
  .is-pinned .svc__dots {
    display: none
  }
  .svc__nav {
    display: flex;
    flex-direction: column;
    gap: 26px;
    position: relative;
    z-index: 2
  }
  .svc__tier-label {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0 0 8px;
    font-size: 12.5px;
    font-weight: 500;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, .34);
    transition: color .5s
  }
  .svc__tier.is-current .svc__tier-label {
    color: var(--sky)
  }
  .svc__item {
    position: relative;
    display: block;
    width: 100%;
    text-align: left;
    padding: 8px 0 8px 24px;
    margin: 0;
    border: 0;
    background: none;
    cursor: pointer;
    font-size: clamp(17.5px, 1.48vw, 21.5px);
    line-height: 1.3;
    font-weight: 600;
    letter-spacing: -.01em;
    color: rgba(255, 255, 255, .36);
    transition: color .4s ease
  }
  .svc__item::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    width: 0;
    height: 2px;
    margin-top: -1px;
    border-radius: 2px;
    background: var(--grad-x);
    transition: width .5s var(--ease-out)
  }
  .svc__item.is-active::before {
    width: 14px
  }
  .svc__item:hover {
    color: rgba(255, 255, 255, .7);
    background: none
  }
  .svc__item.is-active {
    color: #fff
  }
  .svc__nav .elementor-button {
    margin-top: 6px;
    align-self: flex-start
  }
  .svc__stage {
    position: relative;
    height: min(74vh, 720px);
    border-radius: var(--r-lg);
    overflow: hidden;
    isolation: isolate;
    background: radial-gradient(60% 70% at 82% 14%, rgba(49, 97, 204, .14), transparent 70%), #020306;
    transform-origin: 0 50%;
    transition: transform .6s var(--ease-out);
    cursor: pointer
  }
  .svc__stage:hover {
    transform: scale(1.025)
  }
  .svc__stage::after,
  .svc__stage::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    padding: 1px;
    pointer-events: none;
    z-index: 6;
    -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
    -webkit-mask-composite: xor;
    mask: linear-gradient(#000 0 0) content-box exclude, linear-gradient(#000 0 0)
  }
  .svc__stage::after {
    background: linear-gradient(155deg, rgba(120, 199, 227, .55), rgba(120, 199, 227, .1) 38%, rgba(120, 199, 227, 0) 72%)
  }
  .svc__stage::before {
    background: linear-gradient(155deg, rgba(120, 199, 227, .95), rgba(120, 199, 227, .25) 45%, rgba(120, 199, 227, 0) 80%);
    opacity: 0;
    transition: opacity .5s ease
  }
  .svc__stage:hover::before {
    opacity: 1
  }
  .is-pinned .e-con:has(>*>[data-avx=svc-panels]) {
    position: absolute !important;
    inset: 0;
    display: block !important;
    overflow: visible !important;
    padding: 0 !important;
    z-index: 1
  }
  .is-pinned .e-con:has(>*>[data-avx=svc-panels])>.e-con {
    position: absolute !important;
    inset: 0;
    border-radius: 0;
    border: 0 !important;
    background: none !important;
    visibility: hidden;
    opacity: 0;
    transform: translateY(8px);
    transition: opacity .45s ease, transform .6s var(--ease-out)
  }
  .is-pinned .e-con:has(>*>[data-avx=svc-panels])>.e-con:hover {
    transform: none
  }
  .is-pinned .e-con:has(>*>[data-avx=svc-panels])>.e-con.is-prev {
    visibility: visible;
    z-index: 1;
    opacity: 0;
    transform: translateY(-6px);
    transition: opacity .16s ease, transform .3s ease
  }
  .is-pinned .e-con:has(>*>[data-avx=svc-panels])>.e-con.is-active {
    visibility: visible;
    z-index: 2;
    opacity: 1;
    transform: none;
    transition-delay: .16s
  }
  .is-pinned .svc__media {
    position: absolute;
    inset: 0;
    aspect-ratio: auto;
    background: none
  }
  .is-pinned .e-con:has(>*>[data-avx=svc-panels])>.e-con>.elementor-widget-html {
    position: static !important
  }
  .is-pinned .svc__shade {
    display: block;
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background: linear-gradient(to top, rgba(2, 3, 6, .9) 0%, rgba(2, 3, 6, .6) 26%, rgba(2, 3, 6, 0) 46%)
  }
  .is-pinned .e-con:has(>*>[data-avx=svc-panels])>.e-con>.e-con {
    position: absolute !important;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 2;
    padding: 30px clamp(32px, 3.6vw, 52px) clamp(32px, 3.6vw, 52px) !important;
    gap: 14px !important
  }
  .is-pinned .e-con:has(>*>[data-avx=svc-panels])>.e-con>.e-con::before {
    content: "";
    position: absolute;
    top: 0;
    left: clamp(32px, 3.6vw, 52px);
    right: clamp(32px, 3.6vw, 52px);
    height: 1px;
    background: linear-gradient(90deg, rgba(120, 199, 227, .45), rgba(120, 199, 227, .1) 55%, rgba(120, 199, 227, 0))
  }
  .is-pinned .e-con:has(>*>[data-avx=svc-panels])>.e-con>.e-con>.elementor-widget-text-editor:nth-child(1 of .elementor-widget-text-editor) {
    display: none !important
  }
  .is-pinned .e-con:has(>*>[data-avx=svc-panels]) h3.elementor-heading-title {
    font-size: clamp(34px, 3.7vw, 56px) !important;
    line-height: 1.02 !important;
    letter-spacing: -.04em !important;
    padding-right: 72px
  }
  .is-pinned .e-con:has(>*>[data-avx=svc-panels])>.e-con>.e-con>.elementor-widget-text-editor:nth-child(2 of .elementor-widget-text-editor),
  .is-pinned .e-con:has(>*>[data-avx=svc-panels])>.e-con>.e-con>.elementor-widget-text-editor:nth-child(2 of .elementor-widget-text-editor) p {
    font-size: clamp(16px, 1.25vw, 18.5px) !important;
    color: var(--cloud) !important;
    max-width: 54ch
  }
  .is-pinned .svc__go i {
    right: clamp(32px, 3.6vw, 52px);
    top: auto;
    bottom: calc(var(--copy-h, 300px) - 78px);
    width: 48px;
    height: 48px
  }
  .is-pinned .svc__stage:hover .svc__go i {
    background: var(--blue);
    border-color: var(--blue)
  }
  .is-pinned .svc__stage:hover .svc__go i::before {
    transform: rotate(-45deg)
  }
  .svc__bar {
    display: flex;
    gap: 6px;
    position: absolute;
    top: 26px;
    left: 30px;
    right: 30px;
    z-index: 5;
    pointer-events: none
  }
  .svc__seg {
    flex: 1;
    height: 3px;
    border-radius: 3px;
    background: rgba(255, 255, 255, .2);
    overflow: hidden
  }
  .svc__seg:nth-child(3n):not(:last-child) {
    margin-right: 14px
  }
  .svc__seg i {
    display: block;
    height: 100%;
    background: #fff;
    transform-origin: 0 50%;
    transform: scaleX(var(--p, 0))
  }
  .svc__wire {
    display: block;
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 3;
    overflow: visible
  }
  .svc__wire path {
    fill: none;
    stroke: url(#avxWireGrad);
    stroke-width: 1.25
  }
  .is-pinned .ill {
    top: 46px !important;
    bottom: calc(var(--copy-h, 300px) + 4px) !important
  }
  .is-pinned .ill>svg {
    inset: 0 20px !important;
    width: calc(100% - 40px) !important;
    height: 100% !important
  }
}

.e-con:has(>*>[data-avx=svc-panels])>.e-con.is-off .ill * {
  animation-play-state: paused !important
}

.is-pinned .e-con:has(>*>[data-avx=svc-panels])>.e-con:not(.is-active) .ill * {
  animation-play-state: paused !important
}

.ill {
  position: absolute;
  inset: 0;
  pointer-events: none
}

.ill>svg {
  position: absolute;
  inset: 10px 8px;
  width: calc(100% - 16px);
  height: calc(100% - 20px);
  overflow: visible
}

.ill * {
  transform-box: fill-box;
  transform-origin: center
}

.ill .s {
  fill: none;
  stroke: url(#ig-line);
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round
}

.ill .t {
  stroke-width: 2
}

.ill .fat {
  stroke-width: 5
}

.ill .d {
  opacity: .32
}

.ill .dash {
  stroke-dasharray: 4 7
}

.ill .flow-s {
  stroke-width: 2.4;
  stroke-dasharray: 3 12;
  animation: i-flow .9s linear infinite
}

.ill .flow-s.rev {
  animation-direction: reverse
}

.ill .slow-s {
  stroke-dasharray: 2 18;
  animation: i-flow 3.2s linear infinite
}

.ill .fast-s {
  stroke-width: 2.4;
  stroke-dasharray: 6 14;
  animation: i-flow2 .45s linear infinite
}

.ill .pk {
  stroke-width: 3.4
}

.ill .spin {
  animation: i-spin 6s linear infinite
}

.ill .spin-fast {
  animation: i-spin 2.4s linear infinite
}

.ill .scan2 {
  animation: i-scan 2.2s ease-in-out infinite alternate
}

.ill .wave {
  animation: i-talk .7s ease-in-out infinite alternate;
  animation-delay: var(--d)
}

.ill .jitter {
  animation: i-jitter 1.6s ease-in-out infinite
}

@keyframes i-flow {
  to {
    stroke-dashoffset: -15
  }
}

@keyframes i-flow2 {
  to {
    stroke-dashoffset: -20
  }
}

@keyframes i-spin {
  to {
    transform: rotate(360deg)
  }
}

@keyframes i-scan {
  from {
    transform: translateY(0)
  }
  to {
    transform: translateY(60px)
  }
}

@keyframes i-talk {
  from {
    transform: scaleY(.3)
  }
  to {
    transform: scaleY(1)
  }
}

@keyframes i-jitter {
  0%,
  100% {
    transform: translateX(0)
  }
  50% {
    transform: translateX(5px)
  }
}

.e-con:has(>*>*>[data-avx=partners]) {
  padding: var(--sec) 0 !important;
  background: var(--paper) !important
}

.e-con:has(>*>[data-avx=partners-head]) {
  display: grid !important;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
  gap: 24px 72px !important;
  align-items: end !important;
  margin-bottom: clamp(40px, 5vw, 64px) !important
}

.e-con:has(>*>[data-avx=partners-head])>.elementor-widget-text-editor:nth-child(1 of .elementor-widget-text-editor) {
  grid-column: 1/-1
}

.e-con:has(>*>[data-avx=router]) {
  position: relative;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: center !important;
  gap: clamp(56px, 9vw, 150px) !important;
  padding: clamp(28px, 4vw, 56px) !important;
  border-radius: var(--r-lg);
  background: #fff !important;
  border: 1px solid var(--cloud) !important;
  overflow: hidden !important;
  isolation: isolate;
  box-shadow: 0 2px 12px rgba(0, 0, 0, .04)
}

.e-con:has(>*>[data-avx=router])::before {
  content: "" !important;
  position: absolute;
  inset: 0;
  z-index: -2;
  opacity: .55 !important;
  background-image: radial-gradient(var(--smoke) 1px, transparent 1.2px);
  background-size: 22px 22px;
  -webkit-mask: radial-gradient(80% 90% at 50% 50%, #000, transparent);
  mask: radial-gradient(80% 90% at 50% 50%, #000, transparent)
}

.router__wires {
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  overflow: visible
}

.router__wires .base {
  fill: none;
  stroke: var(--smoke);
  stroke-width: 1.5
}

.router__wires .lit {
  fill: none;
  stroke: url(#avxRouteGrad);
  stroke-width: 2.25;
  stroke-linecap: round
}

.router__wires .pk {
  fill: #3086E3
}

.router__wires .pk-halo {
  fill: rgba(70, 186, 227, .28)
}

.e-con:has(>*>[data-avx=router-ins]) {
  display: grid !important;
  gap: 12px !important;
  justify-items: start
}

.e-con:has(>*>[data-avx=router-ins])>.elementor-widget-text-editor {
  width: auto !important;
  display: inline-flex !important;
  align-items: center;
  gap: 10px;
  padding: 10px 16px 10px 14px;
  border-radius: 999px;
  background: var(--cloud);
  font-size: 15px !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
  color: var(--arsenic) !important;
  transition: background .35s, color .35s, box-shadow .35s
}

.e-con:has(>*>[data-avx=router-ins])>.elementor-widget-text-editor::before {
  content: "";
  flex: none;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--steel);
  transition: background .3s, box-shadow .3s
}

.e-con:has(>*>[data-avx=router-ins])>.elementor-widget-text-editor.is-firing {
  background: #fff;
  color: var(--blue) !important;
  box-shadow: 0 0 0 1px rgba(48, 134, 227, .35), 0 10px 24px -12px rgba(49, 97, 204, .6)
}

.e-con:has(>*>[data-avx=router-ins])>.elementor-widget-text-editor.is-firing::before {
  background: var(--mid);
  box-shadow: 0 0 0 4px rgba(48, 134, 227, .18)
}

.e-con:has(>*>[data-avx=router])>.elementor-widget-html:has(.router__hub) {
  width: auto !important
}

.router__hub {
  position: relative;
  display: grid;
  place-items: center;
  width: clamp(170px, 17vw, 220px);
  aspect-ratio: 2.1;
  border-radius: 24px;
  background: #fff;
  isolation: isolate;
  box-shadow: 0 24px 60px -24px rgba(49, 97, 204, .55), 0 0 0 1px var(--cloud)
}

.router__hub::before {
  content: "";
  position: absolute;
  inset: -2px;
  border-radius: inherit;
  padding: 2px;
  z-index: -1;
  background: conic-gradient(from var(--spin, 0deg), #46BAE3, #3161CC, #78C7E3, #3086E3, #46BAE3);
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask: linear-gradient(#000 0 0) content-box exclude, linear-gradient(#000 0 0);
  animation: avx-spin 6s linear infinite
}

.router__hub::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  z-index: -2
}

.router__hub.is-pulse::after {
  animation: avx-hub 1s var(--ease-out)
}

@keyframes avx-hub {
  0% {
    box-shadow: 0 0 0 0 rgba(48, 134, 227, .45)
  }
  100% {
    box-shadow: 0 0 0 26px rgba(48, 134, 227, 0)
  }
}

.router__hub svg {
  width: 78%;
  height: auto
}

.router__hub b {
  font-size: 28px;
  font-weight: 800;
  letter-spacing: -.03em;
  color: var(--blue)
}

.e-con:has(>*>[data-avx=router-outs]) {
  display: grid !important;
  gap: 12px !important;
  justify-items: end
}

.e-con:has(>*>[data-avx=router-outs])>.e-con {
  position: relative;
  width: min(100%, 290px) !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 3px !important;
  padding: 16px 20px !important;
  border-radius: 16px;
  background: #fff !important;
  border: 1px solid var(--smoke) !important;
  transition: border-color .4s, box-shadow .5s, transform .6s var(--ease-out)
}

.e-con:has(>*>[data-avx=router-outs])>.e-con::after {
  content: "";
  position: absolute;
  right: 16px;
  top: 50%;
  width: 8px;
  height: 8px;
  margin-top: -4px;
  border-radius: 50%;
  background: var(--smoke);
  transition: background .3s, box-shadow .3s
}

.e-con:has(>*>[data-avx=router-outs])>.e-con.is-active {
  border-color: rgba(48, 134, 227, .55) !important;
  transform: translateX(-6px);
  box-shadow: 0 18px 40px -22px rgba(49, 97, 204, .7)
}

.e-con:has(>*>[data-avx=router-outs])>.e-con.is-active::after {
  background: var(--mid);
  box-shadow: 0 0 0 5px rgba(48, 134, 227, .18)
}

.e-con:has(>*>[data-avx=router-outs]) .elementor-widget-image {
  height: 36px;
  display: flex;
  align-items: center;
  margin-bottom: 6px !important;
  width: auto !important
}

.e-con:has(>*>[data-avx=router-outs]) .elementor-widget-image img {
  width: auto !important;
  max-width: 190px !important;
  height: 26px !important;
  object-fit: contain;
  object-position: left center
}

.e-con:has(>*>[data-avx=router-outs])>.e-con:nth-child(1 of .e-con) img {
  height: 34px !important
}

.e-con:has(>*>[data-avx=router-outs])>.e-con:nth-child(2 of .e-con) img {
  height: 15px !important
}

.e-con:has(>*>[data-avx=router-outs])>.e-con:nth-child(4 of .e-con) img {
  height: 17px !important
}

.e-con:has(>*>[data-avx=router-outs])>.e-con.is-active img {
  filter: drop-shadow(0 4px 10px rgba(49, 97, 204, .25))
}

.e-con:has(>*>[data-avx=router-outs]) .elementor-widget-text-editor {
  font-size: 13px !important;
  line-height: 1.35 !important;
  color: var(--graphite) !important
}

.e-con:has(>*>*>[data-avx=stories]) {
  padding: var(--sec) 0 !important;
  background: var(--paper) !important
}

.e-con:has(>*>[data-avx=stories-head]) {
  display: grid !important;
  grid-template-columns: minmax(0, 1.45fr) minmax(0, 1fr);
  gap: 24px 72px !important;
  align-items: start !important;
  margin-bottom: clamp(40px, 5vw, 64px) !important
}

.e-con:has(>*>[data-avx=stories-side]),
.e-con:has(>*>[data-avx=path-side]) {
  display: grid !important;
  gap: 24px !important;
  justify-items: start;
  padding-top: .22em !important
}

.e-con:has(>*>[data-avx=stories-grid]) {
  display: grid !important;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 20px !important
}

.e-con:has(>*>[data-avx=stories-grid])>.e-con {
  position: relative;
  grid-column: span 3;
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 14px !important;
  min-height: 300px;
  padding: 28px !important;
  border-radius: var(--r-md);
  background: #fff !important;
  isolation: isolate;
  box-shadow: 0 0 0 1px var(--cloud), 0 2px 12px rgba(0, 0, 0, .04);
  transition: transform .6s var(--ease-out), box-shadow .5s
}

.e-con:has(>*>[data-avx=stories-grid])>.e-con::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  padding: 1.5px;
  pointer-events: none;
  background: var(--grad);
  opacity: 0;
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask: linear-gradient(#000 0 0) content-box exclude, linear-gradient(#000 0 0);
  transition: opacity .4s
}

.e-con:has(>*>[data-avx=stories-grid])>.e-con:hover {
  transform: translateY(-6px);
  box-shadow: 0 30px 60px -30px rgba(49, 97, 204, .45)
}

.e-con:has(>*>[data-avx=stories-grid])>.e-con:hover::after {
  opacity: 1
}

.story__brand {
  height: 34px;
  display: flex;
  align-items: center
}

.story__brand img {
  height: 30px;
  width: auto;
  max-width: 150px;
  object-fit: contain;
  object-position: left center
}

.story__brand b {
  font-size: 17px;
  font-weight: 800;
  letter-spacing: -.02em;
  color: var(--ink)
}

.e-con:has(>*>[data-avx=stories-grid]) h3.elementor-heading-title {
  font-size: clamp(20px, 1.65vw, 23px) !important;
  line-height: 1.18 !important;
  font-weight: 700 !important;
  letter-spacing: -.02em !important;
  color: var(--ink) !important;
  padding-right: 44px
}

.e-con:has(>*>[data-avx=stories-grid])>.e-con>.elementor-widget-text-editor {
  font-size: 15.5px !important;
  line-height: 1.55 !important;
  color: var(--graphite) !important
}

.e-con:has(>*>[data-avx=stories-grid])>.e-con>.e-con {
  margin-top: auto !important;
  padding-top: 16px !important;
  border-top: 1px solid var(--cloud) !important;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  gap: 14px !important
}

.e-con:has(>*>[data-avx=stories-grid])>.e-con>.e-con>.elementor-widget-image {
  flex: none !important;
  width: 52px !important;
  height: 52px;
  border-radius: 50%;
  padding: 2px;
  background: var(--grad);
  transition: transform .5s var(--ease-out)
}

.e-con:has(>*>[data-avx=stories-grid])>.e-con>.e-con>.elementor-widget-image img {
  width: 100% !important;
  height: 100% !important;
  border-radius: 50%;
  object-fit: cover;
  object-position: 50% 22%;
  border: 2px solid #fff
}

.e-con:has(>*>[data-avx=stories-grid])>.e-con:hover>.e-con>.elementor-widget-image {
  transform: scale(1.06)
}

.e-con:has(>*>[data-avx=stories-grid])>.e-con>.e-con>.e-con {
  display: grid !important;
  gap: 1px !important;
  flex: 1 1 auto !important;
  width: auto !important
}

.e-con:has(>*>[data-avx=stories-grid])>.e-con>.e-con>.e-con .elementor-widget-text-editor {
  font-size: 14px !important;
  line-height: 1.4 !important;
  color: var(--graphite) !important
}

.e-con:has(>*>[data-avx=stories-grid])>.e-con>.e-con>.e-con .elementor-widget-text-editor:first-child {
  font-weight: 700 !important;
  color: var(--ink) !important
}

.story__go {
  position: static
}

.story__go::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 4;
  border-radius: inherit
}

.story__go i {
  position: absolute;
  top: 24px;
  right: 24px;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: var(--cloud);
  color: var(--blue);
  transition: background .3s, color .3s;
  z-index: 5;
  pointer-events: none
}

.story__go i::before {
  content: "";
  width: 16px;
  height: 16px;
  background: currentColor;
  -webkit-mask: var(--arrow) center/contain no-repeat;
  mask: var(--arrow) center/contain no-repeat;
  transition: transform .45s var(--ease-out)
}

.e-con:has(>*>[data-avx=stories-grid])>.e-con:hover .story__go i {
  background: var(--blue);
  color: #fff
}

.e-con:has(>*>[data-avx=stories-grid])>.e-con:hover .story__go i::before {
  transform: rotate(-45deg)
}

.e-con:has(>*>[data-avx=stories-grid])>.e-con>.elementor-widget-html:has(.story__go) {
  position: static !important
}

.e-con:has(>*>[data-avx=stories-grid])>.e-con:has(>*>[data-avx=story-feature]) {
  grid-column: 1/7 !important;
  grid-row: 1/3;
  padding: clamp(32px, 3.6vw, 52px) !important;
  background: #000 !important;
  color: #fff;
  overflow: hidden !important;
  gap: 22px !important
}

.e-con:has(>*>[data-avx=stories-grid])>.e-con:has(>*>[data-avx=story-feature])::before {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  top: auto !important;
  left: auto !important;
  right: -180px !important;
  bottom: -240px !important;
  width: 520px !important;
  height: 520px !important;
  border-radius: 50% !important;
  z-index: -1 !important;
  opacity: 1 !important;
  mix-blend-mode: normal !important;
  background: radial-gradient(circle, rgba(49, 97, 204, .65) 0%, rgba(70, 186, 227, .15) 45%, transparent 70%) !important;
  pointer-events: none;
  transition: transform 1.2s cubic-bezier(.16, 1, .3, 1);
}

.e-con:has(>*>[data-avx=stories-grid])>.e-con:has(>*>[data-avx=story-feature]):hover::before {
  transform: translate(-30px, -30px) scale(1.1);
}

.e-con:has(>*>[data-avx=stories-grid])>.e-con:has(>*>[data-avx=story-feature]) .story__brand img {
  filter: brightness(0) invert(1);
  opacity: .9
}

.e-con:has(>*>[data-avx=stories-grid])>.e-con:has(>*>[data-avx=story-feature]) h3.elementor-heading-title {
  font-size: clamp(22px, 2vw, 28px) !important;
  background: linear-gradient(90deg, #78C7E3, #46BAE3 50%, #3086E3);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent !important;
  -webkit-text-fill-color: transparent
}

.e-con:has(>*>[data-avx=stories-grid])>.e-con:has(>*>[data-avx=story-feature])>.elementor-widget-text-editor {
  position: relative;
  padding-top: 52px;
  font-size: clamp(24px, 2.55vw, 36px) !important;
  line-height: 1.28 !important;
  font-weight: 500 !important;
  letter-spacing: -.025em;
  color: #fff !important
}

.e-con:has(>*>[data-avx=stories-grid])>.e-con:has(>*>[data-avx=story-feature])>.elementor-widget-text-editor::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 56px;
  height: 43px;
  background: linear-gradient(90deg, #46BAE3, #3161CC);
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 46'%3E%3Cpath d='M0 46V27C0 12.6 7.3 3.6 21.8 0l2.6 6.3C16.6 9 12.9 13.6 12.6 20.3H24V46H0Zm34 0V27C34 12.6 41.3 3.6 55.8 0l2.6 6.3c-7.8 2.7-11.5 7.3-11.8 14H58V46H34Z'/%3E%3C/svg%3E") center/contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 46'%3E%3Cpath d='M0 46V27C0 12.6 7.3 3.6 21.8 0l2.6 6.3C16.6 9 12.9 13.6 12.6 20.3H24V46H0Zm34 0V27C34 12.6 41.3 3.6 55.8 0l2.6 6.3c-7.8 2.7-11.5 7.3-11.8 14H58V46H34Z'/%3E%3C/svg%3E") center/contain no-repeat
}

.e-con:has(>*>[data-avx=stories-grid])>.e-con:has(>*>[data-avx=story-feature]) .qw {
  opacity: var(--o, 1);
  transition: opacity .25s linear
}

.e-con:has(>*>[data-avx=stories-grid])>.e-con:has(>*>[data-avx=story-feature])>.e-con {
  border-top-color: rgba(255, 255, 255, .14) !important
}

.e-con:has(>*>[data-avx=stories-grid])>.e-con:has(>*>[data-avx=story-feature])>.e-con>.elementor-widget-image {
  width: 76px !important;
  height: 76px
}

.e-con:has(>*>[data-avx=stories-grid])>.e-con:has(>*>[data-avx=story-feature])>.e-con>.elementor-widget-image img {
  border-color: #000
}

.e-con:has(>*>[data-avx=stories-grid])>.e-con:has(>*>[data-avx=story-feature])>.e-con>.e-con .elementor-widget-text-editor {
  color: var(--steel) !important
}

.e-con:has(>*>[data-avx=stories-grid])>.e-con:has(>*>[data-avx=story-feature])>.e-con>.e-con .elementor-widget-text-editor:first-child {
  color: #fff !important
}

.e-con:has(>*>[data-avx=stories-grid])>.e-con:has(>*>[data-avx=story-feature]) .story__go i {
  background: rgba(255, 255, 255, .1);
  color: #fff
}

.e-con:has(>*>*>[data-avx=rapid]) {
  position: relative;
  margin: var(--panel-m) !important;
  width: auto !important;
  border-radius: var(--panel-r) !important;
  padding: var(--sec) 0 !important;
  background: #000 !important;
  color: #fff;
  overflow: clip !important;
  isolation: isolate
}

.e-con:has(>*>*>[data-avx=rapid])::before {
  content: "" !important;
  position: absolute;
  width: 900px;
  height: 900px;
  left: -300px;
  top: 50%;
  transform: translateY(-50%);
  border-radius: 50%;
  z-index: -1;
  opacity: 1 !important;
  background: radial-gradient(circle, rgba(49, 97, 204, .35), transparent 65%)
}

.e-con:has(>*>[data-avx=rapid-grid]) {
  display: grid !important;
  grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
  gap: clamp(44px, 6vw, 104px) !important;
  align-items: center !important
}

.rapid__frame {
  --t: 1;
  position: relative;
  aspect-ratio: 16/10;
  border-radius: var(--r-lg);
  overflow: hidden;
  background: radial-gradient(60% 70% at 30% 40%, rgba(49, 97, 204, .6), transparent 70%), radial-gradient(50% 60% at 80% 70%, rgba(70, 186, 227, .4), transparent 70%), #05070c;
  transform: perspective(1600px) rotateY(calc(var(--t) * 10deg)) rotateX(calc(var(--t) * 4deg)) scale(calc(1 - var(--t) * .08));
  transform-origin: 70% 50%;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, .1), 0 50px 120px -40px rgba(49, 97, 204, .7)
}

.rapid__frame::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(100deg, transparent 30%, rgba(255, 255, 255, .12) 50%, transparent 70%);
  background-size: 250% 100%;
  animation: avx-sweep 5s ease-in-out infinite
}

@keyframes avx-sweep {
  0% {
    background-position: 150% 0
  }
  60%,
  100% {
    background-position: -60% 0
  }
}

.rapid__frame canvas,
.rapid__frame svg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%
}

.rapid__frame svg {
  overflow: visible
}

.rapid__frame svg * {
  transform-box: fill-box;
  transform-origin: center
}

.spd-chev {
  fill: none;
  stroke: url(#ig-line);
  stroke-width: 7;
  stroke-linecap: butt;
  stroke-linejoin: miter;
  stroke-miterlimit: 10;
  opacity: .14
}

.spd-track {
  fill: rgba(120, 199, 227, .16)
}

.spd-fill {
  transform-origin: 0 50% !important;
  transform: scaleX(0)
}

.spd-fill.is-done {
  animation: avx-spd .5s ease-out
}

@keyframes avx-spd {
  0% {
    filter: brightness(1.8) drop-shadow(0 0 6px #78C7E3)
  }
  100% {
    filter: none
  }
}

.spd-q {
  stroke: rgba(120, 199, 227, .4);
  stroke-width: 1.5
}

.spd-pct {
  font-weight: 700;
  font-size: 15px;
  letter-spacing: -.01em;
  fill: #fff;
  font-variant-numeric: tabular-nums
}

.spd-tick {
  fill: none;
  stroke: rgba(120, 199, 227, .35);
  stroke-width: 2
}

.e-con:has(>*>[data-avx=rapid-copy]) {
  display: grid !important;
  gap: 22px !important;
  justify-items: start
}

.e-con:has(>*>[data-avx=rapid-copy])>.elementor-widget-button {
  margin-top: 10px !important
}

.e-con:has(>*>*>[data-avx=path]) {
  padding: var(--sec) 0 !important;
  background: var(--paper) !important
}

.e-con:has(>*>[data-avx=path-head]) {
  display: grid !important;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr);
  gap: 24px 72px !important;
  align-items: start !important;
  margin-bottom: clamp(40px, 5vw, 64px) !important
}

.e-con:has(>*>[data-avx=tiles]) {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 20px !important
}

.e-con:has(>*>[data-avx=tiles])>.e-con {
  position: relative;
  display: block !important;
  padding: 12px 12px 24px !important;
  border-radius: var(--r-md);
  background: #fff !important;
  border: 1px solid var(--cloud) !important;
  transition: transform .6s var(--ease-out), box-shadow .5s, border-color .4s
}

.e-con:has(>*>[data-avx=tiles])>.e-con:hover {
  transform: translateY(-6px);
  border-color: transparent !important;
  box-shadow: 0 30px 60px -30px rgba(49, 97, 204, .4)
}

.tile__media {
  position: relative;
  aspect-ratio: 4/3;
  border-radius: 14px;
  overflow: hidden;
  display: grid;
  place-items: center;
  background: radial-gradient(80% 90% at 20% 10%, rgba(120, 199, 227, .45), transparent 70%), var(--cloud)
}

.tile__media svg {
  width: 64px;
  height: 64px;
  color: var(--blue)
}

.tile__media svg .draw {
  stroke-dasharray: var(--len, 200);
  stroke-dashoffset: var(--len, 200);
  transition: stroke-dashoffset 1.6s var(--ease-out)
}

.tile__media.in svg .draw {
  stroke-dashoffset: 0
}

.tile__media video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0;
  transition: opacity .8s
}

.tile__media video.is-ready {
  opacity: 1
}

.e-con:has(>*>[data-avx=tiles]) .elementor-widget-text-editor {
  margin: 20px 10px 0 !important;
  width: auto !important;
  font-size: clamp(17px, 1.45vw, 19px) !important;
  line-height: 1.3 !important;
  font-weight: 700 !important;
  letter-spacing: -.015em;
  color: var(--ink) !important
}

.e-con:has(>*>[data-avx=stats]) {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-top: clamp(56px, 7vw, 96px) !important;
  border-top: 1px solid var(--smoke) !important
}

.e-con:has(>*>[data-avx=stats])>.e-con {
  display: block !important;
  padding: 36px 24px 0 !important;
  border-left: 1px solid var(--smoke) !important
}

.e-con:has(>*>[data-avx=stats])>.e-con:nth-child(1 of .e-con) {
  border-left: 0 !important;
  padding-left: 0 !important
}

.e-con:has(>*>[data-avx=stats])>.e-con>.elementor-widget-text-editor:nth-child(1 of .elementor-widget-text-editor) {
  display: block;
  font-size: clamp(56px, 7.4vw, 112px) !important;
  line-height: .95 !important;
  font-weight: 200 !important;
  letter-spacing: -.055em !important;
  font-variant-numeric: tabular-nums;
  background: var(--grad-ink);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent !important;
  -webkit-text-fill-color: transparent
}

.e-con:has(>*>[data-avx=stats])>.e-con>.elementor-widget-text-editor:nth-child(1 of .elementor-widget-text-editor) p {
  color: transparent !important;
  -webkit-text-fill-color: transparent;
  background: inherit;
  -webkit-background-clip: text;
  background-clip: text
}

.e-con:has(>*>[data-avx=stats])>.e-con>.elementor-widget-text-editor:nth-child(2 of .elementor-widget-text-editor) {
  margin-top: 14px !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  color: var(--arsenic) !important
}

.e-con:has(>*>*>[data-avx=cta]) {
  padding: 0 0 var(--sec) !important;
  background: var(--paper) !important
}

.e-con:has(>*>[data-avx=cta-panel]) {
  --mx: 50%;
  --my: 40%;
  position: relative;
  overflow: hidden !important;
  isolation: isolate;
  border-radius: 36px;
  background: var(--grad) !important;
  color: #fff;
  text-align: center;
  align-items: center !important;
  padding: clamp(64px, 9vw, 128px) clamp(24px, 6vw, 96px) !important
}

.e-con:has(>*>[data-avx=cta-panel])>.elementor-widget-html:has(.cta__fx) {
  position: absolute !important;
  inset: 0;
  z-index: -1
}

.cta__fx {
  position: absolute;
  inset: 0
}

.cta__fx svg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%
}

.cta__fx .bl {
  fill: none;
  stroke: rgba(255, 255, 255, .16);
  stroke-width: 1;
  vector-effect: non-scaling-stroke
}

.cta__fx .fl {
  fill: none;
  stroke: #fff;
  stroke-width: 1.6;
  stroke-linecap: round;
  vector-effect: non-scaling-stroke;
  opacity: .85;
  stroke-dasharray: 80 1600;
  animation: avx-run var(--dur, 7s) linear infinite;
  animation-delay: var(--del, 0s)
}

@keyframes avx-run {
  from {
    stroke-dashoffset: 1680
  }
  to {
    stroke-dashoffset: 0
  }
}

.cta__fx::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: radial-gradient(520px circle at var(--mx) var(--my), rgba(255, 255, 255, .22), transparent 60%)
}

.e-con:has(>*>[data-avx=cta-panel]) h2.elementor-heading-title {
  font-size: clamp(34px, 5.2vw, 72px) !important;
  line-height: 1.02 !important;
  font-weight: 800 !important;
  letter-spacing: -.045em !important;
  color: #fff !important;
  max-width: 15ch;
  margin-inline: auto !important
}

.e-con:has(>*>[data-avx=cta-panel])>.elementor-widget-text-editor {
  margin: 26px auto 0 !important;
  max-width: 60ch !important;
  font-size: clamp(17px, 1.4vw, 19.5px) !important;
  line-height: 1.6 !important;
  color: var(--cloud) !important
}

.e-con:has(>*>[data-avx=cta-actions]) {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  gap: 16px !important;
  margin-top: 40px !important;
  width: auto !important
}

.e-con:has(>*>*>[data-avx=faq]) {
  padding: 0 0 var(--sec) !important;
  background: var(--paper) !important
}

.e-con:has(>*>[data-avx=faq-grid]) {
  display: grid !important;
  grid-template-columns: minmax(0, 4fr) minmax(0, 7fr);
  gap: clamp(40px, 7vw, 120px) !important;
  align-items: start !important;
  padding-top: clamp(40px, 5vw, 64px) !important;
  border-top: 1px solid var(--smoke) !important
}

.e-con:has(>*>[data-avx=faq-aside]) {
  position: sticky !important;
  top: 120px;
  display: grid !important;
  gap: 22px !important
}

.e-con:has(>*>[data-avx=faq-aside]) .elementor-widget-button {
  margin-top: -22px !important
}

.e-con:has(>*>[data-avx=faq-aside]) .elementor-button,
.e-con:has(>*>[data-avx=faq-aside]) .elementor-button:hover,
.e-con:has(>*>[data-avx=faq-aside]) .elementor-button:focus,
.e-con:has(>*>[data-avx=faq-aside]) .elementor-button:visited {
  min-height: 0;
  padding: 0 !important;
  border-radius: 0 !important;
  background: none !important;
  border: 0 !important;
  box-shadow: none !important;
  font-size: clamp(34px, 4.5vw, 62px) !important;
  line-height: 1.05 !important;
  letter-spacing: -.035em !important;
  font-weight: 700 !important;
  color: var(--blue) !important
}

.e-con:has(>*>[data-avx=faq-aside]) .elementor-button .elementor-button-text {
  background: var(--grad-x);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent !important;
  -webkit-text-fill-color: transparent
}

.e-con:has(>*>[data-avx=faq-aside]) .elementor-button::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: .02em;
  height: 3px;
  border-radius: 3px;
  background: var(--grad-x);
  transform: scaleX(.18);
  transform-origin: 0 50%;
  transition: transform .6s var(--ease-out)
}

.e-con:has(>*>[data-avx=faq-aside]) .elementor-button:hover::after {
  transform: scaleX(1)
}

.e-con:has(>*>[data-avx=faq-grid]) .elementor-accordion {
  border: 0 !important
}

.e-con:has(>*>[data-avx=faq-grid]) .elementor-accordion .elementor-accordion-item {
  position: relative;
  border: 0 !important;
  border-bottom: 1px solid var(--smoke) !important
}

.e-con:has(>*>[data-avx=faq-grid]) .elementor-accordion .elementor-accordion-item::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  height: 1.5px;
  background: var(--grad-x);
  transform: scaleX(0);
  transform-origin: 0 50%;
  transition: transform .7s var(--ease-out)
}

.e-con:has(>*>[data-avx=faq-grid]) .elementor-accordion .elementor-accordion-item:hover::after,
.e-con:has(>*>[data-avx=faq-grid]) .elementor-accordion .elementor-accordion-item:has(.elementor-active)::after {
  transform: scaleX(1)
}

.e-con:has(>*>[data-avx=faq-grid]) .elementor-accordion .elementor-tab-title {
  display: flex !important;
  flex-direction: row-reverse;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 26px 0 !important;
  border: 0 !important;
  background: none !important;
  cursor: pointer
}

.e-con:has(>*>[data-avx=faq-grid]) .elementor-accordion .elementor-tab-title .elementor-accordion-title,
.e-con:has(>*>[data-avx=faq-grid]) .elementor-accordion .elementor-tab-title a {
  font-size: clamp(18px, 1.6vw, 21px) !important;
  line-height: 1.35 !important;
  font-weight: 600 !important;
  letter-spacing: -.015em;
  color: var(--ink) !important;
  transition: color .25s
}

.e-con:has(>*>[data-avx=faq-grid]) .elementor-accordion .elementor-tab-title:hover a {
  color: var(--blue) !important
}

.e-con:has(>*>[data-avx=faq-grid]) .elementor-accordion .elementor-accordion-icon {
  position: relative;
  flex: none;
  width: 38px !important;
  height: 38px;
  margin: 0 !important;
  border-radius: 50%;
  border: 1.5px solid var(--smoke);
  color: var(--ink);
  font-size: 0 !important;
  transition: background .35s, border-color .35s, color .35s, transform .5s var(--ease-out)
}

.e-con:has(>*>[data-avx=faq-grid]) .elementor-accordion .elementor-accordion-icon>* {
  display: none !important
}

.e-con:has(>*>[data-avx=faq-grid]) .elementor-accordion .elementor-accordion-icon::before,
.e-con:has(>*>[data-avx=faq-grid]) .elementor-accordion .elementor-accordion-icon::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 13px;
  height: 1.75px;
  border-radius: 2px;
  background: currentColor;
  transform: translate(-50%, -50%)
}

.e-con:has(>*>[data-avx=faq-grid]) .elementor-accordion .elementor-accordion-icon::after {
  transform: translate(-50%, -50%) rotate(90deg);
  transition: transform .45s var(--ease-out)
}

.e-con:has(>*>[data-avx=faq-grid]) .elementor-accordion .elementor-tab-title:hover .elementor-accordion-icon {
  border-color: var(--blue);
  color: var(--blue)
}

.e-con:has(>*>[data-avx=faq-grid]) .elementor-accordion .elementor-tab-title.elementor-active .elementor-accordion-icon {
  background: var(--blue);
  border-color: var(--blue);
  color: #fff;
  transform: rotate(180deg)
}

.e-con:has(>*>[data-avx=faq-grid]) .elementor-accordion .elementor-tab-title.elementor-active .elementor-accordion-icon::after {
  transform: translate(-50%, -50%) rotate(0deg)
}

.e-con:has(>*>[data-avx=faq-grid]) .elementor-accordion .elementor-tab-content {
  padding: 0 72px 28px 0 !important;
  border: 0 !important;
  font-size: 17px !important;
  line-height: 1.65 !important;
  color: var(--graphite) !important
}

.e-con:has(>*>[data-avx=faq-grid]) .elementor-accordion .elementor-tab-content p {
  margin: 0
}

.e-con:has(>*>[data-avx=fab]) {
  position: fixed !important;
  right: 20px;
  bottom: 20px;
  z-index: 90;
  width: auto !important;
  transform: translateY(160%);
  transition: transform .6s var(--ease-out)
}

.e-con:has(>*>[data-avx=fab]).is-shown {
  transform: none
}

.e-con:has(>*>[data-avx=fab]) .elementor-button,
.e-con:has(>*>[data-avx=fab]) .elementor-button:visited,
.e-con:has(>*>[data-avx=fab]) .elementor-button:focus {
  --h: 54px;
  padding: 0 22px 0 12px !important;
  background: var(--blue) !important;
  color: #fff !important;
  font-size: 15px !important;
  box-shadow: 0 18px 44px -12px rgba(49, 97, 204, .75) !important;
  transition: background .3s;
  border: 0;
}

.e-con:has(>*>[data-avx=fab]) .elementor-button:hover {
  background: var(--blue-2) !important;
  color: #fff !important
}

.e-con:has(>*>[data-avx=fab]) .elementor-button .elementor-button-content-wrapper {
  gap: 10px
}

.e-con:has(>*>[data-avx=fab]) .elementor-button .elementor-button-content-wrapper::before {
  content: "";
  flex: none;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 12a8 8 0 0 1-11.6 7.1L4 20l1-4.6A8 8 0 1 1 21 12Z'/%3E%3C/svg%3E") center/16px 16px no-repeat, rgba(255, 255, 255, .18);
  box-shadow: 0 0 0 0 rgba(255, 255, 255, .55);
  animation: avx-ping 2.4s var(--ease-out) infinite
}

@keyframes avx-ping {
  0% {
    box-shadow: 0 0 0 0 rgba(255, 255, 255, .55)
  }
  100% {
    box-shadow: 0 0 0 12px rgba(255, 255, 255, 0)
  }
}

/* Feature story card: black with a soft blue glow in the bottom-right corner.
   Add the class  av-story-feature  to the black card container. */

.av-story-feature {
  position: relative !important;
  overflow: hidden !important;
  isolation: isolate;
  background: #000 !important;
}

/* turn off the old centre glow (Elementor uses ::before for its overlay) */

.av-story-feature::before {
  background: none !important;
  opacity: 0 !important;
}

/* the glow */

.av-story-feature::after {
  content: "" !important;
  position: absolute !important;
  z-index: 0 !important;
  top: auto !important;
  left: auto !important;
  right: -180px !important;
  bottom: -240px !important;
  width: 520px !important;
  height: 520px !important;
  border-radius: 50% !important;
  background: radial-gradient(circle, rgba(49, 97, 204, .65) 0%, rgba(70, 186, 227, .15) 45%, transparent 70%) !important;
  pointer-events: none;
  transition: transform 1.2s cubic-bezier(.16, 1, .3, 1);
}

.av-story-feature:hover::after {
  transform: translate(-30px, -30px) scale(1.1)
}

/* keep the text above the glow */

.av-story-feature>* {
  position: relative;
  z-index: 1
}

.avx-progress {
  position: fixed;
  left: 0;
  top: 0;
  right: 0;
  height: 3px;
  z-index: 99999;
  pointer-events: none
}

.avx-progress span {
  display: block;
  height: 100%;
  background: linear-gradient(90deg, #3161CC 0%, #3086E3 50%, #46BAE3 100%);
  transform-origin: 0 50%;
  transform: scaleX(0)
}

.elementor[data-elementor-type=wp-page].avx-js [data-reveal] {
  opacity: 0;
  transform: translateY(32px);
  transition: opacity 1s var(--ease-out), transform 1.1s var(--ease-out);
  transition-delay: calc(var(--d, 0) * 1ms)
}

.elementor[data-elementor-type=wp-page].avx-js [data-reveal].in {
  opacity: 1;
  transform: none
}

.split .w {
  display: inline-block;
  overflow: hidden;
  vertical-align: top;
  padding-bottom: .28em;
  margin-bottom: -.28em
}

.split.done .w {
  overflow: visible
}

.elementor[data-elementor-type=wp-page].avx-js .split .w__i {
  display: inline-block;
  transform: translateY(135%);
  transition: transform 1.05s var(--ease-out);
  transition-delay: calc(var(--wi, 0) * 42ms + var(--d, 0) * 1ms)
}

.elementor[data-elementor-type=wp-page].avx-js .split.in .w__i {
  transform: none
}

.elementor[data-elementor-type=wp-page].avx-js>.e-con:has(>*>*>[data-avx=hero]) [data-load] {
  opacity: 0;
  transform: translateY(22px);
  transition: opacity 1s var(--ease-out), transform 1.1s var(--ease-out);
  transition-delay: calc(var(--d, 0) * 1ms)
}

.elementor[data-elementor-type=wp-page].avx-js>.e-con:has(>*>*>[data-avx=hero]) h1 .line {
  display: block;
  overflow: hidden;
  padding-bottom: 0;
  margin-bottom: -.26em
}

.elementor[data-elementor-type=wp-page].avx-js>.e-con:has(>*>*>[data-avx=hero]) h1 .line__i {
  display: inline-block;
  transform: translateY(130%);
  transition: transform 1.25s var(--ease-out);
  transition-delay: calc(var(--d, 0) * 1ms)
}

.elementor[data-elementor-type=wp-page].avx-loaded>.e-con:has(>*>*>[data-avx=hero]) [data-load] {
  opacity: 1;
  transform: none
}

.elementor[data-elementor-type=wp-page].avx-loaded>.e-con:has(>*>*>[data-avx=hero]) h1 .line__i {
  transform: none
}

.elementor[data-elementor-type=wp-page].avx-hero-done>.e-con:has(>*>*>[data-avx=hero]) h1 .line {
  overflow: visible
}

.elementor[data-elementor-type=wp-page].avx-js .e-con:has(>*>[data-avx=logos]) {
  opacity: 0;
  transition: opacity 1.2s ease .5s
}

.elementor[data-elementor-type=wp-page].avx-loaded .e-con:has(>*>[data-avx=logos]) {
  opacity: 1
}

@media (max-width:1023px) {
  .e-con:has(>*>[data-avx=svc-head]) {
    grid-template-columns: 1fr
  }
}

@media (max-width:960px) {
  .e-con:has(>*>[data-avx=awards-inner]) {
    grid-template-columns: 1fr;
    padding-right: var(--gutter) !important
  }
  .e-con:has(>*>[data-avx=awards-inner]) h2.elementor-heading-title {
    white-space: normal
  }
  .e-con:has(>*>[data-avx=awards-rail]) {
    margin-right: calc(-1 * var(--gutter)) !important
  }
  .e-con:has(>*>[data-avx=partners-head]),
  .e-con:has(>*>[data-avx=stories-head]),
  .e-con:has(>*>[data-avx=path-head]),
  .e-con:has(>*>[data-avx=rapid-grid]),
  .e-con:has(>*>[data-avx=faq-grid]) {
    grid-template-columns: 1fr
  }
  .e-con:has(>*>[data-avx=router]) {
    grid-template-columns: 1fr;
    justify-items: center;
    gap: 56px !important
  }
  .e-con:has(>*>[data-avx=router-ins]) {
    display: flex !important;
    flex-wrap: wrap !important;
    flex-direction: row !important;
    justify-content: center !important;
    gap: 10px !important
  }
  .e-con:has(>*>[data-avx=router-outs]) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: 100% !important;
    justify-items: stretch
  }
  .e-con:has(>*>[data-avx=router-outs])>.e-con {
    width: auto !important
  }
  .e-con:has(>*>[data-avx=router-outs])>.e-con.is-active {
    transform: translateY(-4px)
  }
  .e-con:has(>*>[data-avx=stories-grid]) {
    grid-template-columns: repeat(2, minmax(0, 1fr))
  }
  .e-con:has(>*>[data-avx=stories-grid])>.e-con {
    grid-column: span 1
  }
  .e-con:has(>*>[data-avx=stories-grid])>.e-con:has(>*>[data-avx=story-feature]) {
    grid-column: 1/-1 !important;
    grid-row: auto
  }
  .rapid__frame {
    transform: none
  }
  .e-con:has(>*>[data-avx=tiles]) {
    grid-template-columns: repeat(2, minmax(0, 1fr))
  }
  .e-con:has(>*>[data-avx=stats]) {
    grid-template-columns: repeat(2, minmax(0, 1fr))
  }
  .e-con:has(>*>[data-avx=stats])>.e-con:nth-child(3 of .e-con) {
    border-left: 0 !important;
    padding-left: 0 !important
  }
  .e-con:has(>*>[data-avx=stats])>.e-con:nth-child(n+3 of .e-con) {
    border-top: 1px solid var(--smoke) !important;
    margin-top: 36px !important
  }
  .e-con:has(>*>[data-avx=faq-aside]) {
    position: static !important
  }
}

@media (max-width:640px) {
  :where(.elementor[data-elementor-type=wp-page]) {
    font-size: 16px
  }
  .e-con:has(>*>*>[data-avx=hero])>.e-con-inner {
    padding: 130px var(--gutter) 150px !important
  }
  .e-con:has(>*>[data-avx=hero-actions]) {
    flex-direction: column !important;
    align-items: stretch !important;
    width: 100% !important;
    max-width: 360px;
    margin-inline: auto !important
  }
  .e-con:has(>*>[data-avx=hero-actions]) .elementor-widget-button,
  .e-con:has(>*>[data-avx=hero-actions]) .elementor-button {
    width: 100% !important
  }
  .e-con:has(>*>[data-avx=router-outs]) {
    grid-template-columns: 1fr
  }
  .e-con:has(>*>[data-avx=stories-grid]) {
    grid-template-columns: 1fr
  }
  .e-con:has(>*>[data-avx=tiles]) {
    gap: 12px !important
  }
  .e-con:has(>*>[data-avx=tiles])>.e-con {
    padding: 8px 8px 18px !important
  }
  .e-con:has(>*>[data-avx=tiles]) .elementor-widget-text-editor {
    margin: 14px 6px 0 !important;
    font-size: 15.5px !important
  }
  .e-con:has(>*>[data-avx=faq-grid]) .elementor-accordion .elementor-tab-content {
    padding-right: 0 !important
  }
  .e-con:has(>*>[data-avx=cta-actions]) {
    flex-direction: column !important;
    align-items: stretch !important
  }
  .e-con:has(>*>[data-avx=cta-actions]) .elementor-widget-button,
  .e-con:has(>*>[data-avx=cta-actions]) .elementor-button {
    width: 100% !important
  }
  :where(.elementor[data-elementor-type=wp-page]) .elementor-button {
    white-space: normal;
    text-align: center
  }
  .e-con:has(>*>[data-avx=fab]) {
    right: 14px;
    bottom: 14px
  }
  .e-con:has(>*>[data-avx=fab]) .elementor-button {
    --h: 50px;
    font-size: 14px !important
  }
}

@media (prefers-reduced-motion:reduce) {
  :where(.elementor[data-elementor-type=wp-page]) *,
  :where(.elementor[data-elementor-type=wp-page]) *::before,
  :where(.elementor[data-elementor-type=wp-page]) *::after {
    animation-duration: .001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .001ms !important;
    transition-delay: 0s !important
  }
  .elementor[data-elementor-type=wp-page].avx-js [data-reveal],
  .elementor[data-elementor-type=wp-page].avx-js>.e-con:has(>*>*>[data-avx=hero]) [data-load] {
    opacity: 1;
    transform: none
  }
  .elementor[data-elementor-type=wp-page].avx-js .split .w__i,
  .elementor[data-elementor-type=wp-page].avx-js>.e-con:has(>*>*>[data-avx=hero]) h1 .line__i {
    transform: none
  }
  .rapid__frame {
    transform: none
  }
}

/* Avahi home v3: QA fixes (2026-10-13). Paste at the END of the page Custom CSS. */

/* 1. Services section uses Plus Jakarta Sans: brand font is Manrope only */

 

/* 2. Tablet + mobile: "Recognized Among the Best" and "Our Technology Partners" had 0 top/bottom spacing
      (heading glued to the section edge). Desktop spacing set in Elementor stays as it is. */

@media (max-width:1024px) {
  .elementor[data-elementor-type=wp-page]>.e-con.e-con:has([data-avx=awards]),
  .elementor[data-elementor-type=wp-page] .av-our-technology-sec.e-con.e-con {
    padding-top: 112px !important;
    padding-bottom: 112px !important
  }
}

@media (max-width:767px) {
  .elementor[data-elementor-type=wp-page]>.e-con.e-con:has([data-avx=awards]),
  .elementor[data-elementor-type=wp-page] .av-our-technology-sec.e-con.e-con {
    padding-top: 46px !important;
    padding-bottom: 46px !important
  }
  .e-con:has(>*>*>[data-avx=hero]) h1.elementor-heading-title {   
  line-height: 50px !important; 
}
.e-con:has(>*>*>[data-avx=stories]){
  padding: 0 !important;
}
}

/* Our Technology Partners: use the spacing set in Elementor */

.elementor .av-our-technology-sec.e-con,
.elementor .av-our-technology-sec .e-con {
  --container-default-padding-top: 0px;
  --container-default-padding-right: 0px;
  --container-default-padding-bottom: 0px;
  --container-default-padding-left: 0px;
  padding: var(--padding-top) var(--padding-right) var(--padding-bottom) var(--padding-left) !important;
}

/* Opportunity section buttons side by side */

.av-opportunity-btns-sec.e-con>.elementor-widget,
.av-opportunity-btns-sec .e-con>.elementor-widget,
.av-opportunity-btns-sec .e-con-inner>.elementor-widget {
  width: auto !important;
  max-width: 100% !important;
  margin: 0 !important
}

@media (max-width: 375px) {
  .e-con:has(>*>[data-avx=stats])>.e-con {
    display: block !important;
    padding: 15px 5px 0 !important;
    border-left: 1px solid var(--smoke) !important;
}
 
}