/**
 * Elementor Widget Styles
 *
 * @package Clain_Vision
 */

/* Elementor Widget Container */
.elementor-widget-clain_hero .cv-hero {
    min-height: 500px;
}

.elementor-widget-clain_section .cv-section {
    padding: 80px 0;
}

/* Elementor Editor Fixes */
.elementor-editor-active .cv-nav {
    position: relative;
}

.elementor-editor-active .cv-header-top {
    position: relative;
}

/* Widget Specific Styles */
.elementor-widget-clain_hero .cv-hero-content {
    max-width: 800px;
    margin: 0 auto;
}

.elementor-widget-clain_brands .cv-brands {
    position: relative;
}

.elementor-widget-clain_diamonds .cv-diamonds {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 40px;
}

@media (min-width: 768px) {
    .elementor-widget-clain_diamonds .cv-diamonds {
        grid-template-columns: repeat(4, 1fr);
    }
}

/* Gallery Widget */
.elementor-widget-clain_gallery .cv-gallery {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
    grid-auto-rows: 200px;
}

.elementor-widget-clain_gallery .cv-gallery-item:first-child {
    grid-row: span 2;
}

.elementor-widget-clain_gallery .cv-gallery-item:nth-child(5) {
    grid-column: span 2;
}

@media (min-width: 768px) {
    .elementor-widget-clain_gallery .cv-gallery {
        grid-template-columns: repeat(4, 1fr);
        grid-auto-rows: 250px;
    }
}

/* Services Widget */
.elementor-widget-clain_services .cv-grid-4 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
}

@media (min-width: 768px) {
    .elementor-widget-clain_services .cv-grid-4 {
        grid-template-columns: repeat(4, 1fr);
    }
}

/* Social Widget */
.elementor-widget-clain_social .cv-social {
    display: grid;
    grid-template-columns: 1fr;
    gap: 40px;
    align-items: center;
}

.elementor-widget-clain_social .cv-social-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
}

@media (min-width: 1024px) {
    .elementor-widget-clain_social .cv-social {
        grid-template-columns: 1fr 2fr;
    }
    
    .elementor-widget-clain_social .cv-social-grid {
        grid-template-columns: repeat(4, 1fr);
    }
}

/* Contact Widget */
.elementor-widget-clain_contact .cv-grid-2 {
    display: grid;
    grid-template-columns: 1fr;
    gap: 40px;
}

@media (min-width: 768px) {
    .elementor-widget-clain_contact .cv-grid-2 {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* Testimonial Widget */
.elementor-widget-clain_testimonial .cv-testimonial {
    max-width: 700px;
    margin: 0 auto;
    text-align: center;
}

/* Section Widget */
.elementor-widget-clain_section .cv-grid-2 {
    display: grid;
    grid-template-columns: 1fr;
    gap: 40px;
}

@media (min-width: 1024px) {
    .elementor-widget-clain_section .cv-grid-2 {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* Icon styling for diamonds */
.cv-diamond-icon svg {
    width: 100%;
    height: 100%;
}

/* Elementor Panel Styling */
.elementor-panel .elementor-control-content .elementor-control-field {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}

/* Preview Mode */
.elementor-editor-preview .cv-nav {
    position: sticky;
}
