/* Floating email contact button + related product card hover lift. */
.fc-wrap{position:fixed;right:24px;bottom:24px;z-index:9999;}
.fc-mail{
  width:56px;height:56px;border-radius:50%;
  background:linear-gradient(135deg,#e23744 0%,#b3152b 100%);
  display:flex;align-items:center;justify-content:center;text-decoration:none;
  box-shadow:0 10px 28px rgba(180,20,40,.38);
  transition:transform .25s ease, box-shadow .25s ease;
}
.fc-mail:hover{transform:translateY(-4px) scale(1.06);box-shadow:0 16px 36px rgba(180,20,40,.5);}
.fc-mail svg{width:26px;height:26px;stroke:#fff;stroke-width:1.7;fill:none;stroke-linecap:round;stroke-linejoin:round;}
.fc-tip{
  position:absolute;right:68px;top:50%;transform:translateY(-50%) translateX(8px);
  background:#1f2937;color:#fff;font-size:13px;line-height:1;
  padding:9px 14px;border-radius:8px;white-space:nowrap;
  opacity:0;visibility:hidden;transition:opacity .2s ease, transform .2s ease;pointer-events:none;
}
.fc-mail:hover .fc-tip{opacity:1;visibility:visible;transform:translateY(-50%) translateX(0);}
@media (max-width:768px){
  .fc-wrap{right:14px;bottom:14px;}
  .fc-mail{width:48px;height:48px;box-shadow:0 8px 20px rgba(180,20,40,.35);}
  .fc-mail svg{width:22px;height:22px;}
  .fc-tip{display:none;}
}

/* Product category tab bar: move from bottom-fixed to under the main header */
.product-tab-bar{
  top:72px !important;
  bottom:auto !important;
  left:0;right:0;
  z-index:99;
  padding:8px 15px;
  overflow-x:auto;
  scrollbar-width:none;
  -ms-overflow-style:none;
}
.product-tab-bar::-webkit-scrollbar{display:none;}
.product-tab-bar .nav{flex-wrap:nowrap;justify-content:center;margin:0;}
.product-tab-bar .nav-item{white-space:nowrap;}
.page-title-area:has(.product-tab-bar){padding-top:145px;}
@media (max-width:768px){
  .product-tab-bar .nav{justify-content:flex-start;}
  .product-tab-bar::before,.product-tab-bar::after{
    content:'';position:absolute;top:0;bottom:0;width:18px;pointer-events:none;z-index:2;
  }
  .product-tab-bar::before{left:0;background:linear-gradient(to right,rgba(255,255,255,.95),rgba(255,255,255,0));}
  .product-tab-bar::after{right:0;background:linear-gradient(to left,rgba(255,255,255,.95),rgba(255,255,255,0));}
}

/* Related / accessory product cards: equal height via tag area + subtle lift on hover */
.causes-item{transition:transform .25s ease, box-shadow .25s ease;border-radius:6px;}
.causes-item:hover{transform:translateY(-6px);box-shadow:0 12px 26px rgba(0,0,0,.10);}
.causes-item .thumb img{transition:transform .35s ease;}
.causes-item:hover .thumb img{transform:scale(1.05);}
.causes-item .mt-10{min-height:112px;align-items:flex-start;align-content:flex-start;}

/* ===== Premium FAQ accordion (minimal, Linear/Stripe style) ===== */
.faq-item{
  background:transparent !important;
  border:none !important;
  border-bottom:1px solid #ececec !important;
  border-radius:0 !important;
  box-shadow:none !important;
  padding:22px 4px !important;
  margin-bottom:0 !important;
  transition:border-color .3s ease !important;
}
.faq-item:hover{border-color:#ddd !important;}
.faq-item h3,.faq-question{font-size:16.5px !important;font-weight:600 !important;color:#1f2937 !important;letter-spacing:.1px;margin:0 !important;display:flex;justify-content:space-between;align-items:center;gap:16px;}
.faq-icon{
  width:28px !important;height:28px !important;border-radius:50% !important;
  background:transparent !important;color:#e8542b !important;
  display:inline-flex !important;align-items:center !important;justify-content:center !important;
  font-size:18px !important;flex:none !important;
}
.faq-content p,.faq-answer p{color:#6b7280 !important;font-size:14.5px !important;line-height:1.75 !important;}

/* ===== Blog list cards ===== */
.blog-list-grid{display:grid;grid-template-columns:1fr;gap:20px;}
@media(min-width:992px){.blog-list-grid{grid-template-columns:1fr 1fr;}}
.post-item{margin-bottom:0;}
.post-item .inner-content{
  background:#fff;border:1px solid #eef0f2;border-radius:12px;
  padding:24px 26px;box-shadow:0 1px 3px rgba(0,0,0,.03);
  transition:box-shadow .25s ease, transform .25s ease;
  height:100%;display:flex;flex-direction:column;
  position:relative;
}
.post-item:hover .inner-content{box-shadow:0 8px 24px rgba(0,0,0,.08);transform:translateY(-2px);}
.post-item .meta{display:flex;align-items:center;gap:12px;margin-bottom:12px;}
.post-item .post-category{display:none;}
.post-item .post-author{display:none;}
.post-item .meta{display:block;margin-bottom:10px;}
.post-item .post-date{color:#9aa0a6 !important;font-size:12px;font-weight:400;letter-spacing:.3px;}
.post-item h4.title{margin:0 0 10px;}
.post-item h4.title a{color:#1f2937 !important;font-size:17px;font-weight:600;line-height:1.4;transition:color .25s ease;position:relative;}
.post-item h4.title a::after{content:"";position:absolute;inset:-24px -26px;z-index:1;}
.post-item:hover h4.title a{color:#e8542b !important;}
.post-item p{
  color:#6b7280 !important;font-size:14px;line-height:1.65;margin:0 0 14px;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
/* Read More hidden — whole card is clickable via h4::after overlay */
.post-item .btn-theme{display:none !important;}
@media (max-width:768px){.post-item .inner-content{padding:20px;}.post-item h4.title a{font-size:16px;}}

/* 锚点跳转（如 Contact → about-us.html#contact）落到区块时，别让固定的 56px 导航条
   把头一句压在底下：统一给滚动定位留 80px 上方余量。 */
html { scroll-padding-top: 80px; }
