/*
Theme Name: Flatsome Child
Description: This is a child theme for Flatsome Theme
Author: UX Themes
Template: flatsome
Version: 3.0
*/

/*************** ADD CUSTOM CSS HERE.   ***************/
body {
	max-width: 100%;
	overflow: hidden;
}
.button.primary:not(.is-outline):hover {
    background-color: #84238c;
    box-shadow: none;
}
/* Container chứa ảnh bắt buộc phải có relative và overflow hidden */
.box-image {
  position: relative;
  overflow: hidden; /* Ngăn vệt sáng tràn ra ngoài khung ảnh */
  display: block; /* Hoặc set width/height tùy ý bạn */
  cursor: pointer;
}

.box-image img {
  display: block;
  width: 100%;
  height: auto;
  transition: transform 0.4s ease; /* Thêm transition nếu bạn muốn kết hợp hiệu ứng zoom */
}

/* Tạo vệt sáng lướt qua (Hiệu ứng tráng gương) */
.box-image::before {
  content: "";
  position: absolute;
  top: 0;
  left: -150%; /* Giấu vệt sáng ở bên ngoài cùng phía trái */
  width: 50%; /* Độ rộng của vệt sáng */
  height: 100%;
  /* Tạo dải màu trắng mờ ở giữa và nhạt dần ra 2 bên */
  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.5) 50%, rgba(255,255,255,0) 100%);
  transform: skewX(-25deg); /* Làm nghiêng vệt sáng để trông tự nhiên hơn */
  z-index: 2; /* Đảm bảo vệt sáng nằm trên ảnh */
  transition: left 0.6s ease-in-out; /* Thời gian và gia tốc lướt qua */
}

/* Kích hoạt vệt sáng chạy ngang khi hover */
.box-image:hover::before {
  left: 150%; /* Chạy vệt sáng sang ngoài cùng bên phải */
}

/* (Tùy chọn) Kết hợp phóng to ảnh nhẹ khi hover để sinh động hơn */
.box-image:hover img {
  transform: scale(1.05);
}

.post-item .box-image img {
    height: stretch;
}

.slider-nav-circle .flickity-prev-next-button .arrow, 
.slider-nav-circle .flickity-prev-next-button svg {
    width: 25px;
    height: 25px;
    padding: 5px;
}

.social-follow .button.icon.circle {
    border: 1px solid #fff;
    background-color: #fff;
    color: var(--primary-color);
    margin: 0 5px;
}
.button i, button i {
    top: 0;
}

.footer-wrapper .icon-box-left p {
    margin-bottom: 0;
}
.icon-box-img img, .icon-box-img svg {
    padding-top: 0;
}

/* Ép buộc hiển thị khung sao kể cả khi chưa có đánh giá */
.star-rating-below-price .star-rating {
    display: inline-block !important; /* Hoặc display: block !important tùy giao diện */
    visibility: visible !important;
    opacity: 1 !important;
    font-size: 14px; /* Chỉnh kích thước sao */
}
.term-description ul {
    margin-left: 30px;
}
.single_add_to_cart_button.button {
    text-transform: uppercase;
    margin-right: 15px;
}
.wc-buy-now-btn.wc-buy-now-btn-single {
    margin-right: 0;
    text-transform: uppercase;
    background-color: #ef0000 !important;
}
@media only screen and (min-width: 1024px) {
    .widget ul.menu > li {
        position: relative;
    }
    .widget ul > li.has-child:hover >.sub-menu{
        display:block !important;
    }
    .widget ul.menu ul.sub-menu {
        display: none !important;
        position: absolute;
        width: 100%; 
        left:99%;
        top: 0;
        z-index: 999;
        border: 1px solid #e1e1e1 !important;
        background: #fff;
        margin: 0;
        padding: 0;
    }
    .widget .toggle{
        transform: rotate(-90deg);
        margin-right: 10px;
    }
    .widget ul.menu>li li {
        padding: 2px 0;
        border-bottom: 1px solid #e1e1e1;
    }
}


/* */
body.nav-dropdown-has-border .nav-dropdown {
    border: none;
    padding: 0;
}
body.nav-dropdown-has-border .nav-dropdown a {
    padding: 10px !important;
    margin: 0 !important;
    border-radius: 0;
}
.post_comments  {
    display: none;
}
.page-title-bar {
    padding: 15px 0;
    background: #000;
}
.page-title-bar .title {
    margin-bottom: 0;
}
.page-title-bar * {
    color: #fff;
}
/* Sidebar */
.post-sidebar.col.right-sidebar {
    padding-left: 0;
}
.post-sidebar.col.left-sidebar {
    padding-right: 0;
}
#shop-sidebar .widget-title,
#product-sidebar .widget-title,
.post-sidebar .widget-title  {
    display: block;
    background: #000;
    color: #fff;
    padding: 12px 20px;
}
#shop-sidebar .is-divider,
#product-sidebar .is-divider,
.post-sidebar .is-divider {
    display: none;
}

.product_list_widget,
.post-sidebar .widget .recent-blog-posts {
    padding: 10px;
}
#shop-sidebar .widget ul.menu li > a,
#product-sidebar .widget ul.menu li > a,
.post-sidebar .widget ul.menu li > a {
    display: block;
    padding: 8px 10px;
}
#product-sidebar .widget ul.menu li > a:before,
.post-sidebar .widget ul.menu li > a:before {
    content: "\f105";
    font-family: 'fl-icons' !important;
    font-size: 15px;
    margin-right: 10px;
    color: #000;
    font-weight: bold;
}
/* */
.blog-single .article-inner > .entry-header {
    display: none;
}
/* */
.product-small.box .add-to-cart-button {
    display: none;
}
.product-small.box ins *,
.product-small.box .price > .amount * {
    color: #C71A1A;
    font-size: 16px;
}
.product-small.box del * {
    color: #999999;
    text-decoration: none;
}
.product-small.box del .amount {
    text-decoration: line-through;
}
.product-small.box .product-title a {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    line-height: 20px;
    font-size: 16px;
    margin-bottom: 6px;
}
/*.product-small.box .box-image img {
    height: 200px;
    object-fit: cover;
}*/
/* */
@-webkit-keyframes pulse {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1)
    }
    50% {
        -webkit-transform: scale(1.1);
        transform: scale(1.1)
    }
    100% {
        -webkit-transform: scale(1);
        transform: scale(1)
    }
}

@keyframes pulse {
    0% {
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1)
    }
    50% {
        -webkit-transform: scale(1.1);
        -ms-transform: scale(1.1);
        transform: scale(1.1)
    }
    100% {
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1)
    }
}
.pulse {
    transition: all 150ms linear 0s;
    animation-name: pulse;
    -webkit-animation-name: pulse;
    animation-delay: 1s;
    -webkit-animation-delay: 1s;
    animation-duration: 1s;
    -webkit-animation-duration: 1s;
    animation-iteration-count: infinite;
    -webkit-animation-iteration-count: infinite;
}

blockquote {

    font-size: 110%;
    color:#666;

    margin: 0 auto;
    border-left:0px;
    margin-left: 20px;
    padding-bottom: 50px;
}
blockquote h1 {
    font-size: 3rem;
}
blockquote p {
    font-style: italic;
    margin-bottom: 0;
}
blockquote p::before,
blockquote p::after {
    content: "“";
    font-family: Georgia;
    font-size: 6rem;
    margin: -3rem 0 0 -4rem;
    position: absolute;
    opacity: 0.5;
    color:var(--primary-color);
}
blockquote p::after {
    content: "”";
    margin: -2rem -3rem 0 0;
}
blockquote cite {
    font-size: 1.5rem;
}
.product-small.box .box-image img {
    height: 280px;
    object-fit: cover;
} 
@media only screen and (max-width: 48em) {
/*************** ADD MOBILE ONLY CSS HERE  ***************/
    .blog-archive .post-sidebar.col {
        padding: 0 15px !important;
    }
    .product-small.box .box-image img {
        height: 200px;
    }
}