/* Vimeva premium homepage components.
 * Structural CSS only. Visual values are emitted by the module as CSS vars so
 * every visual choice remains editable in the Divi module controls.
 */
.vimeva-hero-slider{position:relative;min-height:var(--vhs-height,430px);height:var(--vhs-height,430px);overflow:hidden;background:var(--vhs-base,#020912);isolation:isolate}
.vimeva-hero-slider,.vimeva-hero-slider *{box-sizing:border-box}
.vimeva-hero-slider:after{content:"";position:absolute;inset:0;z-index:3;pointer-events:none;background:radial-gradient(60% 90% at 72% 20%,var(--vhs-glow,rgba(18,112,255,.18)) 0%,transparent 62%),radial-gradient(90% 120% at 92% 50%,transparent 40%,var(--vhs-vignette,rgba(0,0,0,.22)) 100%)}
.vimeva-hero-slider__slides{position:absolute;inset:0}
.vimeva-hero-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity var(--vhs-transition,650ms) ease,visibility var(--vhs-transition,650ms) ease;z-index:1}
.vimeva-hero-slide:first-child,.vimeva-hero-slide.is-active{opacity:1;visibility:visible;z-index:2}
.vimeva-hero-slide__media{position:absolute;top:0;right:0;width:var(--vhs-media-width,72%);height:100%;overflow:hidden;background:var(--vhs-base,#020912)}
.vimeva-hero-slide__image,.vimeva-hero-slide__video,.vimeva-hero-slide__iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block}
.vimeva-hero-slide__image,.vimeva-hero-slide__video{object-fit:cover;transform:scale(1.012)}
.vimeva-hero-slide__iframe{pointer-events:none;transform:scale(1.04)}
.vimeva-hero-slide.is-youtube .vimeva-hero-slide__media{background:#000}
.vimeva-hero-slide__overlay{position:absolute;inset:0;background:linear-gradient(90deg,var(--vhs-overlay-left,rgba(2,9,18,1)) 0%,var(--vhs-overlay-left,rgba(2,9,18,1)) var(--vhs-overlay-left-stop,18%),var(--vhs-overlay-mid,rgba(2,9,18,.34)) var(--vhs-overlay-mid-stop,50%),var(--vhs-overlay-right,rgba(2,9,18,.16)) 100%)}
.vimeva-hero-slide__overlay:after{content:"";position:absolute;left:0;right:0;bottom:0;height:var(--vhs-bottom-fade,105px);background:linear-gradient(180deg,transparent 0%,var(--vhs-base,#020912) 100%)}
.vimeva-hero-slide__inner{position:relative;z-index:5;width:min(var(--vhs-inner,1548px),calc(100% - (var(--vhs-side,40px) * 2)));height:100%;margin:0 auto}
.vimeva-hero-slide__copy{width:min(var(--vhs-copy-width,760px),72%);padding-top:var(--vhs-copy-top,57px)}
.vimeva-hero-slide__eyebrow{color:var(--vhs-eyebrow,#c5cedb);font-size:var(--vhs-eyebrow-size,11px);font-weight:500;letter-spacing:.34em;line-height:1.3;text-transform:uppercase;margin-bottom:20px;text-shadow:0 1px 18px rgba(0,0,0,.35)}
.vimeva-hero-slide__title{margin:0!important;padding:0!important;color:var(--vhs-title,#fff)!important;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;font-size:var(--vhs-title-size,72px)!important;line-height:.96!important;letter-spacing:-.047em;font-weight:var(--vhs-title-weight,800)!important;text-shadow:0 2px 28px rgba(0,0,0,.25)}
.vimeva-hero-slide__title>span{display:block}
.vimeva-hero-slide__title strong{color:var(--vhs-accent,#1496ff);font-weight:inherit}
.vimeva-hero-slide__description{max-width:var(--vhs-body-width,520px);margin:17px 0 0!important;color:var(--vhs-body,#f1f3f6)!important;font-size:var(--vhs-body-size,18px)!important;line-height:1.43!important;font-weight:400;text-shadow:0 1px 20px rgba(0,0,0,.38)}
.vimeva-hero-slide__buttons{display:flex;gap:18px;flex-wrap:wrap;margin-top:26px}
.vimeva-hero-slide__button{min-height:var(--vhs-button-height,51px);padding:0 36px;border-radius:var(--vhs-button-radius,7px);display:inline-flex;align-items:center;justify-content:center;font-size:14px;font-weight:500;text-decoration:none!important;transition:transform .2s ease,filter .2s ease,background .2s ease,border-color .2s ease}
.vimeva-hero-slide__button--primary{min-width:269px;color:var(--vhs-primary-text,#fff)!important;background:var(--vhs-primary-bg,#1296ff);gap:24px;border:1px solid transparent;box-shadow:0 10px 30px rgba(15,144,255,.13)}
.vimeva-hero-slide__button--primary b{font-size:22px;font-weight:300;line-height:1}
.vimeva-hero-slide__button--secondary{min-width:190px;color:var(--vhs-secondary-text,#fff)!important;background:var(--vhs-secondary-bg,rgba(5,12,20,.28));border:1px solid var(--vhs-secondary-border,rgba(255,255,255,.75));backdrop-filter:blur(4px)}
.vimeva-hero-slide__button:hover{transform:translateY(-1px);filter:brightness(1.08)}
.vimeva-hero-slider__rail{position:absolute;z-index:8;right:var(--vhs-rail-right,40px);top:var(--vhs-rail-top,126px);width:104px;padding-left:19px;border-left:1px solid var(--vhs-rail-line,rgba(230,240,255,.78));display:flex;flex-direction:column;gap:25px}
.vimeva-hero-slider__rail-item{appearance:none;border:0;background:transparent;padding:0;text-align:left;color:var(--vhs-rail-inactive,#75839a);position:relative;display:grid;gap:4px;cursor:pointer;font-family:inherit}
.vimeva-hero-slider__rail-item:before{content:"";position:absolute;left:-20px;top:1px;width:2px;height:27px;background:transparent}
.vimeva-hero-slider__rail-item.is-active{color:var(--vhs-rail-active,#fff)}
.vimeva-hero-slider__rail-item.is-active:before{background:var(--vhs-accent,#1496ff)}
.vimeva-hero-slider__rail-item span{font-size:13px;font-weight:500;line-height:1}
.vimeva-hero-slider__rail-item small{font-size:11px;color:inherit;line-height:1.15}

.vimeva-service-card-module{position:relative;display:block;height:var(--vsc-height,207px);border:1px solid var(--vsc-border,rgba(143,161,182,.30));border-radius:var(--vsc-radius,7px);overflow:hidden;color:var(--vsc-title,#fff)!important;background-image:var(--vsc-image);background-size:cover;background-position:center;isolation:isolate;text-decoration:none!important}
.vimeva-service-card-module:before{content:"";position:absolute;inset:0;z-index:-2;background-image:var(--vsc-image);background-size:cover;background-position:center;transform:scale(1.01);transition:transform .35s ease}
.vimeva-service-card-module__shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,var(--vsc-overlay-top,rgba(2,8,14,.03)) 0%,rgba(2,8,14,.28) 40%,var(--vsc-overlay-bottom,#050d15) 100%)}
.vimeva-service-card-module__body{position:absolute;left:15px;right:15px;bottom:17px;display:grid;grid-template-columns:1fr 40px;grid-template-areas:"icon arrow" "title arrow" "text arrow";align-items:end;column-gap:8px}
.vimeva-service-card-module__icon{grid-area:icon;width:27px;height:27px;display:grid;place-items:center;margin-bottom:11px;color:var(--vsc-icon,#fff)}
.vimeva-service-card-module__icon svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
.vimeva-service-card-module strong{grid-area:title;color:var(--vsc-title,#fff);font-size:var(--vsc-title-size,17px);line-height:1.2;font-weight:600;letter-spacing:-.02em;margin-bottom:7px}
.vimeva-service-card-module__text{grid-area:text;max-width:188px;color:var(--vsc-text,#c7d0db);font-size:var(--vsc-text-size,12px);line-height:1.42}
.vimeva-service-card-module__arrow{grid-area:arrow;align-self:end;justify-self:end;width:35px;height:35px;border:1px solid var(--vsc-arrow-border,rgba(213,223,235,.45));border-radius:50%;display:grid;place-items:center;color:var(--vsc-arrow,#fff);font-size:21px;font-weight:300;line-height:1;transition:background .2s ease,border-color .2s ease,transform .2s ease}
.vimeva-service-card-module:hover:before{transform:scale(1.055)}
.vimeva-service-card-module:hover .vimeva-service-card-module__arrow{background:var(--vsc-arrow-hover,#128ff2);border-color:var(--vsc-arrow-hover,#128ff2);transform:translateX(2px)}

@media(max-width:980px){.vimeva-hero-slider{height:var(--vhs-height-tablet,520px);min-height:var(--vhs-height-tablet,520px)}.vimeva-hero-slide__media{width:84%}.vimeva-hero-slide__inner{width:calc(100% - 48px)}.vimeva-hero-slide__copy{width:80%;padding-top:46px}.vimeva-hero-slide__title{font-size:min(var(--vhs-title-size,72px),58px)!important}.vimeva-hero-slider__rail{right:24px}.vimeva-service-card-module{height:max(var(--vsc-height,207px),190px)}}
@media(max-width:767px){.vimeva-hero-slider{height:var(--vhs-height-phone,560px);min-height:var(--vhs-height-phone,560px)}.vimeva-hero-slide__media{width:100%;opacity:.75}.vimeva-hero-slide__inner{width:calc(100% - 32px)}.vimeva-hero-slide__copy{width:100%;padding-top:34px}.vimeva-hero-slide__eyebrow{font-size:9px;letter-spacing:.24em;margin-bottom:18px}.vimeva-hero-slide__title{font-size:min(var(--vhs-title-size,72px),46px)!important}.vimeva-hero-slide__description{font-size:min(var(--vhs-body-size,18px),16px)!important}.vimeva-hero-slide__buttons{gap:10px}.vimeva-hero-slide__button{width:100%;min-width:0}.vimeva-hero-slider__rail{display:none}}
.vimeva-hero-slide__picture{position:absolute;inset:0;display:block;width:100%;height:100%}.vimeva-hero-slide.is-copy-right .vimeva-hero-slide__copy{margin-left:auto;text-align:right}.vimeva-hero-slide.is-copy-right .vimeva-hero-slide__description{margin-left:auto!important}.vimeva-hero-slide.is-copy-right .vimeva-hero-slide__buttons{justify-content:flex-end}@media(max-width:767px){.vimeva-hero-slide.is-copy-right .vimeva-hero-slide__copy{text-align:left}.vimeva-hero-slide.is-copy-right .vimeva-hero-slide__buttons{justify-content:flex-start}}@media(prefers-reduced-motion:reduce){body:not(.vimeva-motion-never) .vimeva-hero-slide,body:not(.vimeva-motion-never) .vimeva-hero-slide__button,body:not(.vimeva-motion-never) .vimeva-service-card-module:before,body:not(.vimeva-motion-never) .vimeva-service-card-module__arrow{transition:none!important;animation:none!important}}
body.vimeva-motion-always .vimeva-hero-slide,body.vimeva-motion-always .vimeva-service-card,body.vimeva-motion-always .vimeva-service-card *{transition:none;animation:none}

/* Vimeva 2.3: multi-media items inside a single slide. */
.vimeva-hero-slide__media-sequence,.vimeva-hero-slide__media-item{position:absolute;inset:0;width:100%;height:100%}
.vimeva-hero-slide__media-item{opacity:0;visibility:hidden;transition:opacity .65s ease,transform .65s ease;transform:scale(1.015);overflow:hidden}
.vimeva-hero-slide__media-item.is-active{opacity:1;visibility:visible;transform:scale(1);z-index:2}
.vimeva-hero-slide__media-sequence[data-vimeva-media-transition="slide"] .vimeva-hero-slide__media-item{transform:translateX(3%)}
.vimeva-hero-slide__media-sequence[data-vimeva-media-transition="slide"] .vimeva-hero-slide__media-item.is-active{transform:translateX(0)}
.vimeva-hero-slide__media-sequence[data-vimeva-media-transition="zoom"] .vimeva-hero-slide__media-item{transform:scale(1.08)}
.vimeva-hero-slide__media-sequence[data-vimeva-media-transition="zoom"] .vimeva-hero-slide__media-item.is-active{transform:scale(1.01)}
.vimeva-hero-slide__media-item .vimeva-hero-slide__image,.vimeva-hero-slide__media-item .vimeva-hero-slide__video,.vimeva-hero-slide__media-item .vimeva-hero-slide__iframe{position:absolute;inset:0;width:100%;height:100%}

/* Vimeva 2.4.0 — Slideshow Pro controls */
.vimeva-hero-slider.is-rail-left .vimeva-hero-slider__rail{right:auto;left:var(--vhs-rail-right,40px);border-left:0;border-right:1px solid var(--vhs-rail-line,rgba(230,240,255,.78));padding-left:0;padding-right:19px;text-align:right}
.vimeva-hero-slider.is-rail-left .vimeva-hero-slider__rail-item{text-align:right}
.vimeva-hero-slider.is-rail-left .vimeva-hero-slider__rail-item:before{left:auto;right:-20px}
.vimeva-hero-slider__arrows{position:absolute;z-index:10;right:40px;bottom:34px;display:flex;gap:10px}
.vimeva-hero-slider.is-rail-left .vimeva-hero-slider__arrows{right:auto;left:40px}
.vimeva-hero-slider__arrows button{width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.32);background:rgba(3,12,21,.42);backdrop-filter:blur(8px);color:#fff;font:400 20px/1 Inter,system-ui,sans-serif;cursor:pointer;transition:.2s ease}
.vimeva-hero-slider__arrows button:hover{border-color:var(--vhs-accent,#1496ff);background:rgba(3,12,21,.7);transform:translateY(-1px)}
.vimeva-hero-slider__arrows button:disabled{opacity:.28;cursor:default;transform:none}
.vimeva-hero-slider__dots{position:absolute;z-index:10;left:50%;bottom:28px;transform:translateX(-50%);display:flex;gap:9px;align-items:center}
.vimeva-hero-slider__dots button,.vimeva-hero-slide__media-dots button{appearance:none;width:7px;height:7px;border:0;padding:0;border-radius:50%;background:rgba(255,255,255,.38);cursor:pointer;transition:.2s ease}
.vimeva-hero-slider__dots button.is-active,.vimeva-hero-slide__media-dots button.is-active{width:22px;border-radius:99px;background:var(--vhs-accent,#1496ff)}
.vimeva-hero-slider__progress{position:absolute;left:0;right:0;bottom:0;height:2px;background:rgba(255,255,255,.09);z-index:12;overflow:hidden}
.vimeva-hero-slider__progress span{display:block;width:0;height:100%;background:var(--vhs-accent,#1496ff);transition:width var(--vhs-transition,650ms) ease}
.vimeva-hero-slide__media-dots{position:absolute;z-index:5;right:24px;bottom:20px;display:flex;gap:7px;align-items:center;padding:8px 10px;border-radius:999px;background:rgba(3,10,18,.38);backdrop-filter:blur(7px)}
.vimeva-hero-slide__media-dots button{width:6px;height:6px}
.vimeva-hero-slide__media-dots button.is-active{width:16px}
.vimeva-hero-slide__title{color:var(--vhs-title-slide,var(--vhs-title,#fff))!important}
.vimeva-hero-slide__title strong{color:var(--vhs-accent-slide,var(--vhs-accent,#1496ff))}
.vimeva-hero-slide__description{color:var(--vhs-body-slide,var(--vhs-body,#f1f3f6))!important}
.vimeva-hero-slide.is-copy-center .vimeva-hero-slide__copy{padding-top:0;position:absolute;top:50%;transform:translateY(-50%)}
.vimeva-hero-slide.is-copy-bottom .vimeva-hero-slide__copy{padding-top:0;position:absolute;bottom:48px}
.vimeva-hero-slide.is-copy-right.is-copy-center .vimeva-hero-slide__copy,.vimeva-hero-slide.is-copy-right.is-copy-bottom .vimeva-hero-slide__copy{right:0}
@media(max-width:980px){.vimeva-hero-slider__arrows{right:24px}.vimeva-hero-slider.is-rail-left .vimeva-hero-slider__arrows{left:24px}.vimeva-hero-slide.is-copy-bottom .vimeva-hero-slide__copy{bottom:36px}}
@media(max-width:767px){.vimeva-hero-slider__arrows{display:none}.vimeva-hero-slider__dots{bottom:18px}.vimeva-hero-slide__media-dots{right:14px;bottom:14px}.vimeva-hero-slide.is-copy-center .vimeva-hero-slide__copy{position:relative;top:auto;transform:none;padding-top:34px}.vimeva-hero-slide.is-copy-bottom .vimeva-hero-slide__copy{position:absolute;left:0;right:0;bottom:40px}.vimeva-hero-slide.is-copy-right.is-copy-bottom .vimeva-hero-slide__copy{right:0}}
