.elementor-2343 .elementor-element.elementor-element-5965941{--display:flex;--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:center;--background-transition:0.3s;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:100px;--padding-bottom:200px;--padding-left:100px;--padding-right:100px;}.elementor-2343 .elementor-element.elementor-element-5965941, .elementor-2343 .elementor-element.elementor-element-5965941::before{--border-transition:0.3s;}.elementor-widget-heading .elementor-heading-title{color:var( --e-global-color-primary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-2343 .elementor-element.elementor-element-eb9f1ab .elementor-heading-title{color:#FFFFFF;font-family:"Figtree", Sans-serif;font-size:37px;font-weight:700;}.elementor-2343 .elementor-element.elementor-element-2ad96e1 > .elementor-widget-container{padding:10px 0px 10px 0px;}.elementor-2343 .elementor-element.elementor-element-2ad96e1{text-align:center;}.elementor-2343 .elementor-element.elementor-element-2ad96e1 .elementor-heading-title{color:var( --e-global-color-primary );font-family:"Figtree", Sans-serif;font-size:108px;font-weight:800;text-transform:capitalize;}.elementor-widget-text-editor{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-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-2343 .elementor-element.elementor-element-09389e4{text-align:center;color:var( --e-global-color-primary );font-family:"Figtree", Sans-serif;font-size:18px;font-weight:400;}.elementor-2343 .elementor-element.elementor-element-50464a8{--display:flex;--background-transition:0.3s;--margin-top:90px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-2343 .elementor-element.elementor-element-d8d421d{--spacer-size:102px;}body.elementor-page-2343:not(.elementor-motion-effects-element-type-background), body.elementor-page-2343 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#0F0F0F;}@media(min-width:768px){.elementor-2343 .elementor-element.elementor-element-50464a8{--width:75vw;}}@media(max-width:1024px){.elementor-2343 .elementor-element.elementor-element-eb9f1ab{text-align:center;}.elementor-2343 .elementor-element.elementor-element-eb9f1ab .elementor-heading-title{font-size:27px;}}@media(max-width:767px){.elementor-2343 .elementor-element.elementor-element-5965941{--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-2343 .elementor-element.elementor-element-eb9f1ab{text-align:center;}.elementor-2343 .elementor-element.elementor-element-eb9f1ab .elementor-heading-title{font-size:18px;}.elementor-2343 .elementor-element.elementor-element-2ad96e1 .elementor-heading-title{font-size:40px;}.elementor-2343 .elementor-element.elementor-element-09389e4{font-size:11px;}.elementor-2343 .elementor-element.elementor-element-50464a8{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}}/* Start custom CSS for heading, class: .elementor-element-2ad96e1 */.gradiente-text2 {
  background: linear-gradient(97deg, #00FFFF, #942BD0, #FF007E, #FFE800);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.elementor-2343 .elementor-element.elementor-element-2ad96e1 {
    max-width: 1200px !important;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-09389e4 */.elementor-2343 .elementor-element.elementor-element-09389e4 {
    max-width: 500px !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-50464a8 */.background-blur-gradient::before {
    content: '';
    position: absolute;
    top: -10px;
    left: 0;
    right: 0;
    bottom: 0;
    background: radial-gradient(circle at 10% 10%, #0085ff, #0035ff, #00000000 50%), radial-gradient(circle at 50% 10%, #842BD0, #842BD0, #842BD0, transparent 50%), radial-gradient(circle at 70% -5%, #842BD0, #FF007E, #FFE800, transparent 45%);
    filter: blur(80px); /* Controle a intensidade do desfoque */
    opacity: 0.7; /* Ajuste a opacidade para o efeito desejado */
    z-index: -1;
}

        .background-blur-gradient::before {
            content: '';
            position: absolute;
            top: -10px;
            left: 0;
            right: 0;
            bottom: 0;
            background: radial-gradient(circle at 40% 10%, #0085ff, #0035ff, #00000000 50%), 
                        radial-gradient(circle at 50% 10%, #842BD0, #842BD0, #842BD0, transparent 50%), 
                        radial-gradient(circle at 70% -5%, #842BD0, #FF007E, #FFE800, transparent 45%);
            filter: blur(80px);
            opacity: 0.7;
            z-index: -1;
            animation: moveGradient 10s infinite alternate ease-in-out;
        }

        @keyframes moveGradient {
            0% {
                background-position: 0% 0%;
                background-size: 100%;
            }
            50% {
                background-position: 80% 80%;
                background-size: 550%;
            }
            100% {
                background-position: 100% 100%;
                background-size: 100%;
            }
        }/* End custom CSS */
/* Start custom CSS */body {
  background-color: white; /* Set a base background color */
  
  background-image: radial-gradient(circle, #303030 5%, transparent 0);
  background-size: .3in .3in;  /* Each grid cell is 1 inch by 1 inch */
  background-repeat: repeat;
  overflow-x: hidden;


}



.elementor-price-table__original-price {
    width: 100%;
    padding-bottom: 15px;
    text-decoration: none !important;
}

.elementor-price-table__original-price span:nth-child(-n+2) {
    text-decoration: line-through  !important;
}










        .gradiente-borda-btn2 .elementor-button {
            /* --- Actual Button/Link's own styling --- */
            /* Adjust padding as needed for your button's text */
            /* Elementor typically controls this via its UI, but you can override */
            /* padding: 12px 28px;  -- Example, Elementor might set this */
            /* font-size: 16px;    -- Example, Elementor might set this */
            /* color: white;         -- Example, Elementor might set this */
            background-color: #222; /* Background of the button itself, visible through the border's "hole" */
            border: none; /* Remove default border if any */
            /* border-radius should match the ::before pseudo-element's border-radius */
            /* border-radius: 25px; -- Example, Elementor might set this */
            cursor: pointer;
            text-decoration: none;
            display: inline-block; /* Elementor buttons are often inline-block */
            text-align: center;

            /* --- Crucial for the ::before pseudo-element --- */
            position: relative; /* Establishes positioning context for its ::before */
            z-index: 1; /* Ensures button content is above the ::before's background */
            /* Ensure Elementor's button styles don't add extra borders that conflict */
        }

        .gradiente-borda-btn2 .elementor-button::before {
            content: '';
            position: absolute;
            
            /* Make the pseudo-element cover the button exactly */
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            
            /* This border-radius defines the outer curve of the gradient border. */
            /* It should match the .elementor-button's border-radius. */
            /* If Elementor sets a border-radius on .elementor-button, ensure this matches. */
            border-radius: 25px; /* Example: Defaulting to 25px, adjust if Elementor uses another value */
            
            /* The gradient background that forms the border */
            background: linear-gradient(200deg, #00FFFF, #942BD0, #FF007E, #FFE800);
            
            /* This padding IS the border thickness for the mask technique */
            /* The mask's 'content-box' will be inset by this amount */
            padding: 4px; /* Adjust this value to change border thickness */
            
            /* Masking to create the hollow border effect */
            -webkit-mask:
                linear-gradient(#fff 0 0) content-box, /* Inner transparent part (respects padding) */
                linear-gradient(#fff 0 0);             /* Outer opaque part (covers whole element) */
            mask:
                linear-gradient(#fff 0 0) content-box,
                linear-gradient(#fff 0 0);
            
            /* Composite operation: punch out the content-box area from the outer opaque part */
            -webkit-mask-composite: destination-out;
            mask-composite: exclude; /* Standard property */
            
            z-index: -1; /* Place the gradient border behind the button's content */
            
            /* Ensures padding is included within the element's dimensions, crucial for alignment */
            box-sizing: border-box; 
        }

        /* --- Example Styling for Elementor Button Content (from your HTML) --- */
        /* You might not need to override these if Elementor handles them well */
        .gradiente-borda-btn2 .elementor-button .elementor-button-text {
            color: black; /* Example: Ensure text color is visible */
            /* Elementor usually handles font-size, padding within the button span etc. */
        }
        .gradiente-borda-btn2 .elementor-button.elementor-size-sm {
             /* Example: Elementor's small button size might have specific padding/font-size */
            padding: 10px 20px; /* Override if necessary */
            font-size: 14px;    /* Override if necessary */
            border-radius: 25px; /* Ensure this matches ::before if you override */
        }
         .gradiente-borda-btn2 .elementor-button.elementor-size-md { /* Example for a medium size */
            padding: 12px 28px;
            font-size: 16px;
            border-radius: 25px; /* Ensure this matches ::before if you override */
            color: black;
        }/* End custom CSS */