:root {
      --blue-950: #052d66;
      --blue-900: #073d82;
      --blue-800: #0751a6;
      --blue-700: #1268c4;
      --blue-100: #e8f2fb;
      --green-700: #198651;
      --ink: #102b54;
      --body: #42526b;
      --muted: #738099;
      --line: #dce5ef;
      --soft: #f5f8fc;
      --white: #ffffff;
      --radius: 8px;
      --shadow: 0 16px 42px rgba(15, 51, 92, .10);
      --font: "Segoe UI", "Microsoft YaHei", Arial, sans-serif;
    }

    * { box-sizing: border-box; }
    html { scroll-behavior: smooth; }
    html, body { min-width: 1180px; }
    body { margin: 0; font-family: var(--font); color: var(--ink); background: #e7edf4; }
    img { display: block; max-width: 100%; }
    a { color: inherit; text-decoration: none; }
    button, input, textarea { font: inherit; }

    .page {
      width: 100%;
      max-width: 1440px;
      margin: 0 auto;
      background: var(--white);
      overflow: hidden;
    }
    .container { width: 1280px; margin: 0 auto; }
    .en { display: block; margin-top: 7px; color: #4f6f72; font-size: 18px; font-weight: 650; letter-spacing: .025em; }
    .section { padding: 70px 0 40px; }
    .section-title { text-align: center; margin: 0 0 12px; font-size: 40px; line-height: 1.2; letter-spacing: -.015em; }
    .section-title::after { content: ""; display: block; width: 50px; height: 4px; margin: 14px auto 0; border-radius: 3px; background: var(--blue-700); }
    .section-intro { max-width: 860px; margin: 12px auto 30px; text-align: center; color: var(--muted); font-size: 17px; line-height: 1.7; }
    .button { display: inline-flex; align-items: center; justify-content: center; min-height: 50px; padding: 0 27px; border: 1px solid var(--blue-800); border-radius: 5px; font-size: 16px; font-weight: 800; white-space: nowrap; transition: color .3s ease, background-color .3s ease, border-color .3s ease, box-shadow .3s ease, transform .3s ease; }
    .button.primary { background: linear-gradient(135deg, var(--blue-700), var(--blue-900)); color: #fff; box-shadow: none; }
    .button.light { color: var(--blue-900); background: rgba(255,255,255,.86); }
    .button.primary:hover { background: color-mix(in srgb, var(--blue-800) 90%, white 10%); box-shadow: 0 14px 28px rgba(8, 125, 132, .30); transform: translateY(-1px); }
    .button.light:hover { color: #fff; background: var(--blue-800); }
    .button:active { transform: translateY(0); }

    .hero { height: 520px; position: relative; overflow: hidden; background: #edf4fa; border-bottom: 1px solid var(--line); }
    .hero::before { content: ""; position: absolute; inset: 0; background: url('assets/banner1.jpg') center / cover no-repeat; opacity: .17; filter: saturate(.6); }
    .hero::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, #f7fbff 0%, rgba(247,251,255,.92) 41%, rgba(240,247,253,.48) 70%, rgba(240,247,253,.75) 100%); }
    .hero .container { height: 100%; position: relative; z-index: 1; display: grid; grid-template-columns: .86fr 1.14fr; align-items: center; gap: 32px; }
    .hero-copy { padding-left: 20px; }
    .hero-copy h1 { max-width: 620px; margin: 0 0 20px; color: var(--blue-950); font-size: 58px; line-height: 1.15; letter-spacing: -.025em; }
    .hero-copy p { margin: 0; color: #50627a; font-size: 20px; line-height: 1.65; font-weight: 650; }
    .hero-actions { display: flex; gap: 14px; margin-top: 47px; }
    .hero-machines { width: calc(100% + 48px); height: 468px; position: relative; isolation: isolate; justify-self: start; overflow: hidden; border: 1px solid rgba(8,125,132,.12); border-radius: 14px; background: radial-gradient(circle at 53% 42%, rgba(255,255,255,.96) 0, rgba(239,248,247,.96) 48%, rgba(220,239,238,.9) 100%); box-shadow: inset 0 1px 0 rgba(255,255,255,.86); }
    .hero-machines::after { content: ""; position: absolute; z-index: -1; left: 8%; right: 6%; bottom: 34px; height: 34px; border-radius: 50%; background: rgba(6,61,67,.10); filter: blur(18px); }
    .hero-machines img { position: absolute; object-fit: contain; mix-blend-mode: multiply; }
    .hero-metal { width: 485px; height: 386px; left: 0; bottom: 18px; }
    .hero-wood { width: 382px; height: 354px; right: 0; bottom: 25px; }
    .core-products { padding: 34px 0 20px; }
    .core-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
    .core-card { --core-accent: var(--blue-800); --core-accent-strong: var(--blue-950); min-height: 360px; display: grid; grid-template-columns: .98fr 1.02fr; align-items: center; border: 1px solid var(--line); border-radius: 12px; background: linear-gradient(135deg, #f4f8fd, #fff); overflow: hidden; box-shadow: 0 16px 38px rgba(7,61,66,.07); }
    .core-card.wood { --core-accent: var(--green-700); --core-accent-strong: #075f45; background: linear-gradient(135deg, #f2faf6, #fff); }
    .core-content { padding: 34px 0 34px 36px; }
    .core-content .kicker { color: var(--blue-800); font-size: 16px; font-weight: 850; }
    .core-card.wood .kicker { color: var(--green-700); }
    .core-content h2 { margin: 13px 0 14px; font-size: 34px; line-height: 1.22; }
    .core-title-link { color: inherit; text-decoration: none; }
    .core-title-link:hover { color: var(--core-accent); }
    .core-content p { margin: 0 0 17px; color: var(--body); font-size: 16px; line-height: 1.65; }
    .spec-row { display: flex; flex-wrap: wrap; gap: 10px; }
    .core-action { min-height: 42px; display: inline-flex; align-items: center; justify-content: center; padding: 0 17px; border: 1px solid var(--core-accent); border-radius: 6px; font-size: 14px; font-weight: 800; line-height: 1.2; text-decoration: none; transition: color .2s ease, background-color .2s ease, border-color .2s ease, transform .2s ease, box-shadow .2s ease; }
    .core-action--primary { color: #fff; background: var(--core-accent); }
    .core-action--secondary { color: var(--core-accent); background: rgba(255,255,255,.88); }
    .core-action:hover { color: #fff; border-color: var(--core-accent-strong); background: var(--core-accent-strong); transform: translateY(-2px); box-shadow: 0 9px 18px rgba(7,61,66,.14); }
    .core-action:active { transform: translateY(0); box-shadow: none; }
    .core-media-link { width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; }
    .core-image { height: 315px; width: 100%; object-fit: contain; mix-blend-mode: multiply; padding: 18px; }

    .benefits { padding: 15px 0 31px; }
    .benefit-strip { display: grid; grid-template-columns: repeat(5, 1fr); background: var(--soft); border: 1px solid var(--line); border-radius: var(--radius); }
    .benefit { min-height: 116px; padding: 24px 21px; display: flex; align-items: center; gap: 15px; border-right: 1px solid var(--line); }
    .benefit:last-child { border-right: 0; }
    .benefit-mark { flex: 0 0 44px; width: 44px; height: 44px; display: grid; place-items: center; border: 2px solid var(--blue-800); border-radius: 50%; color: var(--blue-800); font-size: 17px; font-weight: 900; }
    .benefit b { display: block; font-size: 16px; }
    .benefit small { display: block; margin-top: 4px; color: var(--muted); font-size: 14px; line-height: 1.55; }

    .applications { padding: 35px 0 20px; margin-top: -25px; background: linear-gradient(#fff, #f8fbfe); }
    .application-grid { display: grid; grid-template-columns: repeat(8, 1fr); gap: 14px; }
    .application-card { min-height: 190px; overflow: hidden; border: 1px solid var(--line); border-radius: 10px; background: #f5f7fa; box-shadow: 0 8px 22px rgba(18,64,111,.045); transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease; }
    .application-card img { width: 100%; height: 118px; padding: 10px; background: #f3f7f7; object-fit: contain; }
    .application-card div { padding: 13px 8px 15px; text-align: center; }
    .application-card b { display: block; font-size: 16px; }
    .application-card span { display: block; margin-top: 4px; color: var(--muted); font-size: 14px; font-weight: 600; line-height: 1.35; }
    .application-card:hover, .support-card:hover { transform: translateY(-5px); border-color: rgba(8, 125, 132, .30); box-shadow: 0 10px 20px rgba(7, 61, 66, .08); }

    .support { padding: 35px 0 20px; background: #eef6f6; }
    .support-grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 13px; }
    .support-card { display: block; color: inherit; background: #fff; border: 1px solid var(--line); border-radius: 10px; overflow: hidden; text-align: center; box-shadow: none; transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease; }
    .support-card img { width: 100%; height: 188px; object-fit: contain; padding: 17px 14px 12px; background: #fff; }
    .support-card div { padding: 19px 10px 22px; border-top: 1px solid var(--line); }
    .support-card b { display: block; font-size: 16px; }
    .support-card small { display: block; margin-top: 5px; color: var(--muted); font-size: 14px; line-height: 1.5; }

    .cases { padding: 35px 0 20px; }
    .case-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
    .case-card { display: block; color: inherit; overflow: hidden; border: 1px solid var(--line); border-radius: 10px; background: #fff; box-shadow: 0 12px 32px rgba(4,47,52,.06); transition: transform .24s ease, box-shadow .24s ease, border-color .24s ease; }
    .case-card:hover { transform: translateY(-5px); border-color: rgba(8, 125, 132, .34); box-shadow: 0 23px 48px rgba(7, 61, 66, .12); }
    .case-card img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; transition: transform .35s ease; }
    .case-card .case-body { padding: 17px 18px 24px; }
    .case-type { color: var(--blue-800); font-size: 14px; font-weight: 850; }
    .case-card.wood .case-type { color: var(--green-700); }
    .case-card h3 { margin: 7px 0 8px; font-size: 18px; line-height: 1.4; }
    .case-card p { margin: 0; color: var(--muted); font-size: 14px; line-height: 1.65; }
    .case-card:hover img, .news-card:hover img { transform: scale(1.05); }
    .case-card h3, .news-card h3 { transition: color .25s ease; }
    .case-card:hover h3, .news-card:hover h3 { color: var(--blue-800); }

    .proof { padding: 0; }
    .proof-strip { display: grid; grid-template-columns: repeat(4, 1fr); overflow: hidden; border-radius: 10px; background: linear-gradient(90deg, var(--blue-950), var(--blue-800)); color: #fff; }
    .proof-item { min-height: 146px; padding: 28px 30px; display: flex; align-items: center; gap: 19px; border-right: 1px solid rgba(255,255,255,.22); }
    .proof-item:last-child { border-right: 0; }
    .proof-num { font-size: 38px; font-weight: 900; line-height: 1; }
    .proof-item b { display: block; font-size: 17px; font-weight: 800; }
    .proof-item small { display: block; margin-top: 6px; color: rgba(255,255,255,.88); font-size: 13px; font-weight: 700; line-height: 1.55; }

    .news { padding: 35px 0 20px; margin-top: -10px; background: #f7fbfa; }
    .news-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; margin-bottom: 20px; }
    .news-card { display: flex; flex-direction: column; border: 1px solid var(--line); border-radius: 10px; overflow: hidden; color: inherit; text-decoration: none; background: #fff; box-shadow: 0 10px 28px rgba(7,61,66,.045); transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease; }
    .news-card img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; transition: transform .35s ease; }
    .news-card:nth-child(4) img { object-position: center 43%; }
    .news-card > div { flex: 1; display: flex; flex-direction: column; padding: 18px 18px 24px; }
    .news-card h3 { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; min-height: 54px; margin: 0 0 11px; font-size: 18px; line-height: 1.48; }
    .news-card p { display: -webkit-box; margin: 0; overflow: hidden; min-height: 51px; color: var(--body); font-size: 15px; font-weight: 500; line-height: 1.7; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
    .news-meta { display: flex; justify-content: space-between; margin-top: auto; padding-top: 14px; color: var(--muted); font-size: 13px; font-weight: 650; }
    .news-card:hover { transform: translateY(-4px); border-color: rgba(8, 125, 132, .28); box-shadow: 0 22px 42px rgba(7, 61, 66, .09); }

    .inquiry { position: relative; margin-top: 0; padding: 56px 0; overflow: hidden; color: #fff; background: linear-gradient(115deg, #063d43, #0b6e74); }
    .inquiry .container { position: relative; z-index: 1; display: grid; grid-template-columns: .82fr 1.18fr; gap: 48px; align-items: center; }
    .inquiry-copy h2 { max-width: 480px; margin: 0 0 15px; font-size: 42px; line-height: 1.24; letter-spacing: -.015em; }
    .inquiry-copy p { margin: 0; color: rgba(255,255,255,.88); font-size: 17px; font-weight: 650; line-height: 1.7; }
    .inquiry-points { display: grid; grid-template-columns: 1fr 1fr; gap: 11px 24px; margin: 22px 0 0; padding: 0; list-style: none; }
    .inquiry-points li { position: relative; padding-left: 22px; color: #fff; font-size: 14px; font-weight: 750; }
    .inquiry-points li::before { position: absolute; left: 0; content: "✓"; color: #8fe8eb; font-weight: 900; }
    .form { display: grid; grid-template-columns: repeat(3, 1fr); gap: 15px 16px; padding: 32px; border-radius: 12px; background: rgba(255,255,255,.97); box-shadow: 0 20px 46px rgba(2,40,44,.16); }
    .form label { color: #23484c; font-size: 15px; font-weight: 750; }
.form .required { color: #c0262d; }
    .form input, .form textarea { width: 100%; min-height: 50px; margin-top: 8px; padding: 13px 14px; border: 1px solid #e0e3e8; border-radius: 8px; color: #244b4f; background: #f7fbfb; outline: none; font-size: 16px; }
    .form input::placeholder, .form textarea::placeholder { color: #666; opacity: 1; }
    .form textarea { height: 88px; resize: vertical; }
    .form .full { grid-column: 1 / -1; }
    .form button { width: 100%; min-height: 58px; border: 0; border-radius: 7px; color: #fff; background: #087d84; font-size: 18px; font-weight: 850; box-shadow: none; cursor: pointer; transition: background .3s ease, transform .3s ease; }
    .form button:hover { background: #063d43; transform: translateY(-1px); }

    @media (prefers-reduced-motion: reduce) {
      .button, nav a, nav a::after, .application-card, .support-card, .case-card, .case-card img, .news-card, .news-card img, .form button { transition: none; }
      .application-card:hover, .support-card:hover, .case-card:hover, .news-card:hover, .button:hover, .form button:hover { transform: none; }
    }


    a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible, .wechat-item:focus-visible { outline: 3px solid rgba(22,151,158,.46); outline-offset: 3px; }

    .sticky-sidebar {
      position: fixed;
      right: 10px;
      top: 60%;
      transform: translateY(-50%);
      z-index: 999;
      display: flex;
      flex-direction: column;
      gap: 6px;
    }
    .sidebar-item {
      width: 52px;
      height: 52px;
      background: #087d84;
      color: #fff;
      border-radius: 6px;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      box-shadow: 0 4px 12px rgba(0,0,0,.15);
      cursor: pointer;
      position: relative;
      transition: background .2s;
    }
    .sidebar-item:hover { background: #063d43; }
    .sidebar-item .icon { font-size: 18px; line-height: 1; }
    .sidebar-item .text { font-size: 11px; margin-top: 4px; font-weight: 700; }
    .wechat-item .qr-pop {
      display: none;
      position: absolute;
      right: 60px;
      top: 0;
      background: #fff;
      color: #333;
      padding: 10px;
      border-radius: 6px;
      box-shadow: 0 6px 20px rgba(0,0,0,.15);
      text-align: center;
      white-space: nowrap;
    }
    .wechat-item:hover .qr-pop { display: block; }
