/* Breakout styles to defeat Elementor container limitations */
.elementor-widget-sparkle_hero_c2d6076d {
    width: 100vw !important;
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw !important;
    margin-right: -50vw !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding: 0 !important;
}

.elementor-widget-container {
    padding: 0 !important;
    margin: 0 !important;
}

.sparkle-hero-wrapper-c2d6076d {
    position: relative;
    width: 100%;
    height: auto; /* changed from 80vh/100vh to allow image to dictate height */
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
}

.sparkle-hero-wrapper-c2d6076d .sh-bg-image {
    position: relative; /* Changed from absolute */
    width: 100%;
    height: auto; /* Changed from 100% to maintain aspect ratio */
    object-fit: contain; /* Changed from cover to contain to prevent cropping */
    display: block;
    z-index: 0;
}

.sparkle-hero-wrapper-c2d6076d .sh-placeholder {
    background-color: #e0e0e0;
}

.sparkle-hero-wrapper-c2d6076d .sh-canvas {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 1;
}