/* Search results  CSS */
.search-results .blog__standard-post.type-product {
    max-width: 770px;
}
.search-results .blog__standard-post.type-product .blog__standard-content .post-text,
.search-results .blog__standard-post.type-product .blog__standard-content .post-text p {
    margin: 5px 0 0;
}
.search-results .blog__standard-post.type-product .blog-content:not(.blog-details-content) .post-text {
    margin: 0 0;
}
.search-results .blog__standard-post.type-product .blog-content .post-text p {
    margin: 0 0;
}
.search-results .blog__standard-post.type-product .blog-content .title {
    margin-bottom: 15px;
}
.mc4wp-alert {
    margin: 20px 0 0;
    text-align: center;
}
.mc4wp-alert p {
    margin: 0 0;
}
.mc4wp-success p {
    color: green;
}

/* Newsletter CF7 - layout ổn định khi có lỗi validation */
form.wpcf7-form:has(.newsletter__form) .wpcf7-response-output {
    margin: 10px 0 0;
    border-radius: 8px;
    font-size: 14px;
}

/* Ẩn khung vàng chung khi đã có lỗi dưới ô email */
form.wpcf7-form:has(.newsletter__form).invalid .wpcf7-response-output {
    display: none !important;
}

form.wpcf7-form:has(.newsletter__form) .wpcf7-spinner {
    display: none !important;
}

form.wpcf7-form:has(.newsletter__form) .newsletter__form .wpcf7-form-control-wrap {
    display: block;
    position: relative;
}

/* Ghim nút theo inset theme (6px), không dùng top:50% — tránh lệch khi form cao thêm */
form.wpcf7-form:has(.newsletter__form) .newsletter__form [type="submit"] {
    top: 6px;
    bottom: auto;
    -webkit-transform: none;
    -moz-transform: none;
    -ms-transform: none;
    -o-transform: none;
    transform: none;
}

form.wpcf7-form:has(.newsletter__form) .newsletter__form .wpcf7-not-valid-tip {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    margin: 6px 0 0;
    padding: 0 28px;
    font-size: 14px;
    line-height: 1.45;
    white-space: normal;
}

form.wpcf7-form:has(.newsletter__form) .newsletter__form:has(.wpcf7-not-valid-tip) {
    padding-bottom: 32px;
}

/* Thông báo thành công / lỗi mail — hiện lại khung xanh/đỏ */
form.wpcf7-form:has(.newsletter__form).sent .wpcf7-response-output,
form.wpcf7-form:has(.newsletter__form).failed .wpcf7-response-output,
form.wpcf7-form:has(.newsletter__form).spam .wpcf7-response-output {
    display: block !important;
}

.newsletter__form.is-submitting [type="email"] {
    opacity: 0.55;
    cursor: not-allowed;
    pointer-events: none;
    background-color: var(--tg-common-color-gray, #f0f4fc);
}

.newsletter__form.is-submitting [type="submit"] {
    cursor: wait;
    pointer-events: none;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-width: 160px;
    top: 6px;
    -webkit-transform: none;
    transform: none;
}

.newsletter__form.is-submitting [type="submit"]::before {
    content: "";
    width: 18px;
    height: 18px;
    flex-shrink: 0;
    border: 2px solid rgba(255, 255, 255, 0.35);
    border-top-color: #fff;
    border-radius: 50%;
    animation: eduvalt-newsletter-spin 0.65s linear infinite;
}

@keyframes eduvalt-newsletter-spin {
    to {
        transform: rotate(360deg);
    }
}

/* Elementor Custom CSS */
.instructor-courses-area .slick-list,
.courses-slider-active .slick-list {
    margin: 0;
    padding: 0;
}

/* Elementor Responsive */
@media (max-width: 1800px) {

}

@media (max-width: 1500px) {

}

@media (max-width: 1199.98px) {

}

@media (max-width: 991.98px){
.eduvalt-related-course .section__title-wrap .tg-button-wrap {
    margin: 30px 0 0;
}

}

@media (max-width: 767.98px) {

}

.elementor-widget-section-counter-list .row {
    align-items: stretch;
}

.elementor-widget-section-counter-list [class*="col-"] {
    display: flex;
}

.elementor-widget-section-counter-list .fact__item-two {
    width: 100%;
}

.edu-market-free-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: fit-content;
    min-height: 26px;
    padding: 5px 12px;
    border-radius: 999px;
    background: #e8f9ef;
    color: #04bc53 !important;
    font-family: var(--tg-heading-font-family, inherit);
    font-size: 14px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.02em;
    white-space: nowrap;
}

.course__price .edu-market-free-badge,
.courses__item-bottom .price .edu-market-free-badge,
.courses__item-two-thumb .course__price .edu-market-free-badge,
.product-price .edu-market-free-badge,
.shop-content .price .edu-market-free-badge {
    background: #e8f9ef;
    color: #04bc53 !important;
}

.courses__item-two-thumb .course__price:has(.edu-market-free-badge) {
    min-width: auto;
    padding: 0;
}

.courses__item-two-thumb .course__price:has(.edu-market-free-badge) svg {
    display: none;
}

.courses__item .edu-market-free-badge,
.courses__item-two .edu-market-free-badge,
.tutor-course-card .edu-market-free-badge,
.shop-content .edu-market-free-badge {
    box-shadow: none;
}

.tutor-course-list-btn .edu-market-free-badge {
    margin-bottom: 10px;
}

.woocommerce span.onsale.edu-market-free-sale,
.onsale.edu-market-free-sale {
    background: #e8f9ef !important;
    color: #04bc53 !important;
    min-width: auto;
    padding: 0 10px 0 11px;
    overflow: visible;
    text-overflow: clip;
    white-space: nowrap;
}

.woocommerce span.onsale.edu-market-free-sale::before,
.single div.product .onsale.edu-market-free-sale::before {
    background-color: #e8f9ef !important;
}

.testimonial__image-wrapper div.testimonial__image-item img {
    display: block;
    width: 100%;
    max-width: 420px;
    aspect-ratio: 1 / 1;
    height: auto;
    margin-left: auto;
    object-fit: cover;
    object-position: center top;
    border-radius: 50%;
}

@media (max-width: 767.98px) {
    .testimonial__image-wrapper div.testimonial__image-item img {
        max-width: 100%;
    }
}

.instructor__img {
    height: 290px;
    display: flex;
    justify-content: center;
    align-items: flex-end;
}

.instructor__img img {
    display: block;
    width: 220px;
    max-width: 100%;
    height: 290px !important;
    object-fit: cover;
    object-position: center top;
}

.instructor__desc,
.mentors__desc {
    margin-top: 12px;
    color: #5a7093;
    font-size: 15px;
    line-height: 1.6;
}

.instructor__desc p:last-child,
.mentors__desc p:last-child {
    margin-bottom: 0;
}

.instructor__desc p {
    margin-bottom: 0;
}

