.elementor-8 .elementor-element.elementor-element-811bf1c{--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;--align-items:center;}.elementor-8 .elementor-element.elementor-element-c0286d6{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.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-8 .elementor-element.elementor-element-4aa63d1:hover{--e-transform-rotateZ:-10deg;--e-transform-translateX:5px;--e-transform-translateY:-5px;}.elementor-8 .elementor-element.elementor-element-4aa63d1 img{max-width:50%;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-8 .elementor-element.elementor-element-a85a8b8{text-align:center;}.elementor-8 .elementor-element.elementor-element-a85a8b8 .elementor-heading-title{font-family:"Inter Tight", Sans-serif;font-size:35px;font-weight:400;color:var( --e-global-color-primary );}.elementor-8 .elementor-element.elementor-element-f267631{text-align:center;}.elementor-8 .elementor-element.elementor-element-f267631 .elementor-heading-title{font-family:"Inter Tight", Sans-serif;font-size:29px;font-weight:400;color:var( --e-global-color-primary );}.elementor-8 .elementor-element.elementor-element-7236dcd{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-8 .elementor-element.elementor-element-7236dcd.e-con{--flex-grow:0;--flex-shrink:0;}.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-8 .elementor-element.elementor-element-925e578 .elementor-button{background-color:var( --e-global-color-primary );font-family:"Inter Tight", Sans-serif;font-size:28px;font-weight:300;fill:var( --e-global-color-astglobalcolor4 );color:var( --e-global-color-astglobalcolor4 );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-primary );border-radius:40px 40px 40px 40px;}.elementor-8 .elementor-element.elementor-element-925e578 .elementor-button:hover, .elementor-8 .elementor-element.elementor-element-925e578 .elementor-button:focus{background-color:var( --e-global-color-343b083 );color:var( --e-global-color-primary );}.elementor-8 .elementor-element.elementor-element-925e578{width:100%;max-width:100%;}.elementor-8 .elementor-element.elementor-element-925e578 .elementor-button:hover svg, .elementor-8 .elementor-element.elementor-element-925e578 .elementor-button:focus svg{fill:var( --e-global-color-primary );}.elementor-8 .elementor-element.elementor-element-b78717c .elementor-button{background-color:var( --e-global-color-primary );font-family:"Inter Tight", Sans-serif;font-size:28px;font-weight:300;fill:var( --e-global-color-astglobalcolor4 );color:var( --e-global-color-astglobalcolor4 );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-primary );border-radius:40px 40px 40px 40px;}.elementor-8 .elementor-element.elementor-element-b78717c .elementor-button:hover, .elementor-8 .elementor-element.elementor-element-b78717c .elementor-button:focus{background-color:var( --e-global-color-90668ca );color:var( --e-global-color-primary );}.elementor-8 .elementor-element.elementor-element-b78717c{width:100%;max-width:100%;}.elementor-8 .elementor-element.elementor-element-b78717c .elementor-button:hover svg, .elementor-8 .elementor-element.elementor-element-b78717c .elementor-button:focus svg{fill:var( --e-global-color-primary );}.elementor-8 .elementor-element.elementor-element-fa51c1c .elementor-button{background-color:var( --e-global-color-primary );font-family:"Inter Tight", Sans-serif;font-size:28px;font-weight:300;fill:var( --e-global-color-astglobalcolor4 );color:var( --e-global-color-astglobalcolor4 );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-primary );border-radius:40px 40px 40px 40px;}.elementor-8 .elementor-element.elementor-element-fa51c1c .elementor-button:hover, .elementor-8 .elementor-element.elementor-element-fa51c1c .elementor-button:focus{background-color:var( --e-global-color-8b055b4 );color:var( --e-global-color-primary );}.elementor-8 .elementor-element.elementor-element-fa51c1c{width:100%;max-width:100%;}.elementor-8 .elementor-element.elementor-element-fa51c1c .elementor-button:hover svg, .elementor-8 .elementor-element.elementor-element-fa51c1c .elementor-button:focus svg{fill:var( --e-global-color-primary );}.elementor-8 .elementor-element.elementor-element-cc57a85 .elementor-button{background-color:var( --e-global-color-primary );font-family:"Inter Tight", Sans-serif;font-size:28px;font-weight:300;fill:var( --e-global-color-astglobalcolor4 );color:var( --e-global-color-astglobalcolor4 );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-primary );border-radius:40px 40px 40px 40px;}.elementor-8 .elementor-element.elementor-element-cc57a85 .elementor-button:hover, .elementor-8 .elementor-element.elementor-element-cc57a85 .elementor-button:focus{background-color:var( --e-global-color-1ea039f );color:var( --e-global-color-primary );}.elementor-8 .elementor-element.elementor-element-cc57a85{width:100%;max-width:100%;}.elementor-8 .elementor-element.elementor-element-cc57a85 .elementor-button:hover svg, .elementor-8 .elementor-element.elementor-element-cc57a85 .elementor-button:focus svg{fill:var( --e-global-color-primary );}.elementor-8 .elementor-element.elementor-element-bf0654e{--grid-template-columns:repeat(0, auto);text-align:center;--grid-column-gap:5px;--grid-row-gap:0px;}.elementor-8 .elementor-element.elementor-element-bf0654e .elementor-social-icon{background-color:var( --e-global-color-primary );}.elementor-8 .elementor-element.elementor-element-fbb754d{--spacer-size:600px;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-8 .elementor-element.elementor-element-c0286d6{--width:40%;}.elementor-8 .elementor-element.elementor-element-7236dcd{--width:25%;}}@media(max-width:1024px) and (min-width:768px){.elementor-8 .elementor-element.elementor-element-c0286d6{--width:75%;}.elementor-8 .elementor-element.elementor-element-7236dcd{--width:45%;}}@media(max-width:1024px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}}@media(max-width:767px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-8 .elementor-element.elementor-element-f267631 .elementor-heading-title{font-size:21px;}.elementor-8 .elementor-element.elementor-element-7236dcd{--width:85%;}}/* Start custom CSS for container, class: .elementor-element-7236dcd */.elementor-8 .elementor-element.elementor-element-7236dcd .elementor-button {
    width: 100%;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-811bf1c *//* --- Drifting Shapes Animation (SCROLLING FIXED) --- */

/* 1. Prepare the Body and Page */
body {
  /*
   * THIS IS THE FIX:
   * We've changed "overflow: hidden" to "overflow-x: hidden".
   * This hides the horizontal scrollbars from the shapes
   * but ALLOWS normal vertical scrolling.
   */
  overflow-x: hidden; 
}

/* * !! IMPORTANT !!
 * Make the main #page container transparent to see
 * the <body> background where the shapes live.
*/
#page {
  background-color: transparent;
  position: relative; /* Keeps content on top */
  z-index: 1;
}

/* 2. Define the Shapes (Base Styles) */
body::before,
body::after {
  content: "";
  position: fixed;
  z-index: -1;
  
  /* This is your color #ff6558 at 10% opacity */
  border: 2px solid rgba(51, 51, 51, 0.1);
  
  animation-timing-function: linear;
  animation-iteration-count: infinite;
}

/* 3. Style Shape 1 (Circle) */
body::before {
  width: 60vh;
  height: 60vh;
  border-radius: 50%;
  top: 10vh;
  left: -30vw;
  animation-name: moveAcross1;
  animation-duration: 35s; 
}

/* 4. Style Shape 2 (Square) */
body::after {
  width: 70vh;
  height: 70vh;
  top: 50vh;
  left: 110vw;
  animation-name: moveAcross2;
  animation-duration: 45s;
  animation-delay: -10s; 
}

/* 5. Define Animation 1 (Moves Left-to-Right) */
@keyframes moveAcross1 {
  0% {
    transform: translate(0, 0) rotate(0deg);
  }
  100% {
    transform: translate(150vw, 20vh) rotate(360deg);
  }
}

/* 6. Define Animation 2 (Moves Right-to-Left) */
@keyframes moveAcross2 {
  0% {
    transform: translate(0, 0) rotate(0deg);
  }
  100% {
    transform: translate(-150vw, -30vh) rotate(-360deg);
  }
}/* End custom CSS */