:root {
      color-scheme: light;
      --ink: #17241e;
      --muted: #5d6b63;
      --paper: #f6f9f4;
      --white: #fff;
      --green: #18794e;
      --green-dark: #105c3a;
      --lime: #d7f36a;
      --line: #dce5dc;
      --mint: #eaf4e9;
      --coral: #f07b5b;
      --container: 1180px;
    }
    * { box-sizing: border-box; }
    html { scroll-behavior: smooth; }
    body {
      margin: 0;
      background: var(--paper);
      color: var(--ink);
      font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;
      line-height: 1.65;
    }
    a { color: inherit; text-decoration: none; }
    button, input, select, textarea { font: inherit; }
    button, a, input, select, textarea { -webkit-tap-highlight-color: transparent; }
    img { max-width: 100%; height: auto; }
    .container { width: min(var(--container), calc(100% - 40px)); margin-inline: auto; }
    .site-header { position: sticky; top: 0; z-index: 20; background: rgba(246,249,244,.94); border-bottom: 1px solid rgba(220,229,220,.88); backdrop-filter: blur(14px); }
    .header-inner { display: flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 76px; }
    .brand { display: inline-flex; align-items: center; gap: 11px; flex: 0 0 auto; font-size: 18px; font-weight: 800; }
    .brand img { display: block; width: 39px; max-height: 39px; object-fit: contain; }
    .nav-links { display: flex; align-items: center; justify-content: flex-end; gap: 0; flex-wrap: wrap; }
    .nav-links a { padding: 8px 9px; color: #4b5a51; font-size: 12px; white-space: nowrap; transition: color .2s ease; }
    .nav-links a:hover, .nav-links a:focus-visible { color: var(--green); }
    .header-action { padding: 10px 16px; border-radius: 4px; background: var(--green); color: #fff; font-size: 13px; font-weight: 700; white-space: nowrap; transition: transform .2s, background .2s; }
    .header-action:hover { background: var(--green-dark); transform: translateY(-2px); }
    .menu-toggle { display: none; align-items: center; justify-content: center; width: 42px; height: 42px; border: 1px solid var(--line); border-radius: 4px; color: var(--ink); background: var(--white); cursor: pointer; }
    .hero { position: relative; overflow: hidden; padding: 80px 0 52px; background: linear-gradient(120deg, #eff8e7 0%, #f6f9f4 54%, #e3f3ea 100%); }
    .hero::before { position: absolute; right: -120px; top: -170px; width: 520px; height: 520px; border: 1px solid rgba(24,121,78,.14); border-radius: 50%; content: ""; }
    .hero::after { position: absolute; right: 22%; top: 12%; width: 210px; height: 210px; border: 1px solid rgba(24,121,78,.1); border-radius: 50%; content: ""; }
    .hero-inner { position: relative; z-index: 1; }
    .hero-copy { max-width: 790px; }
    .eyebrow { display: inline-flex; align-items: center; gap: 9px; color: var(--green); font-size: 12px; font-weight: 800; letter-spacing: 1px; }
    .eyebrow::before { width: 23px; height: 2px; background: var(--coral); content: ""; }
    h1 { max-width: 700px; margin: 18px 0 18px; font-size: clamp(38px, 6vw, 68px); line-height: 1.12; letter-spacing: 0; }
    .hero-copy p { max-width: 660px; margin: 0; color: #4e5f54; font-size: 17px; }
    .hero-actions { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 27px; }
    .button { display: inline-flex; min-height: 48px; align-items: center; justify-content: center; gap: 9px; padding: 12px 20px; border: 1px solid transparent; border-radius: 4px; font-size: 14px; font-weight: 750; transition: transform .2s, background .2s, box-shadow .2s; }
    .button:hover { transform: translateY(-2px); }
    .button-primary { background: var(--green); color: #fff; box-shadow: 0 8px 18px rgba(24,121,78,.16); }
    .button-primary:hover { background: var(--green-dark); }
    .button-outline { border-color: #a9b9aa; background: rgba(255,255,255,.55); color: var(--ink); }
    .button-outline:hover { background: #fff; }
    .hero-chips { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 28px; }
    .hero-chips span { padding: 6px 11px; border: 1px solid #cfddcc; border-radius: 3px; color: #405348; font-size: 12px; }
    .signal-row { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; margin-top: 50px; border-top: 1px solid #d5e1d2; }
    .signal { padding: 20px 20px 0 0; }
    .signal strong { display: block; font-size: 17px; }
    .signal span { display: block; margin-top: 3px; color: var(--muted); font-size: 12px; }
    .section { padding: 76px 0; }
    .section-tint { background: #edf4ec; }
    .section-white { background: var(--white); }
    .section-head { display: flex; align-items: end; justify-content: space-between; gap: 28px; margin-bottom: 30px; }
    .section-head > div { max-width: 700px; }
    .kicker { margin: 0 0 8px; color: var(--green); font-size: 12px; font-weight: 800; letter-spacing: 1px; text-transform: uppercase; }
    h2 { margin: 0; font-size: clamp(27px, 4vw, 39px); line-height: 1.2; letter-spacing: 0; }
    .section-intro { max-width: 580px; margin: 11px 0 0; color: var(--muted); }
    .text-link { color: var(--green-dark); font-size: 14px; font-weight: 750; white-space: nowrap; }
    .text-link:hover { text-decoration: underline; text-underline-offset: 4px; }
    .intro-layout { display: grid; grid-template-columns: 1.1fr .9fr; gap: 50px; align-items: start; }
    .intro-copy p { margin: 0 0 15px; color: #4f5e54; }
    .intro-points { display: grid; grid-template-columns: 1fr 1fr; gap: 14px 24px; padding: 22px 0 0; border-top: 1px solid var(--line); }
    .intro-point { display: flex; gap: 11px; align-items: flex-start; }
    .point-mark { flex: 0 0 25px; display: grid; place-items: center; width: 25px; height: 25px; border-radius: 50%; background: var(--lime); color: #264b29; font-size: 13px; font-weight: 900; }
    .intro-point strong { display: block; font-size: 14px; }
    .intro-point span { display: block; color: var(--muted); font-size: 12px; }
    .platform-note { padding: 24px; border-left: 3px solid var(--coral); background: #fff; }
    .platform-note strong { display: block; font-size: 19px; }
    .platform-note p { margin: 10px 0 0; color: var(--muted); font-size: 14px; }
    .platform-note a { display: inline-flex; margin-top: 18px; color: var(--green); font-size: 14px; font-weight: 800; }
    .service-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; border: 1px solid var(--line); background: var(--line); }
    .service-item { min-height: 172px; padding: 22px; background: var(--white); transition: transform .22s, box-shadow .22s; }
    .service-item:hover { position: relative; z-index: 1; transform: translateY(-3px); box-shadow: 0 12px 24px rgba(23,36,30,.08); }
    .service-index { display: inline-block; margin-bottom: 13px; color: var(--coral); font-size: 12px; font-weight: 850; }
    .service-item h3 { margin: 0 0 7px; font-size: 17px; }
    .service-item p { margin: 0; color: var(--muted); font-size: 13px; }
    .tag-list { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 24px; }
    .tag-list span { padding: 6px 10px; border: 1px solid #d3dfd1; border-radius: 3px; background: rgba(255,255,255,.58); color: #3c5545; font-size: 12px; }
    .workflow { display: grid; grid-template-columns: repeat(4, 1fr); gap: 22px; counter-reset: flow; }
    .flow-step { position: relative; padding: 22px 18px 16px 0; border-top: 2px solid #c4d6c4; counter-increment: flow; }
    .flow-step::before { display: block; margin-bottom: 17px; color: var(--green); content: "0" counter(flow); font-size: 13px; font-weight: 850; }
    .flow-step h3 { margin: 0 0 7px; font-size: 17px; }
    .flow-step p { margin: 0; color: var(--muted); font-size: 13px; }
    .industries { display: grid; grid-template-columns: repeat(4, 1fr); gap: 22px 28px; }
    .industry { padding: 0 0 16px; border-bottom: 1px solid #cedace; }
    .industry h3 { margin: 0 0 7px; font-size: 15px; }
    .industry p { margin: 0; color: var(--muted); font-size: 13px; }
    .network { display: grid; grid-template-columns: .8fr 1.2fr; gap: 42px; align-items: start; }
    .network-lead { padding-right: 25px; }
    .network-lead p { color: var(--muted); }
    .network-list { display: grid; grid-template-columns: 1fr 1fr; gap: 0 24px; border-top: 1px solid var(--line); }
    .network-list div { padding: 13px 0; border-bottom: 1px solid var(--line); }
    .network-list strong { display: block; font-size: 14px; }
    .network-list span { color: var(--muted); font-size: 12px; }
    .case-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
    .case { overflow: hidden; border: 1px solid var(--line); background: #fff; }
    .case-media { overflow: hidden; background: #e8eee5; aspect-ratio: 16 / 9; }
    .case-media img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .35s; }
    .case:hover .case-media img { transform: scale(1.025); }
    .case-copy { padding: 17px 18px 19px; }
    .case-copy span { color: var(--green); font-size: 11px; font-weight: 800; }
    .case-copy h3 { margin: 5px 0; font-size: 17px; }
    .case-copy p { margin: 0; color: var(--muted); font-size: 13px; }
    .review-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
    .review { padding: 19px; border: 1px solid #dce5dc; background: rgba(255,255,255,.72); }
    .review p { margin: 0; color: #405047; font-size: 14px; }
    .review footer { margin-top: 15px; color: var(--muted); font-size: 12px; }
    .review footer strong { color: var(--ink); }
    .score-panel { display: grid; grid-template-columns: .75fr 1.25fr; gap: 34px; align-items: center; margin-bottom: 25px; padding: 25px; background: #e9f4e7; }
    .score-big { border-right: 1px solid #c8dac7; }
    .score-big span { display: block; color: var(--muted); font-size: 13px; }
    .score-big strong { display: block; color: var(--green-dark); font-size: 50px; line-height: 1.15; }
    .stars { color: #d18c24; font-size: 18px; letter-spacing: 2px; }
    .score-panel p { margin: 0; color: #43534a; font-size: 14px; }
    .table-scroll { overflow-x: auto; border: 1px solid var(--line); background: #fff; }
    table { width: 100%; border-collapse: collapse; text-align: left; }
    th, td { min-width: 150px; padding: 13px 16px; border-bottom: 1px solid #e3e9e2; font-size: 13px; }
    th { background: #f0f5ef; color: #263a2e; font-weight: 800; }
    td:first-child { min-width: 170px; color: #405047; font-weight: 700; }
    tbody tr:last-child td { border-bottom: 0; }
    .good { color: var(--green-dark); font-weight: 750; }
    .reference { padding: 21px 24px; background: #fff; border-left: 3px solid var(--lime); }
    .reference p { margin: 0; color: #506057; font-size: 14px; }
    .reference strong { color: var(--ink); }
    .faq-list { border-top: 1px solid var(--line); }
    .faq-item { border-bottom: 1px solid var(--line); }
    .faq-item summary { position: relative; padding: 17px 42px 17px 0; cursor: pointer; list-style: none; font-size: 15px; font-weight: 750; }
    .faq-item summary::-webkit-details-marker { display: none; }
    .faq-item summary::after { position: absolute; right: 6px; top: 14px; color: var(--green); content: "+"; font-size: 22px; font-weight: 400; }
    .faq-item[open] summary::after { content: "−"; }
    .faq-item p { max-width: 850px; margin: 0; padding: 0 34px 18px 0; color: var(--muted); font-size: 14px; }
    .article-list { display: grid; grid-template-columns: repeat(2, 1fr); gap: 0 28px; }
    .article-list a { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 15px 0; border-bottom: 1px solid var(--line); font-size: 14px; }
    .article-list a span:last-child { color: var(--green); font-size: 12px; white-space: nowrap; }
    .resource-links { display: flex; flex-wrap: wrap; gap: 9px 18px; margin-top: 23px; }
    .resource-links a { color: #41624d; font-size: 13px; text-decoration: underline; text-decoration-color: #bdd0bd; text-underline-offset: 4px; }
    .contact-layout { display: grid; grid-template-columns: .75fr 1.25fr; gap: 48px; align-items: start; }
    .contact-copy p { color: var(--muted); }
    .contact-details { margin-top: 22px; }
    .contact-details div { padding: 11px 0; border-bottom: 1px solid var(--line); font-size: 14px; }
    .contact-details strong { display: inline-block; min-width: 102px; }
    .contact-form { display: grid; grid-template-columns: 1fr 1fr; gap: 15px; padding: 23px; border: 1px solid var(--line); background: #fff; }
    .field { display: grid; gap: 6px; }
    .field-wide { grid-column: 1 / -1; }
    .field label { color: #394a40; font-size: 13px; font-weight: 700; }
    .field input, .field select, .field textarea { width: 100%; min-height: 44px; padding: 10px 11px; border: 1px solid #cbd7cb; border-radius: 3px; outline: none; background: #fff; color: var(--ink); }
    .field textarea { min-height: 112px; resize: vertical; }
    .field input:focus, .field select:focus, .field textarea:focus { border-color: var(--green); box-shadow: 0 0 0 3px rgba(24,121,78,.1); }
    .contact-form .button { width: fit-content; cursor: pointer; }
    .form-note { align-self: center; margin: 0; color: var(--muted); font-size: 12px; }
    .join-band { display: flex; align-items: center; justify-content: space-between; gap: 25px; padding: 25px 0 0; border-top: 1px solid var(--line); }
    .join-band p { margin: 6px 0 0; color: var(--muted); font-size: 14px; }
    .site-footer { padding: 28px 0; background: #e7eee6; color: #34443a; }
    .footer-inner { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
    .footer-brand { font-weight: 800; }
    .footer-meta { color: #5c6a60; font-size: 12px; }
    .footer-meta a { text-decoration: underline; text-underline-offset: 3px; }
    .float-contact { position: fixed; right: 18px; bottom: 20px; z-index: 15; display: grid; gap: 8px; }
    .float-contact a, .back-top { display: grid; place-items: center; min-width: 48px; min-height: 45px; padding: 7px 10px; border: 1px solid #c8d7c9; border-radius: 4px; background: #fff; color: var(--green-dark); box-shadow: 0 5px 16px rgba(22,42,30,.1); font-size: 12px; font-weight: 800; }
    .back-top { cursor: pointer; }
    .reveal { opacity: 0; transform: translateY(14px); transition: opacity .5s ease, transform .5s ease; }
    .reveal.is-visible { opacity: 1; transform: translateY(0); }
    @media (max-width: 1050px) {
      .menu-toggle { display: inline-flex; }
      .header-inner { gap: 12px; }
      .nav-links { display: none; position: absolute; top: 75px; left: 20px; right: 20px; max-height: calc(100vh - 100px); overflow: auto; padding: 10px; border: 1px solid var(--line); background: #fff; box-shadow: 0 12px 24px rgba(23,36,30,.1); }
      .nav-links.is-open { display: grid; grid-template-columns: repeat(3, 1fr); }
      .nav-links a { padding: 10px; }
      .header-action { margin-left: auto; }
      .industries { grid-template-columns: repeat(3, 1fr); }
    }
    @media (max-width: 720px) {
      .container { width: min(var(--container), calc(100% - 32px)); }
      .header-inner { min-height: 66px; }
      .brand { font-size: 16px; }
      .brand img { width: 34px; max-height: 34px; }
      .header-action { padding: 9px 11px; font-size: 12px; }
      .nav-links { top: 65px; left: 16px; right: 16px; }
      .nav-links.is-open { grid-template-columns: repeat(2, 1fr); }
      .hero { padding: 55px 0 32px; }
      .hero-copy p { font-size: 15px; }
      .signal-row { grid-template-columns: repeat(2, 1fr); margin-top: 36px; }
      .signal { padding: 15px 12px 0 0; }
      .section { padding: 55px 0; }
      .section-head { display: block; }
      .section-head .text-link { display: inline-block; margin-top: 16px; }
      .intro-layout, .network, .contact-layout { grid-template-columns: 1fr; gap: 26px; }
      .intro-points { grid-template-columns: 1fr; }
      .service-grid { grid-template-columns: repeat(2, 1fr); }
      .service-item { min-height: 0; padding: 17px; }
      .workflow { grid-template-columns: repeat(2, 1fr); gap: 10px 20px; }
      .industries { grid-template-columns: repeat(2, 1fr); gap: 16px; }
      .case-grid { grid-template-columns: 1fr; }
      .case { display: grid; grid-template-columns: .85fr 1.15fr; }
      .case-media { height: 100%; min-height: 140px; aspect-ratio: auto; }
      .case-copy { align-self: center; padding: 16px; }
      .review-grid { grid-template-columns: 1fr 1fr; }
      .score-panel { grid-template-columns: 1fr; gap: 15px; }
      .score-big { border-right: 0; border-bottom: 1px solid #c8dac7; padding-bottom: 13px; }
      .article-list { grid-template-columns: 1fr; }
      .contact-form { padding: 17px; }
      .footer-inner, .join-band { align-items: flex-start; flex-direction: column; }
      .float-contact { right: 10px; bottom: 12px; }
    }
    @media (max-width: 440px) {
      .header-action { display: none; }
      h1 { font-size: 38px; }
      .service-grid, .review-grid { grid-template-columns: 1fr; }
      .case { grid-template-columns: 1fr; }
      .case-media { min-height: 0; aspect-ratio: 16 / 9; }
      .network-list { grid-template-columns: 1fr; }
      .contact-form { grid-template-columns: 1fr; }
      .field-wide { grid-column: auto; }
      .form-note { grid-row: auto; }
    }
    @media (prefers-reduced-motion: reduce) {
      *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; }
      .reveal { opacity: 1; transform: none; }
    }