.elementor-82 .elementor-element.elementor-element-8fe2879{--display:flex;--min-height:1137px;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-end;--align-items:center;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:100px;--padding-bottom:100px;--padding-left:0px;--padding-right:0px;}.elementor-82 .elementor-element.elementor-element-8fe2879:not(.elementor-motion-effects-element-type-background), .elementor-82 .elementor-element.elementor-element-8fe2879 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000;background-image:url("https://ricomartins.com.br/wp-content/uploads/2025/12/background-hero-section-4.jpg");background-position:74% 0px;background-repeat:no-repeat;background-size:cover;}.elementor-82 .elementor-element.elementor-element-f0bc860{z-index:2;}.elementor-82 .elementor-element.elementor-element-c28e297{width:var( --container-widget-width, 988px );max-width:988px;--container-widget-width:988px;--container-widget-flex-grow:0;}.elementor-82 .elementor-element.elementor-element-c28e297 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-82 .elementor-element.elementor-element-c28e297.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-82 .elementor-element.elementor-element-c28e297 .elementor-image-box-wrapper{text-align:center;}.elementor-82 .elementor-element.elementor-element-c28e297.elementor-position-right .elementor-image-box-img{margin-left:30px;}.elementor-82 .elementor-element.elementor-element-c28e297.elementor-position-left .elementor-image-box-img{margin-right:30px;}.elementor-82 .elementor-element.elementor-element-c28e297.elementor-position-top .elementor-image-box-img{margin-bottom:30px;}.elementor-82 .elementor-element.elementor-element-c28e297 .elementor-image-box-title{margin-bottom:25px;font-family:"Inter Tight", Sans-serif;font-size:55px;font-weight:500;line-height:55px;letter-spacing:1px;color:#FFFFFF;}.elementor-82 .elementor-element.elementor-element-c28e297 .elementor-image-box-wrapper .elementor-image-box-img{width:300px;}.elementor-82 .elementor-element.elementor-element-c28e297 .elementor-image-box-img img{transition-duration:0.3s;}.elementor-82 .elementor-element.elementor-element-c28e297 .elementor-image-box-description{font-family:"Inter", Sans-serif;font-size:18px;font-weight:400;line-height:26px;color:#FFFFFFD9;}.elementor-82 .elementor-element.elementor-element-c326e4d > .elementor-widget-container{margin:045px 0px 0px 0px;padding:0px 0px 0px 0px;border-style:solid;border-width:10px 10px 10px 10px;border-color:#FFFFFF1A;border-radius:30px 30px 30px 30px;}.elementor-82 .elementor-element.elementor-element-c326e4d .elementor-wrapper{--video-aspect-ratio:1.77777;}.elementor-82 .elementor-element.elementor-element-7491551 > .elementor-widget-container{margin:45px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-82 .elementor-element.elementor-element-7491551.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-82 .elementor-element.elementor-element-7491551 .elementor-button .elementor-button-content-wrapper{justify-content:center;}.elementor-82 .elementor-element.elementor-element-abbf1fb{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:#FFFFFF0D;--border-color:#FFFFFF0D;--border-radius:30px 30px 30px 30px;--margin-top:120px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:75px;--padding-bottom:75px;--padding-left:80px;--padding-right:80px;}.elementor-82 .elementor-element.elementor-element-abbf1fb:not(.elementor-motion-effects-element-type-background), .elementor-82 .elementor-element.elementor-element-abbf1fb > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF1A;}.elementor-82 .elementor-element.elementor-element-0b6511e{width:var( --container-widget-width, 919px );max-width:919px;--container-widget-width:919px;--container-widget-flex-grow:0;}.elementor-82 .elementor-element.elementor-element-0b6511e > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-82 .elementor-element.elementor-element-0b6511e.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-82 .elementor-element.elementor-element-0b6511e .elementor-image-box-wrapper{text-align:center;}.elementor-82 .elementor-element.elementor-element-0b6511e .elementor-image-box-title{margin-bottom:25px;font-family:"Inter Tight", Sans-serif;font-size:55px;font-weight:500;line-height:55px;letter-spacing:1px;color:#FFFFFF;}.elementor-82 .elementor-element.elementor-element-0b6511e .elementor-image-box-description{font-family:"Inter", Sans-serif;font-size:18px;font-weight:300;line-height:26px;color:#FFFFFFD9;}.elementor-82 .elementor-element.elementor-element-79e50d7 > .elementor-widget-container{margin:45px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-82 .elementor-element.elementor-element-79e50d7.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-82 .elementor-element.elementor-element-79e50d7 .elementor-button .elementor-button-content-wrapper{justify-content:center;}.elementor-82 .elementor-element.elementor-element-204f97f{--display:flex;--min-height:100px;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:center;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:30px;--padding-bottom:30px;--padding-left:0px;--padding-right:0px;}.elementor-82 .elementor-element.elementor-element-204f97f:not(.elementor-motion-effects-element-type-background), .elementor-82 .elementor-element.elementor-element-204f97f > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#0E3A60;}.elementor-82 .elementor-element.elementor-element-a38a33b{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-82 .elementor-element.elementor-element-b2a49c6{text-align:left;}.elementor-82 .elementor-element.elementor-element-b2a49c6 img{width:10vw;}.elementor-82 .elementor-element.elementor-element-a047a56{--display:flex;--align-items:flex-end;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-82 .elementor-element.elementor-element-a047a56.e-con{--order:99999 /* order end hack */;}.elementor-82 .elementor-element.elementor-element-25f315b{--grid-template-columns:repeat(0, auto);--icon-size:20px;--grid-column-gap:8px;--grid-row-gap:0px;}.elementor-82 .elementor-element.elementor-element-25f315b .elementor-widget-container{text-align:center;}.elementor-82 .elementor-element.elementor-element-25f315b .elementor-social-icon{background-color:#FFFFFF;}.elementor-82 .elementor-element.elementor-element-25f315b .elementor-social-icon i{color:#0E3A60;}.elementor-82 .elementor-element.elementor-element-25f315b .elementor-social-icon svg{fill:#0E3A60;}.elementor-82 .elementor-element.elementor-element-25f315b .elementor-icon{border-radius:9px 9px 9px 9px;}.elementor-82 .elementor-element.elementor-element-04bcae1{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-82 .elementor-element.elementor-element-cfe248c{text-align:right;}.elementor-82 .elementor-element.elementor-element-cfe248c .elementor-heading-title{font-family:"Inter", Sans-serif;font-size:16px;font-weight:400;color:#FFFFFF;}@media(max-width:1024px){.elementor-82 .elementor-element.elementor-element-8fe2879{--min-height:850px;--justify-content:center;}.elementor-82 .elementor-element.elementor-element-8fe2879:not(.elementor-motion-effects-element-type-background), .elementor-82 .elementor-element.elementor-element-8fe2879 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-position:0% 0px;}.elementor-82 .elementor-element.elementor-element-c28e297{width:var( --container-widget-width, 656px );max-width:656px;--container-widget-width:656px;--container-widget-flex-grow:0;}.elementor-82 .elementor-element.elementor-element-c28e297 .elementor-image-box-wrapper .elementor-image-box-img{width:250px;}.elementor-82 .elementor-element.elementor-element-c28e297 .elementor-image-box-title{font-size:45px;line-height:55px;}.elementor-82 .elementor-element.elementor-element-c28e297 .elementor-image-box-description{font-size:16px;}.elementor-82 .elementor-element.elementor-element-7491551 > .elementor-widget-container{margin:35px 0px 0px 0px;}.elementor-82 .elementor-element.elementor-element-abbf1fb{--margin-top:80px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:50px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;}.elementor-82 .elementor-element.elementor-element-0b6511e{width:var( --container-widget-width, 508px );max-width:508px;--container-widget-width:508px;--container-widget-flex-grow:0;}.elementor-82 .elementor-element.elementor-element-0b6511e .elementor-image-box-title{font-size:35px;line-height:45px;}.elementor-82 .elementor-element.elementor-element-0b6511e .elementor-image-box-description{font-size:16px;}.elementor-82 .elementor-element.elementor-element-79e50d7 > .elementor-widget-container{margin:35px 0px 0px 0px;}.elementor-82 .elementor-element.elementor-element-204f97f{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--gap:40px 20px;--row-gap:40px;--column-gap:20px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:5vw;--padding-bottom:5vw;--padding-left:5vw;--padding-right:5vw;}.elementor-82 .elementor-element.elementor-element-b2a49c6{text-align:center;}.elementor-82 .elementor-element.elementor-element-b2a49c6 img{width:25vw;}.elementor-82 .elementor-element.elementor-element-a047a56{--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-82 .elementor-element.elementor-element-04bcae1.e-con{--order:99999 /* order end hack */;}.elementor-82 .elementor-element.elementor-element-cfe248c{text-align:center;}.elementor-82 .elementor-element.elementor-element-cfe248c .elementor-heading-title{font-size:16px;line-height:1.2em;}}@media(max-width:1024px) and (min-width:768px){.elementor-82 .elementor-element.elementor-element-8fe2879{--content-width:600px;}}@media(max-width:767px){.elementor-82 .elementor-element.elementor-element-8fe2879{--content-width:90%;--min-height:802px;--padding-top:80px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-82 .elementor-element.elementor-element-8fe2879:not(.elementor-motion-effects-element-type-background), .elementor-82 .elementor-element.elementor-element-8fe2879 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-position:top center;}.elementor-82 .elementor-element.elementor-element-c28e297 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-82 .elementor-element.elementor-element-c28e297 .elementor-image-box-img{margin-bottom:0px;}.elementor-82 .elementor-element.elementor-element-c28e297.elementor-position-right .elementor-image-box-img{margin-left:0px;}.elementor-82 .elementor-element.elementor-element-c28e297.elementor-position-left .elementor-image-box-img{margin-right:0px;}.elementor-82 .elementor-element.elementor-element-c28e297.elementor-position-top .elementor-image-box-img{margin-bottom:0px;}.elementor-82 .elementor-element.elementor-element-c28e297 .elementor-image-box-wrapper .elementor-image-box-img{width:180px;}.elementor-82 .elementor-element.elementor-element-c28e297 .elementor-image-box-title{font-size:28px;line-height:1.2em;}.elementor-82 .elementor-element.elementor-element-c28e297 .elementor-image-box-description{font-size:15px;line-height:1.3em;}.elementor-82 .elementor-element.elementor-element-c326e4d > .elementor-widget-container{margin:30px 0px 0px 0px;border-width:5px 5px 5px 5px;}.elementor-82 .elementor-element.elementor-element-abbf1fb{--padding-top:30px;--padding-bottom:30px;--padding-left:30px;--padding-right:30px;}.elementor-82 .elementor-element.elementor-element-0b6511e > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-82 .elementor-element.elementor-element-0b6511e .elementor-image-box-title{font-size:28px;line-height:1.2em;}.elementor-82 .elementor-element.elementor-element-0b6511e .elementor-image-box-description{font-size:15px;line-height:1.3em;}.elementor-82 .elementor-element.elementor-element-79e50d7 > .elementor-widget-container{margin:15px 0px 0px 0px;}.elementor-82 .elementor-element.elementor-element-204f97f{--gap:35px 20px;--row-gap:35px;--column-gap:20px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:10vw;--padding-bottom:10vw;--padding-left:5vw;--padding-right:5vw;}.elementor-82 .elementor-element.elementor-element-b2a49c6 img{width:50vw;}.elementor-82 .elementor-element.elementor-element-cfe248c{text-align:center;}.elementor-82 .elementor-element.elementor-element-cfe248c .elementor-heading-title{font-size:14px;line-height:1.5em;}}/* Start custom CSS for html, class: .elementor-element-f0bc860 */.elementor-82 .elementor-element.elementor-element-f0bc860{height:100vh; user-select:none; pointer-events:none; position:fixed; top:0; left:0;}

.linhaslegais{
    display: flex;
    justify-content: space-evenly;
    position: fixed;
    top: 0;
    left: 0;
    height: 100vh;
    width: 100vw;
    pointer-events: none;
    user-select: none;
    z-index: 1;
    opacity: .5;
}
    
.linha{width: 1px;
    height: 100%;
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.1) 5px, transparent 5px, transparent);
    background-size: 100% 10px;
    position: relative;}/* End custom CSS */
/* Start custom CSS for image-box, class: .elementor-element-c28e297 */.elementor-82 .elementor-element.elementor-element-c28e297 h1{
 background: linear-gradient(90deg, #FFF 0%, #829DD8 113.14%);
background-clip: text;
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}

.elementor-82 .elementor-element.elementor-element-c28e297{
    opacity: 0;
    filter: blur(5px);
    transform: translatey(30px);
    transition-delay: 0.5s !important;
}/* End custom CSS */
/* Start custom CSS for video, class: .elementor-element-c326e4d */.elementor-82 .elementor-element.elementor-element-c326e4d{
    opacity: 0;
    filter: blur(5px);
    transform: translatey(30px);
    transition-delay: 0.5s !important;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-7491551 */:root {
  --shiny-cta-bg: #003960 /*fundo do botão*/ !important;
  --shiny-cta-bg-subtle: #005792 !important; /*borda escura do botão*/
  --shiny-cta-fg: #ffffff !important;
  --shiny-cta-highlight: #0277bc !important; /*luz do botão*/
  --shiny-cta-highlight-subtle: # !important;
}

@property --gradient-angle {
  syntax: "<angle>";
  initial-value: 0deg;
  inherits: false;
}

@property --gradient-angle-offset {
  syntax: "<angle>";
  initial-value: 0deg;
  inherits: false;
}

@property --gradient-percent {
  syntax: "<percentage>";
  initial-value: 5%;
  inherits: false;
}

@property --gradient-shine {
  syntax: "<color>";
  initial-value: white;
  inherits: false;
}

.elementor-button {
  --animation: gradient-angle linear infinite !important;
  --duration: 3s !important; /*tempo em que o círculo brilhante demora para completar a sua volta*/
  --shadow-size: 2px !important;
  isolation: isolate !important;
  position: relative !important;
  overflow: hidden !important;
  cursor: pointer !important;
  outline-offset: 4px !important;
  padding: 1.25rem 1.4rem !important;
  font-family: "Inter", sans-serif !important; /*Puxar a fonte*/
  font-weight: normal;
  font-size: 1.2rem !important; /*tamanho da fonte*/
  line-height: 1.2 !important;
  border: 1px solid transparent !important;
  border-radius: 15px !important;
  color: var(--shiny-cta-fg) !important;
  background: linear-gradient(var(--shiny-cta-bg), var(--shiny-cta-bg)) padding-box,
    conic-gradient(
      from calc(var(--gradient-angle) - var(--gradient-angle-offset)),
      transparent,
      var(--shiny-cta-highlight) var(--gradient-percent),
      var(--gradient-shine) calc(var(--gradient-percent) * 2),
      var(--shiny-cta-highlight) calc(var(--gradient-percent) * 3),
      transparent calc(var(--gradient-percent) * 4)
    ) border-box !important;
  box-shadow: inset 0 0 0 1px var(--shiny-cta-bg-subtle) !important;
  transition: 800ms cubic-bezier(0.25, 1, 0.5, 1) !important;
  transition-property: --gradient-angle-offset, --gradient-percent, --gradient-shine !important;
}

.elementor-button::before,
.elementor-button::after,
.elementor-button span::before {
  content: "" !important;
  pointer-events: none !important;
  position: absolute !important;
  inset-inline-start: 50% !important;
  inset-block-start: 50% !important;
  translate: -50% -50% !important;
  z-index: -1 !important;
}

.elementor-button::before {
  --size: calc(100% - var(--shadow-size) * 3) !important;
  --position: 2px !important;
  --space: calc(var(--position) * 2) !important;
  width: var(--size) !important;
  height: var(--size) !important;
  background: radial-gradient(
      circle at var(--position) var(--position),
      white calc(var(--position) / 4),
      transparent 0
    ) padding-box !important;
  background-size: var(--space) var(--space) !important;
  background-repeat: space !important;
  mask-image: conic-gradient(
    from calc(var(--gradient-angle) + 45deg),
    black,
    transparent 10% 90%,
    black
  ) !important;
  border-radius: inherit !important;
  opacity: 0.4 !important;
}

.elementor-button::after {
  --animation: shimmer linear infinite !important;
  width: 100% !important;
  aspect-ratio: 1 !important;
  background: linear-gradient(
    -50deg,
    transparent,
    var(--shiny-cta-highlight),
    transparent
  ) !important;
  mask-image: radial-gradient(circle at bottom, transparent 40%, black) !important;
  opacity: 0.6 !important;
}

.elementor-button span {
  z-index: 1 !important;
  position: relative !important;
}

.elementor-button span::before {
  size: calc(100% + 1rem) !important;
  width: 370px !important; /*área azul efeito hover botão*/
  height: 90px !important;
  box-shadow: inset 0 -1ex 2rem 4px var(--shiny-cta-highlight) !important;
  opacity: 0 !important;
  transition: opacity 1500ms cubic-bezier(0.25, 1, 0.5, 1) !important;
}

.elementor-button:hover,
.elementor-button:focus-visible {
  --gradient-percent: 20% !important;
  --gradient-angle-offset: 95deg !important;
  --gradient-shine: var(--shiny-cta-highlight-subtle) !important;
}

.elementor-button:hover span::before {
  opacity: 1 !important;
}

@keyframes gradient-angle {
  to {
    --gradient-angle: 360deg;
  }
}

@keyframes shimmer {
  to {
    transform: rotate(360deg) !important;
  }
}

@keyframes breathe {
  50% {
    transform: scale(1.2) !important;
  }
}

/* Ativa animações */
.elementor-button,
.elementor-button::before,
.elementor-button::after {
  animation: var(--animation) var(--duration),
    var(--animation) calc(var(--duration) / 0.4) reverse paused !important;
  animation-composition: add !important;
}

.elementor-button:hover,
.elementor-button:hover::before,
.elementor-button:hover::after {
  animation-play-state: running !important;
}

@media (max-width: 560px) {
    .elementor-button {
        font-size: 14px !important;
    }
}/* End custom CSS */
/* Start custom CSS for image-box, class: .elementor-element-0b6511e */.elementor-82 .elementor-element.elementor-element-0b6511e h1{
 background: linear-gradient(90deg, #FFF 0%, #829DD8 113.14%);
background-clip: text;
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-79e50d7 */:root {
  --shiny-cta-bg: #003960 /*fundo do botão*/ !important;
  --shiny-cta-bg-subtle: #005792 !important; /*borda escura do botão*/
  --shiny-cta-fg: #ffffff !important;
  --shiny-cta-highlight: #0277bc !important; /*luz do botão*/
  --shiny-cta-highlight-subtle: # !important;
}

@property --gradient-angle {
  syntax: "<angle>";
  initial-value: 0deg;
  inherits: false;
}

@property --gradient-angle-offset {
  syntax: "<angle>";
  initial-value: 0deg;
  inherits: false;
}

@property --gradient-percent {
  syntax: "<percentage>";
  initial-value: 5%;
  inherits: false;
}

@property --gradient-shine {
  syntax: "<color>";
  initial-value: white;
  inherits: false;
}

.elementor-button {
  --animation: gradient-angle linear infinite !important;
  --duration: 3s !important; /*tempo em que o círculo brilhante demora para completar a sua volta*/
  --shadow-size: 2px !important;
  isolation: isolate !important;
  position: relative !important;
  overflow: hidden !important;
  cursor: pointer !important;
  outline-offset: 4px !important;
  padding: 1.25rem 1.4rem !important;
  font-family: "Inter", sans-serif !important; /*Puxar a fonte*/
  font-weight: normal;
  font-size: 1.2rem !important; /*tamanho da fonte*/
  line-height: 1.2 !important;
  border: 1px solid transparent !important;
  border-radius: 15px !important;
  color: var(--shiny-cta-fg) !important;
  background: linear-gradient(var(--shiny-cta-bg), var(--shiny-cta-bg)) padding-box,
    conic-gradient(
      from calc(var(--gradient-angle) - var(--gradient-angle-offset)),
      transparent,
      var(--shiny-cta-highlight) var(--gradient-percent),
      var(--gradient-shine) calc(var(--gradient-percent) * 2),
      var(--shiny-cta-highlight) calc(var(--gradient-percent) * 3),
      transparent calc(var(--gradient-percent) * 4)
    ) border-box !important;
  box-shadow: inset 0 0 0 1px var(--shiny-cta-bg-subtle) !important;
  transition: 800ms cubic-bezier(0.25, 1, 0.5, 1) !important;
  transition-property: --gradient-angle-offset, --gradient-percent, --gradient-shine !important;
}

.elementor-button::before,
.elementor-button::after,
.elementor-button span::before {
  content: "" !important;
  pointer-events: none !important;
  position: absolute !important;
  inset-inline-start: 50% !important;
  inset-block-start: 50% !important;
  translate: -50% -50% !important;
  z-index: -1 !important;
}

.elementor-button::before {
  --size: calc(100% - var(--shadow-size) * 3) !important;
  --position: 2px !important;
  --space: calc(var(--position) * 2) !important;
  width: var(--size) !important;
  height: var(--size) !important;
  background: radial-gradient(
      circle at var(--position) var(--position),
      white calc(var(--position) / 4),
      transparent 0
    ) padding-box !important;
  background-size: var(--space) var(--space) !important;
  background-repeat: space !important;
  mask-image: conic-gradient(
    from calc(var(--gradient-angle) + 45deg),
    black,
    transparent 10% 90%,
    black
  ) !important;
  border-radius: inherit !important;
  opacity: 0.4 !important;
}

.elementor-button::after {
  --animation: shimmer linear infinite !important;
  width: 100% !important;
  aspect-ratio: 1 !important;
  background: linear-gradient(
    -50deg,
    transparent,
    var(--shiny-cta-highlight),
    transparent
  ) !important;
  mask-image: radial-gradient(circle at bottom, transparent 40%, black) !important;
  opacity: 0.6 !important;
}

.elementor-button span {
  z-index: 1 !important;
  position: relative !important;
}

.elementor-button span::before {
  size: calc(100% + 1rem) !important;
  width: 370px !important; /*área azul efeito hover botão*/
  height: 90px !important;
  box-shadow: inset 0 -1ex 2rem 4px var(--shiny-cta-highlight) !important;
  opacity: 0 !important;
  transition: opacity 1500ms cubic-bezier(0.25, 1, 0.5, 1) !important;
}

.elementor-button:hover,
.elementor-button:focus-visible {
  --gradient-percent: 20% !important;
  --gradient-angle-offset: 95deg !important;
  --gradient-shine: var(--shiny-cta-highlight-subtle) !important;
}

.elementor-button:hover span::before {
  opacity: 1 !important;
}

@keyframes gradient-angle {
  to {
    --gradient-angle: 360deg;
  }
}

@keyframes shimmer {
  to {
    transform: rotate(360deg) !important;
  }
}

@keyframes breathe {
  50% {
    transform: scale(1.2) !important;
  }
}

/* Ativa animações */
.elementor-button,
.elementor-button::before,
.elementor-button::after {
  animation: var(--animation) var(--duration),
    var(--animation) calc(var(--duration) / 0.4) reverse paused !important;
  animation-composition: add !important;
}

.elementor-button:hover,
.elementor-button:hover::before,
.elementor-button:hover::after {
  animation-play-state: running !important;
}

@media (max-width: 560px) {
    .elementor-button {
        font-size: 14px !important;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-abbf1fb */.elementor-82 .elementor-element.elementor-element-abbf1fb {
    backdrop-filter: blur(10px);
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8fe2879 */.background {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.background::before,
.background::after {
    content: '';
    position: absolute;
    border-radius: 50%;
    opacity: 0.5;
}

.background::before {
    width: 400px;
    height: 400px;
    background: radial-gradient(circle, rgba(0, 183, 255, 0.5), transparent);
    top: 20%;
    left: 25%;
}

.background::after {
    width: 600px;
    height: 600px;
    background: radial-gradient(circle, rgba(0, 183, 255, 0.5), transparent);
    bottom: 10%;
    right: 20%;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-cfe248c */.elementor-82 .elementor-element.elementor-element-cfe248c{
    text-wrap: balance;
}/* End custom CSS */