[hidden]{display:none!important}img,video{max-width:100%}a{color:inherit}button{font:inherit;cursor:pointer}.site-brand{font-size:25px;font-weight:800;letter-spacing:.04em;text-decoration:none}.empty-state{grid-column:1/-1;padding:32px;border:1px dashed currentColor;border-radius:12px;opacity:.65;text-align:center}.listing-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:32px}.product-grid,.products-grid,.news-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.product-card{overflow:hidden;border:1px solid #e4e8e1;border-radius:16px;background:#fff;color:#24382c}.product-image{display:block;aspect-ratio:4/3;overflow:hidden}.product-image img{width:100%;height:100%;object-fit:contain}.product-info{padding:18px}.product-info h3{font-size:17px;line-height:1.5;margin-bottom:12px}.price,.faq-content{white-space:pre-line}.inquiry-btn{width:100%;margin-top:14px;padding:11px 18px;border:0;border-radius:8px;background:#315a38;color:#fff}.brand-item{display:flex;align-items:center;gap:12px;padding:16px 0;border-bottom:1px solid #e4e8e1;text-decoration:none}.brand-item img{width:48px;height:48px;object-fit:contain}.brand-item small{display:block}.related-links,.keywords,.news-tags{display:flex;flex-wrap:wrap;gap:10px}.keywords a,.news-tags a{padding:6px 12px;border:1px solid #dce5d8;border-radius:20px;text-decoration:none}.news-card{overflow:hidden;border-radius:14px;border:1px solid #e0e5db}.news-card>a{display:block}.news-card>a>img{width:100%;height:210px;object-fit:cover}.news-body{padding:20px}.news-body h3{font-size:20px;line-height:1.4;margin:12px 0}.news-body p{line-height:1.7}.news-grid .news-card{color:inherit}.section .shell>h2,.content-grid h2{margin:24px 0}.rich-content{overflow-wrap:anywhere;line-height:1.8}.rich-content img{height:auto}.rich-content table{max-width:100%;display:block;overflow:auto}.packaging-image{max-width:150px}.thumb{border:1px solid #ddd;background:#fff}.thumb img{max-height:90px}.recommend-list .product-card{margin-bottom:18px}.inquiry-mask{position:fixed;z-index:1000;inset:0;display:flex;align-items:center;justify-content:center;padding:20px;background:#14201ac4}.inquiry-modal{width:min(680px,100%);max-height:90vh;overflow:auto;background:#fff;color:#24382c;border-radius:20px}.inquiry-modal-head{position:relative;padding:24px 30px;background:#294b32;color:#fff}.inquiry-close{position:absolute;top:18px;right:20px;background:transparent;border:0;color:#fff;font-size:28px}.inquiry-form{padding:24px}.inquiry-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.inquiry-field{display:flex;flex-direction:column;gap:8px}.inquiry-field.full{grid-column:1/-1}.inquiry-field input,.inquiry-field textarea{width:100%;padding:12px;border:1px solid #d6dfd2;border-radius:8px;font:inherit}.inquiry-field textarea{min-height:120px}.inquiry-send{width:100%;padding:12px;background:#315a38;color:#fff;border:0;border-radius:8px}.inquiry-send:disabled{opacity:.6;cursor:wait}.modal-open{overflow:hidden}.form-status{min-height:1.5em;margin:12px 0}.tab-panel:not(.active){display:none}.banner-slide{display:block;flex:0 0 100%}.article-meta{display:flex;gap:20px;align-items:center}.news-item{padding:24px 0;border-bottom:1px solid #ddd}.news-result{margin:20px 0}.search-form{display:flex;align-items:center;gap:8px}.search-type{max-width:100px}.contact-card .inquiry-fields{grid-template-columns:1fr}.article p{margin:16px 0}.spec-option{display:flex;gap:12px;margin:12px 0}.page-news_list .news-grid .news-card{background:transparent}.page-index .product-grid{grid-template-columns:repeat(4,minmax(0,1fr))}@media(max-width:1000px){.product-grid,.news-grid,.page-index .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.listing-layout{grid-template-columns:220px minmax(0,1fr)}}@media(max-width:760px){.listing-layout{grid-template-columns:1fr}.product-grid,.news-grid,.page-index .product-grid{grid-template-columns:1fr}.inquiry-fields{grid-template-columns:1fr}.nav-wrap{flex-wrap:wrap}.header .search-form{display:flex;width:100%;max-width:100%;order:4}.search-form input{min-width:0;flex:1}.detail-card,.content-grid,.member-layout{display:grid;grid-template-columns:1fr!important}.banner-stage{min-height:180px}.inquiry-form{padding:18px}}

/* Homepage category label spacing. */
.page-index #popular-categories .category-feature h3 {
  border-radius: 8px;
  padding-top: 14px;
  padding-bottom: 14px;
}

/* Product details use the shared inquiry modal. */
@media (min-width: 761px) {
  .page-product_detail .detail-card {
    grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
  }
}

/* Readable breadcrumbs and specifications on product detail pages. */
.page-product_detail .crumbs {
  margin: 0 0 32px;
  padding: 14px 18px;
  gap: 8px 12px;
  border: 1px solid #dce5d8;
  border-radius: 8px;
  background: #fffef9;
  color: #3b4f3e;
  font-size: 14px;
  line-height: 1.7;
  overflow-wrap: anywhere;
}
.page-product_detail .crumbs a {
  color: #245b37;
  font-weight: 600;
}
.page-product_detail .crumbs a:hover {
  text-decoration: underline;
  text-underline-offset: 3px;
}
.page-product_detail .content-grid > div > h2 {
  margin: 40px 0 18px;
}
.page-product_detail .content-grid > div > h2:first-child {
  margin-top: 0;
}
.page-product_detail .attributes {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  padding: 24px;
}
.page-product_detail .attributes .attribute {
  grid-template-columns: minmax(0, 1fr);
  align-content: start;
  gap: 8px;
  padding: 16px 18px;
  border-radius: 8px;
  background: #f7f9f3;
  font-size: 14px;
  line-height: 1.7;
}
.page-product_detail .attributes .attribute > span {
  color: #56664e;
  font-size: 13px;
  line-height: 1.5;
}
.page-product_detail .attributes .attribute strong {
  color: #243c2b;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.8;
}
.page-product_detail .attributes .attribute .packaging-image {
  display: inline-block;
  vertical-align: top;
  width: 150px;
  height: 150px;
  object-fit: contain;
  margin: 8px 8px 0 0;
}
@media (max-width: 900px) {
  .page-product_detail .attributes {
    grid-template-columns: minmax(0, 1fr);
    padding: 18px;
    gap: 12px;
  }
}
@media (max-width: 760px) {
  .page-product_detail .crumbs {
    margin-bottom: 24px;
    padding: 12px 14px;
  }
}
