/* VMG custom styles (extraidos dos blocos <style> inline do site estatico) */

:root{ --base--light:#FFFFFF; --base-tint--light:#F4EDE0; }
      .mxd-hero-07__top{overflow:visible;}
      .vmg-hero-float{
        position:absolute;right:5%;left:auto;top:61%;transform:translateY(-50%);
        width:clamp(132px,15.5vw,228px);z-index:2;pointer-events:none;
      }
      .vmg-hero-float img{width:100%;height:auto;display:block;
        filter:drop-shadow(0 30px 52px rgba(11,16,36,.26));}
      @media(max-width:991px){.vmg-hero-float{right:2%;width:34vw;}}

      /* VMG loader: rotating + floating logo with looping tagline */
      .loader__count{display:none !important;}
      .loader__content{overflow:visible;}
      .vmg-loader{display:flex;flex-direction:column;align-items:center;gap:34px;}
      .vmg-loader__logo{
        width:clamp(104px,12vw,156px);
        perspective:760px;
        animation:vmgFloat 2.6s ease-in-out infinite;
      }
      .vmg-loader__logo img{
        width:100%;height:auto;display:block;
        animation:vmgSpin 6s linear infinite;
        filter:drop-shadow(0 16px 26px rgba(11,16,36,.20));
      }
      @keyframes vmgFloat{
        0%,100%{transform:translateY(-9px);}
        50%{transform:translateY(9px);}
      }
      @keyframes vmgSpin{
        0%{transform:rotateY(0deg);}
        100%{transform:rotateY(360deg);}
      }
      .vmg-loader__text{overflow:hidden;padding:2px 0;}
      .vmg-loader__text span{
        display:block;
        font:var(--fw-medium) clamp(2rem,3.2vw,3rem)/1 var(--_font-accent),sans-serif;
        letter-spacing:.01em;color:var(--t-bright);white-space:nowrap;
        animation:vmgReveal 3s ease-in-out infinite;
      }
      @keyframes vmgReveal{
        0%{transform:translateY(115%);opacity:0;}
        16%,70%{transform:translateY(0);opacity:1;}
        90%,100%{transform:translateY(-115%);opacity:0;}
      }

      /* VMG spotlight slider: auto-rotating announcement box after the pillars */
      .vmg-slider{
        position:relative;overflow:hidden;border-radius:22px;
        background:linear-gradient(135deg,#0b1024 0%,#141a3a 55%,#1d1340 100%);
        padding:clamp(34px,5vw,68px);min-height:300px;
        display:flex;flex-direction:column;justify-content:center;
        box-shadow:0 30px 60px rgba(11,16,36,.16);
      }
      .vmg-slider__glow{
        position:absolute;width:60%;aspect-ratio:1;border-radius:50%;
        top:-30%;right:-12%;pointer-events:none;
        background:radial-gradient(circle,rgba(99,102,241,.55) 0%,rgba(99,102,241,0) 70%);
        filter:blur(36px);
        animation:vmgGlowPulse 3.4s ease-in-out infinite;
      }
      @keyframes vmgGlowPulse{
        0%,100%{opacity:.45;transform:scale(1);}
        50%{opacity:.9;transform:scale(1.18);}
      }
      .vmg-slider__track{position:relative;z-index:1;}
      .vmg-slide{
        display:none;
        animation:vmgSlideIn .6s ease both;
      }
      .vmg-slide.is-active{display:block;}
      @keyframes vmgSlideIn{
        0%{opacity:0;transform:translateY(16px);}
        100%{opacity:1;transform:translateY(0);}
      }
      .vmg-slide__tag{
        display:inline-block;margin-bottom:18px;
        padding:7px 16px;border-radius:999px;
        border:1px solid rgba(99,102,241,.55);
        font:var(--fw-medium) .82rem/1 var(--_font-body),sans-serif;
        letter-spacing:.14em;text-transform:uppercase;color:#a5b4fc;
        animation:vmgTagBlink 2.6s ease-in-out infinite;
      }
      @keyframes vmgTagBlink{
        0%,100%{box-shadow:0 0 0 0 rgba(99,102,241,0);border-color:rgba(99,102,241,.5);}
        50%{box-shadow:0 0 22px 2px rgba(99,102,241,.5);border-color:rgba(165,180,252,.95);}
      }
      .vmg-slide__title{
        margin:0 0 14px;color:#f4ede0;
        font:var(--fw-semi-bold) clamp(1.6rem,3vw,2.6rem)/1.16 var(--_font-accent),sans-serif;
        max-width:20ch;
      }
      .vmg-slide__text{
        margin:0 0 26px;color:rgba(244,237,224,.74);
        font-size:clamp(1rem,1.3vw,1.12rem);line-height:1.55;max-width:46ch;
      }
      .vmg-slide__link{
        display:inline-flex;align-items:center;gap:9px;
        color:#22d3ee;font:var(--fw-medium) 1rem/1 var(--_font-body),sans-serif;
        text-decoration:none;transition:gap .2s ease;
      }
      .vmg-slide__link:hover{gap:15px;}
      .vmg-slider__dots{
        position:relative;z-index:1;display:flex;gap:10px;margin-top:34px;
      }
      .vmg-slider__dots button{
        width:32px;height:4px;border:0;border-radius:999px;padding:0;cursor:pointer;
        background:rgba(244,237,224,.22);transition:background .25s ease;
      }
      .vmg-slider__dots button.is-active{background:#22d3ee;}
      @media(max-width:991px){
        .vmg-slide__title{max-width:none;}
        .vmg-slide__text{max-width:none;}
      }
      @media(prefers-reduced-motion:reduce){
        .vmg-slider__glow,.vmg-slide__tag{animation:none;}
      }

      /* Blog preview cards: full poster image, no card, floating on the white site */
      .mxd-blog-preview__media{
        height:auto !important;
        border-radius:0 !important;
        background:transparent !important;
        box-shadow:none !important;
        overflow:visible !important;
      }
      .mxd-blog-preview__image{
        height:auto !important;
        border-radius:0 !important;
        background:none !important;
        background-image:none !important;
        box-shadow:none !important;
        overflow:visible !important;
      }
      .mxd-blog-preview__image img{
        height:auto !important;width:100%;display:block;
        object-fit:contain !important;
        border-radius:0 !important;
      }
      .mxd-blog-preview__item{
        background:transparent !important;
        box-shadow:none !important;
      }
      .mxd-blog-preview__tags{
        position:static !important;
        padding:1.4rem 0 0 !important;
        width:100%;
      }
      .mxd-blog-preview__tags .tag{
        background:#1a2440;color:#fff;
      }

      /* Parallax Divider: show the full Aura image, no crop */
      .mxd-divider{height:auto !important;}
      .mxd-divider__video{height:auto !important;}
      .mxd-divider__video img{
        width:100% !important;height:auto !important;
        object-fit:contain !important;display:block;
      }

      /* CTA promo: growth chart background that "grows" on scroll */
      .mxd-promo__bg{
        background-image:none !important;
        background:#0a1020 !important;
        overflow:hidden;
      }
      .vmg-growth{
        position:absolute;inset:0;
        overflow:hidden;
      }
      .vmg-growth img{
        position:absolute;inset:0;
        width:100%;height:100%;
        object-fit:cover;object-position:center bottom;
        /* start: collapsed to the baseline (chart not grown yet) */
        clip-path:inset(100% 0 0 0);
        transform:scale(1.04);
        transition:clip-path 1.6s cubic-bezier(.16,.84,.34,1),
                   transform 1.8s cubic-bezier(.16,.84,.34,1);
      }
      .vmg-growth.is-grown img{
        /* grown: fully revealed from the bottom up */
        clip-path:inset(0 0 0 0);
        transform:scale(1);
      }
      @media(prefers-reduced-motion:reduce){
        .vmg-growth img{transition:none;clip-path:inset(0 0 0 0);transform:none;}
      }

      /* VMG header: real full lockup logo (icon + wordmark in one image) */
      .mxd-logo__image{width:auto;height:5rem;}
      @media(min-width:768px){.mxd-logo__image{height:6.7rem;}}
      .mxd-header__logo{overflow:visible;}

      /* VMG slider button: solid cyan pill, dark text. Stays the same in
         both light and dark modes (this one she explicitly liked as cyan). */
      .vmg-slider__cta{
        position:absolute;right:clamp(28px,4vw,56px);top:50%;
        transform:translateY(-50%);z-index:3;
        display:inline-flex;align-items:center;gap:10px;
        padding:17px 28px;border-radius:999px;
        font:var(--fw-semi-bold) 1rem/1 var(--_font-body),sans-serif;
        text-decoration:none;white-space:nowrap;
        background:#22d3ee;color:#0b1024;border:none;
        box-shadow:0 12px 28px rgba(0,0,0,.35);
        transition:transform .2s ease,background .2s ease;
      }
      .vmg-slider__cta:hover{
        transform:translateY(-50%) scale(1.04);
        background:#3edcf0;
      }
      .vmg-slider__cta i{font-size:1.05rem;}
      @media(max-width:991px){
        .vmg-slider__cta{
          position:static;transform:none;margin-top:26px;
          align-self:flex-start;
        }
        .vmg-slider__cta:hover{transform:scale(1.04);}
      }

      /* VMG CTA promo images: blend into the background, no pasted-rectangle look */
      .mxd-promo .promo-image{
        mix-blend-mode:screen;
        -webkit-mask-image:radial-gradient(ellipse at center,#000 52%,transparent 92%);
                mask-image:radial-gradient(ellipse at center,#000 52%,transparent 92%);
      }

      /* Final CTA button: solid pill on the right of the panel.
         White by default, switches to cyan when the theme toggle flips to dark.
         No white glow around it (that gave the hollow / "vazado" look). */
      .mxd-promo__controls{
        position:absolute !important;
        right:clamp(28px,5vw,80px);
        bottom:clamp(28px,5vw,80px);
        z-index:5;
      }
      .mxd-promo__controls .btn-additional{
        background:#ffffff;
        border:none;
        color:#0b1024;
        box-shadow:0 12px 28px rgba(0,0,0,.35);
      }
      [color-scheme="dark"] .mxd-promo__controls .btn-additional{
        background:#22d3ee;
        color:#0b1024;
      }
      .mxd-promo__controls .btn-additional:hover{
        background:#F4EDE0;
        color:#0b1024;
      }
      [color-scheme="dark"] .mxd-promo__controls .btn-additional:hover{
        background:#3edcf0;
      }
      .mxd-promo__controls .btn-additional .btn-caption,
      .mxd-promo__controls .btn-additional i{color:inherit;}

      /* VMG legal pages (Privacy / Terms) */
      .vmg-legal{max-width:780px;margin:0 auto;}
      .vmg-legal__updated{opacity:.55;font-size:.95rem;margin:0 0 2.4rem;}
      .vmg-legal h2{
        margin:2.6rem 0 .9rem;
        font:var(--fw-semi-bold) clamp(1.3rem,2.2vw,1.75rem)/1.25 var(--_font-accent),sans-serif;
      }
      .vmg-legal h2:first-of-type{margin-top:0;}
      .vmg-legal p,.vmg-legal li{line-height:1.7;}
      .vmg-legal ul{margin:.6rem 0 1.3rem 1.25rem;}
      .vmg-legal a{text-decoration:underline;}

      /* VMG cookie consent banner (LGPD/GDPR/CCPA friendly) */
      .vmg-cookie{
        position:fixed;
        left:clamp(16px,3vw,32px);
        right:clamp(16px,3vw,32px);
        bottom:clamp(16px,3vw,32px);
        z-index:9999;
        display:flex;justify-content:center;
        pointer-events:none;
      }
      .vmg-cookie[hidden]{display:none;}
      .vmg-cookie__inner{
        max-width:820px;width:100%;
        display:flex;align-items:center;gap:22px;
        padding:18px 22px;
        background:#0b1024;color:#F4EDE0;
        border-radius:18px;
        box-shadow:0 18px 50px rgba(0,0,0,.45);
        pointer-events:auto;
        flex-wrap:wrap;
      }
      .vmg-cookie__text{
        margin:0;flex:1;min-width:240px;
        font-size:.92rem;line-height:1.5;color:#F4EDE0;
      }
      .vmg-cookie__text a{color:#22d3ee;text-decoration:underline;}
      .vmg-cookie__actions{display:flex;gap:10px;flex-shrink:0;}
      .vmg-cookie__btn{
        padding:11px 22px;border-radius:999px;
        border:none;cursor:pointer;white-space:nowrap;
        font:var(--fw-semi-bold) .92rem/1 var(--_font-body),sans-serif;
        transition:transform .15s ease,background .15s ease;
      }
      .vmg-cookie__btn--solid{background:#22d3ee;color:#0b1024;}
      .vmg-cookie__btn--solid:hover{background:#3edcf0;transform:scale(1.04);}
      .vmg-cookie__btn--ghost{
        background:transparent;color:#F4EDE0;
        border:1px solid rgba(244,237,224,.4);
      }
      .vmg-cookie__btn--ghost:hover{background:rgba(244,237,224,.08);}
      @media(max-width:640px){
        .vmg-cookie__inner{padding:16px;border-radius:14px;}
        .vmg-cookie__actions{width:100%;justify-content:flex-end;}
      }

      /* VMG play button: pulsing cyan circle, used to trigger video lightbox.
         Two variants: --hero (overlay on the hero globe image) and --inline
         (sits inline next to text on the services headline). */
      .vmg-play{
        appearance:none;background:none;border:none;padding:0;cursor:pointer;
        color:#0b1024;font:inherit;
      }
      .vmg-play__icon{
        position:relative;z-index:2;
        display:inline-flex;align-items:center;justify-content:center;
        width:100%;height:100%;border-radius:50%;
        background:#22d3ee;color:#0b1024;
        box-shadow:0 12px 28px rgba(0,0,0,.35);
        transition:background .2s ease,transform .2s ease;
      }
      .vmg-play__icon i{font-size:1.4rem;margin-left:3px;}
      .vmg-play:hover .vmg-play__icon{background:#3edcf0;transform:scale(1.06);}
      .vmg-play__ring{
        position:absolute;inset:0;border-radius:50%;
        border:2px solid rgba(34,211,238,.55);
        animation:vmg-play-pulse 2.4s ease-out infinite;
        pointer-events:none;
      }
      .vmg-play__ring--2{animation-delay:1.2s;}
      @keyframes vmg-play-pulse{
        0%{transform:scale(1);opacity:.65;}
        80%{transform:scale(1.55);opacity:0;}
        100%{transform:scale(1.55);opacity:0;}
      }
      @media(prefers-reduced-motion:reduce){
        .vmg-play__ring{animation:none;opacity:.5;}
      }

      /* Hero play button: lives in a zero-height wrapper at the top of the
         circle area, so it sits in the empty space between the rolling text
         and the globe without pushing any layout. Same behaviour on mobile. */
      .vmg-hero-play-wrap{
        height:0;width:100%;
        display:flex;justify-content:center;
        position:relative;z-index:5;
      }
      .vmg-play--hero-top{
        position:relative;
        width:clamp(56px,5.5vw,76px);height:clamp(56px,5.5vw,76px);
        margin-top:8px;
      }
      .vmg-play--hero-top .vmg-play__icon i{font-size:clamp(1rem,1.5vw,1.3rem);}
      @media(max-width:991px){
        .vmg-play--hero-top{
          width:62px;height:62px;
          margin-top:18px;
        }
      }

      /* Inline variant: button + label, on the services headline */
      .vmg-play--inline{
        display:inline-flex;align-items:center;gap:16px;
        margin-top:1.8rem;color:inherit;
      }
      .vmg-play--inline .vmg-play__circle{
        position:relative;display:inline-block;
        width:62px;height:62px;flex-shrink:0;
      }
      .vmg-play--inline .vmg-play__label{
        font:var(--fw-semi-bold) 1rem/1 var(--_font-body),sans-serif;
        color:currentColor;
      }
      .vmg-play--inline:hover .vmg-play__label{text-decoration:underline;}

      /* VMG Video Lightbox: full-screen modal overlay */
      .vmg-vlb{
        position:fixed;inset:0;z-index:10000;
        display:flex;align-items:center;justify-content:center;
        padding:clamp(16px,4vw,40px);
        background:rgba(5,8,18,.92);
        opacity:0;transition:opacity .24s ease;
      }
      .vmg-vlb[hidden]{display:none;}
      .vmg-vlb.is-open{opacity:1;}
      .vmg-vlb__stage{
        position:relative;width:100%;max-width:1100px;
        aspect-ratio:16/9;
        background:#000;border-radius:14px;overflow:hidden;
        box-shadow:0 30px 80px rgba(0,0,0,.6);
        transform:scale(.96);transition:transform .24s ease;
      }
      .vmg-vlb.is-open .vmg-vlb__stage{transform:scale(1);}
      .vmg-vlb__video{
        width:100%;height:100%;display:block;background:#000;
      }
      .vmg-vlb__close{
        position:absolute;top:clamp(14px,3vw,28px);right:clamp(14px,3vw,28px);
        width:46px;height:46px;border-radius:50%;
        background:#fff;color:#0b1024;border:none;cursor:pointer;
        display:flex;align-items:center;justify-content:center;
        box-shadow:0 8px 22px rgba(0,0,0,.4);
        transition:transform .15s ease,background .15s ease;
      }
      .vmg-vlb__close i{font-size:1.2rem;}
      .vmg-vlb__close:hover{background:#22d3ee;transform:scale(1.06);}
