
  * { margin: 0; padding: 0; box-sizing: border-box; }
  body { font-family: Arial, Helvetica, sans-serif; color: #1a1a1a; background: #ffffff; line-height: 1.6; }
  .container { max-width: 1000px; margin: 0 auto; padding: 20px; }
  img { max-width: 100%; height: auto; display: block; }
  .hero { text-align: center; margin-bottom: 40px; }
  .hero img { margin: 0 auto 20px; }
  .hero h1 { font-size: 30px; margin-bottom: 10px; letter-spacing: 0.5px; }
  .hero p { color: #555; font-size: 16px; }
  .section { margin-bottom: 48px; }
  .section-title { font-size: 24px; font-weight: 700; text-align: center; margin-bottom: 24px; position: relative; padding-bottom: 12px; }
  .section-title:after { content: ""; display: block; width: 60px; height: 3px; background: #8b2f2f; margin: 12px auto 0; }
  .two-col { display: flex; gap: 24px; align-items: center; flex-wrap: wrap; }
  .two-col .col-img { flex: 1 1 45%; }
  .two-col .col-txt { flex: 1 1 45%; }
  .two-col .col-txt h3 { font-size: 20px; margin-bottom: 12px; color: #8b2f2f; }
  .two-col .col-txt p { color: #444; margin-bottom: 12px; }
  .two-col .col-txt ul { padding-left: 20px; color: #444; }
  .two-col .col-txt ul li { margin-bottom: 8px; }
  .spec-table { width: 100%; border-collapse: collapse; margin-top: 20px; }
  .spec-table th, .spec-table td { border: 1px solid #ddd; padding: 12px 16px; text-align: left; }
  .spec-table th { background: #f7f4f0; font-weight: 600; width: 35%; }
  .custom-block { background: #f7f4f0; border-left: 4px solid #8b2f2f; padding: 24px; border-radius: 0 8px 8px 0; }
  .custom-block h3 { font-size: 20px; margin-bottom: 12px; color: #8b2f2f; }
  .custom-block ul { padding-left: 20px; color: #444; }
  .custom-block ul li { margin-bottom: 8px; }

  /* FAQ Accordion (native details/summary) */
  .faq-wrap { max-width: 800px; margin: 0 auto; }
  .faq-item { border: 1px solid #e5e5e5; border-radius: 8px; margin-bottom: 10px; overflow: hidden; background: #fff; }
  .faq-q { background: #f7f4f0; padding: 14px 18px; font-weight: 700; font-size: 15px; cursor: pointer; display: flex; justify-content: space-between; align-items: center; user-select: none; list-style: none; transition: background 0.2s; }
  .faq-q::-webkit-details-marker { display: none; }
  .faq-q:hover { background: #efe9e1; }
  .faq-q .arrow { flex-shrink: 0; width: 22px; height: 22px; margin-left: 12px; transition: transform 0.3s ease; }
  .faq-a { padding: 0 18px 16px; color: #444; }
  .faq-a ul { padding-left: 20px; margin-top: 8px; }
  .faq-a ul li { margin-bottom: 6px; }
  .faq-item[open] .faq-q { background: #8b2f2f; color: #fff; }
  .faq-item[open] .faq-q .arrow { transform: rotate(180deg); }
  .faq-note { margin-top: 24px; padding: 16px 20px; background: #fdf6ec; border-left: 4px solid #c8862f; border-radius: 0 8px 8px 0; color: #555; font-size: 14px; }
  .footer-note { text-align: center; color: #888; font-size: 13px; margin-top: 30px; padding-top: 20px; border-top: 1px solid #eee; }
  @media (max-width: 700px) {
    .two-col .col-img, .two-col .col-txt { flex: 1 1 100%; }
  }
