/**
* Theme Name:     Hiroshi Lord
* Author:         Hiroshi Lord
* Template:       flatsome
* Text Domain:	   k-tech
* Description:    Theme Build by Hiroshi Lord
* Version:        2025
*/

:root {
  --b-radius: 25px;
  --text-hover: rgb(66, 168, 223);
  --font-aw: "Font Awesome 5 Free";
  --font-w: 900;
  --icon-r: "\f061";
}
/* 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;
}
.header-main {
  .header-nav.header-nav-main {
    justify-content: center;
  }
}
.text-cap {
  span {
    text-transform: capitalize;
  }
}
.border-radius {
  border-radius: var(--b-radius);
  overflow: hidden;
}
.icon-angle-right {
  &::before {
    content: var(--icon-r);
    font-family: var(--font-aw);
    font-weight: var(--font-w);
  }
}
a.button:hover {
  box-shadow: none;
}
.sec-footer {
  ul li {
    list-style-type: none;
    margin-left: 0;
  }
  .custom-menu .ux-menu-link__text {
    color: #ffff !important;
    text-align: left !important;
  }
  .newsletter {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background-color: #fff;
    height: 62px;
    border-radius: 99px;
    .wpcf7-form-control-wrap {
      height: 60px;
      input {
        margin-bottom: 0;
        border-radius: 99px;
        height: 60px;
        border: none;
        box-shadow: none;
      }
    }
    p:nth-last-of-type(1) {
      padding: 2px;
    }
    button {
      display: flex;
      height: 60px;
      width: 60px;
      flex-shrink: 0;
      align-items: center;
      justify-content: center;
      border-radius: 9999px;
      --tw-bg-opacity: 1;
      background-color: rgb(129 76 253);
      margin-bottom: 0;
      margin-right: 0;
      svg {
        height: 20px;
        width: 20px;
      }
    }
  }
}
#ajaxsearchlite1 {
  /* height: 55px; */
  .probox {
    align-items: center;
    /* height: 50px; */
    padding: 12px 4px 12px 10px;
    .promagnifier {
      height: 45px;
      width: 45px;
      background-color: var(--fs-color-primary);
      border-radius: 50%;
      .innericon {
        svg {
          fill: #fff;
        }
      }
    }
  }
}
.post-item {
  .box-blog-post {
    .box-image {
      .image-cover {
        border-radius: 16px;
        overflow: hidden;
      }
    }

    .box-text {
      .is-divider {
        display: none;
      }
      a.button {
        color: #814cfd !important;
        height: 40px;
        line-height: 40px;
        border-radius: var(--b-radius);
        border: 1px solid #814cfd !important;
        position: relative;
        &::after {
          content: var(--icon-r);
          font-family: var(--font-aw);
          font-weight: var(--font-w);
        }
        &:hover {
          color: #fff !important;
          background-color: var(--text-hover) !important;
          border: none !important;
        }
      }
    }
  }
}

.pcd-wrap {
  display: none;
  align-items: center;
  justify-content: space-between;
  .pcd-cats {
    font-weight: 600;
    text-transform: uppercase;
    color: #333 !important ;
    a {
      color: #333 !important;
      &:hover {
        color: var(--text-hover) !important;
      }
    }
  }
}
.hidden-archive {
  .archive-page-header {
    display: none;
  }
  .archive-title-custom {
    position: relative;
    span {
      text-transform: uppercase;
      background: white;
      position: relative;
      padding-right: 10px;
      z-index: 1;
    }
    &::after {
      content: "";
      position: absolute;
      top: 50%;
      right: 0px;
      width: 100%;
      height: 1px;
      background-color: #e9e0ff;
    }
  }
}
.blog-wrapper.blog-single {
  .col {
    padding-bottom: 0;
    .entry-header {
      .entry-header-text {
        padding-bottom: 0 !important;
        text-align: center !important;
      }
      .entry-divider {
        display: none;
      }
    }

    .single-page {
      padding-bottom: 0;
    }
  }
}
.badge-container {
  left: 12px;
  .badge {
    height: 100% !important;
    .badge-inner.on-sale {
      padding: 8px 8px !important;
      .onsale {
        font-size: 14px !important;
      }
    }
  }
}

.product-small {
  .box-image {
    border-radius: 14px;
    overflow: hidden;
    .image-tools.hover-slide-in {
      display: none;
    }
  }
  .box-text {
    max-width: 95%;
    border-radius: 14px;
    box-shadow: 10px 10px 30px 0px #0000000f;
    text-align: left !important;
    .price-wrapper,
    .add-to-cart-button {
      display: none;
    }
    .woocommerce-loop-product__title {
      font-size: 16px;
      font-weight: 600;
      color: #333;
      a {
        display: -webkit-box;
        -webkit-line-clamp: 1; /* 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 */
      }
    }
    .pcard {
      .pcard-price {
        ins {
          span.amount {
            color: var(--fs-color-primary) !important;
          }
        }
      }
      .pcard-content {
        display: flex;
        align-items: center;
        justify-content: space-between;
        .op-0 {
          opacity: 0;
        }

        .pcard-rating-badge {
          .rb-star {
            color: #ffb800;
          }
        }
        .pcard-actions {
          display: flex;
          align-items: center;
          justify-content: center;
          .button.add_to_cart_button,
          .added_to_cart.wc-forward {
            background-color: #fff !important;
            border: 1px solid #0011af40;
            text-transform: capitalize;
            border-radius: var(--b-radius);
            color: #333;
            padding: 8px 14px !important;
            font-size: 12px;
            margin: 0 !important;
            height: 48px;
            line-height: 28px;
          }
          .pcard-plus {
            width: 48px;
            height: 48px;
            border-radius: 50%;
            border: 1px solid #0011af40;
            background-color: #fff;
            color: #333 !important;
            display: flex;
            align-items: center;
            justify-content: center;
            i {
              margin-right: 0;
            }
          }
        }
      }
    }
  }
}
.col-inner-product-k,
.content-product-k {
  &:hover {
    .box-text {
      background-color: var(--fs-color-primary);
      color: #fff;
      .woocommerce-loop-product__link {
        color: #fff;
      }
      .woocommerce-Price-amount {
        color: #fff;
      }
      .pcard-price {
        ins {
          span.amount {
            color: #fff !important;
          }
        }
      }
      .pcard-plus {
        i::before {
          content: "\f07a";
        }
      }
    }
  }
}
.product-by-link-cat {
  .row {
    @media screen and (max-width: 768px) {
      .col {
        flex-basis: 100%;
        max-width: 100%;
      }
    }
  }
}
.custom-category-page-row {
  padding-top: 0;
  section {
    padding: 30px 0 0 !important;
  }
}
/* END */
.absolute-footer {
  background-color: var(--text-hover);
  padding: 10px 0;
  .footer-primary {
    width: 100%;
    .sec-footer-secondary {
      .row {
        display: flex;
        align-items: center;
        .social-icons {
          @media screen and (max-width: 768px) {
            text-align: center !important;
            margin-top: 10px;
          }
          a {
            margin-bottom: 0px;
          }
        }
      }
      p {
        margin-bottom: 0;
      }
    }
  }
}
.custom-h3 {
  .section-title {
    @media screen and (max-width: 768px) {
      text-align: center !important;
      display: flex;
      align-items: center;
      justify-content: center;
    }
    span {
      font-size: 3rem;

      @media screen and (max-width: 768px) {
        font-size: 30px;
        margin-bottom: 0;
      }
    }
  }
}
.button.white {
  color: #333 !important;
  &:hover {
    background-color: var(--text-hover) !important;
    color: #fff !important;
  }
}
a.border-plum {
  color: #814cfd !important;
  border: 1px solid #814cfd !important;
  &:hover {
    color: #fff !important;
    background-color: var(--text-hover) !important;
    border: none !important;
  }
}
.custom-text-link {
  @media screen and (max-width: 768px) {
    padding-bottom: 10px;
    .section-title-main {
      font-size: 20px !important;
    }
  }
  a {
    color: #814cfd !important;
    border: 1px solid #814cfd !important;
    padding: 8px 1.2em;
    border-radius: var(--b-radius);
    &:hover {
      color: #fff !important;
      background-color: var(--text-hover) !important;
      border: none !important;
    }
  }
}
.sec-count-down {
  padding: 15px;
  .section-content {
    background-image: url("../../uploads/2025/09/Group-1413374634-1.png");
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: var(--b-radius);
    overflow: hidden;
    .row {
      margin: auto !important;
      .col {
        padding-bottom: 0 !important;
        .section-title {
          margin-bottom: 0 !important;
        }
      }
    }
  }
}

/* HOME */

.sec-one-home {
  .large-7 {
    @media screen and (max-width: 768px) {
      .col-inner .banner {
        height: 400px !important;
        .text {
          padding: 8px;
          h2 span {
            font-size: 26px !important;
          }
        }
        a.button {
          margin-right: 0 !important;
          width: 100%;
        }
      }
    }
    .pro-1 {
      padding-bottom: 0;
      @media screen and (max-width: 768px) {
        padding-bottom: 30px;
      }
      .col-inner {
        background-image: url("../../uploads/2025/09/Frame-1413374536-3.png");
        background-position: center;
        background-repeat: no-repeat;
        background-size: cover;
        padding: 30px;
        border-radius: var(--b-radius);
        color: #fff;
        h4 {
          color: #fff;
          text-transform: uppercase;
          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 */
        }
      }
    }
    .pro-2 {
      padding-bottom: 0;
      .col-inner {
        background-image: url("../../uploads/2025/09/Frame-1413374535.png");
        background-position: center;
        background-repeat: no-repeat;
        background-size: cover;
        padding: 30px;
        border-radius: var(--b-radius);
        color: #fff;
        h4 {
          color: #fff;
          text-transform: uppercase;
          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 */
        }
      }
    }

    .btn-icon {
      font-size: 0;
      height: 50px;
      width: 50px;
      position: relative;
      border: none !important;
      border-radius: 50% !important;
      overflow: hidden;
      &:hover {
        &::before {
          background-color: var(--text-hover);
          border-radius: 50%;
          color: #fff;
          transform: rotate(45deg);
          transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
        }
      }
      &::before {
        content: "\2b";
        font-family: var(--font-aw);
        font-weight: var(--font-w);
        position: absolute;
        left: 0;
        right: 0;
        bottom: 0;
        height: 100%;
        width: 100%;
        color: #333;
        font-size: 24px;
        display: flex;
        align-items: center;
        justify-content: center;
      }
    }
  }
  .large-5 {
    .col-inner {
      background-image: url("../../uploads/2025/09/bg-2.png");
      background-position: center;
      background-repeat: no-repeat;
      background-size: cover;
      padding: 30px;
      border-radius: var(--b-radius);
      color: #fff;
      height: 100%;
      @media screen and (max-width: 768px) {
        height: 400px !important;
      }
      .slider-wrapper {
        height: 100%;
        .slider {
          height: 100%;
          .flickity-viewport {
            height: 100% !important;
            .img {
              height: 100%;
              .img-inner {
                height: 100%;
                img {
                  height: 100%;
                }
              }
            }
          }
        }
      }
    }
  }
}

.sec-three-home {
  .col-inner {
    height: 100%;
    border-radius: var(--b-radius);
    overflow: hidden;
    .banner {
      height: 100%;
      @media screen and (max-width: 768px) {
        height: 400px !important;
        .text {
          padding: 8px;
          h2 span {
            font-size: 26px !important;
          }
        }
        a.button {
          margin-right: 0 !important;
          width: 100%;
        }
      }
    }
    .text-hover-color {
      cursor: pointer;
      &:hover {
        .text {
          h3 {
            color: var(--text-hover);
          }
        }
      }
      h3 {
        font-size: 32px;
      }
    }
  }
}

.sec-six-home {
  .cat-1 {
    & > .col-inner {
      padding: 30px 30px 0;
      background-image: url("../../uploads/2025/09/Frame-1413374535.png");
      border-radius: var(--b-radius);
      overflow: hidden;
      color: #fff;
      height: 100%;
    }
  }
  .cat-2 {
    & > .col-inner {
      padding: 30px 30px 0;
      background-image: url("../../uploads/2025/09/Frame-1413374536-1-e1721984313708.png");
      border-radius: var(--b-radius);
      overflow: hidden;
      color: #fff;
      height: 100%;
    }
  }
  .large-12 {
    .col-inner .banner {
      border-radius: var(--b-radius);
      overflow: hidden;
    }
  }
  @media screen and (max-width: 768px) {
    .col-inner .banner {
      height: 760px !important;
      padding-top: 0;
      border-radius: var(--b-radius);
      overflow: hidden;
      .col {
        padding-bottom: 0 !important;
        .img-inner {
          transform: translateY(24px);
        }
      }
    }
  }
}

/* PAGE ABOUT US */

.sec-three-about {
  .section-content {
    padding: 0 15px;
    .row-img {
      background-image: url("../../uploads/2025/09/bg-4.svg");
      background-color: #814cfd;
      background-position: center;
      background-repeat: no-repeat;
      background-size: cover;
      border-radius: var(--b-radius);
      overflow: hidden;
    }
  }
}

.sec-five-about {
  .border-icon {
    .box-image {
      background-color: var(--text-hover);
      border-radius: 50%;
      overflow: visible;
      z-index: 1;
      div {
        padding: 16px;
        position: relative;
        &::before {
          content: "";
          background-image: url(../../uploads/2025/09/icon1.png);
          position: absolute;
          background-repeat: no-repeat;
          top: -6px;
          left: -8px;
          background-position: center;
          right: 0;
          width: 100%;
          height: 100%;
          background-size: contain;
        }
      }
    }
    .box-text {
      background-image: url("../../uploads/2025/09/bg-4.svg");
      background-color: #814cfd;
      background-position: center;
      background-repeat: no-repeat;
      background-size: cover;
      border-top-right-radius: 50px;
      border-bottom-left-radius: 50px;
      padding-top: 5rem;
      transform: translateY(-48px);
      font-size: 30px;
    }
  }
}

.sec-six-about {
  .border-gallery-img {
    .box-image {
      border-radius: 16px;
      overflow: hidden;
    }
  }
}

/* PAGE NEWS */
.sec-one-news {
  .custom-search {
    border: 1px solid rgb(201 233 251);
    border-radius: 25px;
    /* overflow: hidden; */
    padding: 2px;
    height: 55px;
    input {
      height: 50px;
      border-radius: 25px;
      overflow: hidden;
      border: none;
      box-shadow: none;
    }
    .flex-col {
      &:last-child {
        border-radius: 50% !important;
        height: 50px;
        width: 51px;
        button.ux-search-submit {
          border-radius: 50% !important;
          height: 50px;
          width: 50px;
          background-color: var(--fs-color-primary) !important;
        }
      }
    }
  }
  .post-item {
    .box-blog-post {
      .pcd-wrap {
        display: flex;
      }
      .box-image {
        border-radius: 16px;
        overflow: hidden;
      }

      .box-text {
        .is-divider {
          display: none;
        }
        a.button {
          color: #814cfd !important;
          height: 40px;
          line-height: 40px;
          border-radius: var(--b-radius);
          border: 1px solid #814cfd !important;
          position: relative;
          &::after {
            content: var(--icon-r);
            font-family: var(--font-aw);
            font-weight: var(--font-w);
          }
          &:hover {
            color: #fff !important;
            background-color: var(--text-hover) !important;
            border: none !important;
          }
        }
      }
    }
  }
}

.sec-two-news {
  .post-item {
    .box-blog-post {
    }
  }
}

/* PAGE SHOP */
.sec-one-shop {
  .slider-wrapper {
    border-radius: var(--b-radius);
    overflow: hidden;
  }
}
.sec-two-shop {
  .boxt-text-none {
    .box-text {
      display: none !important;
    }
  }
}

.sec-four-shop {
  padding: 15px !important;
  .section-content {
    background: linear-gradient(to right, #814cfd 17%, #0098e1 100%);
    border-radius: 25px;
    overflow: hidden;
    .row {
      align-items: stretch !important;
      .col {
        padding-bottom: 0;
        padding-right: 0;
        padding-left: 0;
        @media screen and (max-width: 768px) {
          .col {
            padding-left: 0 !important;
          }
        }
      }
      .img-svg {
        background-image: url("../../uploads/2025/09/bg-4.svg");
        background-position: center;
        background-repeat: no-repeat;
        background-size: cover;
        .col-inner {
          height: 100%;
          display: flex;
          align-items: start;
          flex-direction: column;
          justify-content: center;
        }
        .img.has-hover {
          margin-bottom: 0 !important;
        }
      }
    }
  }
}

.ux-timer {
  span {
    padding: 30px !important;
    strong {
      display: none !important;
    }
  }
}

/* SINGLE PRODUCT */
.sec-one-single-product {
  padding: 15px;
  .section-content {
    background-color: #eff6fe;
    padding: 20px;
    border-radius: var(--b-radius);
    overflow: hidden;
    @media screen and (max-width: 768px) {
      padding: 0;
    }
    .row {
      align-items: stretch;
      .col-inner {
        height: 100%;
        border-radius: var(--b-radius);
        overflow: hidden;
        .k-stock-pill {
          --k-pill-bg: #eefaf2; /* nền mặc định (còn hàng) */
          --k-pill-text: #22a35a; /* màu chữ giá trị (còn hàng) */
          display: inline-flex;
          align-items: center;
          gap: 0.35em;
          padding: 0.6rem 1rem;
          border-radius: 999px;
          background: var(--k-pill-bg);
          font-size: 14px;
          line-height: 1.4;
          .k-stock-pill__label {
            opacity: 0.9;
            margin-right: 0.15em;
          }
          .k-stock-pill__value {
            color: var(--k-pill-text);
            font-weight: 600;
          }
        }
        /* Hết hàng */
        .k-stock--out {
          --k-pill-bg: #fdecee;
          --k-pill-text: #d82735;
        }
        /* Đặt trước */
        .k-stock--back {
          --k-pill-bg: #fff6e5;
          --k-pill-text: #b86e00;
        }
      }
    }
  }
}
