/* inline styles externalized from index.html *//* 通用标题 */
#core-products .eyebrow,#why-us .eyebrow,#cooperation-cases .eyebrow,#certifications .eyebrow{display:block;text-align:center;font-size:.8rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#047857;margin:0 0 .6rem}
#manufacturing .mfg-content .eyebrow{display:block;text-align:left;font-size:.8rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#047857;margin:0 0 .6rem}
#core-products .section-title,#why-us .section-title,#manufacturing .section-title,#cooperation-cases .section-title,#certifications .section-title{text-align:center;font-size:clamp(1.8rem,3.3vw,2.65rem);font-weight:800;letter-spacing:-.02em;line-height:1.18;color:#374151;margin:0}
#why-us .why-content .section-title,#manufacturing .mfg-content .section-title{text-align:left}
#manufacturing .section-title{color:#047857}
#core-products .section-sub,#why-us .section-sub,#cooperation-cases .section-sub,#certifications .section-sub{text-align:center;font-size:1.05rem;line-height:1.7;color:#4b5563;max-width:680px;margin:1rem auto 0}
#why-us .why-content .section-sub,#manufacturing .mfg-content p{text-align:left;max-width:100%}

/* 1. Core Products */
#core-products{text-align:left}
#core-products .product-filters{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin:2.5rem 0}
#core-products .product-filters button{background:#fff;color:#374151;border:1px solid #e5e7eb;padding:10px 24px;border-radius:999px;font:inherit;font-size:.9rem;font-weight:600;cursor:pointer;transition:.22s}
#core-products .product-filters button:hover{border-color:#047857;color:#047857}
#core-products .product-filters button.active{background:linear-gradient(135deg,#059669,#047857);color:#fff;border-color:transparent;box-shadow:0 10px 22px rgba(4,120,87,.24)}
#core-products #productGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
#core-products .product-card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;overflow:hidden;display:flex;flex-direction:column;transition:.25s;text-align:left}
#core-products .product-card:hover{transform:translateY(-4px);box-shadow:0 20px 44px rgba(15,23,42,.1);border-color:#6ee7b7}
#core-products .product-image{position:relative;width:100%;aspect-ratio:4/3;overflow:hidden;background:#f1f5f9}
#core-products .product-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
#core-products .product-card:hover .product-image img{transform:scale(1.05)}
#core-products .product-body{padding:22px 24px 24px;display:flex;flex-direction:column;flex:1}
#core-products .category-tag{align-self:flex-start;display:inline-flex;padding:5px 12px;border-radius:999px;background:#ecfdf5;color:#047857;font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;margin-bottom:10px}
#core-products .product-body h3{font-size:1.05rem;font-weight:800;color:#374151;line-height:1.35;margin:0 0 10px}
#core-products .product-body p{font-size:.875rem;color:#4b5563;line-height:1.65;margin:0 0 18px;flex:1}
#core-products .read-more{color:#047857;font-weight:700;font-size:.85rem;display:inline-flex;align-items:center;gap:6px;transition:gap .2s;margin-top:auto}
#core-products .product-card:hover .read-more{gap:10px}
#core-products .catalog-action{text-align:center;margin-top:3rem}
#core-products .catalog-action .btn{background:linear-gradient(135deg,#059669,#047857);color:#fff;border-color:transparent;box-shadow:0 14px 28px rgba(4,120,87,.28)}
#core-products .catalog-action .btn:hover{transform:translateY(-2px);box-shadow:0 18px 34px rgba(4,120,87,.36)}
@media(max-width:980px){#core-products #productGrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){#core-products #productGrid{grid-template-columns:1fr}#core-products .catalog-action .btn{width:100%;justify-content:center}}

/* 2. Why Partner */
#why-us .why-layout{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
#why-us .check-list{margin:2rem 0 0}
#why-us .check-list li{margin-bottom:14px;color:#374151}
#why-us .check-list li strong{color:#374151}
#why-us .check-list .check{background:#ecfdf5;color:#047857}
#why-us .quality-badge{display:inline-flex;margin-top:2rem;padding:8px 14px;border-radius:999px;background:#ecfdf5;color:#047857;font-weight:700;font-size:.9rem}
#why-us .why-carousel{position:relative;width:100%;border-radius:22px;overflow:hidden;background:#f1f5f9;box-shadow:0 20px 45px rgba(15,23,42,.1)}
#why-us .why-carousel-track{position:relative;width:100%;aspect-ratio:4/3}
#why-us .why-slide{position:absolute;inset:0;opacity:0;transition:opacity .6s ease;pointer-events:none}
#why-us .why-slide.is-active{opacity:1;pointer-events:auto}
#why-us .why-slide img{width:100%;height:100%;object-fit:cover}
#why-us .why-carousel-dots{display:flex;justify-content:center;gap:10px;padding:16px 0;background:#fff}
#why-us .why-carousel-dots button{width:10px;height:10px;border-radius:50%;border:none;background:#cbd5e1;cursor:pointer;transition:.3s;padding:0}
#why-us .why-carousel-dots button.is-active{background:linear-gradient(135deg,#059669,#047857);width:28px;border-radius:5px}
@media(max-width:992px){#why-us .why-layout{grid-template-columns:1fr;gap:48px}}

/* 3. Manufacturing */
#manufacturing .mfg-layout{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:stretch}
#manufacturing .mfg-media{height:100%;align-self:stretch}
#manufacturing .mfg-media img{width:100%;height:100%;object-fit:cover;border-radius:22px;box-shadow:0 20px 45px rgba(15,23,42,.1);display:block}
#manufacturing .mfg-content{height:100%;display:flex;flex-direction:column;justify-content:center}
#manufacturing .mfg-content p{font-size:1rem;line-height:1.8;color:#374151;margin:0 0 1.1rem}
#manufacturing .factory-features{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:1.75rem}
#manufacturing .feature-item{background:#047857;border:1px solid #065f46;border-radius:12px;padding:18px}
#manufacturing .feature-item strong{display:block;font-size:.95rem;color:#fff;margin-bottom:6px}
#manufacturing .feature-item p{font-size:.875rem;color:#d1fae5;margin:0;line-height:1.55}
@media(max-width:992px){#manufacturing .mfg-layout{grid-template-columns:1fr;gap:40px}#manufacturing .mfg-media{height:auto}#manufacturing .mfg-media img{min-height:300px}}
@media(max-width:640px){#manufacturing .factory-features{grid-template-columns:1fr}}

/* 4. Cooperation Cases */
#cooperation-cases .coop-slider-wrap{position:relative;max-width:1100px;margin:0 auto;padding:0 8px}
#cooperation-cases .coop-slide{display:none;background:#fff;border-radius:22px;overflow:hidden;border:1px solid #e5e7eb;box-shadow:0 24px 48px -12px rgba(15,23,42,.12)}
#cooperation-cases .coop-slide.is-active{display:block;animation:coopFadeUp .5s cubic-bezier(.22,1,.36,1)}
@keyframes coopFadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
#cooperation-cases .coop-visual{position:relative;height:380px;overflow:hidden}
#cooperation-cases .coop-visual img{width:100%;height:100%;object-fit:cover;display:block}
#cooperation-cases .coop-visual__tag{position:absolute;left:28px;bottom:24px;display:inline-flex;align-items:center;gap:8px;padding:8px 18px;background:rgba(255,255,255,.18);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.28);color:#fff;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;border-radius:8px}
#cooperation-cases .coop-visual__tag::before{content:"";width:7px;height:7px;background:#6ee7b7;border-radius:50%;box-shadow:0 0 0 3px rgba(110,231,183,.3)}
#cooperation-cases .coop-body{padding:36px 44px 44px;text-align:left}
#cooperation-cases .coop-meta{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px}
#cooperation-cases .coop-field{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:#047857;background:#ecfdf5;padding:6px 14px;border-radius:6px}
#cooperation-cases .coop-product{font-size:11px;font-weight:600;color:#374151;background:#f3f4f6;padding:6px 14px;border-radius:6px;border:1px solid #e5e7eb}
#cooperation-cases .coop-title{font-size:1.45rem;font-weight:800;color:#374151;line-height:1.3;letter-spacing:-.02em;margin:0 0 30px}
#cooperation-cases .coop-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
#cooperation-cases .coop-col{position:relative;padding-top:18px}
#cooperation-cases .coop-col::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;border-radius:3px;background:#d1d5db}
#cooperation-cases .coop-col:nth-child(2)::before{background:linear-gradient(90deg,#059669,#047857)}
#cooperation-cases .coop-col--result::before{background:#059669}
#cooperation-cases .coop-col h4{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.15em;color:#374151;margin:0 0 8px}
#cooperation-cases .coop-col p{font-size:.9rem;color:#4b5563;line-height:1.7;margin:0}
#cooperation-cases .coop-col--result{background:#ecfdf5;border-radius:12px;padding:18px 20px;margin-top:-4px}
#cooperation-cases .coop-col--result h4{color:#047857}
#cooperation-cases .coop-col--result p{color:#065f46;font-weight:600}
#cooperation-cases .coop-arrow{position:absolute;top:190px;transform:translateY(-50%);width:48px;height:48px;border-radius:50%;background:#fff;border:1px solid #e5e7eb;box-shadow:0 12px 24px rgba(15,23,42,.08);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;color:#374151;transition:.3s;z-index:10}
#cooperation-cases .coop-arrow:hover{background:linear-gradient(135deg,#059669,#047857);color:#fff;border-color:transparent;transform:translateY(-50%) scale(1.06)}
#cooperation-cases .coop-arrow--prev{left:-22px}
#cooperation-cases .coop-arrow--next{right:-22px}
#cooperation-cases .coop-dots{display:flex;justify-content:center;align-items:center;gap:10px;margin-top:32px}
#cooperation-cases .coop-dots button{width:10px;height:10px;border-radius:5px;border:none;background:#d1d5db;cursor:pointer;transition:.3s;padding:0}
#cooperation-cases .coop-dots button.is-active{width:32px;background:linear-gradient(135deg,#059669,#047857)}
#cooperation-cases .case-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin-top:2rem}
@media(max-width:992px){#cooperation-cases .coop-grid{grid-template-columns:1fr;gap:20px}#cooperation-cases .coop-body{padding:28px 24px 32px}#cooperation-cases .coop-title{font-size:1.2rem;margin-bottom:22px}#cooperation-cases .coop-visual{height:260px}#cooperation-cases .coop-arrow{display:none}}
@media(max-width:640px){#cooperation-cases .coop-visual{height:200px}#cooperation-cases .coop-visual__tag{left:16px;bottom:14px}#cooperation-cases .case-actions .btn{width:100%;justify-content:center}}

/* 5. Certifications */
#certifications .cert-grid{display:flex;justify-content:center;align-items:center;padding:1rem 0}
#certifications .cert-grid img{max-width:720px;width:100%;height:auto;display:block;margin:0 auto;transform:translateX(24px)}
@media(max-width:900px){#certifications .cert-grid img{transform:none}}

/* ===== Homepage FAQ: readable, keyboard-friendly and search-friendly ===== */
#faq.faq-section{
  background:#f8fafc;
}
#faq .faq-container{
  max-width:920px;
}
#faq .faq-list{
  margin:2.5rem auto 0;
  border:1px solid #cbd5e1;
  border-radius:14px;
  overflow:hidden;
  background:#fff;
  box-shadow:0 10px 28px rgba(15,23,42,.06);
}
#faq .faq-item{
  border-top:1px solid #cbd5e1;
}
#faq .faq-item:first-child{
  border-top:0;
}
#faq .faq-item summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  min-height:64px;
  padding:18px 22px;
  cursor:pointer;
  list-style:none;
  color:#0f172a;
  font-size:1.02rem;
  font-weight:750;
  line-height:1.45;
}
#faq .faq-item summary::-webkit-details-marker{
  display:none;
}
#faq .faq-item summary::after{
  content:"+";
  flex:0 0 auto;
  color:#047857;
  font-size:1.5rem;
  font-weight:500;
  line-height:1;
  transition:transform .2s ease;
}
#faq .faq-item[open] summary::after{
  content:"−";
}
#faq .faq-item summary:hover{
  background:#f0fdf4;
  color:#065f46;
}
#faq .faq-item summary:focus-visible{
  outline:3px solid #6ee7b7;
  outline-offset:-3px;
  background:#ecfdf5;
}
#faq .faq-answer{
  padding:0 22px 20px;
}
#faq .faq-answer p{
  max-width:78ch;
  margin:0;
  color:#334155;
  font-size:1rem;
  line-height:1.75;
}

/* ===== Footer contrast and accessibility ===== */
.site-footer{
  background:#064e3b;
  border-top:4px solid #34d399;
  color:#f8fafc;
}
.site-footer .footer-brand strong,
.site-footer h4{
  color:#ffffff;
}
.site-footer .co-name,
.site-footer .footer-desc,
.site-footer .contact-item,
.site-footer .footer-bottom{
  color:#e2e8f0;
}
.site-footer .co-name{
  font-weight:700;
}
.site-footer .footer-desc{
  max-width:34rem;
  line-height:1.7;
}
.site-footer h4{
  margin-bottom:1rem;
}
.site-footer a{
  color:#a7f3d0;
  text-decoration-color:transparent;
  text-underline-offset:3px;
  transition:color .2s ease,text-decoration-color .2s ease;
}
.site-footer a:hover{
  color:#ffffff;
  text-decoration-color:#ffffff;
}
.site-footer a:focus-visible{
  outline:3px solid #6ee7b7;
  outline-offset:3px;
  border-radius:3px;
}
.site-footer .contact-item svg{
  stroke:#6ee7b7;
  fill:none;
}
.site-footer .contact-item strong{
  color:#ffffff;
}
.site-footer .footer-bottom{
  border-top:1px solid #334155;
}
.site-footer .footer-bottom nav a{
  color:#cbd5e1;
}
.site-footer .footer-bottom nav a:hover{
  color:#ffffff;
}

@media(max-width:640px){
  #faq .faq-item summary{
    padding:16px 18px;
    font-size:.98rem;
  }
  #faq .faq-answer{
    padding:0 18px 18px;
  }
}

/* ===== Certifications and FAQ spacing ===== */
/* Keep only a precise 10px transition between the final certification content and FAQ. */
#certifications{
  padding-bottom:0 !important;
}
#certifications .cert-grid{
  padding-bottom:0;
}
#faq.faq-section{
  padding-top:10px !important;
}
@media(max-width:640px){
  #certifications{
    padding-bottom:0 !important;
  }
  #faq.faq-section{
    padding-top:10px !important;
  }
}
