.elementor-682 .elementor-element.elementor-element-01b19ae{--display:flex;--min-height:100vh;}.elementor-682 .elementor-element.elementor-element-01b19ae:not(.elementor-motion-effects-element-type-background), .elementor-682 .elementor-element.elementor-element-01b19ae > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}.elementor-682 .elementor-element.elementor-element-f898ba8{width:100%;max-width:100%;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );}.elementor-682 .elementor-element.elementor-element-bf70ab3 .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );fill:var( --e-global-color-primary );color:var( --e-global-color-primary );}.elementor-682 .elementor-element.elementor-element-bf70ab3 .elementor-button:hover, .elementor-682 .elementor-element.elementor-element-bf70ab3 .elementor-button:focus{color:var( --e-global-color-secondary );}.elementor-682 .elementor-element.elementor-element-bf70ab3 .elementor-button:hover svg, .elementor-682 .elementor-element.elementor-element-bf70ab3 .elementor-button:focus svg{fill:var( --e-global-color-secondary );}body.elementor-page-682:not(.elementor-motion-effects-element-type-background), body.elementor-page-682 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}@media(min-width:768px){.elementor-682 .elementor-element.elementor-element-01b19ae{--content-width:1600px;}}@media(max-width:1024px){.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );}.elementor-682 .elementor-element.elementor-element-bf70ab3 .elementor-button{font-size:var( --e-global-typography-accent-font-size );}}@media(max-width:767px){.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );}.elementor-682 .elementor-element.elementor-element-bf70ab3 .elementor-button{font-size:var( --e-global-typography-accent-font-size );}}/* Start custom CSS *//* --- CSS VARIABLES --- */
:root {
    --primary-orange: rgba(248, 87, 41, 0.4); 
    --animation-duration: 4s; 
    --line-thickness: 0.3; 
}

/* --- FORCE FIXED POSITION --- */
.harmonic-wave-wrapper { 
    position: fixed !important; 
    top: 0 !important;
    left: 0 !important;
    width: 100vw !important; 
    height: 100vh !important; 
    z-index: 0 !important; /* Sits above background, below text */
    pointer-events: none !important;
    background-color: transparent;
    transform: none !important; 
    margin: 0 !important;
    padding: 0 !important;
}

.harmonic-wave-wrapper svg { 
    width: 100%; 
    height: 100%; 
    display: block; 
    overflow: visible; 
}

/* --- ANIMATIONS --- */
@keyframes pathDraw { from { stroke-dashoffset: var(--path-length); } to { stroke-dashoffset: 0; } }
@keyframes simpleFade { from { opacity: 0; } to { opacity: 1; } }

.harmonic-path-line {
    fill: none; 
    stroke: var(--primary-orange); 
    stroke-width: var(--line-thickness);
    stroke-linecap: round; 
    stroke-linejoin: round; 
    filter: url(#harmonicPencilFilter); 
    opacity: 0; 
    animation: pathDraw var(--animation-duration) ease-out forwards, simpleFade 1s ease-out forwards;
}/* End custom CSS */