
    :root{
      /* Light-blue clinic palette */
      --bg:#f4f9ff;
      --panel:#ffffff;
      --card:#ffffff;
      --ink:#0b1730;
      --muted:#4b607a;
      --muted2:#6c86a6;
      --line:#dbe7f5;

      --brand:#1f6feb;
      --brand2:#7dc3ff;
      --brandSoft:#eaf4ff;

      --ok:#0ea5e9;
      --warn:#f59e0b;

      --shadow:0 18px 55px rgba(2,6,23,.10);
      --radius:18px;
      --radius2:26px;

      --max:1180px;
    }

    *{box-sizing:border-box}
    html,body{margin:0;padding:0}
    body{
      font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;
      color:var(--ink);
      background:
        radial-gradient(900px 500px at 10% -10%, rgba(125,195,255,.35), transparent 65%),
        radial-gradient(700px 380px at 95% 0%, rgba(31,111,235,.22), transparent 55%),
        var(--bg);
      line-height:1.55;
    }
    a{color:inherit;text-decoration:none}
    /* 图片不变形的关键：img 不直接撑高；由容器控制比例，img 用 object-fit:contain */
    img{display:block;max-width:100%}

    .wrap{max-width:var(--max);margin:0 auto;padding:28px 18px 88px}
    .topbar{
      display:flex;align-items:center;justify-content:space-between;gap:14px;
      padding:14px 16px;border:1px solid var(--line);background:rgba(255,255,255,.72);
      border-radius:999px; box-shadow: 0 10px 35px rgba(2,6,23,.06);
      backdrop-filter: blur(10px);
      position:sticky; top:12px; z-index:50;
    }
    .brand{display:flex;align-items:center;gap:10px;font-weight:800;letter-spacing:.2px}
    .logo{
      width:34px;height:34px;border-radius:10px;
      background:linear-gradient(135deg,var(--brand),var(--brand2));
      box-shadow:0 10px 22px rgba(31,111,235,.25);
    }
    .nav{
      display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end;
      color:var(--muted);
      font-weight:600;
      font-size:13px;
    }
    .nav a{padding:8px 10px;border-radius:999px;border:1px solid transparent}
    .nav a:hover{border-color:var(--line);background:rgba(234,244,255,.55)}
    .btn{
      display:inline-flex;align-items:center;justify-content:center;gap:10px;
      padding:12px 14px;border-radius:999px;border:1px solid var(--line);
      background:linear-gradient(180deg,#fff, #f7fbff);
      box-shadow:0 14px 36px rgba(2,6,23,.08);
      font-weight:800;
      font-size:14px;
      cursor:pointer;
      transition:.18s transform ease, .18s box-shadow ease;
      white-space:nowrap;
    }
    .btn:hover{transform:translateY(-1px);box-shadow:0 18px 46px rgba(2,6,23,.12)}
    .btn.primary{
      border-color:rgba(31,111,235,.25);
      background:linear-gradient(135deg,var(--brand),var(--brand2));
      color:#fff;
      box-shadow:0 18px 42px rgba(31,111,235,.28);
    }

    /* Hero */
    .hero{
      margin-top:18px;
      display:grid;
      grid-template-columns: 1.15fr .85fr;
      gap:18px;
      align-items:stretch;
    }
    .panel{
      background:rgba(255,255,255,.78);
      border:1px solid var(--line);
      border-radius:var(--radius2);
      box-shadow:var(--shadow);
      overflow:hidden;
      position:relative;
    }
    .heroLeft{padding:26px}
    .kicker{
      display:inline-flex;align-items:center;gap:10px;
      padding:8px 12px;border-radius:999px;
      background:rgba(234,244,255,.9);
      border:1px solid var(--line);
      color:var(--muted);
      font-weight:700;font-size:13px;
    }
    .dot{
      width:10px;height:10px;border-radius:999px;background:var(--ok);
      box-shadow:0 0 0 6px rgba(14,165,233,.18);
    }
    h1{
      font-family:"Playfair Display",serif;
      font-size:42px; line-height:1.05;
      margin:14px 0 10px;
      letter-spacing:-.4px;
    }
    .sub{color:var(--muted);font-size:16px;margin:0 0 18px;max-width:60ch}
    .chips{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0 18px}
    .chip{
      display:inline-flex;align-items:center;gap:8px;
      padding:10px 12px;border-radius:999px;
      border:1px solid var(--line);
      background:rgba(255,255,255,.75);
      color:var(--muted);
      font-weight:700;
      font-size:13px;
    }
    .chip b{color:var(--ink)}
    .grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}
    .card{
      background:rgba(255,255,255,.82);
      border:1px solid var(--line);
      border-radius:var(--radius);
      padding:14px;
    }
    .card h3{margin:0 0 6px;font-size:14px}
    .card p{margin:0;color:var(--muted);font-size:13px}

    .heroRight{padding:0;display:flex;flex-direction:column}
    .media{padding:18px;display:grid;grid-template-rows:auto auto;gap:12px}

    /* ===== 图片容器：固定比例 + 不变形 ===== */
    .imgbox{
      border-radius:18px;
      border:1px solid var(--line);
      overflow:hidden;
      background:#fff;
      box-shadow:0 12px 30px rgba(2,6,23,.08);
      position:relative;

      /* 容器使用 grid，图片占满，object-fit 保持比例 */
      display:grid;
      place-items:center;
    }

    /* 用 data-ratio 控制比例（不变形） */
    .imgbox[data-ratio="3:2"]{aspect-ratio:3/2}
    .imgbox[data-ratio="4:3"]{aspect-ratio:4/3}
    .imgbox[data-ratio="1:1"]{aspect-ratio:1/1}
    .imgbox[data-ratio="16:9"]{aspect-ratio:16/9}

    /* 图片永远不拉伸：contain + 居中 */
    .imgbox > img{
      width:100%;
      height:100%;
      object-fit:contain;        /* ✅不变形 */
      object-position:center;
      background:#fff;
    }

    /* 如果你想“铺满裁切”就把 contain 改成 cover（会裁切但不变形） */
    /* .imgbox > img{object-fit:cover} */

    .imgcap{
      position:absolute;left:12px;bottom:12px;
      background:rgba(255,255,255,.86);
      border:1px solid var(--line);
      color:var(--muted);
      font-weight:700;
      font-size:12px;
      padding:8px 10px;border-radius:999px;
      backdrop-filter: blur(8px);
      pointer-events:none;
    }

    /* Sections */
    section{margin-top:18px}
    .sectionHead{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin:26px 0 12px}
    .sectionHead h2{margin:0;font-size:22px;letter-spacing:-.2px}
    .sectionHead p{margin:0;color:var(--muted);font-size:14px}

    .tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
    .tile{
      padding:16px;border-radius:var(--radius);
      border:1px solid var(--line);
      background:rgba(255,255,255,.82);
      box-shadow:0 12px 32px rgba(2,6,23,.06);
    }
    .tile .t{font-weight:900}
    .tile .d{margin-top:6px;color:var(--muted);font-size:13px}
    .tile .meta{margin-top:10px;color:var(--muted2);font-size:12px}

    .split{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:stretch}

    .gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
    .gItem{padding:12px}
    .gItem strong{display:block;margin-top:10px}
    .gItem span{color:var(--muted);font-size:13px}
    .note{
      margin-top:10px;padding:12px 14px;border-radius:14px;
      border:1px dashed rgba(31,111,235,.35);
      background:rgba(234,244,255,.55);
      color:var(--muted);
      font-size:13px;
    }

    table{width:100%;border-collapse:separate;border-spacing:0;overflow:hidden}
    .table{
      border:1px solid var(--line);
      border-radius:18px;
      background:rgba(255,255,255,.82);
      box-shadow:0 12px 32px rgba(2,6,23,.06);
      overflow:hidden;
    }
    th,td{padding:12px 12px;border-bottom:1px solid var(--line);vertical-align:top}
    th{text-align:left;background:rgba(234,244,255,.65);font-size:13px;color:var(--muted);font-weight:900}
    td{font-size:14px}
    tr:last-child td{border-bottom:none}

    .faq{display:grid;grid-template-columns:1fr;gap:10px}
    details{
      border:1px solid var(--line);
      background:rgba(255,255,255,.86);
      border-radius:16px;
      padding:12px 14px;
      box-shadow:0 10px 26px rgba(2,6,23,.05);
    }
    summary{cursor:pointer;font-weight:900;list-style:none;outline:none}
    summary::-webkit-details-marker{display:none}
    details p{margin:10px 0 0;color:var(--muted);font-size:14px}

    .sticky{
      position:fixed;left:0;right:0;bottom:0;z-index:60;
      background:rgba(255,255,255,.82);
      border-top:1px solid var(--line);
      backdrop-filter: blur(10px);
    }
    .sticky .inner{
      max-width:var(--max);margin:0 auto;padding:12px 18px;
      display:flex;align-items:center;justify-content:space-between;gap:12px;
    }
    .sticky .inner .txt{color:var(--muted);font-size:13px}
    .sticky .inner .txt b{color:var(--ink)}
    .ctaRow{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}

    @media (max-width: 980px){
      .hero{grid-template-columns:1fr}
      h1{font-size:34px}
      .tiles{grid-template-columns:1fr}
      .split{grid-template-columns:1fr}
      .gallery{grid-template-columns:1fr}
      .nav{display:none}
    }
  