
    .ty-faq-section {
      max-width: 1080px;
      margin: 0 auto;
      padding: 56px 20px;
      font-family: Arial, "Microsoft YaHei", sans-serif;
      color: #111;
      background: #fff;
    }

    .ty-faq-header {
      margin-bottom: 30px;
      text-align: center;
    }

    .ty-faq-header h2 {
      margin: 0 0 10px;
      font-size: 30px;
      line-height: 1.3;
      font-weight: 700;
      color: #111;
    }

    .ty-faq-header p {
      margin: 0 auto;
      max-width: 680px;
      font-size: 16px;
      line-height: 1.7;
      color: #555;
    }

    .ty-faq-list {
      border-top: 1px solid #e5e8ea;
    }

    .ty-faq-item {
      border-bottom: 1px solid #e5e8ea;
    }

    .ty-faq-question {
      width: 100%;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 18px;
      padding: 20px 0;
      border: 0;
      background: transparent;
      color: #111;
      text-align: left;
      cursor: pointer;
      font-family: inherit;
    }

    .ty-faq-question span {
      font-size: 17px;
      line-height: 1.5;
      font-weight: 700;
    }

    .ty-faq-icon {
      flex: 0 0 28px;
      width: 28px;
      height: 28px;
      border: 1px solid #1B9CBC;
      border-radius: 50%;
      position: relative;
    }

    .ty-faq-icon::before,
    .ty-faq-icon::after {
      content: "";
      position: absolute;
      background: #1B9CBC;
      left: 50%;
      top: 50%;
      transform: translate(-50%, -50%);
      transition: opacity 0.2s ease;
    }

    .ty-faq-icon::before {
      width: 12px;
      height: 2px;
    }

    .ty-faq-icon::after {
      width: 2px;
      height: 12px;
    }

    .ty-faq-item.is-open .ty-faq-icon::after {
      opacity: 0;
    }

    .ty-faq-answer {
      max-height: 0;
      overflow: hidden;
      transition: max-height 0.28s ease;
    }

    .ty-faq-answer-inner {
      padding: 0 46px 22px 0;
      font-size: 16px;
      line-height: 1.8;
      color: #444;
    }

    .ty-faq-item.is-open .ty-faq-question span {
      color: #1B9CBC;
    }

    @media (max-width: 768px) {
      .ty-faq-section {
        padding: 40px 16px;
      }

      .ty-faq-header h2 {
        font-size: 24px;
      }

      .ty-faq-question {
        padding: 17px 0;
        gap: 12px;
      }

      .ty-faq-question span {
        font-size: 15px;
      }

      .ty-faq-answer-inner {
        padding-right: 0;
        font-size: 14px;
        line-height: 1.75;
      }

      .ty-faq-icon {
        flex-basis: 24px;
        width: 24px;
        height: 24px;
      }
    }
  