/**
 * elementor-overrides.css
 * Elementor ile tema stil çakışmalarını giderir.
 * Orijinal tema CSS'ini bozmaz, sadece Elementor context'inde override eder.
 */

/* Animsition opacity fix: Elementor sayfalarında animsition JS çalışmadığında
   sayfa opacity:0'da kalıyor. Bu override sayfa görünürlüğünü garanti eder. */
.animsition {
    opacity: 1 !important;
    -webkit-animation: none !important;
    animation: none !important;
}
.animsition-overlay-slide {
    display: none !important;
}
.animsition-loading {
    display: none !important;
}

/* Elementor canvas sayfalarda body padding sıfırla */
.elementor-page .site-main,
body.elementor-page #body-content {
    padding: 0 !important;
    margin: 0 !important;
}

/* Elementor section'larında bootstrap grid sınıflarını koru */
.elementor-section .row {
    margin-left: -15px;
    margin-right: -15px;
}

/* Elementor widget başlıklarını tema ile uyumlu hale getir */
.elementor-widget-heading .elementor-heading-title {
    font-family: 'Poppins', sans-serif;
}

/* Elementor editor'de tema overlay'lerini kapat */
.elementor-editor-active .cover {
    pointer-events: none;
}

/* Full-width template için */
.page-template-templates-template-fullwidth #body-content,
.page-template-templates-template-home #body-content {
    width: 100%;
}

/* ── Elementor Lazy-Load Background Fix ─────────────────────────
   Elementor Pro, henüz viewport'a girmeyen container'ların
   background-image'ını none yapıyor. Sepia hero section'ları
   için bunu devre dışı bırakıyoruz. */
.e-con.e-parent:nth-of-type(n+4):not(.e-lazyloaded):not(.e-no-lazyload),
.e-con.e-parent:nth-of-type(n+4):not(.e-lazyloaded):not(.e-no-lazyload) * {
    background-image: unset !important;
}
.elementor-section:not(.e-lazyloaded) {
    background-image: unset !important;
}
/* Hero section: Elementor'ın CSS'ini override et */
.elementor-element.elementor-section > .elementor-background-overlay,
.elementor-element.elementor-section {
    background-image: var(--background-image, unset);
}
/* Tüm Elementor section'larında background render edilsin */
[data-settings*="background_background"] {
    background-image: unset !important;
}

/* ── Contact Section Split-Box Fix ──────────────────────────────
   Widget inline style ile layout sağlıyor. Mobil responsive: */
@media (max-width: 991px) {
    #contact-section .split-box [style*="flex:0 0 50%"] {
        flex: 0 0 100% !important;
        max-width: 100% !important;
    }
    #contact-section .split-box .bg-image[style*="flex:0 0 50%"] {
        min-height: 400px;
    }
}
/* Contact form CF7 inputları orijinal HTML'deki gibi stillendir */
#contact-section .wpcf7 input[type="text"],
#contact-section .wpcf7 input[type="email"],
#contact-section .wpcf7 textarea,
#contact-section .wpcf7 select {
    width: 100%;
    padding: 10px 15px;
    border: 1px solid #ddd;
    font-family: 'Poppins', sans-serif;
    font-size: 14px;
    font-weight: 300;
}
#contact-section .wpcf7 .form-row {
    margin-bottom: 15px;
}
#contact-section .wpcf7 .form-row label {
    display: none;
}
#contact-section .wpcf7 .submit-row input[type="submit"] {
    background-color: #c0392b;
    color: #fff;
    border: none;
    padding: 12px 30px;
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-top: 20px;
}


/* ── Product SEO Content Section ────────────────────────────────
   post_content (SEO descriptions, specs) displayed below gallery */
.product-seo-content {
    font-family: 'Poppins', sans-serif;
    font-size: 15px;
    line-height: 1.8;
    color: #555;
    padding: 40px 0 60px;
}
.product-seo-content h2 {
    color: #222;
    font-size: 20px;
    font-weight: 500;
    margin-top: 35px;
    margin-bottom: 15px;
    padding-bottom: 8px;
    border-bottom: 1px solid #f0f0f0;
}
.product-seo-content h3 {
    color: #333;
    font-size: 16px;
    font-weight: 500;
    margin-top: 25px;
    margin-bottom: 10px;
}
.product-seo-content p {
    margin-bottom: 15px;
}
.product-seo-content ul,
.product-seo-content ol {
    padding-left: 20px;
    margin-bottom: 15px;
}
.product-seo-content a {
    color: #c0392b;
    text-decoration: none;
}
.product-seo-content a:hover {
    text-decoration: underline;
}

/* TOC (Table of Contents) */
.product-seo-content .ncl-toc {
    background: #f9f9f9;
    border: 1px solid #eee;
    border-radius: 4px;
    padding: 20px 25px;
    margin-bottom: 30px;
}
.product-seo-content .ncl-toc h2 {
    font-size: 16px;
    font-weight: 600;
    margin: 0 0 12px;
    padding: 0;
    border: none;
    color: #333;
}
.product-seo-content .ncl-toc ul {
    list-style: none;
    padding: 0;
    margin: 0;
}
.product-seo-content .ncl-toc li {
    padding: 4px 0;
    border-bottom: 1px solid #f0f0f0;
}
.product-seo-content .ncl-toc li:last-child {
    border-bottom: none;
}
.product-seo-content .ncl-toc a {
    color: #555;
    font-size: 14px;
}
.product-seo-content .ncl-toc a:hover {
    color: #c0392b;
}

/* Technical Specs Table */
.product-seo-content table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 25px;
    font-size: 14px;
}
.product-seo-content table th,
.product-seo-content table td {
    padding: 10px 15px;
    border: 1px solid #eee;
    text-align: left;
}
.product-seo-content table th {
    background: #f8f8f8;
    font-weight: 500;
    color: #333;
    width: 35%;
}
.product-seo-content table td {
    color: #555;
}

/* Product description section separator */
#product-description-section {
    margin-top: 0;
}

/* ── Elementor Container Overrides ──────────────────────────────
   Elementor container'ları tema ile uyumlu hale getirir.
   Migration sonrası sayfaların düzgün görünmesini sağlar. */

/* Elementor full-width container'larda padding sıfırla */
.elementor .e-con.e-parent[data-settings*='"content_width":"full"'] {
    --padding-top: 0px;
    --padding-right: 0px;
    --padding-bottom: 0px;
    --padding-left: 0px;
}

/* Elementor sayfalarında tema carousel/isotope widget'ları düzgün çalışsın */
.elementor-widget-nucos-category-carousel,
.elementor-widget-nucos-product-grid {
    width: 100%;
}

/* Elementor container içindeki product-seo-content */
.elementor .product-seo-content {
    max-width: 1200px;
    margin: 0 auto;
}

/* Elementor sayfalarında page-header widget tam genişlik */
.elementor-widget-nucos-page-header {
    width: 100%;
    margin: 0;
    padding: 0;
}

/* Elementor editor'de carousel preview düzeltmesi */
.elementor-editor-active .gallery-list-carousel {
    min-height: 300px;
}
.elementor-editor-active .owl-carousel .cc-item {
    min-height: 300px;
}

/* Elementor container içindeki heading widget'ları tema ile uyumlu */
.elementor .product-seo-content .elementor-widget-heading .elementor-heading-title {
    font-family: 'Poppins', sans-serif;
}
.elementor .product-seo-content .elementor-heading-title[class*="elementor-size-"] {
    color: #222;
    font-weight: 500;
    margin-top: 35px;
    margin-bottom: 15px;
    padding-bottom: 8px;
    border-bottom: 1px solid #f0f0f0;
}
.elementor .product-seo-content h2.elementor-heading-title {
    font-size: 20px;
}
.elementor .product-seo-content h3.elementor-heading-title {
    font-size: 16px;
    border-bottom: none;
}

/* Elementor text-editor widget'ı product-seo-content içinde */
.elementor .product-seo-content .elementor-widget-text-editor {
    font-size: 15px;
    line-height: 1.8;
    color: #555;
}
