/**
 * Theme Name:     Hiroshi Lord
 * Author:         Hiroshi Lord
 * Template:       flatsome
 * Description:    Theme Build by Hiroshi Lord
 * Version:        2025
 */

/* DEFAULT NO BORDER AND LINE-THROUGH */
.section-title-center b {
  opacity: 0;
}

.section-title-normal {
  border-bottom: none;
}

.section-title-normal span {
  border-bottom: none;
}

.text-cap {
  span {
    text-transform: capitalize;
  }
}

.border-radius {
  border-radius: 8px;
  overflow: hidden;

  img {
    border-radius: 8px;
  }
}

.sec-footer {
  .custom-menu-white .ux-menu-link__text {
    color: #ffff !important;
    text-align: left !important;
  }
}

.text-overflow {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  /* Giới hạn tối đa 2 dòng */
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  /* Hiện dấu ... nếu vượt quá */
  white-space: normal;
  /* Cho phép xuống dòng */

  a {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    /* Giới hạn tối đa 2 dòng */
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    /* Hiện dấu ... nếu vượt quá */
    white-space: normal;
    /* Cho phép xuống dòng */
  }
}

/*
Css menu đa cấp cho Flatsome
Author: levantoan.com
*/
@media (min-width: 850px) {
  header#header .nav-dropdown {
    display: block;
    min-width: 235px;

    .menu-item-has-children {
      position: relative;

      &::after {
        content: '\f105';
        font-family: 'Font Awesome 7 Free';
        font-weight: 900;
        position: absolute;
        right: 20px;
        top: 50%;
        transform: translateY(-50%);
        color: rgba(74, 74, 74, .85);
      }

      &:hover::after {
        color: #fff;
      }
    }
  }

  header#header .nav-dropdown ul.sub-menu {
    position: absolute;
    left: 100%;
    top: 0;
    background: #fff;
    /* width: max-content; */
    min-width: 235px;
    padding: 20px 0;
    display: none !important;
    border-radius: 5px;
    -webkit-box-shadow: 1px 1px 15px rgb(0 0 0 / 15%);
    box-shadow: 1px 1px 15px rgb(0 0 0 / 15%);
  }

  header#header .nav-dropdown ul.sub-menu a {
    white-space: normal;
    margin: 0;
    margin: 0 10px;
    border: 0;
    font-weight: 500;
  }

  header#header .nav-dropdown li:hover>ul.sub-menu {
    display: block !important;
  }

  header#header .nav-dropdown li {
    border-right: 0;
    white-space: normal;
    width: 100%;
    display: block;
    position: relative;
  }

  header#header .nav-dropdown li.menu-item-has-children>a {
    font-weight: 500;
    font-size: unset;
    text-transform: none;
    color: rgba(74, 74, 74, .85);

  }

  header#header .nav-dropdown li.active>a {
    color: #e82c2a;
  }
}

.d-none {
  display: none !important;
}

.btn-custom {
  border-radius: 16px !important;
  border: 2px solid #FFF !important;
  background: var(--fs-color-primary) !important;
  padding: 4px 32px !important;
  overflow: hidden !important;
  box-shadow: none !important;

  &:hover {
    box-shadow: 0 4px 12px 0 rgba(255, 15, 9, 0.60) !important;
  }
}

.post-item {
  .col-inner {
    padding: 4px 4px 20px 4px;
    border-radius: 24px;
    border: 1px solid #ECECEC;
    background: #FFF;
    box-shadow: 0 4px 10px 0 rgba(0, 0, 0, 0.10);
    overflow: hidden;
    height: 100%;

    .box {
      .box-image {
        border-radius: 24px;
        overflow: hidden;
      }

      .box-text {
        padding: 16px 8px 0px 8px;

        .is-divider {
          display: none;
        }

        a {
          color: #181818;
          font-size: 18px;
          font-style: normal;
          font-weight: 600;
          line-height: 130%;
          display: -webkit-box;
          -webkit-line-clamp: 2;
          -webkit-box-orient: vertical;
          overflow: hidden;
          text-overflow: ellipsis;
          white-space: normal;
        }
      }
    }
  }
}

.single-post {
  .blog-single {
    padding: 0;
  }

  .post {
    padding-bottom: 0;
    margin-bottom: 0;

    .entry-header {
      display: none;
    }

    .entry-content {
      padding-bottom: 0;
    }
  }
}

/* END */
.sec-why-home {
  .stack-why {
    @media screen and (max-width:768px) {
      flex-direction: column;

      .row {
        width: 100%;

        .icon-box-why {
          .col-inner {
            height: 180px !important;
          }
        }
      }
    }

    .row {
      flex: 1;

      .icon-box-why {
        .col-inner {
          border-radius: 8px;
          overflow: hidden;
          height: 200px;
          padding: 16px 8px;
          box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;

          .icon-box {
            h3 {
              font-size: 16px;
            }
          }

          &:hover {
            background-color: var(--fs-color-primary);
            border-radius: 8px;
            cursor: pointer;

            .icon-box {
              .icon {
                img {
                  filter: brightness(0) invert(1);
                }
              }

              h3 {
                color: #fff;
              }
            }
          }
        }
      }
    }
  }
}

.custom-products {
  .col {
    .col-inner {
      border-radius: 8px;
      overflow: hidden;
      border: 1px solid #fff;
      border-bottom: 4px solid #fff;
      box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;

      .add_to_cart_button {
        padding: 4px 16px 4px 36px;
        text-transform: unset;
        border-radius: 4px;
        overflow: hidden;
        position: relative;
        font-size: 14px;

        &::before {
          content: '\f07a';
          position: absolute;
          font-family: 'Font Awesome 7 Free';
          font-weight: 900;
          top: 4px;
          left: 10px;
          width: 20px;
          height: 100%;
        }
      }

      &:hover {

        box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
        border-bottom: 4px solid var(--fs-color-primary);
      }
    }
  }
}

.products>.product-small,
.related-products-wrapper .product-small.col {
  .col-inner {
    border-radius: 8px;
    overflow: hidden;
    border: 1px solid #fff;
    border-bottom: 4px solid #fff;
    box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
    height: 100%;

    .add_to_cart_button {
      padding: 4px 16px 4px 36px;
      text-transform: unset;
      border-radius: 4px;
      overflow: hidden;
      position: relative;
      font-size: 14px;

      &::before {
        content: '\f07a';
        position: absolute;
        font-family: 'Font Awesome 7 Free';
        font-weight: 900;
        top: 4px;
        left: 10px;
        width: 20px;
        height: 100%;
      }
    }

    &:hover {

      box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
      border-bottom: 4px solid var(--fs-color-primary);
    }
  }
}

.sec-footer {
  .ux-logo {
    width: 40px !important;

    .ux-logo-link {
      padding: 5px !important;
    }
  }

  .custom-text-footer {
    p {
      margin-bottom: 5px;
    }
  }
}

#shop-sidebar,
#product-sidebar {
  .widget_product_categories {
    background-color: #fff;
    box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
    border-radius: 8px;
    overflow: hidden;

    .is-divider {
      display: none;
    }

    .widget-title {
      background: var(--fs-color-primary);
      display: flex;
      justify-content: center;
      padding: 16px;
      color: #fff;
    }

    .product-categories {

      /* padding: 16px 12px; */
      .cat-item {
        padding: 4px 16px;

        &.active {
          /* background-color: var(--fs-color-primary); */

          a {
            color: var(--fs-color-primary);
          }
        }
      }
    }
  }
}


.shop-container {
  .product-short-description {
    table {
      width: 100%;
    }
  }

  .product-main {
    .large-9 {
      border-left: none !important;
    }
  }

  .product-page-price {
    span.amount {
      color: var(--fs-color-primary);
      font-size: 32px;
    }
  }

  form.cart {
    button.single_add_to_cart_button {
      background-color: white;
      color: var(--fs-color-primary);
      border-radius: 4px;
      overflow: hidden;
      font-weight: 400;
      border: 1px solid var(--fs-color-primary);

      &:hover {
        box-shadow: none;
      }
    }

    .ux-buy-now-button {
      background-color: var(--fs-color-primary);
      color: #fff;
      border-radius: 4px;
      overflow: hidden;
      font-weight: 400;
      border: 1px solid var(--fs-color-primary);

      &:hover {
        box-shadow: none;
      }
    }
  }
}

.added_to_cart.wc-forward {
  background-color: var(--fs-color-primary);
  color: #fff;
  border-radius: 4px;
  overflow: hidden;
  text-transform: unset;
  font-weight: 400;
  border: 1px solid var(--fs-color-primary);
  padding: 10px 16px;
  margin-top: 12px !important;
}

#content {
  .woocommerce {
    padding-top: 50px;
  }
}


.ncvn-checkout {

  input,
  textarea {
    box-shadow: none !important;
    height: 45px;

    &:focus {
      box-shadow: none;
    }
  }

  .payment-card {
    i {
      width: 100%;
    }
  }
}