/* 首页样式 */
.hero {
  background: linear-gradient(135deg, #5aa0e0, #4a9bdd);
  color: #fff;
  padding: 70rpx 48rpx 80rpx;
  border-bottom-left-radius: 36rpx;
  border-bottom-right-radius: 36rpx;
}
.hero-title { font-size: 52rpx; font-weight: 800; }
.hero-sub { margin-top: 16rpx; font-size: 27rpx; opacity: .92; }
.hero-btn {
  margin-top: 40rpx;
  display: inline-block;
  background: #fff;
  color: #3a8bd4;
  padding: 18rpx 56rpx;
  border-radius: 48rpx;
  font-weight: 700;
  font-size: 30rpx;
}
.cates { display: flex; gap: 20rpx; margin-top: 24rpx; }
.cate {
  flex: 1; text-align: center; padding: 28rpx 0;
  background: #f3f8fe; border-radius: 14rpx; color: #3a6a92;
}
.cate-ico { font-size: 56rpx; margin-bottom: 8rpx; }

/* 回收流程 */
.flow { display: flex; align-items: flex-start; justify-content: space-between; margin-top: 10rpx; }
.step { flex: 1; text-align: center; position: relative; }
.step-no {
  width: 40rpx; height: 40rpx; line-height: 40rpx; border-radius: 50%;
  background: #4a9bdd; color: #fff; font-size: 24rpx; font-weight: 700; margin: 0 auto 10rpx;
}
.step-ico { font-size: 44rpx; }
.step-t { font-size: 25rpx; color: #314a63; font-weight: 600; margin-top: 6rpx; }
.step-d { font-size: 21rpx; color: #9aabc0; margin-top: 2rpx; }
.step-line { color: #bcdcf5; font-size: 30rpx; padding: 40rpx 2rpx 0; flex-shrink: 0; }

.ops { display: flex; gap: 20rpx; margin-top: 8rpx; }
.op {
  flex: 1; text-align: center; padding: 30rpx 0;
  background: #f3f8fe; border-radius: 14rpx; color: #3a6a92;
}
.op-ico { font-size: 48rpx; margin-bottom: 8rpx; }

/* 分享按钮 */
.share-row { display: flex; gap: 20rpx; margin-top: 28rpx; }
.share-btn {
  flex: 1; display: flex; align-items: center; justify-content: center;
  background: #4a9bdd; color: #fff; font-size: 27rpx;
  border-radius: 14rpx; padding: 22rpx 0; line-height: 1.4;
}
.share-btn::after { border: none; }
.share-btn.ghost { background: #fff; color: #4a9bdd; border: 1rpx solid #cfe0f0; }
.share-ico { margin-right: 8rpx; }

/* 常见问题 */
.faq { border-bottom: 1rpx solid #eef3f9; }
.faq:last-child { border-bottom: none; }
.faq-q {
  display: flex; align-items: center; justify-content: space-between;
  padding: 26rpx 4rpx; font-size: 29rpx; color: #2f5b82; font-weight: 600;
}
.faq-q-text { flex: 1; padding-right: 16rpx; }
.faq-arrow {
  font-size: 40rpx; color: #9bb6d0; transform: rotate(90deg);
  transition: transform .2s; flex-shrink: 0;
}
.faq-arrow.open { transform: rotate(-90deg); }
.faq-a {
  padding: 0 4rpx 26rpx; color: #5f7891; font-size: 26rpx; line-height: 1.7;
}
.faq-a-text { white-space: pre-wrap; }
