/* Gradient Heading Styles */
.elementor-gradient-heading {
    display: inline-block;
    background-clip: text !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-size: 100% !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    transition: all 0.3s ease;
}

/* Fallback for browsers that don't support background-clip: text */
@supports not (background-clip: text) or not (-webkit-background-clip: text) {
    .elementor-gradient-heading {
        background: none !important;
        -webkit-text-fill-color: inherit !important;
    }
}

/* Firefox fallback */
@-moz-document url-prefix() {
    .elementor-gradient-heading {
        background: none !important;
        -webkit-text-fill-color: inherit !important;
    }
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .elementor-gradient-heading {
        background-size: 100% 100% !important;
    }
}

/* Animation support */
.elementor-gradient-heading.elementor-gradient-animated {
    background-size: 200% 100% !important;
    animation: gradient-shift 3s ease infinite;
}

@keyframes gradient-shift {
    0% {
        background-position: 0% 50%;
    }
    50% {
        background-position: 100% 50%;
    }
    100% {
        background-position: 0% 50%;
    }
}

/* Editor specific styles */
.elementor-editor-active .elementor-gradient-heading {
    background-size: 100% !important;
    background-attachment: local !important;
}

/* High DPI display support */
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .elementor-gradient-heading {
        background-size: 100% 100% !important;
    }
}

/* Print styles */
@media print {
    .elementor-gradient-heading {
        background: none !important;
        -webkit-text-fill-color: inherit !important;
        color: inherit !important;
    }
}

/* Accessibility improvements */
.elementor-gradient-heading:focus {
    outline: 2px solid currentColor;
    outline-offset: 2px;
}

/* Performance optimizations */
.elementor-gradient-heading {
    will-change: background-position;
    transform: translateZ(0);
    backface-visibility: hidden;
}

/* RTL support */
.rtl .elementor-gradient-heading {
    direction: rtl;
}

/* Dark mode support */
@media (prefers-color-scheme: dark) {
    .elementor-gradient-heading {
        filter: brightness(1.2);
    }
}

/* Reduced motion support */
@media (prefers-reduced-motion: reduce) {
    .elementor-gradient-heading.elementor-gradient-animated {
        animation: none;
    }
}
