/*
Theme Name: Hello Elementor Child
Theme URI: https://elementor.com/hello-theme/?utm_source=wp-themes&utm_campaign=theme-uri&utm_medium=wp-dash
Template: hello-elementor
Author: Elementor Team
Author URI: https://elementor.com/?utm_source=wp-themes&utm_campaign=author-uri&utm_medium=wp-dash
Description: Hello Elementor is a lightweight and minimalist WordPress theme that was built specifically to work seamlessly with the Elementor site builder plugin. The theme is free, open-source, and designed for users who want a flexible, easy-to-use, and customizable website. The theme, which is optimized for performance, provides a solid foundation for users to build their own unique designs using the Elementor drag-and-drop site builder. Its simplicity and flexibility make it a great choice for both beginners and experienced Web Creators.
Tags: accessibility-ready,flexible-header,custom-colors,custom-menu,custom-logo,featured-images,rtl-language-support,threaded-comments,translation-ready
Version: 3.4.5.1763637424
Updated: 2025-11-20 19:17:04

*/

a {
  background-color: transparent;

  color: #0088cc;

  text-decoration: none;
}

#site-header{
  padding: 0;
  border-bottom: 4px solid #0088cc;
  box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.3);
}

.site-navigation ul.menu li a{
  text-decoration: none;
  font-weight: 500;
  padding: 0px 12px;
}

.site-header .header-inner{
  background-color: #fff;
  padding: 15px 30px;
  box-shadow: 0 0 30px rgba(255, 255, 255, 1);
}

.page-title::first-letter ,h1.entry-title::first-letter{
  font-size: 3rem;
}

.page-title ,.page-header h1.entry-title{
  font-size: 2rem;
  
  
  font-weight: 900;
  background: linear-gradient(0deg, #000, #aaa);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent; /* 保險起見 */
}

.product-category {
  position: relative;
  overflow: hidden;
  aspect-ratio: 1 / 1;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
}

.product-category a {
  display: block;
  text-decoration: none;
}

.product-category img {
  display: block;
  width: 100%;
  height: 100%;
  transition: transform 0.3s ease;
}

.product-category:hover img {
  transform: scale(1.1);
}

.product-category h2 {
  font-size: 1.2rem;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: rgba(0, 120, 200, 0.5);
  color: white;
  text-align: center;
  padding: 10px;
  margin: 0;
  transition: background-color 0.3s ease;
  text-shadow: 0 0 5px rgba(0, 0, 0, 0.5);
}

.product-category:hover h2 {
  background-color: rgba(0, 120, 200, 0.8);
}

.page-content:first-child .e-con > .e-con-inner {
  padding-block-start: 0;
}

mark.count {
  background-color: transparent;
  color: inherit;
}
.filter-group {
  width: fit-content;
  display: inline-block;
  border: 1px solid #666;
  padding: 5px 10px;
  margin-bottom: 5px;
  margin-right: 5px;
  border-radius: 3px;
}

.clear-filters {
  display: inline-block;
  border: 1px solid #666;
  padding: 5px 10px;
  border-radius: 3px;
  
  text-align: center;
  background-color: #0088cc;
  color: white;
}

.woocommerce table.shop_attributes td {
  padding: 0 8px;
}

input[type="checkbox"] {
  width: 16px;
  height: 16px;
  vertical-align: middle; /* 改成 middle 就對齊文字中間 */
  margin: 0 2px 0 0; /* 清除瀏覽器預設怪 margin */
}

.filter-group h5,
.filter-group ul {
  margin: 0;
  width: fit-content;
  display: inline-block;
  padding: 0 10px 0 0;
}

.filter-group label {
  cursor: pointer;
}

.filter-group li {
  list-style: none;
  display: inline-block;
  padding-right: 10px;
}

.wpsf-cart-button {
  display: none;
}

.sp-wps-product-image-area {
  aspect-ratio: 1 / 1; /* 你想要的比例，正方形就留這行 */
  /* aspect-ratio: 4 / 3; */ /* 需要 4:3 就取消這行註解 */
  overflow: hidden;
  position: relative;
}

.sp-wps-product-image-area img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center !important; /* 關鍵：強制上下左右都置中 */
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

/* 主選單分類下拉 - 圖文版美化 */
.product-cats-with-thumb {
  min-width: 240px;
  padding: 12px 0;
  background: #fff;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
  border-radius: 8px;
}
.product-cats-with-thumb .menu-item a {
  display: flex !important;
  align-items: center;
  padding: 8px 20px !important;
  white-space: nowrap;
}
.product-cats-with-thumb .menu-item img {
  width: 36px;
  height: 36px;
  object-fit: cover;
  border-radius: 6px;
  margin-right: 12px;
  flex-shrink: 0;
}
.product-cats-with-thumb .menu-item span {
  font-size: 14px;
  color: #333;
}
.product-cats-with-thumb .menu-item a:hover {
  background: #f8f9fa;
}
.product-cats-with-thumb .menu-item a:hover span {
  color: #c00; /* 改成你想要的 hover 顏色 */
}

.woocommerce ul.products li.product .price {
  font-size: 1.1rem;
  color: #000;
  font-weight: 500;
}

.woocommerce span.onsale {
  border-radius:0;
  background-color: #c00;
  padding: 0 5px;
  line-height: 3;
  min-height: 3em;
  
}

.price ins {
  text-decoration: none;
}

.woocommerce ul.products li.product .price del {
  color: #999;
}

.product.product-type-simple {
  text-align: center;
}

.label-tag {
  white-space: nowrap;
}
.woocommerce div.product form.cart table td.label.leftside {
  padding-left: 10px;
}

/* search box */
body .dgwt-wcas-search-wrapp {
  max-width: 150px;
  min-width: 150px;
}
.dgwt-wcas-style-pirx .dgwt-wcas-sf-wrapp {
    background: #fff;
    padding: 0px;
    border-radius: 0px;
}
.dgwt-wcas-style-pirx .dgwt-wcas-sf-wrapp input[type=search].dgwt-wcas-search-input {
    
    padding: 3px 10px 3px 30px;
    line-height: 18px;
    font-size: 17px;
    border: 2px solid transparent;
     border-radius: 3px; 
    height: auto;
    font-family: Roboto, sans-serif;
    background-color: #eee;
}
.dgwt-wcas-style-pirx .dgwt-wcas-sf-wrapp button.dgwt-wcas-search-submit {
    background: 0 0;
    border-radius: 100%;
    border: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    margin: 0;
    position: absolute;
    min-height: 33px;
    min-width: 33px;
    height: 33px;
    width: 33px;
    left: 0px;
    top: -3px;
    pointer-events: none;
    transition: none;
}


@media (max-width: 991px) {
  .kfm-category-grid {
    grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
    gap: 10px;
  }
}

@media (max-width: 768px) {
  .kfm-category-grid {
    grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
    gap: 10px;
  }
}
