.elementor-1029 .elementor-element.elementor-element-f44d5c3 > .elementor-container > .elementor-column > .elementor-widget-wrap{align-content:center;align-items:center;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-1029 .elementor-element.elementor-element-7afedad .elementor-heading-title{color:var( --e-global-color-text );}.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-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.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-widget-global .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-1029 .elementor-element.elementor-global-1465 .elementor-button{background-color:var( --e-global-color-8c9e7f1 );font-family:"Oswald", Sans-serif;font-size:18px;font-weight:700;letter-spacing:0px;fill:var( --e-global-color-e24646a );color:var( --e-global-color-e24646a );border-style:double;border-width:5px 5px 5px 5px;border-color:var( --e-global-color-e24646a );border-radius:15px 15px 15px 15px;padding:18px 18px 18px 18px;}.elementor-1029 .elementor-element.elementor-global-1465{width:auto;max-width:auto;z-index:80;}.elementor-1029 .elementor-element.elementor-element-a37739b{--spacer-size:50px;}.elementor-1029 .elementor-element.elementor-global-1468 .elementor-button{background-color:#FFFFFF00;font-family:"Oswald", Sans-serif;font-size:18px;font-weight:800;letter-spacing:0px;fill:var( --e-global-color-text );color:var( --e-global-color-text );border-style:double;border-width:5px 5px 5px 5px;border-color:var( --e-global-color-primary );border-radius:15px 15px 15px 15px;padding:18px 18px 18px 18px;}.elementor-1029 .elementor-element.elementor-global-1468{width:auto;max-width:auto;z-index:80;}.elementor-1029 .elementor-element.elementor-global-1468 > .elementor-widget-container{margin:0px 0px 0px 15px;}.elementor-1029 .elementor-element.elementor-element-d51cc0d.elementor-column > .elementor-widget-wrap{justify-content:center;}.elementor-1029 .elementor-element.elementor-element-ff10750{width:var( --container-widget-width, 40% );max-width:40%;--container-widget-width:40%;--container-widget-flex-grow:0;}.elementor-1029 .elementor-element.elementor-element-ff10750 img{width:100%;}@media(max-width:1262px){.elementor-1029 .elementor-element.elementor-element-a37739b{--spacer-size:10px;}.elementor-1029 .elementor-element.elementor-global-1468{width:100%;max-width:100%;z-index:5;}.elementor-1029 .elementor-element.elementor-global-1468 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-1029 .elementor-element.elementor-global-1468 .elementor-button{letter-spacing:2.5px;}.elementor-1029 .elementor-element.elementor-element-ff10750{--container-widget-width:69%;--container-widget-flex-grow:0;width:var( --container-widget-width, 69% );max-width:69%;}.elementor-1029 .elementor-element.elementor-element-ff10750 img{width:80%;}}@media(max-width:766px){.elementor-1029 .elementor-element.elementor-element-fb07dae.elementor-column > .elementor-widget-wrap{justify-content:center;}.elementor-1029 .elementor-element.elementor-element-7afedad{text-align:center;}.elementor-1029 .elementor-element.elementor-element-c788463{width:var( --container-widget-width, 45% );max-width:45%;--container-widget-width:45%;--container-widget-flex-grow:0;}.elementor-1029 .elementor-element.elementor-element-c788463 img{width:100%;}.elementor-1029 .elementor-element.elementor-element-3060834{text-align:center;}}/* Start custom CSS for global, class: .elementor-global-1465 *//* =========================================
   HOLLIDAYS PRESSURE WASHING - PRIMARY BUTTON
   (Deep Blue Accent Style: #002ba0)
   ========================================= */

/* 1. The Deep Blue Glass Base */
.primary-button .elementor-button {
    position: relative;
    overflow: hidden; /* Kept strictly inside the button bounds */

    /* ACCENT GRADIENT: Lighter Blue -> Base Accent (#002ba0) -> Deep Navy */
    background: linear-gradient(180deg, #2955d9 0%, #002ba0 50%, #001c66 100%);

    /* 3D Glass Effects (Deep Blue Tones) */
    box-shadow: 
        inset 0 2px 0 rgba(255,255,255,0.9),   /* Bright White Top Highlight */
        inset 0 -2px 0 rgba(0, 28, 102, 0.5),  /* Dark Navy Bottom Shadow */
        0 5px 15px rgba(0, 43, 160, 0.4);      /* Soft Deep Blue Drop Shadow */

    /* Glass Borders */
    border: 1px solid rgba(255, 255, 255, 0.6);
    border-bottom: 1px solid rgba(0, 28, 102, 0.6);
    border-radius: 50px;

    /* Text Styles - High Contrast White for readability */
    color: #FFFFFF; 
    text-shadow: 0 1px 2px rgba(0,0,0,0.3); /* Slight depth so text pops */
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1px;
    transition: all 0.3s ease;
    z-index: 1;
}

/* 2. The Shine Beam */
.primary-button .elementor-button::after {
    content: '';
    position: absolute;
    top: 0;
    left: -150%;
    width: 80%;
    height: 100%;

    /* White Shine */
    background: linear-gradient(
        to right, 
        rgba(255,255,255,0) 0%, 
        rgba(255,255,255,0.9) 50%, 
        rgba(255,255,255,0) 100%
    );

    transform: skewX(-25deg);
    z-index: -1;

    /* LOOPING ANIMATION */
    animation: accentShineLoop 4s infinite;
}

/* 3. Hover Actions */
.primary-button .elementor-button:hover {
    transform: translateY(-3px) scale(1.02);
    box-shadow: 0 10px 25px rgba(0, 43, 160, 0.5); /* Drop shadow grows */

    /* Hover Gradient: Brighter, more vibrant version of the accent color */
    background: linear-gradient(180deg, #4d7aff 0%, #003deb 50%, #002ba0 100%);
}

/* 4. The Shine Animation Keyframes */
@keyframes accentShineLoop {
    0% {
        left: -150%;
        opacity: 0;
    }
    10% {
        opacity: 1;
    }
    20% {
        left: 150%; /* Fly across */
        opacity: 0;
    }
    100% {
        left: 150%; /* Pause */
        opacity: 0;
    }
}

/* =========================================
   ICON FLOAT ANIMATION (Applied on Hover)
   ========================================= */

/* Target the Elementor icon or content applied content */
.primary-button .elementor-button:hover .elementor-button-icon,
.primary-button .elementor-button:hover .elementor-button-text::after {
    animation-name: icon-float;
    animation-duration: 2s; /* Slower for a smooth, airy float */
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite;
}

/* The "Float" Keyframes */
@keyframes icon-float {
    0% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-5px); /* Smooth upward movement */
    }
    100% {
        transform: translateY(0);
    }
}/* End custom CSS */
/* Start custom CSS for global, class: .elementor-global-1468 *//* 1. Target the custom icon (::after) on Hover */
.elementor-1029 .elementor-element.elementor-global-1468 .elementor-button:hover .elementor-button-text::after {
    /* "Buzz" animation parameters */
    animation-name: elementor-buzz;
    animation-duration: 0.7s; /* Speed of the buzz */
    animation-timing-function: linear;
    animation-iteration-count: infinite;
}

/* 2. The "Buzz" Keyframes (Replicating Elementor's style) */
@keyframes elementor-buzz {
    10% {
        transform: translateX(3px) rotate(2deg);
    }
    20% {
        transform: translateX(-3px) rotate(-2deg);
    }
    30% {
        transform: translateX(3px) rotate(2deg);
    }
    40% {
        transform: translateX(-3px) rotate(-2deg);
    }
    50% {
        transform: translateX(2px) rotate(1deg);
    }
    60% {
        transform: translateX(-2px) rotate(-1deg);
    }
    70% {
        transform: translateX(2px) rotate(1deg);
    }
    80% {
        transform: translateX(-2px) rotate(-1deg);
    }
    90% {
        transform: translateX(1px) rotate(0);
    }
    100% {
        transform: translateX(-1px) rotate(0);
    }
}/* End custom CSS */