
    :root {
      --ink: #1f2933;
      --muted: #52616b;
      --line: #d9e2ec;
      --brand: #0f766e;
      --brand-dark: #134e4a;
      --soft: #f4f8f7;
      --accent: #b45309;
      --white: #ffffff;
    }

    * {
      box-sizing: border-box;
    }

    body {
      margin: 0;
      font-family: Arial, Helvetica, sans-serif;
      color: var(--ink);
      background: var(--white);
      line-height: 1.7;
    }

    a {
      color: var(--brand-dark);
      text-decoration-thickness: 1px;
      text-underline-offset: 3px;
    }

    .page {
      width: min(1120px, calc(100% - 32px));
      margin: 0 auto;
    }

    .hero {
      background:
        linear-gradient(90deg, rgba(15, 118, 110, .92), rgba(19, 78, 74, .82)),
        url("https://upba711.myueeshop.com/u_file/2606/02/photo/hifu-22d-hero-1600x900.webp") center / cover;
      color: var(--white);
      padding: 72px 0 60px;
    }

    .hero small {
      display: inline-block;
      font-weight: 700;
      letter-spacing: .04em;
      text-transform: uppercase;
      opacity: .9;
      margin-bottom: 14px;
    }

    .hero h1 {
      max-width: 920px;
      margin: 0;
      font-size: clamp(34px, 6vw, 62px);
      line-height: 1.08;
      letter-spacing: 0;
    }

    .hero p {
      max-width: 760px;
      margin: 22px 0 0;
      font-size: 19px;
      color: rgba(255, 255, 255, .92);
    }

    .meta {
      display: flex;
      flex-wrap: wrap;
      gap: 10px 18px;
      margin-top: 26px;
      color: rgba(255, 255, 255, .86);
      font-size: 14px;
    }

    main {
      display: grid;
      grid-template-columns: minmax(0, 1fr) 300px;
      gap: 44px;
      padding: 42px 0 70px;
    }

    article {
      min-width: 0;
    }

    aside {
      align-self: start;
      position: sticky;
      top: 20px;
      border-left: 1px solid var(--line);
      padding-left: 24px;
    }

    .toc {
      font-size: 15px;
    }

    .toc strong {
      display: block;
      margin-bottom: 12px;
      color: var(--brand-dark);
    }

    .toc a {
      display: block;
      padding: 7px 0;
      color: var(--muted);
      text-decoration: none;
    }

    .answer-box,
    .note,
    .cta {
      border: 1px solid var(--line);
      background: var(--soft);
      border-radius: 8px;
      padding: 22px;
      margin: 28px 0;
    }

    .answer-box h2,
    .cta h2 {
      margin-top: 0;
    }

    h2 {
      margin: 46px 0 14px;
      font-size: clamp(25px, 3vw, 34px);
      line-height: 1.22;
      letter-spacing: 0;
    }

    h3 {
      margin: 30px 0 10px;
      font-size: 22px;
      line-height: 1.3;
      letter-spacing: 0;
    }

    p {
      margin: 0 0 16px;
    }

    ul,
    ol {
      padding-left: 22px;
    }

    li {
      margin: 8px 0;
    }

    .keyword-list {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 10px;
      padding: 0;
      list-style: none;
    }

    .keyword-list li {
      margin: 0;
      border: 1px solid var(--line);
      border-radius: 8px;
      padding: 10px 12px;
      background: #fff;
      color: var(--muted);
      font-size: 15px;
    }

    .table-wrap {
      overflow-x: auto;
      margin: 24px 0;
      border: 1px solid var(--line);
      border-radius: 8px;
    }

    table {
      width: 100%;
      border-collapse: collapse;
      min-width: 640px;
    }

    th,
    td {
      text-align: left;
      padding: 14px;
      border-bottom: 1px solid var(--line);
      vertical-align: top;
    }

    th {
      background: var(--soft);
      color: var(--brand-dark);
    }

    tr:last-child td {
      border-bottom: 0;
    }

    .cta {
      background: #fff7ed;
      border-color: #fed7aa;
    }

    .cta a.button {
      display: inline-block;
      margin-top: 8px;
      padding: 12px 18px;
      border-radius: 8px;
      background: var(--accent);
      color: var(--white);
      font-weight: 700;
      text-decoration: none;
    }

    .faq details {
      border: 1px solid var(--line);
      border-radius: 8px;
      padding: 16px 18px;
      margin: 12px 0;
      background: #fff;
    }

    .faq summary {
      cursor: pointer;
      font-weight: 700;
      color: var(--brand-dark);
    }

    .disclaimer {
      margin-top: 38px;
      padding-top: 20px;
      border-top: 1px solid var(--line);
      color: var(--muted);
      font-size: 14px;
    }

    @media (max-width: 860px) {
      .hero {
        padding: 52px 0 44px;
      }

      main {
        display: block;
        padding-top: 28px;
      }

      aside {
        position: static;
        border-left: 0;
        border-top: 1px solid var(--line);
        padding: 22px 0 0;
        margin-top: 34px;
      }

      .keyword-list {
        grid-template-columns: 1fr;
      }
    }
  