.elementor-2789 .elementor-element.elementor-element-e6c55a9{--display:flex;--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;--gap:0px 65px;--row-gap:0px;--column-gap:65px;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:#1E202C;--border-color:#1E202C;--border-radius:12px 12px 12px 12px;--margin-top:40px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-2789 .elementor-element.elementor-element-e6c55a9:not(.elementor-motion-effects-element-type-background), .elementor-2789 .elementor-element.elementor-element-e6c55a9 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#0B0D1ACC;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-2789 .elementor-element.elementor-element-4ec8dbf > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-2789 .elementor-element.elementor-element-4ec8dbf{text-align:start;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item{color:var( --e-global-color-text );fill:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:hover,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-accent );fill:var( --e-global-color-accent );}.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:var( --e-global-color-accent );}.elementor-widget-nav-menu .e--pointer-framed .elementor-item:before,
					.elementor-widget-nav-menu .e--pointer-framed .elementor-item:after{border-color:var( --e-global-color-accent );}.elementor-widget-nav-menu{--e-nav-menu-divider-color:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-2789 .elementor-element.elementor-element-270b14f > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-2789 .elementor-element.elementor-element-270b14f.elementor-element{--flex-grow:1;--flex-shrink:0;}.elementor-2789 .elementor-element.elementor-element-270b14f .elementor-menu-toggle{margin:0 auto;}.elementor-2789 .elementor-element.elementor-element-270b14f .elementor-nav-menu .elementor-item{font-family:"Manrope", Sans-serif;font-size:16px;font-weight:400;line-height:1.5em;}.elementor-2789 .elementor-element.elementor-element-270b14f .elementor-nav-menu--main .elementor-item{color:#A1A1AA;fill:#A1A1AA;padding-left:5px;padding-right:5px;padding-top:5px;padding-bottom:5px;}.elementor-2789 .elementor-element.elementor-element-270b14f .elementor-nav-menu--main .elementor-item:hover,
					.elementor-2789 .elementor-element.elementor-element-270b14f .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-2789 .elementor-element.elementor-element-270b14f .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-2789 .elementor-element.elementor-element-270b14f .elementor-nav-menu--main .elementor-item:focus{color:#FAFAFA;fill:#FAFAFA;}.elementor-2789 .elementor-element.elementor-element-270b14f .elementor-nav-menu--main .elementor-item.elementor-item-active{color:#FAFAFA;}.elementor-2789 .elementor-element.elementor-element-270b14f{--e-nav-menu-horizontal-menu-item-margin:calc( 30px / 2 );}.elementor-2789 .elementor-element.elementor-element-270b14f .elementor-nav-menu--main:not(.elementor-nav-menu--layout-horizontal) .elementor-nav-menu > li:not(:last-child){margin-bottom:30px;}.elementor-2789 .elementor-element.elementor-element-270b14f .elementor-nav-menu--dropdown a, .elementor-2789 .elementor-element.elementor-element-270b14f .elementor-menu-toggle{color:#A1A1AA;fill:#A1A1AA;}.elementor-2789 .elementor-element.elementor-element-270b14f .elementor-nav-menu--dropdown{background-color:#0A0E14;}.elementor-2789 .elementor-element.elementor-element-270b14f .elementor-nav-menu--dropdown a:hover,
					.elementor-2789 .elementor-element.elementor-element-270b14f .elementor-nav-menu--dropdown a:focus,
					.elementor-2789 .elementor-element.elementor-element-270b14f .elementor-nav-menu--dropdown a.elementor-item-active,
					.elementor-2789 .elementor-element.elementor-element-270b14f .elementor-nav-menu--dropdown a.highlighted,
					.elementor-2789 .elementor-element.elementor-element-270b14f .elementor-menu-toggle:hover,
					.elementor-2789 .elementor-element.elementor-element-270b14f .elementor-menu-toggle:focus{color:#FAFAFA;}.elementor-2789 .elementor-element.elementor-element-270b14f .elementor-nav-menu--dropdown a:hover,
					.elementor-2789 .elementor-element.elementor-element-270b14f .elementor-nav-menu--dropdown a:focus,
					.elementor-2789 .elementor-element.elementor-element-270b14f .elementor-nav-menu--dropdown a.elementor-item-active,
					.elementor-2789 .elementor-element.elementor-element-270b14f .elementor-nav-menu--dropdown a.highlighted{background-color:#0A0E14;}.elementor-2789 .elementor-element.elementor-element-270b14f .elementor-nav-menu--dropdown a.elementor-item-active{color:#FAFAFA;background-color:#0A0E14;}.elementor-2789 .elementor-element.elementor-element-270b14f .elementor-nav-menu--dropdown .elementor-item, .elementor-2789 .elementor-element.elementor-element-270b14f .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:"Manrope", Sans-serif;font-weight:400;}.elementor-2789 .elementor-element.elementor-element-270b14f div.elementor-menu-toggle{color:#FAFAFA;}.elementor-2789 .elementor-element.elementor-element-270b14f div.elementor-menu-toggle svg{fill:#FAFAFA;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-2789 .elementor-element.elementor-element-6478fb5 .elementor-button{background-color:#05071400;font-family:"Manrope", Sans-serif;font-size:12px;font-weight:700;line-height:1.3em;fill:#FAFAFA;color:#FAFAFA;transition-duration:0.5s;border-style:solid;border-width:1px 1px 1px 1px;border-color:#FAFAFA;border-radius:5px 5px 5px 5px;padding:16px 24px 16px 24px;}.elementor-2789 .elementor-element.elementor-element-6478fb5 .elementor-button:hover, .elementor-2789 .elementor-element.elementor-element-6478fb5 .elementor-button:focus{background-color:#FAFAFA;color:#10111D;}.elementor-2789 .elementor-element.elementor-element-6478fb5 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-2789 .elementor-element.elementor-element-6478fb5 .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-2789 .elementor-element.elementor-element-6478fb5 .elementor-button .elementor-button-content-wrapper{gap:10px;}.elementor-2789 .elementor-element.elementor-element-6478fb5 .elementor-button:hover svg, .elementor-2789 .elementor-element.elementor-element-6478fb5 .elementor-button:focus svg{fill:#10111D;}.elementor-2789 .elementor-element.elementor-element-0a4af10{--display:flex;--min-height:100vh;--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:center;--align-items:stretch;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-2789 .elementor-element.elementor-element-5d1cb4a{--display:flex;--min-height:20vh;}.elementor-2789 .elementor-element.elementor-element-5d1cb4a:not(.elementor-motion-effects-element-type-background), .elementor-2789 .elementor-element.elementor-element-5d1cb4a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#0A0E14;}.elementor-2789 .elementor-element.elementor-element-714bd0d{--display:flex;--min-height:20vh;}.elementor-2789 .elementor-element.elementor-element-714bd0d:not(.elementor-motion-effects-element-type-background), .elementor-2789 .elementor-element.elementor-element-714bd0d > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#0A0E14;}.elementor-2789 .elementor-element.elementor-element-94bed37{--display:flex;--min-height:20vh;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-2789 .elementor-element.elementor-element-94bed37:not(.elementor-motion-effects-element-type-background), .elementor-2789 .elementor-element.elementor-element-94bed37 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#0A0E14;}.elementor-2789 .elementor-element.elementor-element-e042a0e{--display:flex;--min-height:20vh;}.elementor-2789 .elementor-element.elementor-element-e042a0e:not(.elementor-motion-effects-element-type-background), .elementor-2789 .elementor-element.elementor-element-e042a0e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#0A0E14;}.elementor-2789 .elementor-element.elementor-element-2291dd8{--display:flex;--min-height:20vh;}.elementor-2789 .elementor-element.elementor-element-2291dd8:not(.elementor-motion-effects-element-type-background), .elementor-2789 .elementor-element.elementor-element-2291dd8 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#0A0E14;}.elementor-2789 .elementor-element.elementor-element-08413cc{--display:flex;--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;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:1024px){.elementor-2789 .elementor-element.elementor-element-e6c55a9{--margin-top:32px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-2789 .elementor-element.elementor-element-270b14f{--nav-menu-icon-size:24px;}}@media(min-width:768px){.elementor-2789 .elementor-element.elementor-element-e6c55a9{--width:1280px;}}@media(max-width:1366px) and (min-width:768px){.elementor-2789 .elementor-element.elementor-element-e6c55a9{--width:90%;}}@media(max-width:1024px) and (min-width:768px){.elementor-2789 .elementor-element.elementor-element-e6c55a9{--width:90%;}}@media(max-width:767px){.elementor-2789 .elementor-element.elementor-element-e6c55a9{--width:95%;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--margin-top:20px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-2789 .elementor-element.elementor-element-4ec8dbf{width:var( --container-widget-width, 120px );max-width:120px;--container-widget-width:120px;--container-widget-flex-grow:0;}.elementor-2789 .elementor-element.elementor-element-270b14f > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-2789 .elementor-element.elementor-element-270b14f.elementor-element{--flex-grow:0;--flex-shrink:1;}.elementor-2789 .elementor-element.elementor-element-270b14f{z-index:999;}.elementor-2789 .elementor-element.elementor-element-270b14f .elementor-nav-menu--dropdown .elementor-item, .elementor-2789 .elementor-element.elementor-element-270b14f .elementor-nav-menu--dropdown  .elementor-sub-item{font-size:20px;}}/* Start custom CSS for nav-menu, class: .elementor-element-270b14f */.elementor-2789 .elementor-element.elementor-element-270b14f{
    display: flex;
    justify-content: end;
}

.elementor-2789 .elementor-element.elementor-element-270b14f::before{
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    transform: translate(32px, -50%);
    width: 1px;
    height: 24px;
    background: #FFFFFF26;
}

.elementor-2789 .elementor-element.elementor-element-270b14f .elementor-nav-menu--dropdown{
    position: fixed;
    top: -32px !important;
    left: -19px !important;
    width: calc(100vw + 19px) !important;
    height: 102vh;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 99998;
    background: #0A0E14 !important;
}

.elementor-2789 .elementor-element.elementor-element-270b14f .elementor-nav-menu--dropdown a{
    justify-content: center;
}

.elementor-2789 .elementor-element.elementor-element-270b14f .elementor-menu-toggle{
    z-index: 99999;
}

@media (max-width: 767px) {
    .elementor-2789 .elementor-element.elementor-element-270b14f::before{
        display: none;
    }
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-6478fb5 */.elementor-2789 .elementor-element.elementor-element-6478fb5 svg{
    width: 14px;
}

.elementor-2789 .elementor-element.elementor-element-6478fb5 svg path{
    fill: #FAFAFA;
    transform-origin: center;
    transform: rotate(-45deg);
}

.elementor-2789 .elementor-element.elementor-element-6478fb5:hover svg path{
    fill: #050714;
}

.elementor-2789 .elementor-element.elementor-element-6478fb5 .elementor-button {
    min-height: 0px;
}

@media (max-width: 767px) {
    .elementor-2789 .elementor-element.elementor-element-6478fb5{
        display: none;
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-b09466f */.elementor-2789 .elementor-element.elementor-element-b09466f{
    position: absolute;
    bottom: 0;
    pointer-events: none;
}

.menu{
    position: fixed;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    max-width: 1280px;
    transition: 
        max-width 0.8s ease,
        padding 0.8s ease,
        background 0.8s ease;
    z-index: 999;
}

.menu.is-fixed{
    max-width: 900px;
    width: 100%;
}

.logo-menu{
    width: 142px;
    transition: width 0.8s ease;
}

.menu.is-fixed .logo-menu{
    width: 122px !important;
}

@media (max-width: 767px) {
    .menu{
        width: 95%;
        max-width: 95% !important;
    }
    
    .logo-menu{
        width: 120px;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-e6c55a9 */.elementor-2789 .elementor-element.elementor-element-e6c55a9{
    left: 50%;
    transform: translateX(-50%);
    backdrop-filter: blur(20px);
    z-index: 99998;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-0a4af10 */.elementor-2789 .elementor-element.elementor-element-0a4af10{
    z-index: 99999999;
}

.transicao{
    position: fixed;
    top: 0;
    left: 0;
    z-index: 99999;
    pointer-events: none;
    transition: 0.5s;
}

.transicao.ativa .fatia{
    transform: translateX(0%) !important;
}

.transicao .imagem{
    opacity: 0;
    transition: 0.3s;
    transition-delay: 0.4s;
}

.transicao.ativa .imagem{
    opacity: 1;
}

.transicao .fatia:nth-child(1){
    transition-delay: 0s;
    transform: translateX(-100%);
}

.transicao .fatia:nth-child(2){
    transition-delay: 0.1s;
    transform: translateX(100%);
}

.transicao .fatia:nth-child(3){
    transition-delay: 0.2s;
    transform: translateX(-100%);
}

.transicao .fatia:nth-child(4){
    transition-delay: 0.3s;
    transform: translateX(100%);
}

.transicao .fatia:nth-child(5){
    transition-delay: 0.4s;
    transform: translateX(-100%);
}

@media(max-width: 1024px){
    .imagem{
        min-width: 300px !important;
        position: absolute;
    }
    
    .transicao .fatia:nth-child(3){
        overflow: visible !important;
        z-index: 9999;
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-25d7ed5 */.elementor-2789 .elementor-element.elementor-element-25d7ed5{
    position: fixed;
    bottom: 0;
    left: 50%;
    transform: translate(-50%, 0%);
    width: 100%;
    height: 180px;
    z-index: 99996;
    pointer-events: none;
}

.inativo{
    transform: translate(-50%, 100%) !important;
}

.elementor-2789 .elementor-element.elementor-element-25d7ed5 .blur::before{
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    z-index: 999;
}

.elementor-2789 .elementor-element.elementor-element-25d7ed5 .blur8::before{
    backdrop-filter: blur(32px);
    mask-image: linear-gradient(rgba(0, 0, 0, 0) 87.5%, rgb(0, 0, 0) 100%);
    z-index: 8;
}

.elementor-2789 .elementor-element.elementor-element-25d7ed5 .blur7::before{
    backdrop-filter: blur(16px);
    mask-image: linear-gradient(rgba(0, 0, 0, 0) 75%, rgb(0, 0, 0) 87.5%, rgb(0, 0, 0) 100%);
    z-index: 7;
}

.elementor-2789 .elementor-element.elementor-element-25d7ed5 .blur6::before{
    backdrop-filter: blur(8px);
    mask-image: linear-gradient(rgba(0, 0, 0, 0) 62.5%, rgb(0, 0, 0) 75%, rgb(0, 0, 0) 87.5%, rgba(0, 0, 0, 0) 100%);
    z-index: 8;
}

.elementor-2789 .elementor-element.elementor-element-25d7ed5 .blur5::before{
    backdrop-filter: blur(4px);
    mask-image: linear-gradient(rgba(0, 0, 0, 0) 50%, rgb(0, 0, 0) 62.5%, rgb(0, 0, 0) 75%, rgba(0, 0, 0, 0) 87.5%);
    z-index: 7;
}

.elementor-2789 .elementor-element.elementor-element-25d7ed5 .blur4::before{
    backdrop-filter: blur(2px);
    mask-image: linear-gradient(rgba(0, 0, 0, 0) 37.5%, rgb(0, 0, 0) 50%, rgb(0, 0, 0) 62.5%, rgba(0, 0, 0, 0) 75%);
    z-index: 8;
}

.elementor-2789 .elementor-element.elementor-element-25d7ed5 .blur3::before{
    backdrop-filter: blur(1px);
    mask-image: linear-gradient(rgba(0, 0, 0, 0) 25%, rgb(0, 0, 0) 37.5%, rgb(0, 0, 0) 50%, rgba(0, 0, 0, 0) 62.5%);
    z-index: 7;
}

.elementor-2789 .elementor-element.elementor-element-25d7ed5 .blur2::before{
    backdrop-filter: blur(0.5px);
    mask-image: linear-gradient(rgba(0, 0, 0, 0) 12.5%, rgb(0, 0, 0) 25%, rgb(0, 0, 0) 37.5%, rgba(0, 0, 0, 0) 50%);
    z-index: 8;
}/* End custom CSS */
/* Start custom CSS *//* =========================================
   1. GLOBAL E RESET
   ========================================= */
html {
    width: 100%;
    overflow-x: clip;
    scroll-padding-top: 200px;
}

body {
    width: 100%;
    overflow-x: clip;
    cursor: url('https://devthiago.com.br/wp-content/uploads/2026/01/cursor_1.svg'), auto;
}

[data-elementor-type="wp-page"] {
    overflow: clip;
}

a,
button,
input[type="button"],
input[type="submit"],
[role="button"] {
    cursor: url('https://devthiago.com.br/wp-content/uploads/2026/01/cursor_hover_01.svg'), pointer;
}

/* =========================================
   2. SCROLLBAR (Barra de Rolagem)
   ========================================= */
/* Chrome, Edge e Safari */
body::-webkit-scrollbar {
    width: 10px;
}

body::-webkit-scrollbar-track {
    background: #050714;
}

body::-webkit-scrollbar-thumb {
    background: linear-gradient(to bottom, #5A68B5, #85B0C9);
    border-radius: 10px;
    border: 2px solid #050714;
}

/* Firefox */
@-moz-document url-prefix() {
    * {
        scrollbar-width: 10px;
        scrollbar-color: #5A68B5 #050714;
    }
}

/* =========================================
   3. TIPOGRAFIA E UTILITÁRIOS
   ========================================= */
.destaque {
    background: linear-gradient(to right, #FFF, #000);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    box-decoration-break: clone;
    -webkit-box-decoration-break: clone;
}

.br0 { display: block; }
.br1 { display: block; margin-top: 10px; }
.br2 { display: block; margin-top: 20px; }

.bold1 { color: #FAFAFA; }
.bold2 { color: #050714; }

.star {
    font-size: 17px;
    color: #F4D62D;
    margin-bottom: 2px;
}

/* Ajustes Elementor */
.elementor-icon-box-title,
.elementor-image-box-title {
    margin-top: 0;
}

.elementor-icon-list-text {
    padding: 0 !important;
}

.menu2 li::before {
    display: none;
}

/* =========================================
   4. CARDS E CONTAINERS
   ========================================= */
.card-service {
    box-shadow: 2px 2px 8px 0 #D6D6DC inset, -2px -2px 8px 0 #FAFAFA inset;
}

.aviso_projeto{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255, 255, 255, 0.12);
    opacity: 0;
    background: radial-gradient(87.09% 100% at 50% 100%, rgba(1, 1, 9, 0.60) 0%, rgba(1, 1, 9, 0.80) 100%);
    border-radius: 8px;
    backdrop-filter: blur(10px);
    pointer-events: none;
}

.aviso_projeto .elementor-widget-container{
    height: unset !important;
}

/* Efeito de Luz de Fundo */
.containerPai::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    border-radius: 48%;
    z-index: 1;
    pointer-events: none;
}

.container {
    background-image: radial-gradient(#9A9A9E45 1px, transparent 1px);
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background-size: 16px 16px;
    -webkit-mask-image: radial-gradient(ellipse closest-side at center, #000 0%, transparent 100%);
    mask-image: radial-gradient(ellipse closest-side at center, #000 0%, transparent 100%);
}

/* =========================================
   5. BOTÕES
   ========================================= */
/* Configuração Geral dos Botões */
.botao1 {
    transition: 0.3s linear;
}

.botao1 .elementor-button,
.botao2 .elementor-button {
    display: inline-flex;
    align-items: center;
    min-height: 61px;
    transition: 0.2s linear;
}

/* --- Botão 1 (Expansível) --- */
.botao1 .elementor-button-text {
    z-index: 10;
}

.botao1 .elementor-button-icon svg {
    width: 16px;
}

.botao1 .elementor-button-icon {
    position: absolute;
    top: 100%;
    right: 0;
    transform: translate(-44px, -100%);
    height: 100%;
    z-index: 1;
    transition: 0.3s linear;
}

.botao1 .elementor-button-icon::before {
    content: "";
    position: absolute;
    width: 61px;
    height: 100%;
    background: #FAFAFA;
    border-radius: 5px;
    z-index: -1;
    transition: 0.3s linear;
}

/* Hover Botão 1 */
.botao1:hover {
    width: 316px !important;
}

.botao1:hover .elementor-button {
    padding: 20px 40px !important;
}

.botao1:hover .elementor-button-icon {
    transform: translate(-25px, -100%);
}

.botao1:hover .elementor-button-icon::before {
    padding: 0px 20px;
    transform: translateX(-20px);
}

/* --- Botão 2 --- */
.botao2 .elementor-button-icon svg path {
    fill: #FAFAFA;
    transition: 0.2s linear;
}

.botao2:hover .elementor-button-icon svg path {
    fill: #050714;
}

/* --- Botão 3 --- */
.botao3 {
    position: relative;
    z-index: 1;
}

.botao3::before {
    content: "";
    position: absolute;
    bottom: 0%;
    left: 50%;
    transform: translate(-50%, 0%);
    width: 101%;
    height: 0%;
    background: #050714;
    border-radius: 5px;
    z-index: -1;
    transition: 0.3s linear;
}

.botao3 .elementor-button-icon svg path {
    fill: #050714;
    transform-origin: center;
    transform: rotate(-45deg);
    transition: 0.3s linear;
}

.botao3 .elementor-button:hover {
    border-radius: 5px !important;
}

.botao3:hover::before {
    height: 100%;
}

.botao3:hover .elementor-button-icon svg path {
    fill: #FAFAFA;
}

/* =========================================
   6. PROJETOS E FILTROS
   ========================================= */
/* Filtros */
.filtro {
    cursor: pointer;
}

.filtro.ativo .elementor-button {
    background: #FAFAFA !important;
    border-color: #FAFAFA !important;
    color: #050714 !important;
}

/* Grid de Projetos */
.projeto {
    opacity: 1;
    transform: scale(1);
    transition: opacity 0.5s ease, transform 0.5s ease;
    will-change: opacity, transform;
}

.projeto.is-hiding {
    opacity: 0;
    transform: scale(0.95);
    pointer-events: none;
}

.projeto.is-hidden {
    display: none;
}

/* Imagens dos Projetos */
.img_projeto a {
    cursor: url('https://devthiago.com.br/wp-content/uploads/2026/01/cursor_projetos.svg') 50 50, pointer;
}

/* Fallback para garantir hover correto */
.img_projeto:hover a {
    cursor: url('https://devthiago.com.br/wp-content/uploads/2026/01/cursor_projetos.svg') 50 50, pointer;
}

.img_projeto::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    background: #05071466;
    backdrop-filter: blur(1px);
    opacity: 0;
    border-radius: 8px;
    transition: 0.3s ease-in;
    pointer-events: none;
}

.img_projeto:hover::before {
    opacity: 1;
}

/* =========================================
   7. ÍCONES INTERATIVOS
   ========================================= */
.icones .elementor-widget-icon {
    --label: attr(data-label);
}

.icones .elementor-widget-icon::before {
    content: var(--label);
    font-family: "Manrope", Sans-Serif;
    font-size: 10px;
    font-weight: 400;
    color: #FAFAFA;
    position: absolute;
    top: 0;
    left: 100%;
    transform: translate(-6px, -10px);
    width: max-content;
    padding: 6px 12px;
    background: #0B0D1A60;
    backdrop-filter: blur(2px);
    border: 1px solid #FFFFFF26;
    border-radius: 5px 5px 5px 0;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: 0.5s ease-in-out;
    z-index: 2;
}

.icones .elementor-widget-icon:hover::before {
    opacity: 1;
    visibility: visible;
}

/* =========================================
   8. ANIMAÇÕES
   ========================================= */
@keyframes bordaGirar {
    0% { transform: translate(-50%, -50%) rotate(0deg); }
    100% { transform: translate(-50%, -50%) rotate(360deg); }
}

@keyframes verProjeto{
    0%, 20%, 80%, 100%{
        opacity: 0;
    }
    40%, 60%{
        opacity: 1;
    }
}

/* =========================================
   9. MEDIA QUERIES (MOBILE)
   ========================================= */
@media (max-width: 1024px) {
    .aviso_projeto{
        animation: verProjeto 10s ease infinite;
    }
}
   
@media (max-width: 767px) {
    /* Ajuste de Container */
    .e-con {
        max-width: 430px !important;
        margin-left: auto;
        margin-right: auto;
    }

    /* Ajuste Botão 1 no Mobile (Remove expansão) */
    .botao1 .elementor-button {
        justify-content: center;
    }
    
    .botao1 .elementor-button-icon {
        position: static;
        transform: translate(0px, 2px);
    }
    
    .botao1 .elementor-button-icon::before {
        width: 0px;
    }
    
    .botao1:hover .elementor-button {
        padding: 20px 20px !important;
    }
    
    .botao1:hover {
        width: 280px !important;
    }
    
    .botao1:hover .elementor-button-icon {
        transform: translate(5px, 2px);
    }
    
    .botao1:hover .elementor-button-icon::before {
        padding: 0px 0px;
    }
    
    .botao2 .elementor-button {
        justify-content: center;
    }
}/* End custom CSS */