.elementor-kit-8{--e-global-color-primary:#1E90FF;--e-global-color-secondary:#20E879;--e-global-color-text:#9AA8BF;--e-global-color-accent:#EEF3FA;--e-global-color-evxbg:#060A13;--e-global-color-evxsurf:#0C1424;--e-global-color-evxraised:#111C31;--e-global-color-evxline:#1C2A44;--e-global-color-evxlight:#F2F5FA;--e-global-color-evxinkd:#0A1222;--e-global-color-evxmutedd:#4A5872;--e-global-color-evxdeep:#1458D6;--e-global-typography-primary-font-family:"Sora";--e-global-typography-primary-font-size:48px;--e-global-typography-primary-font-weight:600;--e-global-typography-primary-line-height:1.1em;--e-global-typography-secondary-font-family:"Sora";--e-global-typography-secondary-font-size:22px;--e-global-typography-secondary-font-weight:500;--e-global-typography-secondary-line-height:1.3em;--e-global-typography-text-font-family:"Manrope";--e-global-typography-text-font-size:17px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.7em;--e-global-typography-accent-font-family:"Manrope";--e-global-typography-accent-font-size:15px;--e-global-typography-accent-font-weight:700;--e-global-typography-accent-line-height:1.4em;--e-global-typography-evxdisp-font-family:"Sora";--e-global-typography-evxdisp-font-size:66px;--e-global-typography-evxdisp-font-weight:600;--e-global-typography-evxdisp-line-height:1.05em;--e-global-typography-evxdisp-letter-spacing:-2px;--e-global-typography-evxh1-font-family:"Sora";--e-global-typography-evxh1-font-size:56px;--e-global-typography-evxh1-font-weight:600;--e-global-typography-evxh1-line-height:1.06em;--e-global-typography-evxh1-letter-spacing:-1.4px;--e-global-typography-evxh2-font-family:"Sora";--e-global-typography-evxh2-font-size:48px;--e-global-typography-evxh2-font-weight:600;--e-global-typography-evxh2-line-height:1.1em;--e-global-typography-evxh2-letter-spacing:-1px;--e-global-typography-evxh3-font-family:"Sora";--e-global-typography-evxh3-font-size:22px;--e-global-typography-evxh3-font-weight:600;--e-global-typography-evxh3-line-height:1.3em;--e-global-typography-evxh3-letter-spacing:-0.2px;--e-global-typography-evxh4-font-family:"Sora";--e-global-typography-evxh4-font-size:18px;--e-global-typography-evxh4-font-weight:600;--e-global-typography-evxh4-line-height:1.4em;--e-global-typography-evxeye-font-family:"Manrope";--e-global-typography-evxeye-font-size:13px;--e-global-typography-evxeye-font-weight:700;--e-global-typography-evxeye-text-transform:uppercase;--e-global-typography-evxeye-line-height:1.4em;--e-global-typography-evxeye-letter-spacing:2.4px;--e-global-typography-evxlead-font-family:"Manrope";--e-global-typography-evxlead-font-size:20px;--e-global-typography-evxlead-font-weight:400;--e-global-typography-evxlead-line-height:1.6em;--e-global-typography-evxbody-font-family:"Manrope";--e-global-typography-evxbody-font-size:17px;--e-global-typography-evxbody-font-weight:400;--e-global-typography-evxbody-line-height:1.7em;--e-global-typography-evxsmall-font-family:"Manrope";--e-global-typography-evxsmall-font-size:14px;--e-global-typography-evxsmall-font-weight:600;--e-global-typography-evxsmall-line-height:1.4em;--e-global-typography-evxsmall-letter-spacing:0.2px;--e-global-typography-evxbig-font-family:"Sora";--e-global-typography-evxbig-font-size:72px;--e-global-typography-evxbig-font-weight:600;--e-global-typography-evxbig-line-height:1em;--e-global-typography-evxbig-letter-spacing:-2px;background-color:#060A13;color:#9AA8BF;font-family:"Manrope", Sans-serif;font-size:17px;font-weight:400;line-height:1.7em;}.elementor-kit-8 button,.elementor-kit-8 input[type="button"],.elementor-kit-8 input[type="submit"],.elementor-kit-8 .elementor-button{background-color:#0A6FE0;font-family:"Manrope", Sans-serif;font-size:15px;font-weight:700;letter-spacing:0.2px;color:#FFFFFF;border-radius:999px 999px 999px 999px;padding:18px 30px 18px 30px;}.elementor-kit-8 button:hover,.elementor-kit-8 button:focus,.elementor-kit-8 input[type="button"]:hover,.elementor-kit-8 input[type="button"]:focus,.elementor-kit-8 input[type="submit"]:hover,.elementor-kit-8 input[type="submit"]:focus,.elementor-kit-8 .elementor-button:hover,.elementor-kit-8 .elementor-button:focus{background-color:#0960C4;color:#FFFFFF;}.elementor-kit-8 e-page-transition{background-color:#FFBC7D;}.elementor-kit-8 a{color:#1E90FF;}.elementor-kit-8 a:hover{color:#20E879;}.elementor-kit-8 h1{color:#EEF3FA;font-family:"Sora", Sans-serif;font-weight:600;}.elementor-kit-8 h2{color:#EEF3FA;font-family:"Sora", Sans-serif;font-weight:600;}.elementor-kit-8 h3{color:#EEF3FA;font-family:"Sora", Sans-serif;font-weight:600;}.elementor-kit-8 h4{color:#EEF3FA;font-family:"Sora", Sans-serif;font-weight:600;}.elementor-kit-8 h5{color:#EEF3FA;font-family:"Sora", Sans-serif;font-weight:600;}.elementor-kit-8 h6{color:#EEF3FA;font-family:"Sora", Sans-serif;font-weight:600;}.elementor-kit-8 label{color:#EEF3FA;font-family:"Manrope", Sans-serif;font-size:14px;font-weight:600;}.elementor-kit-8 input:not([type="button"]):not([type="submit"]),.elementor-kit-8 textarea,.elementor-kit-8 .elementor-field-textual{font-family:"Manrope", Sans-serif;font-size:16px;color:#EEF3FA;background-color:#111C31;border-style:solid;border-width:1px 1px 1px 1px;border-color:#22314F;border-radius:12px 12px 12px 12px;padding:14px 18px 14px 18px;}.elementor-kit-8 input:focus:not([type="button"]):not([type="submit"]),.elementor-kit-8 textarea:focus,.elementor-kit-8 .elementor-field-textual:focus{background-color:#132140;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1280px;}.e-con{--container-max-width:1280px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.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-kit-8{--e-global-typography-primary-font-size:38px;--e-global-typography-secondary-font-size:21px;--e-global-typography-text-font-size:16px;--e-global-typography-accent-font-size:15px;--e-global-typography-evxdisp-font-size:54px;--e-global-typography-evxh1-font-size:46px;--e-global-typography-evxh2-font-size:38px;--e-global-typography-evxh3-font-size:21px;--e-global-typography-evxh4-font-size:18px;--e-global-typography-evxeye-font-size:13px;--e-global-typography-evxlead-font-size:19px;--e-global-typography-evxbody-font-size:16px;--e-global-typography-evxsmall-font-size:14px;--e-global-typography-evxbig-font-size:60px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-8{--e-global-typography-primary-font-size:30px;--e-global-typography-secondary-font-size:20px;--e-global-typography-text-font-size:16px;--e-global-typography-accent-font-size:15px;--e-global-typography-evxdisp-font-size:39px;--e-global-typography-evxh1-font-size:34px;--e-global-typography-evxh2-font-size:30px;--e-global-typography-evxh3-font-size:20px;--e-global-typography-evxh4-font-size:17px;--e-global-typography-evxeye-font-size:12px;--e-global-typography-evxlead-font-size:18px;--e-global-typography-evxbody-font-size:16px;--e-global-typography-evxsmall-font-size:14px;--e-global-typography-evxbig-font-size:52px;font-size:16px;}.elementor-kit-8 button,.elementor-kit-8 input[type="button"],.elementor-kit-8 input[type="submit"],.elementor-kit-8 .elementor-button{font-size:14px;padding:17px 26px 17px 26px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* =========================================================
   EV Charge Point UK – global design + motion layer
   Content lives in Elementor widgets; this file only styles
   classes added under Advanced > CSS Classes.
   ========================================================= */
:root{
  --evx-bg:#060A13;--evx-surface:#0C1424;--evx-raised:#111C31;--evx-line:#1C2A44;
  --evx-ink:#EEF3FA;--evx-muted:#9AA8BF;--evx-accent:#1E90FF;--evx-accent-deep:#1458D6;
  --evx-charge:#20E879;--evx-light:#F2F5FA;--evx-ink-dark:#0A1222;
  --evx-ease:cubic-bezier(.2,.75,.2,1);--evx-ease-io:cubic-bezier(.7,0,.2,1);
  --evx-header-h:66px;
}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{background:var(--evx-bg);overflow-x:hidden}
::selection{background:rgba(30,144,255,.35);color:#fff}
img{max-width:100%;height:auto}
.elementor-heading-title{text-wrap:balance}
.elementor-widget-text-editor p:last-child{margin-bottom:0}

/* ---------- Gradient emphasis inside headings ---------- */
.evx-grad{background:linear-gradient(100deg,#9CCFFF 0%,#3A9BFF 45%,#1E8CFF 100%);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;animation:evxShimmer 8s ease-in-out infinite alternate;padding-bottom:.08em}
.evx-on-light .evx-grad,.evx-light .evx-grad{background-image:linear-gradient(100deg,#011B34 0%,#0A5FD0 45%,#0080FB 100%)}
@keyframes evxShimmer{to{background-position:100% 0}}

/* ---------- Eyebrow with live-charge dot ---------- */
.evx-eyebrow .elementor-heading-title{display:inline-flex;align-items:center;gap:10px}
.evx-eyebrow .elementor-heading-title::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--evx-charge);box-shadow:0 0 0 0 rgba(32,232,121,.6);animation:evxDot 2.2s infinite}
@keyframes evxDot{0%{box-shadow:0 0 0 0 rgba(32,232,121,.55)}70%{box-shadow:0 0 0 10px rgba(32,232,121,0)}100%{box-shadow:0 0 0 0 rgba(32,232,121,0)}}

/* ---------- Header ---------- */
.evx-header{position:fixed!important;top:0;left:0;right:0;z-index:999;transition:transform .5s var(--evx-ease),padding .4s var(--evx-ease)}
.evx-header::after{content:"";position:absolute;inset:0;background:rgba(6,10,19,.72);-webkit-backdrop-filter:saturate(160%) blur(18px);backdrop-filter:saturate(160%) blur(18px);border-bottom:1px solid rgba(255,255,255,.07);opacity:0;transition:opacity .45s var(--evx-ease);pointer-events:none;z-index:-1}
body.evx-scrolled .evx-header::after{opacity:1}
body.evx-scrolled .evx-header{padding-top:10px!important;padding-bottom:10px!important}
body.evx-hide-header:not(.evx-menu-open) .evx-header{transform:translate3d(0,-110%,0)}
.admin-bar .evx-header{top:32px}
@media (max-width:782px){.admin-bar .evx-header{top:46px}}
.evx-header .e-con{--width:auto}
.evx-header .evx-logo.e-con{flex:0 0 auto}
.evx-header .evx-header-right.e-con{flex:1 1 auto;min-width:0}
.evx-header .evx-nav{flex:1 1 auto}

/* Logo (client logo image, transparent background) */
.evx-header .evx-logo-img{flex:0 0 auto;margin:0!important}
.evx-logo-img a{display:block;line-height:0}
.evx-logo-img img{display:block;height:auto;transition:filter .5s var(--evx-ease),transform .5s var(--evx-ease)}
.evx-logo-img a:hover img{filter:drop-shadow(0 0 14px rgba(30,144,255,.45));transform:translateY(-1px)}
body.evx-scrolled .evx-header .evx-logo-img img{transform:scale(.94);transform-origin:left center}
/* Header phone link: shown on wide screens only */
.evx-hdr-phone .elementor-icon-list-item a{white-space:nowrap;transition:color .3s}
.evx-hdr-phone .elementor-icon-list-item a:hover .elementor-icon-list-text{color:#20E879!important}
@media (max-width:1199px){.evx-hdr-phone{display:none!important}}

/* Desktop nav */
.evx-nav .elementor-nav-menu--main .elementor-item{position:relative}
.evx-nav .elementor-nav-menu--main .elementor-item.elementor-item-active,.evx-nav .elementor-nav-menu--main .elementor-item:hover{color:#fff}
.evx-nav .elementor-nav-menu--main .sub-menu{border:1px solid rgba(255,255,255,.08);border-radius:16px!important;overflow:hidden;padding:8px!important;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 30px 60px -20px rgba(0,0,0,.6)}
.evx-nav .elementor-nav-menu--main .sub-menu a{border-radius:10px;transition:background .3s,padding .3s var(--evx-ease)}
.evx-nav .elementor-nav-menu--main .sub-menu a:hover{padding-left:24px!important}

/* Mobile menu: full-screen glass panel with staggered links */
.evx-nav .elementor-menu-toggle{border-radius:999px;border:1px solid rgba(255,255,255,.14);transition:background .3s,border-color .3s}
.evx-nav .elementor-menu-toggle.elementor-active{background:rgba(30,144,255,.18);border-color:rgba(30,144,255,.6)}
@media (max-width:1024px){
  .evx-nav .elementor-menu-toggle + .elementor-nav-menu__container{position:fixed!important;left:0!important;right:0!important;top:var(--evx-header-h)!important;width:100%!important;height:calc(100vh - var(--evx-header-h));height:calc(100dvh - var(--evx-header-h));max-height:none!important;margin:0!important;transform:none!important;overflow-y:auto!important;padding:18px 18px 140px!important;background:rgba(6,10,19,.97)!important;-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);clip-path:inset(0 0 100% 0);opacity:0;visibility:hidden;transition:clip-path .65s var(--evx-ease-io),opacity .3s,visibility 0s linear .65s;z-index:998}
  .evx-nav .elementor-menu-toggle.elementor-active + .elementor-nav-menu__container{clip-path:inset(0 0 0 0);opacity:1;visibility:visible;transition:clip-path .65s var(--evx-ease-io),opacity .2s}
  .evx-nav .elementor-nav-menu--dropdown > ul > li{border-bottom:1px solid rgba(255,255,255,.07);opacity:0;transform:translate3d(0,18px,0)}
  .evx-nav .elementor-menu-toggle.elementor-active + .elementor-nav-menu__container > ul > li{animation:evxMenuIn .6s var(--evx-ease) forwards}
  .evx-nav .elementor-nav-menu--dropdown > ul > li:nth-child(1){animation-delay:.12s!important}
  .evx-nav .elementor-nav-menu--dropdown > ul > li:nth-child(2){animation-delay:.18s!important}
  .evx-nav .elementor-nav-menu--dropdown > ul > li:nth-child(3){animation-delay:.24s!important}
  .evx-nav .elementor-nav-menu--dropdown > ul > li:nth-child(4){animation-delay:.30s!important}
  .evx-nav .elementor-nav-menu--dropdown > ul > li:nth-child(5){animation-delay:.36s!important}
  .evx-nav .elementor-nav-menu--dropdown > ul > li:nth-child(6){animation-delay:.42s!important}
  .evx-nav .elementor-nav-menu--dropdown .elementor-item{font-family:Sora,sans-serif!important;font-size:24px!important;font-weight:600!important;padding:18px 6px!important}
  .evx-nav .elementor-nav-menu--dropdown .sub-menu .elementor-sub-item{font-size:17px!important;padding:12px 6px 12px 20px!important;color:var(--evx-muted)!important}
  .evx-nav .elementor-nav-menu--dropdown .sub-menu{border-left:1px solid rgba(30,144,255,.4)!important;margin:0 0 12px 8px!important}
}
@keyframes evxMenuIn{to{opacity:1;transform:none}}

/* ---------- Buttons ---------- */
.evx-btn .elementor-button{position:relative;overflow:hidden;isolation:isolate;transition:transform .45s var(--evx-ease),box-shadow .45s var(--evx-ease),background-color .3s,border-color .3s,color .3s!important;will-change:transform}
.evx-btn .elementor-button::before{content:"";position:absolute;top:0;left:-120%;width:80%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.35),transparent);transform:skewX(-20deg);transition:left .8s var(--evx-ease);z-index:-1}
.evx-btn .elementor-button:hover::before{left:140%}
.evx-btn .elementor-button:hover{transform:translate3d(0,-3px,0);box-shadow:0 16px 40px -14px rgba(30,144,255,.85)}
.evx-btn .elementor-button:active{transform:translate3d(0,0,0) scale(.98)}
.evx-btn .elementor-button-icon{transition:transform .45s var(--evx-ease)}
.evx-btn .elementor-button:hover .elementor-button-icon{transform:translateX(5px)}
.evx-btn-ghost .elementor-button{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.evx-btn-ghost .elementor-button:hover{box-shadow:0 14px 34px -16px rgba(238,243,250,.35)}
.evx-btn-glow .elementor-button{animation:evxBtnGlow 3.2s ease-in-out infinite}
@keyframes evxBtnGlow{0%,100%{box-shadow:0 0 0 0 rgba(30,144,255,0)}50%{box-shadow:0 0 34px -4px rgba(30,144,255,.65)}}

/* ---------- Sections & ambient light ---------- */
.evx-section{position:relative;overflow:hidden}
.evx-glow::after{content:"";position:absolute;width:min(780px,120vw);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at center,rgba(30,144,255,.22),rgba(30,144,255,0) 62%);top:-22%;right:-14%;pointer-events:none;z-index:0;animation:evxDrift 18s ease-in-out infinite alternate}
.evx-glow-left::after{left:-18%;right:auto;top:auto;bottom:-30%;background:radial-gradient(circle at center,rgba(32,232,121,.13),rgba(32,232,121,0) 62%)}
.evx-glow > .e-con-inner,.evx-glow > .elementor-element{position:relative;z-index:1}
@keyframes evxDrift{0%{transform:translate3d(0,0,0) scale(1)}100%{transform:translate3d(-6%,8%,0) scale(1.12)}}
.evx-light{--evx-card-bg:#fff}
.evx-topfade::before{content:""!important;position:absolute;left:0;right:0;top:0;height:140px;background:linear-gradient(180deg,var(--evx-bg),transparent);z-index:0;pointer-events:none;display:block}
.evx-curve-top{clip-path:ellipse(140% 100% at 50% 100%)}
@media (max-width:767px){.evx-curve-top{clip-path:ellipse(220% 100% at 50% 100%)}}

/* Hero */
.evx-hero{position:relative;overflow:hidden}
.evx-hero-bg::after{content:"";position:absolute;inset:0;background:radial-gradient(60% 50% at 75% 35%,rgba(30,144,255,.28),transparent 70%),radial-gradient(40% 40% at 10% 90%,rgba(32,232,121,.14),transparent 70%);pointer-events:none;z-index:0;animation:evxBreath 9s ease-in-out infinite alternate}
@keyframes evxBreath{from{opacity:.65}to{opacity:1}}
.evx-hero > .e-con-inner{position:relative;z-index:2}

/* Energy-flow SVG (decorative HTML widget) */
.evx-energy{position:absolute!important;inset:0;pointer-events:none;z-index:1!important;width:100%!important;max-width:none!important}
.evx-energy svg{width:100%;height:100%;display:block}
.evx-energy .evx-wire{fill:none;stroke:rgba(120,170,255,.14);stroke-width:1.2}
.evx-energy .evx-flow{fill:none;stroke:url(#evxFlowGrad);stroke-width:2.2;stroke-linecap:round;stroke-dasharray:90 900;animation:evxFlow 6s linear infinite;filter:drop-shadow(0 0 6px rgba(32,232,121,.8))}
.evx-energy .evx-flow.f2{animation-duration:7.5s;animation-delay:-2s}
.evx-energy .evx-flow.f3{animation-duration:9s;animation-delay:-4s}
.evx-energy .evx-flow.f4{animation-duration:6.8s;animation-delay:-1s}
@keyframes evxFlow{from{stroke-dashoffset:990}to{stroke-dashoffset:0}}

/* ---------- Glass cards ---------- */
.evx-glass{background:linear-gradient(180deg,rgba(17,28,49,.78),rgba(12,20,36,.55))!important;border:1px solid rgba(255,255,255,.08);border-radius:20px;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
.evx-card{position:relative;overflow:hidden;transition:transform .6s var(--evx-ease),border-color .4s,box-shadow .6s var(--evx-ease)!important}
.evx-card::after{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(420px circle at var(--mx,50%) var(--my,0%),rgba(30,144,255,.16),transparent 45%);opacity:0;transition:opacity .4s;pointer-events:none;z-index:0}
.evx-card > *{position:relative;z-index:1}
.evx-card:hover{transform:translate3d(0,-6px,0);border-color:rgba(30,144,255,.45)!important;box-shadow:0 30px 60px -30px rgba(30,144,255,.45)}
.evx-card:hover::after{opacity:1}
.evx-light .evx-card:hover{box-shadow:0 30px 60px -30px rgba(20,88,214,.35)}
.evx-card .elementor-icon{transition:transform .6s var(--evx-ease),box-shadow .6s}
.evx-card:hover .elementor-icon{transform:translateY(-3px) rotate(-6deg);box-shadow:0 0 30px -6px rgba(30,144,255,.9)}

/* Icon chips */
.evx-ichip .elementor-icon{background:linear-gradient(140deg,rgba(30,144,255,.22),rgba(30,144,255,.06));border:1px solid rgba(30,144,255,.35)}
.evx-ichip-green .elementor-icon{background:linear-gradient(140deg,rgba(32,232,121,.22),rgba(32,232,121,.05));border:1px solid rgba(32,232,121,.35)}
.evx-pulse .elementor-icon{animation:evxPulse 2.6s infinite}
@keyframes evxPulse{0%{box-shadow:0 0 0 0 rgba(32,232,121,.45)}70%{box-shadow:0 0 0 16px rgba(32,232,121,0)}100%{box-shadow:0 0 0 0 rgba(32,232,121,0)}}

/* Floating chips over media */
.evx-float{animation:evxFloat 6s ease-in-out infinite}
.evx-float-2{animation:evxFloat 7.5s ease-in-out infinite;animation-delay:-2.5s}
.evx-float-3{animation:evxFloat 8.5s ease-in-out infinite;animation-delay:-4s}
@keyframes evxFloat{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(0,-14px,0)}}
.evx-chip{box-shadow:0 24px 50px -24px rgba(0,0,0,.8)}

/* Media */
.evx-media{border-radius:32px;overflow:hidden;position:relative;isolation:isolate}
.evx-media img,.evx-media video{display:block;width:100%;height:100%;object-fit:cover;transition:transform 1.4s var(--evx-ease)}
.evx-media:hover img{transform:scale(1.05)}
.evx-media::after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);pointer-events:none}
.evx-px img,.evx-px-s img,.evx-px-l img{transition:none!important;will-change:transform}
.evx-media-tall img{aspect-ratio:4/5}
.evx-media-wide img{aspect-ratio:16/10}
.evx-media-square img{aspect-ratio:1/1}
.evx-media-arch{border-radius:260px 260px 32px 32px}
.evx-media-tint::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,10,19,0) 40%,rgba(6,10,19,.65));z-index:1;pointer-events:none}
.evx-tilt{transform:rotate(-2.5deg)}
.evx-tilt-r{transform:rotate(2deg)}
.evx-video video{border-radius:32px;aspect-ratio:16/9;object-fit:cover}
.evx-video .elementor-wrapper{border-radius:32px;overflow:hidden;box-shadow:0 40px 90px -40px rgba(30,144,255,.5)}

/* ---------- Reveal system (only active when JS is running) ---------- */
html.evx-js .evx-r{opacity:0;transform:translate3d(0,42px,0);transition:opacity .9s var(--evx-ease),transform 1.1s var(--evx-ease),clip-path 1.2s var(--evx-ease-io);transition-delay:var(--d,0ms)}
html.evx-js .evx-r-left{transform:translate3d(-56px,0,0)}
html.evx-js .evx-r-right{transform:translate3d(56px,0,0)}
html.evx-js .evx-r-scale{transform:scale(.9)}
html.evx-js .evx-r-mask{transform:none;opacity:1;clip-path:inset(12% 12% 12% 12% round 32px)}
html.evx-js .evx-r-fade{transform:none}
html.evx-js .evx-r.is-in{opacity:1;transform:none;clip-path:inset(0 0 0 0 round 0)}
html.evx-js .evx-r-mask.is-in{clip-path:inset(0 0 0 0 round 32px)}
/* Word-by-word heading reveal */
.evx-w{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.12em;margin-bottom:-.12em}
.evx-wi{display:inline-block;transform:translate3d(0,108%,0);transition:transform 1s var(--evx-ease);transition-delay:calc(var(--wi,0) * 55ms + var(--d,0ms))}
.evx-split.is-in .evx-wi{transform:none}

/* ---------- Timeline with filling energy line ---------- */
.evx-timeline{position:relative;--p:0}
.evx-timeline::before,.evx-timeline::after{content:""!important;position:absolute;left:31px;top:20px;bottom:20px;width:2px;border-radius:2px;display:block;opacity:1}
.evx-timeline::before{background:rgba(255,255,255,.08)}
.evx-timeline::after{background:linear-gradient(180deg,var(--evx-accent),var(--evx-charge));transform-origin:top;transform:scaleY(var(--p));box-shadow:0 0 14px rgba(32,232,121,.6)}
.evx-light .evx-timeline::before{background:rgba(10,18,34,.1)}
.evx-step-num .elementor-heading-title{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:var(--evx-surface);border:1px solid rgba(30,144,255,.45);box-shadow:0 0 0 6px var(--evx-bg)}
.evx-light .evx-step-num .elementor-heading-title{background:#fff;box-shadow:0 0 0 6px var(--evx-light)}
@media (max-width:767px){.evx-timeline::before,.evx-timeline::after{left:23px}.evx-step-num .elementor-heading-title{width:48px;height:48px;font-size:16px!important}}

/* Horizontal step rail (desktop row, mobile swipe) */
.evx-rail{--line:rgba(255,255,255,.1)}
@media (max-width:1024px){
  .evx-swipe{flex-wrap:nowrap!important;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:8px!important;margin-right:-16px!important;padding-right:16px!important}
  .evx-swipe::-webkit-scrollbar{display:none}
  .evx-swipe > .e-con,.evx-swipe > .elementor-element{flex:0 0 78%!important;max-width:78%!important;scroll-snap-align:start}
}
@media (max-width:600px){.evx-swipe > .e-con,.evx-swipe > .elementor-element{flex-basis:86%!important;max-width:86%!important}}

/* Marquee */
.evx-marquee{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.evx-marquee .elementor-icon-list-items{display:flex!important;flex-wrap:nowrap!important;width:max-content;animation:evxMarquee 38s linear infinite}
.evx-marquee:hover .elementor-icon-list-items{animation-play-state:paused}
.evx-marquee .elementor-icon-list-item{white-space:nowrap;margin:0 10px!important;padding:12px 22px!important;border:1px solid rgba(255,255,255,.1);border-radius:999px;background:rgba(17,28,49,.6)}
.evx-light .evx-marquee .elementor-icon-list-item{background:#fff;border-color:rgba(10,18,34,.08)}
@keyframes evxMarquee{to{transform:translate3d(-50%,0,0)}}

/* Pill tags (icon list inline) */
.evx-pills .elementor-icon-list-item{padding:10px 18px!important;border-radius:999px;border:1px solid rgba(255,255,255,.1);background:rgba(17,28,49,.55);transition:border-color .3s,transform .4s var(--evx-ease)}
.evx-pills .elementor-icon-list-item:hover{border-color:rgba(32,232,121,.55);transform:translateY(-2px)}
.evx-light .evx-pills .elementor-icon-list-item{background:#fff;border-color:rgba(10,18,34,.08)}

/* Check lists */
.evx-checks .elementor-icon-list-icon{width:26px;height:26px;border-radius:50%;background:rgba(32,232,121,.12);display:inline-grid!important;place-items:center;flex:0 0 26px}

/* Big outline wordmark */
.evx-wordmark .elementor-heading-title{-webkit-text-stroke:1px rgba(120,170,255,.28);color:transparent!important;background:linear-gradient(180deg,rgba(30,144,255,.12),transparent);-webkit-background-clip:text;background-clip:text;white-space:nowrap;line-height:.9!important}

/* Dashboard-style panel (commercial) */
.evx-dash .elementor-icon-list-item{padding:14px 16px!important;border-radius:12px;background:rgba(6,10,19,.55);border:1px solid rgba(255,255,255,.06);margin-bottom:8px!important;position:relative;overflow:hidden}
.evx-dash .elementor-icon-list-item::after{content:"";position:absolute;right:16px;top:50%;width:8px;height:8px;border-radius:50%;background:var(--evx-charge);transform:translateY(-50%);box-shadow:0 0 10px var(--evx-charge);animation:evxBlink 2.4s infinite}
.evx-dash .elementor-icon-list-item:nth-child(2n)::after{animation-delay:-.8s}
.evx-dash .elementor-icon-list-item:nth-child(3n)::after{animation-delay:-1.6s}
@keyframes evxBlink{50%{opacity:.35}}
.evx-meter{height:6px;border-radius:6px;background:rgba(255,255,255,.08);overflow:hidden}
.evx-loadbar .elementor-progress-wrapper{border-radius:999px!important;overflow:hidden;background:rgba(255,255,255,.07)!important}
.evx-loadbar .elementor-progress-bar{background:linear-gradient(90deg,var(--evx-accent),var(--evx-charge))!important;border-radius:999px}

/* Comparison (tethered vs untethered) */
.evx-vs{position:relative}
.evx-vs-badge .elementor-heading-title{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--evx-accent),var(--evx-accent-deep));box-shadow:0 0 0 8px var(--evx-bg),0 0 40px rgba(30,144,255,.6)}
.evx-light .evx-vs-badge .elementor-heading-title{box-shadow:0 0 0 8px var(--evx-light),0 0 40px rgba(30,144,255,.4)}

/* Product catalogue */
.evx-product{transition:transform .6s var(--evx-ease),border-color .4s,box-shadow .6s!important}
.evx-product .evx-pimg{border-radius:16px;overflow:hidden;background:radial-gradient(80% 80% at 50% 30%,rgba(30,144,255,.25),rgba(12,20,36,0))}
.evx-product .evx-pimg img{aspect-ratio:4/3;object-fit:cover;transition:transform 1.2s var(--evx-ease)}
.evx-product:hover .evx-pimg img{transform:scale(1.07)}
.evx-tag .elementor-heading-title{display:inline-block;padding:6px 12px;border-radius:999px;background:rgba(32,232,121,.12);border:1px solid rgba(32,232,121,.35)}
.evx-specs .elementor-icon-list-item{padding:8px 0!important;border-bottom:1px dashed rgba(255,255,255,.08)}
.evx-specs .elementor-icon-list-item:last-child{border-bottom:0}

/* Tabs (catalogue filter) */
.evx-tabs .e-n-tabs-heading{gap:10px!important;justify-content:center}
.evx-tabs .e-n-tab-title{border-radius:999px!important;transition:background .35s,color .35s,border-color .35s!important}
.evx-tabs .e-n-tabs-content > .e-con{animation:evxTabIn .7s var(--evx-ease)}
@keyframes evxTabIn{from{opacity:0;transform:translate3d(0,20px,0)}to{opacity:1;transform:none}}

/* FAQ accordion */
.evx-faq .e-n-accordion-item{border:1px solid rgba(255,255,255,.08);border-radius:18px;background:rgba(12,20,36,.6);margin-bottom:12px;overflow:hidden;transition:border-color .35s,background .35s}
.evx-faq .e-n-accordion-item[open]{border-color:rgba(30,144,255,.5);background:rgba(17,28,49,.85)}
.evx-faq .e-n-accordion-item-title{padding:22px 24px!important}
.evx-faq .e-n-accordion-item-title-icon{transition:transform .45s var(--evx-ease)}
.evx-faq .e-n-accordion-item[open] .e-n-accordion-item-title-icon{transform:rotate(180deg)}
.evx-faq .e-n-accordion-item > .e-con{padding:0 24px 24px!important}
.evx-light .evx-faq .e-n-accordion-item{background:#fff;border-color:rgba(10,18,34,.08)}
.evx-light .evx-faq .e-n-accordion-item[open]{border-color:rgba(30,144,255,.5);background:#fff;box-shadow:0 20px 50px -30px rgba(20,88,214,.35)}

/* ---------- Forms ---------- */
.evx-form .elementor-field-group{margin-bottom:6px}
.evx-form .elementor-field-textual,.evx-form select{transition:border-color .3s,box-shadow .3s,background-color .3s!important;min-height:52px}
.evx-form textarea.elementor-field-textual{min-height:120px}
.evx-form .elementor-field-textual:focus,.evx-form select:focus{border-color:var(--evx-accent)!important;box-shadow:0 0 0 4px rgba(30,144,255,.18)!important;outline:none}
.evx-form .elementor-field-label{font-weight:600;letter-spacing:.2px}
.evx-form .elementor-field-type-acceptance label{font-size:14px}
.evx-form .e-form__indicators{margin-bottom:28px!important}
.evx-form .e-form__indicators__indicator__progress{border-radius:999px;overflow:hidden;background:rgba(255,255,255,.08)!important}
.evx-form .e-form__indicators__indicator__progress__meter{background:linear-gradient(90deg,var(--evx-accent),var(--evx-charge))!important;transition:width .6s var(--evx-ease)}
.evx-form .e-form__step{animation:evxTabIn .6s var(--evx-ease)}
.evx-form .e-form__buttons__wrapper__button,.evx-form .elementor-button{border-radius:999px!important;min-height:54px;transition:transform .4s var(--evx-ease),box-shadow .4s!important}
.evx-form .e-form__buttons__wrapper__button:hover,.evx-form .elementor-button:hover{transform:translateY(-2px);box-shadow:0 16px 40px -14px rgba(30,144,255,.85)}
.evx-form .e-form__buttons__wrapper__button-previous{background:transparent!important;border:1px solid rgba(255,255,255,.2)!important}
.evx-form .elementor-field-type-upload input{padding:14px!important;border-style:dashed!important}
.evx-form .elementor-message{border-radius:12px;padding:14px 16px;background:rgba(32,232,121,.1);border:1px solid rgba(32,232,121,.35);color:var(--evx-ink)}
.evx-form .elementor-message.elementor-message-danger,.evx-form .elementor-message.elementor-help-inline{background:rgba(255,92,92,.1);border-color:rgba(255,92,92,.35)}

/* ---------- Footer ---------- */
.evx-footer a{transition:color .3s,padding .3s var(--evx-ease)}
.evx-footer .elementor-icon-list-item a:hover{padding-left:6px}
.evx-footer-cta{position:relative;overflow:hidden}
.evx-footer-cta::after{content:"";position:absolute;inset:-40%;background:conic-gradient(from 0deg,transparent 0 70%,rgba(30,144,255,.35) 80%,rgba(32,232,121,.3) 88%,transparent 95%);animation:evxSpin 10s linear infinite;z-index:0;pointer-events:none}
.evx-footer-cta::before{content:""!important;position:absolute;inset:1px;border-radius:27px;background:linear-gradient(135deg,#0E1A31,#091224);z-index:0;display:block}
.evx-footer-cta > *{position:relative;z-index:1}
@keyframes evxSpin{to{transform:rotate(360deg)}}
/* Compact footer: the wordmark is a watermark behind the bottom rows, so it adds no height */
.evx-footer.e-con,.evx-footer-cta.e-con{position:relative;z-index:1}
.evx-wordmark-bg{position:absolute!important;left:0;right:0;bottom:-.08em;width:100%!important;max-width:none!important;margin:0!important;z-index:0;pointer-events:none;opacity:.7}
.evx-footer-logo{margin-bottom:4px!important}
@media (max-width:767px){
  .evx-footer .elementor-icon-list-text{font-size:14.5px!important;line-height:1.5!important}
  .evx-footer .elementor-widget-text-editor{font-size:15px}
  .evx-footer .elementor-heading-title{font-size:16px!important}
}

/* Sticky mobile CTA */
.evx-mcta{position:fixed!important;left:12px;right:12px;bottom:12px;z-index:990;transform:translate3d(0,140%,0);transition:transform .6s var(--evx-ease)!important;box-shadow:0 20px 50px -10px rgba(0,0,0,.7)}
.evx-mcta.e-con{--width:auto;width:auto!important;max-width:none!important}
.evx-mcta > .elementor-widget{min-width:0}
body.evx-show-mcta .evx-mcta{transform:none}
body.evx-menu-open .evx-mcta{transform:translate3d(0,140%,0)}
@media (min-width:1025px){.evx-mcta{display:none!important}}

/* Scroll progress bar */
.evx-progress{position:fixed;top:0;left:0;height:2px;width:100%;transform-origin:0 50%;transform:scaleX(0);background:linear-gradient(90deg,var(--evx-accent),var(--evx-charge));z-index:1000;pointer-events:none}
.admin-bar .evx-progress{top:32px}

/* Counters */
.evx-counter .elementor-counter-number-wrapper{font-family:Sora,sans-serif;font-weight:600;letter-spacing:-1px}
.evx-counter .elementor-counter-number-suffix{color:var(--evx-charge)}
.evx-counter .elementor-counter{align-items:flex-start!important;text-align:start}
.evx-counter .elementor-counter-title{text-align:start;justify-content:flex-start}
.evx-overlap{padding-bottom:7%!important}
@media (max-width:767px){.evx-overlap{padding-bottom:16%!important}.evx-chip-c{display:none!important}}

/* Bento sizing helpers */
.evx-bento-img{min-height:340px}
@media (max-width:767px){.evx-bento-img{min-height:260px}}

/* ---------- Layout helpers ---------- */
.evx-section{overflow:hidden;overflow:clip}
.evx-hero-visual{position:relative}
.evx-chip.e-con{--width:auto;width:auto;z-index:3}
.evx-chip-a{position:absolute!important;top:8%;left:-12%}
.evx-chip-c{position:absolute!important;top:44%;right:-7%}
.evx-chip-b{position:absolute!important;bottom:6%;left:-18%;max-width:380px}
@media (max-width:1024px){.evx-chip-a{left:-3%}.evx-chip-c{right:-3%}.evx-chip-b{left:-3%}}
@media (max-width:767px){
  .evx-chip-a{top:14px;left:14px}.evx-chip-c{top:auto;bottom:118px;right:14px}
  .evx-chip-b{position:relative!important;left:auto;bottom:auto;max-width:none;margin:-64px 14px 0!important}
  .evx-chip .elementor-icon-box-title{font-size:15px!important}
}
.evx-span-r2{grid-row:span 2}
.evx-span-c2{grid-column:span 2}
@media (max-width:1024px){.evx-span-r2{grid-row:auto}}
@media (max-width:767px){.evx-span-c2{grid-column:auto}}
.evx-sticky{position:sticky!important;top:130px;align-self:flex-start}
@media (max-width:1024px){.evx-sticky{position:relative!important;top:auto}}

/* Bento image cards */
.evx-bcard.e-con{position:relative;overflow:hidden;isolation:isolate;border-radius:28px;justify-content:flex-end;transition:transform .7s var(--evx-ease),box-shadow .7s var(--evx-ease)}
.evx-bcard:hover{transform:translate3d(0,-6px,0);box-shadow:0 40px 80px -40px rgba(30,144,255,.55)}
.evx-bcard > .evx-bimg{position:absolute!important;inset:0;z-index:-2;margin:0!important;width:100%!important;max-width:none!important;height:100%}
.evx-bcard > .evx-bimg .elementor-widget-container,.evx-bcard > .evx-bimg{height:100%}
.evx-bcard > .evx-bimg img{width:100%;height:100%!important;object-fit:cover;border-radius:0;transition:transform 1.4s var(--evx-ease)}
.evx-bcard:hover > .evx-bimg img{transform:scale(1.06)}
.evx-bcard::before{content:""!important;display:block!important;position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,10,19,.05) 15%,rgba(6,10,19,.55) 50%,rgba(6,10,19,.95) 92%)!important;z-index:-1;opacity:1!important;border-radius:inherit}

/* Stats strip */
.evx-stats > .e-con + .e-con{border-left:1px solid rgba(255,255,255,.09);padding-left:40px}
.evx-light .evx-stats > .e-con + .e-con{border-left-color:rgba(10,18,34,.1)}
@media (max-width:767px){.evx-stats > .e-con + .e-con{border-left:0;padding-left:0;border-top:1px solid rgba(255,255,255,.09);padding-top:24px}}

/* Horizontal step rail */
.evx-steps{position:relative}
.evx-steps::before,.evx-steps::after{content:"";position:absolute;left:4%;right:4%;top:32px;height:2px;border-radius:2px;pointer-events:none}
.evx-steps::before{background:rgba(255,255,255,.08)}
.evx-steps::after{background:linear-gradient(90deg,transparent,var(--evx-charge),var(--evx-accent),transparent);background-size:35% 100%;background-repeat:no-repeat;animation:evxRail 3.4s linear infinite;filter:drop-shadow(0 0 6px rgba(32,232,121,.7))}
@keyframes evxRail{from{background-position:-40% 0}to{background-position:140% 0}}
@media (max-width:1024px){.evx-steps::before,.evx-steps::after{display:none}}

/* Overlapping images */
.evx-overlap{position:relative}
.evx-ov-sub{position:absolute!important;right:-4%;bottom:-10%;width:48%!important;max-width:none!important;z-index:2}
.evx-ov-sub img{border:6px solid var(--evx-bg);border-radius:28px}
.evx-ov-main{width:86%!important;max-width:none!important}
@media (max-width:767px){.evx-ov-main{width:92%!important}.evx-ov-sub{right:0;bottom:-12%;width:52%!important}}
.evx-light .evx-ov-sub img{border-color:var(--evx-light)}

/* Button rows size to their buttons (full width on phones) */
.evx-btnrow.e-con{--width:auto;flex:0 0 auto;max-width:100%}
@media (max-width:767px){.evx-btnrow.e-con{--width:100%;width:100%}}
.evx-footer-cta > .e-con:first-child{flex:1 1 auto}

/* Quote / highlight line */
.evx-quote p{border-left:2px solid var(--evx-charge);padding-left:20px}
.evx-inline .elementor-icon-list-items{display:flex;flex-wrap:wrap;gap:6px 24px}
.evx-inline .elementor-icon-list-item{margin:0!important;padding:0!important}

/* ---------- Fixes from visual QA ---------- */
.evx-step-num{flex:0 0 64px!important;width:64px!important;max-width:64px!important}
@media (max-width:767px){.evx-step-num{flex-basis:48px!important;width:48px!important;max-width:48px!important}}
.evx-timeline > .e-con > .e-con{--width:auto;width:auto;flex:1 1 0!important;min-width:0}
.evx-faq .e-n-accordion-item-title-text{color:inherit!important}
.evx-form select,.evx-form select.elementor-field-textual{color:#EEF3FA!important;background-color:#111C31!important}
.evx-form select option{color:#0A1222;background:#FFFFFF}
.evx-form ::placeholder{color:#7E8CA6;opacity:1}
/* Keep native, accessible selects in the quote form (the theme converts every select to nice-select) */
.evx-form .nice-select{display:none!important}
.evx-form select{display:block!important;width:100%;-webkit-appearance:none;appearance:none;padding-right:44px!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%239AA8BF' stroke-width='2'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:right 18px center!important}
.evx-form .elementor-select-wrapper::before,.evx-form .elementor-select-wrapper .select-caret-down-wrapper{display:none!important}
/* Product tag pill keeps its live dot */
.evx-tag .elementor-heading-title{display:inline-flex!important}
/* Theme back-to-top restyled to the brand; hidden on phones where the sticky quote bar lives */
.scroll-to-top{right:24px!important;bottom:24px!important;z-index:980!important}
.scroll-to-top a,.scroll-to-top .scroll-link{display:grid!important;place-items:center;width:48px!important;height:48px!important;border-radius:50%!important;background:rgba(12,20,36,.85)!important;border:1px solid rgba(255,255,255,.14)!important;color:#EEF3FA!important;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 14px 34px -14px rgba(30,144,255,.6)!important;transition:transform .4s var(--evx-ease),border-color .3s!important}
.scroll-to-top a:hover,.scroll-to-top .scroll-link:hover{transform:translateY(-3px);border-color:rgba(32,232,121,.6)!important}
@media (max-width:1024px){.scroll-to-top{display:none!important}}
/* Product card buttons side by side on phones */
@media (max-width:767px){
  .evx-pbtns.e-con{flex-wrap:nowrap!important;flex-direction:row!important}
  .evx-pbtns > .elementor-widget{flex:1 1 0!important;min-width:0;width:auto!important}
  .evx-pbtns .elementor-button{width:100%;justify-content:center;padding-left:12px!important;padding-right:12px!important}
}

/* ---------- Page-specific components ---------- */
/* VS comparison badge */
.evx-vs > .e-con{position:relative;z-index:1}
.evx-vs-badge{position:relative;z-index:3;margin:0 -32px!important;flex:0 0 auto}
@media (max-width:767px){.evx-vs-badge{margin:-28px auto!important}}

/* Sticky stacking cards */
.evx-stack-card{position:sticky!important;top:110px}
.evx-stack-card:nth-child(2){top:130px}.evx-stack-card:nth-child(3){top:150px}.evx-stack-card:nth-child(4){top:170px}.evx-stack-card:nth-child(5){top:190px}
.evx-stack-card{box-shadow:0 -30px 60px -30px rgba(0,0,0,.85)}
@media (max-width:767px){.evx-stack-card{top:80px}.evx-stack-card:nth-child(2){top:92px}.evx-stack-card:nth-child(3){top:104px}.evx-stack-card:nth-child(4){top:116px}.evx-stack-card:nth-child(5){top:128px}}
.evx-outline-num .elementor-heading-title{-webkit-text-stroke:1px rgba(120,170,255,.45);color:transparent!important}
.evx-light .evx-outline-num .elementor-heading-title{-webkit-text-stroke-color:rgba(20,88,214,.45)}

/* Growth bars */
.evx-bar.e-con{background:linear-gradient(180deg,#FFFFFF,#E8EEF8);border:1px solid rgba(10,18,34,.08);transform-origin:bottom;transition:transform 1.2s var(--evx-ease),opacity .8s!important}
html.evx-js .evx-bar.evx-r{transform:scaleY(.25);opacity:0}
html.evx-js .evx-bar.evx-r.is-in{transform:none;opacity:1}
.evx-bar-accent.e-con{background:linear-gradient(180deg,#1E90FF,#1458D6)}
.evx-bar-accent .elementor-heading-title{color:#fff!important}
.evx-bars{min-height:420px}
@media (max-width:767px){.evx-bars{min-height:260px}.evx-bar .elementor-heading-title{font-size:14px!important}}

/* Live label + dashboard panel */
.evx-live .elementor-heading-title{padding:4px 10px;border-radius:999px;background:rgba(32,232,121,.12);border:1px solid rgba(32,232,121,.35);font-size:11px!important}
.evx-dash-panel{box-shadow:0 50px 100px -50px rgba(30,144,255,.6)}
.evx-dash-panel > .e-con:first-child{padding-bottom:14px;border-bottom:1px solid rgba(255,255,255,.08)}
.evx-numbered .elementor-icon-list-item::after{display:none}

/* Workplace hero: content anchored to the bottom */
.evx-hero-end.e-con{justify-content:flex-end!important}
.evx-chip-static.e-con{position:relative;width:100%;--width:100%}
@media (max-width:1024px){.evx-hide-m{display:none!important}}
.evx-marquee-rev .elementor-icon-list-items{animation-direction:reverse;animation-duration:44s}

/* Load-management flow diagram */
.evx-flow{position:relative}
.evx-flow > .e-con{position:relative;z-index:1}
.evx-flow > .e-con:not(:last-child)::before{content:""!important;display:block!important;position:absolute;top:50%;right:-48px;width:48px;height:2px;background:rgba(10,18,34,.12);z-index:0;opacity:1!important;left:auto;bottom:auto}
.evx-flow > .e-con:not(:last-child)::after{content:"";position:absolute;top:calc(50% - 3px);right:-48px;width:8px;height:8px;border-radius:50%;background:var(--evx-charge);box-shadow:0 0 10px var(--evx-charge);animation:evxPacket 1.8s linear infinite;z-index:2}
@keyframes evxPacket{from{transform:translateX(0);opacity:0}15%{opacity:1}85%{opacity:1}to{transform:translateX(40px);opacity:0}}
.evx-node-hub.e-con{background:linear-gradient(160deg,#1E90FF,#1458D6)!important;border-color:transparent!important;box-shadow:0 30px 60px -25px rgba(20,88,214,.6)}
.evx-node-hub .elementor-icon-box-title,.evx-node-hub .elementor-icon-box-title a,.evx-node-hub .elementor-icon-box-description{color:#fff!important}
.evx-node-hub .elementor-icon{background:rgba(255,255,255,.18)!important;color:#fff!important;border-color:rgba(255,255,255,.4)!important}
.evx-node-out .evx-dash .elementor-icon-list-item{background:#fff;border-color:rgba(10,18,34,.08)}
.evx-node-out .evx-dash .elementor-icon-list-text{color:#0A1222!important}
@media (max-width:767px){
  .evx-flow > .e-con:not(:last-child)::before{top:auto;bottom:-36px;right:auto;left:50%;width:2px;height:36px}
  .evx-flow > .e-con:not(:last-child)::after{top:auto;bottom:-36px;right:auto;left:calc(50% - 3px);animation-name:evxPacketV}
}
@keyframes evxPacketV{from{transform:translateY(0);opacity:0}15%{opacity:1}85%{opacity:1}to{transform:translateY(28px);opacity:0}}

/* Sector tiles */
.evx-tile .elementor-icon-box-title{font-size:16px!important}

/* Bleed image to the viewport edge */
@media (min-width:1025px){.evx-bleed-left .evx-media{margin-left:calc((100vw - min(1280px,100vw - 64px)) / -2)!important;border-radius:0 32px 32px 0}}
.evx-bcard-wide.e-con{border-radius:36px}

/* Offsets and tints */
@media (min-width:1025px){.evx-offset{transform:translateX(48px)}.evx-grid-offset > .e-con:nth-child(2){margin-top:80px}}
.evx-tint.e-con{background:linear-gradient(150deg,rgba(30,144,255,.22),rgba(17,28,49,.6))!important}
.evx-tint-green.e-con{background:linear-gradient(150deg,rgba(32,232,121,.16),rgba(17,28,49,.6))!important}

/* About collage */
.evx-collage > .elementor-element{flex:1 1 0}
.evx-collage-a,.evx-collage-c{max-width:24%!important}
.evx-collage-b{max-width:52%!important;margin-bottom:-40px!important}
.evx-collage-a img{aspect-ratio:3/4}.evx-collage-c img{aspect-ratio:3/4}.evx-collage-b img{aspect-ratio:16/10}
@media (min-width:768px){.evx-collage-a{transform:translateY(-40px)}}
@media (max-width:767px){.evx-collage-b{margin-bottom:-20px!important}}
.evx-mission .elementor-heading-title{text-wrap:balance}

/* About: chained approach cards */
.evx-chain > .e-con{position:relative}
@media (min-width:1025px){.evx-chain{flex-direction:row!important}.evx-chain > .e-con:not(:last-child)::before{content:""!important;display:block!important;position:absolute;top:56px;right:-20px;width:20px;height:2px;background:linear-gradient(90deg,var(--evx-accent),var(--evx-charge));opacity:1!important;left:auto}}
.evx-h-lg .elementor-heading-title{font-size:clamp(24px,2.4vw,34px)!important;line-height:1.15!important}

/* Product catalogue buttons */
.evx-pbtns.e-con{margin-top:auto}
.evx-product.e-con{height:100%}
.evx-spot{filter:drop-shadow(0 40px 80px rgba(30,144,255,.35))}

/* Form: radio choices as selectable cards */
.evx-form .elementor-field-subgroup.evx-choice{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px;width:100%}
.evx-choice .elementor-field-option{margin:0!important;position:relative}
.evx-choice .elementor-field-option input{position:absolute;opacity:0;inset:0;cursor:pointer;margin:0;z-index:2}
.evx-choice .elementor-field-option label{display:block!important;padding:14px 16px!important;border-radius:12px;border:1px solid #22314F;background:#111C31;color:#EEF3FA;font-weight:600;transition:border-color .3s,background .3s,box-shadow .3s;cursor:pointer}
.evx-choice .elementor-field-option:hover label{border-color:rgba(30,144,255,.6)}
.evx-choice .elementor-field-option input:checked + label{border-color:#1E90FF;background:rgba(30,144,255,.16);box-shadow:0 0 0 3px rgba(30,144,255,.18)}
.evx-choice .elementor-field-option input:focus-visible + label{outline:2px solid #20E879;outline-offset:2px}
@media (max-width:767px){.evx-form .elementor-field-subgroup.evx-choice{grid-template-columns:1fr 1fr}.evx-choice .elementor-field-option label{padding:12px!important;font-size:14px}}
body.evx-quote-visible .evx-mcta{transform:translate3d(0,140%,0)!important}
.evx-form-card{box-shadow:0 60px 120px -60px rgba(30,144,255,.55)}
.evx-form .elementor-field-type-upload .elementor-field{background:#111C31;border:1px dashed #2A3B5E!important;border-radius:12px}

/* Popups (product details) */
.elementor-popup-modal .dialog-message{overflow-y:auto!important;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
.elementor-popup-modal .dialog-widget-content{box-shadow:0 60px 140px -40px rgba(0,0,0,.9)}
.elementor-popup-modal .evx-sticky{top:20px}

/* ---------- Mobile tuning ---------- */
@media (max-width:767px){
  :root{--evx-header-h:54px}
  .evx-media{border-radius:24px}
  .evx-media-arch{border-radius:180px 180px 24px 24px}
  html.evx-js .evx-r{transform:translate3d(0,28px,0)}
  html.evx-js .evx-r-left,html.evx-js .evx-r-right{transform:translate3d(0,28px,0)}
  .evx-tilt,.evx-tilt-r{transform:none}
  .evx-glow::after{width:140vw}
  .elementor-widget-button .elementor-button{min-height:52px}
}

/* ---------- Reduced motion ---------- */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
  html.evx-js .evx-r{opacity:1;transform:none;clip-path:none}
  .evx-wi{transform:none}
  .evx-marquee .elementor-icon-list-items{animation:none}
}/* End custom CSS */