.elementor-widget-container .eael-protected-content-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );text-transform:var( --e-global-typography-secondary-text-transform );font-style:var( --e-global-typography-secondary-font-style );text-decoration:var( --e-global-typography-secondary-text-decoration );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-widget-container .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );text-transform:var( --e-global-typography-secondary-text-transform );font-style:var( --e-global-typography-secondary-font-style );text-decoration:var( --e-global-typography-secondary-text-decoration );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-21480 .elementor-element.elementor-element-8a2c047{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:20px;--padding-left:0px;--padding-right:0px;}.elementor-21480 .elementor-element.elementor-element-8a2c047:not(.elementor-motion-effects-element-type-background), .elementor-21480 .elementor-element.elementor-element-8a2c047 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F8FAFC;}.elementor-widget-html .eael-protected-content-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );text-transform:var( --e-global-typography-secondary-text-transform );font-style:var( --e-global-typography-secondary-font-style );text-decoration:var( --e-global-typography-secondary-text-decoration );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-widget-html .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );text-transform:var( --e-global-typography-secondary-text-transform );font-style:var( --e-global-typography-secondary-font-style );text-decoration:var( --e-global-typography-secondary-text-decoration );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}@media(max-width:1024px){.elementor-widget-container .eael-protected-content-message{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-widget-container .protected-content-error-msg{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-widget-html .eael-protected-content-message{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-widget-html .protected-content-error-msg{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}}@media(max-width:767px){.elementor-widget-container .eael-protected-content-message{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-widget-container .protected-content-error-msg{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-widget-html .eael-protected-content-message{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-widget-html .protected-content-error-msg{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}}/* Start custom CSS for html, class: .elementor-element-cad6bcc */function renderAndInitSwiper(courses) {
    if (swiper) {
        swiper.destroy(true, true);
    }

    const slidesHtml = courses.map(course => {
        const tagHtml = course.tag ? `<div class="tags-container"><span class="course-tag tag-${course.tag.type}"><i class="${course.tag.icon}"></i> ${course.tag.text}</span></div>` : '<div class="tags-container"></div>';
        const instructorPhotosHtml = course.instructors.map(name =>
            `<img src="${instructorsDb[name] || 'https://disruptivosnapratica.com/wp-content/uploads/2025/09/avatar-fran-1x1-1.png'}" alt="Foto de ${name}" title="${name}">`
        ).join('');
        const instructorNamesHtml = `<span class="instructor-names">${course.instructors.slice(0, 2).join(', ')}${course.instructors.length > 2 ? ` e +${course.instructors.length - 2}` : ''}</span>`;
        const syllabusHtml = course.syllabus.map(topic => `<li><i class="fa-solid fa-check"></i> ${topic}</li>`).join('');

        return `
            <div class="swiper-slide">
                <div class="disruptivos-car-card">
                    <div class="card-image-wrapper">
                        <img src="https://placehold.co/600x340/${Math.floor(Math.random()*16777215).toString(16)}/FFFFFF?text=${encodeURIComponent(course.title)}" alt="Capa do curso ${course.title}">
                    </div>
                    <div class="card-content">
                        ${tagHtml}
                        <h3>${course.title}</h3>
                        <p class="description">${course.description}</p>
                        <div class="instructors-wrapper">
                            <div class="instructor-photos">${instructorPhotosHtml}</div>
                            ${instructorNamesHtml}
                        </div>
                    </div>
                    <div class="card-footer">
                        <div class="course-price">${course.price === 'Grátis' ? 'Grátis' : course.price}</div>
                        <button class="details-btn">Ver detalhes</button>
                    </div>
                    <div class="card-details-overlay">
                         <button class="close-details-btn"><i class="fa-solid fa-xmark"></i></button>
                         <div class="details-content">
                             <h4>Prévia da Ementa</h4>
                             <ul class="syllabus-preview">${syllabusHtml}</ul>
                        </div>
                        <div class="details-meta">
                            <div class="meta-item">
                                <span class="label">Avaliação:</span>
                                <span class="rating">${'★'.repeat(Math.floor(course.rating))}${'☆'.repeat(5 - Math.floor(course.rating))} ${course.rating.toFixed(1)}</span>
                            </div>
                            <div class="meta-item">
                                <span class="label">Carga Horária:</span>
                                <span>${course.duration}</span>
                            </div>
                            <div class="disruptivos-one-tag">
                                <i class="fa-solid fa-star"></i> Incluso na Disruptivos ONE
                            </div>
                            <a href="${course.courseUrl}" class="access-course-btn">Acessar Página do Curso</a>
                        </div>
                    </div>
                </div>
            </div>
        `;
    }).join('');

    if (courses.length > 0) {
        coursesWrapper.innerHTML = slidesHtml;
    } else {
        coursesWrapper.innerHTML = `<div class="swiper-slide"><div style="display: flex; align-items: center; justify-content: center; width: 100%; padding: 2rem;"><p style="text-align: center; color: #475569;">Nenhum curso encontrado.</p></div></div>`;
    }

    const breakpoints = {
        640: { slidesPerView: 2.5, spaceBetween: 24 },
        1024: { slidesPerView: 3.5, spaceBetween: 24 },
        1280: { slidesPerView: 4, spaceBetween: 24 }
    };

    const slidesPerView = window.innerWidth >= 1280 ? 4 :
                          window.innerWidth >= 1024 ? 3.5 :
                          window.innerWidth >= 640 ? 2.5 : 1.3;

    const loopEnabled = courses.length > slidesPerView;

    swiper = new Swiper(carouselContainer.querySelector('.disruptivos-car-carousel'), {
        slidesPerView: slidesPerView,
        centeredSlides: true,
        spaceBetween: 16,
        grabCursor: true,
        loop: loopEnabled,
        pagination: {
            el: carouselContainer.querySelector('.swiper-pagination'),
            clickable: true,
        },
        navigation: {
            nextEl: carouselContainer.querySelector('.swiper-button-next'),
            prevEl: carouselContainer.querySelector('.swiper-button-prev'),
        },
        breakpoints: {
            640: { slidesPerView: 2.5, spaceBetween: 24, centeredSlides: true },
            1024: { slidesPerView: 3.5, spaceBetween: 24, centeredSlides: true },
            1280: { slidesPerView: 4, spaceBetween: 24, centeredSlides: true }
        }
    });

    carouselContainer.querySelectorAll('.details-btn').forEach((btn) => {
        btn.addEventListener('click', (e) => {
            e.stopPropagation();
            const card = btn.closest('.disruptivos-car-card');
            card.classList.add('show-details');
        });
    });
    carouselContainer.querySelectorAll('.close-details-btn').forEach(btn => {
        btn.addEventListener('click', (e) => {
            e.stopPropagation();
            const card = btn.closest('.disruptivos-car-card');
            card.classList.remove('show-details');
        });
    });
}

.swiper-button-next, .swiper-button-prev {
    svg {
        height: 60%;
        object-fit: contain;
        transform-origin: center;
        width: 100%;
        fill: currentColor;
        pointer-events: none;
    }
}/* End custom CSS */