
    * { box-sizing: border-box; }
    html { max-width: 100%; overflow-x: hidden; scroll-behavior: smooth; }
    body {
      margin: 0;
      min-width: 0 !important;
      max-width: 100%;
      overflow-x: hidden;
      color: #333;
      background: #fff;
      font-family: "Microsoft YaHei", Arial, Helvetica, sans-serif;
      font-size: 14px;
      line-height: 1.8;
    }
    a { color: inherit; text-decoration: none; }
    button, input, select, textarea { font: inherit; }
    button { cursor: pointer; }
    img { display: block; width: 100%; max-width: 100%; border: 0; }
    ul { margin: 0; padding: 0; list-style: none; }

    .solutions-page { overflow: hidden; background: #fff; }
    .solutions-width { width: min(1200px, calc(100% - 40px)); margin: 0 auto; }
    .solutions-section { padding: 72px 0; }
    .overview-section { padding: 58px 0 36px; }
    .solutions-section-alt {
      border-top: 1px solid #edf0f4;
      border-bottom: 1px solid #edf0f4;
      background: #f6f8fb;
    }

    .solutions-hero {
      position: relative;
      min-height: 570px;
      display: flex;
      align-items: center;
      overflow: hidden;
      color: #fff;
      background: #0b356f;
    }
    .solutions-hero-media { position: absolute; inset: 0; }
    .solutions-hero-media img { height: 100%; object-fit: cover; object-position: center; }
    .solutions-hero::before {
      position: absolute;
      inset: 0;
      z-index: 1;
      background: linear-gradient(90deg, rgba(4,31,67,.98) 0%, rgba(7,49,99,.92) 38%, rgba(7,49,99,.35) 70%, rgba(7,49,99,.04) 100%);
      content: "";
    }
    .solutions-hero-inner { position: relative; z-index: 2; padding: 88px 0 80px; }
    .solutions-hero-grid {
      display: grid;
      grid-template-columns: minmax(0, .96fr) minmax(420px, .82fr);
      gap: 58px;
      align-items: center;
    }
    .solutions-hero-copybox { min-width: 0; }
    .solutions-eyebrow {
      display: flex;
      align-items: center;
      gap: 12px;
      margin: 0 0 14px;
      color: #bfe5ff;
      font-size: 14px;
      font-weight: 700;
      text-transform: uppercase;
    }
    .solutions-eyebrow::before { width: 38px; height: 3px; background: #23a9e6; content: ""; }
    .solutions-hero h1 { max-width: 760px; margin: 0; font-size: 52px; font-weight: 700; line-height: 1.12; }
    .solutions-hero h2 { max-width: 720px; margin: 18px 0 0; color: #fff; font-size: 25px; font-weight: 500; line-height: 1.4; }
    .solutions-hero-copy { max-width: 720px; margin: 22px 0 0; color: rgba(255,255,255,.85); font-size: 17px; }
    .solutions-actions { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 32px; }
    .solutions-button {
      display: inline-flex;
      min-width: 184px;
      min-height: 48px;
      align-items: center;
      justify-content: center;
      padding: 10px 22px;
      border: 1px solid #0873bd;
      color: #fff;
      background: #0873bd;
      font-size: 15px;
      font-weight: 700;
      line-height: 1.4;
      transition: background .2s ease, border-color .2s ease, color .2s ease, transform .2s ease;
    }
    .solutions-button:hover { border-color: #00518d; color: #fff; background: #00518d; transform: translateY(-1px); }
    .solutions-button-light { border-color: rgba(255,255,255,.72); background: transparent; }
    .solutions-button-light:hover { border-color: #fff; color: #15458e; background: #fff; }

    .hero-visual {
      position: relative;
      min-height: 420px;
      overflow: hidden;
      border: 0;
      background: rgba(255,255,255,.08);
      box-shadow: 0 18px 42px rgba(0,0,0,.18);
    }
    .hero-visual img { height: 100%; object-fit: cover; object-position: center; opacity: .9; }

    .solutions-heading { max-width: 820px; margin: 0 auto 40px; text-align: center; }
    .solutions-heading-left { margin: 0 0 27px; text-align: left; }
    .solutions-heading span {
      display: block;
      margin-bottom: 8px;
      color: #0873bd;
      font-size: 13px;
      font-weight: 700;
      text-transform: uppercase;
    }
    .solutions-heading h2 { margin: 0; color: #222; font-size: 34px; font-weight: 700; line-height: 1.25; }
    .solutions-heading p { margin: 14px 0 0; color: #777; font-size: 15px; }
    .solutions-heading::after { display: block; width: 56px; height: 3px; margin: 20px auto 0; background: #0873bd; content: ""; }
    .solutions-heading-left::after { margin-left: 0; }

    .overview-layout {
      display: grid;
      grid-template-columns: minmax(0, 1fr) 440px;
      gap: 48px;
      align-items: stretch;
    }
    .overview-copy {
      display: flex;
      flex-direction: column;
      justify-content: center;
    }
    .overview-copy p { margin: 0 0 16px; color: #555; font-size: 15px; text-align: justify; }
    .overview-media {
      position: relative;
      min-height: 360px;
      overflow: hidden;
      background: #e9eef4;
    }
    .overview-media img { height: 100%; object-fit: cover; }
    .overview-badge {
      position: absolute;
      left: 0;
      bottom: 0;
      width: min(360px, 92%);
      padding: 16px 22px;
      color: #fff;
      background: #15458e;
    }
    .overview-badge strong { display: block; font-size: 24px; line-height: 1.1; }
    .overview-badge span { display: block; margin-top: 6px; color: rgba(255,255,255,.82); font-size: 13px; }

    .solution-finder {
      padding: 42px 0 0;
      background: #fff;
    }
    .finder-card-band {
      padding: 0 0 48px;
      background: linear-gradient(to bottom, #fff 0%, #fff 48%, #f6f8fb 48%, #f6f8fb 100%);
    }
    .finder-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 22px; }
    .finder-card {
      min-height: 178px;
      display: grid;
      grid-template-columns: 62px minmax(0,1fr);
      gap: 18px;
      align-items: start;
      padding: 28px;
      border: 1px solid #e2e7ee;
      background: #fff;
      box-shadow: 0 10px 28px rgba(25,55,90,.07);
      transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
    }
    .finder-card:hover {
      transform: translateY(-4px);
      border-color: #b7d8ef;
      box-shadow: 0 18px 38px rgba(20,53,90,.12);
    }
    .finder-icon {
      width: 62px;
      height: 62px;
      display: flex;
      align-items: center;
      justify-content: center;
      color: #fff;
      background: #0873bd;
      font-size: 22px;
      font-weight: 700;
      line-height: 1;
    }
    .finder-card h3 { margin: 0; color: #222; font-size: 22px; line-height: 1.25; }
    .finder-card p { margin: 10px 0 0; color: #66717d; line-height: 1.65; }
    .finder-card a { display: inline-flex; margin-top: 14px; color: #0873bd; font-weight: 700; }

    .product-tags { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 22px; }
    .product-tags span {
      display: inline-flex;
      align-items: center;
      min-height: 30px;
      padding: 5px 11px;
      color: #15458e;
      background: #eef6fb;
      font-size: 12px;
      font-weight: 700;
    }
    .industry-card-grid {
      display: grid;
      grid-template-columns: repeat(4, minmax(0,1fr));
      gap: 22px;
    }
    .industry-card {
      min-height: 100%;
      display: flex;
      flex-direction: column;
      overflow: hidden;
      border: 1px solid #e2e7ee;
      background: #fff;
      box-shadow: 0 12px 30px rgba(25,55,90,.07);
      transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
    }
    .industry-card:hover {
      transform: translateY(-4px);
      border-color: #b7d8ef;
      box-shadow: 0 18px 38px rgba(20,53,90,.12);
    }
    .industry-card-media {
      position: relative;
      aspect-ratio: 16 / 10;
      overflow: hidden;
      background: #e8edf3;
    }
    .industry-card-media img {
      height: 100%;
      object-fit: cover;
      transition: transform .35s ease;
    }
    .industry-card:hover .industry-card-media img { transform: scale(1.05); }
    .industry-card-body {
      display: flex;
      flex: 1;
      flex-direction: column;
      padding: 24px 23px 25px;
    }
    .industry-card-body h3 { margin: 0; color: #222; font-size: 19px; line-height: 1.35; }
    .industry-card-body p { margin: 11px 0 0; color: #66717d; line-height: 1.65; }
    .industry-card .product-tags { margin-top: 18px; }
    .industry-card-action {
      display: inline-flex;
      align-items: center;
      margin-top: auto;
      padding-top: 18px;
      color: #0873bd;
      font-weight: 700;
    }
    .industry-card-action:hover { color: #00518d; }

    .application-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 22px; align-items: stretch; }
    .application-card {
      min-height: 100%;
      display: flex;
      flex-direction: column;
      overflow: hidden;
      padding: 0;
      border: 1px solid #e2e7ee;
      background: #fff;
      box-shadow: 0 12px 30px rgba(25,55,90,.07);
      transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
    }
    .application-card:hover {
      transform: translateY(-4px);
      border-color: #b7d8ef;
      box-shadow: 0 18px 38px rgba(20,53,90,.12);
    }
    .application-media {
      position: relative;
      aspect-ratio: 16 / 10;
      overflow: hidden;
      background: #e8edf3;
    }
    .application-media img {
      height: 100%;
      object-fit: cover;
      transition: transform .35s ease;
    }
    .application-card:hover .application-media img { transform: scale(1.05); }
    .application-card em {
      position: absolute;
      left: 18px;
      bottom: 0;
      display: inline-flex;
      width: 42px;
      height: 42px;
      align-items: center;
      justify-content: center;
      color: #fff;
      background: #0873bd;
      font-style: normal;
      font-weight: 700;
    }
    .application-body {
      display: flex;
      flex: 1;
      flex-direction: column;
      padding: 24px 24px 26px;
    }
    .application-card h3 { margin: 0; color: #222; font-size: 19px; line-height: 1.35; }
    .application-card p { margin: 12px 0 0; color: #66717d; line-height: 1.65; }
    .application-products {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      margin-top: auto;
      padding-top: 16px;
      border-top: 1px solid #e7edf4;
    }
    .application-products strong {
      width: 100%;
      color: #15458e;
      font-size: 12px;
      line-height: 1.3;
      text-transform: uppercase;
    }
    .application-products span {
      display: inline-flex;
      align-items: center;
      min-height: 28px;
      padding: 4px 9px;
      color: #15458e;
      background: #eef6fb;
      font-size: 12px;
      font-weight: 700;
      line-height: 1.3;
    }

    .technology-layout {
      display: grid;
      grid-template-columns: minmax(0, .88fr) minmax(0, 1.12fr);
      gap: 42px;
      align-items: stretch;
    }
    .technology-media { position: relative; min-height: 0; overflow: hidden; background: #dfe6ed; }
    .technology-media img { height: 100%; object-fit: cover; object-position: center; }
    .technology-media-caption {
      position: absolute;
      left: 0;
      bottom: 0;
      width: min(420px, 94%);
      padding: 18px 24px;
      color: #fff;
      background: rgba(21,69,142,.95);
    }
    .technology-media-caption strong { display: block; font-size: 21px; line-height: 1.25; }
    .technology-media-caption span { display: block; margin-top: 6px; color: rgba(255,255,255,.82); }
    .technology-list { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); border-top: 1px solid #dfe5ec; border-left: 1px solid #dfe5ec; }
    .technology-item {
      min-height: 160px;
      padding: 24px 24px;
      border-right: 1px solid #dfe5ec;
      border-bottom: 1px solid #dfe5ec;
      background: #fff;
    }
    .technology-item h3 { margin: 0; color: #15458e; font-size: 18px; line-height: 1.35; }
    .technology-item p { margin: 10px 0 0; color: #66717d; line-height: 1.65; }
    .technology-card-grid {
      display: grid;
      grid-template-columns: repeat(3, minmax(0,1fr));
      gap: 22px;
    }
    .technology-card {
      min-height: 248px;
      display: flex;
      flex-direction: column;
      padding: 28px 26px;
      border: 1px solid #dfe5ec;
      border-top: 4px solid #0873bd;
      background: #fff;
      box-shadow: 0 10px 28px rgba(25,55,90,.06);
      transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
    }
    .technology-card:hover {
      transform: translateY(-4px);
      border-color: #b7d8ef;
      box-shadow: 0 18px 38px rgba(20,53,90,.12);
    }
    .technology-card em {
      color: #0873bd;
      font-size: 13px;
      font-style: normal;
      font-weight: 700;
      text-transform: uppercase;
    }
    .technology-card h3 { margin: 11px 0 0; color: #222; font-size: 21px; line-height: 1.3; }
    .technology-card p { margin: 12px 0 0; color: #66717d; line-height: 1.65; }
    .technology-card .tech-action {
      display: inline-flex;
      align-items: center;
      margin-top: auto;
      padding-top: 18px;
      color: #0873bd;
      font-weight: 700;
    }
    .technology-card .tech-action:hover { color: #00518d; }

    .choose-layout {
      display: grid;
      grid-template-columns: 380px minmax(0,1fr);
      gap: 42px;
      align-items: stretch;
    }
    .choose-section {
      color: #fff;
      background: #15458e;
    }
    .choose-section .solutions-heading h2,
    .choose-section .solutions-heading p { color: #fff; }
    .choose-section .solutions-heading span { color: #a8dbf5; }
    .choose-section .solutions-heading::after { background: #23a9e6; }
    .choose-section .choose-grid { grid-template-columns: repeat(5, minmax(0,1fr)); }
    .choose-section .choose-card {
      border-color: rgba(255,255,255,.16);
      background: rgba(255,255,255,.08);
      box-shadow: none;
    }
    .choose-section .choose-card strong { color: #a8dbf5; }
    .choose-section .choose-card h3 { color: #fff; }
    .choose-section .choose-card p { color: rgba(255,255,255,.78); }
    .choose-panel {
      padding: 42px 38px;
      color: #fff;
      background: #15458e;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      min-height: 440px;
    }
    .choose-panel span { color: #a8dbf5; font-size: 13px; font-weight: 700; text-transform: uppercase; }
    .choose-panel h2 { margin: 14px 0 0; font-size: 34px; line-height: 1.25; }
    .choose-panel p { margin: 18px 0 0; color: rgba(255,255,255,.82); font-size: 15px; }
    .choose-panel .solutions-button { width: 100%; margin-top: 28px; background: #0873bd; }
    .choose-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 18px; }
    .choose-card {
      min-height: 206px;
      padding: 26px 24px;
      border: 1px solid #e2e7ee;
      background: #fff;
      box-shadow: 0 8px 22px rgba(25,55,90,.05);
    }
    .choose-card strong { display: block; color: #0873bd; font-size: 13px; text-transform: uppercase; }
    .choose-card h3 { margin: 10px 0 0; color: #222; font-size: 20px; line-height: 1.35; }
    .choose-card p { margin: 10px 0 0; color: #66717d; line-height: 1.65; }

    .process-grid { display: grid; grid-template-columns: repeat(5, minmax(0,1fr)); gap: 0; border-top: 1px solid #dfe5ec; border-left: 1px solid #dfe5ec; background: #fff; }
    .process-card {
      min-height: 250px;
      padding: 28px 24px;
      border-right: 1px solid #dfe5ec;
      border-bottom: 1px solid #dfe5ec;
      background: #fff;
    }
    .process-card em { display: block; color: #0873bd; font-size: 26px; font-style: normal; font-weight: 700; line-height: 1; }
    .process-card h3 { margin: 16px 0 0; color: #222; font-size: 19px; line-height: 1.35; }
    .process-card p { margin: 11px 0 0; color: #66717d; line-height: 1.65; }

    .inquiry-section {
      position: relative;
      overflow: hidden;
      padding: 78px 0;
      color: #fff;
      background: #0b356f;
    }
    .inquiry-bg { position: absolute; inset: 0; opacity: .24; }
    .inquiry-bg img { height: 100%; object-fit: cover; }
    .inquiry-section::before {
      position: absolute;
      inset: 0;
      background: linear-gradient(90deg, rgba(4,31,67,.96), rgba(4,31,67,.82));
      content: "";
    }
    .inquiry-layout {
      position: relative;
      z-index: 1;
      display: grid;
      grid-template-columns: minmax(0,.88fr) minmax(0,1.12fr);
      gap: 52px;
      align-items: start;
    }
    .inquiry-copy h2 { margin: 0; font-size: 36px; line-height: 1.25; }
    .inquiry-copy p { margin: 16px 0 0; color: rgba(255,255,255,.82); font-size: 15px; }
    .inquiry-list { margin-top: 28px; border-top: 1px solid rgba(255,255,255,.2); }
    .inquiry-list li { padding: 15px 0; border-bottom: 1px solid rgba(255,255,255,.2); color: rgba(255,255,255,.86); }
    .inquiry-list strong { display: block; color: #fff; font-size: 16px; }

    .solution-form {
      padding: 34px 36px;
      color: #333;
      background: #fff;
      box-shadow: 0 18px 48px rgba(0,0,0,.18);
    }
    .form-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 16px; }
    .form-field { display: flex; flex-direction: column; gap: 7px; }
    .form-field-full { grid-column: 1 / -1; }
    .form-field label { color: #27313d; font-weight: 700; line-height: 1.4; }
    .required { color: #d33; }
    .form-field input,
    .form-field select,
    .form-field textarea {
      width: 100%;
      min-height: 44px;
      border: 1px solid #d8e0ea;
      padding: 9px 12px;
      color: #333;
      background: #fff;
      outline: none;
      transition: border-color .2s ease, box-shadow .2s ease;
    }
    .form-field textarea { min-height: 116px; resize: vertical; }
    .form-field input:focus,
    .form-field select:focus,
    .form-field textarea:focus {
      border-color: #0873bd;
      box-shadow: 0 0 0 3px rgba(8,115,189,.12);
    }
    .form-field .is-invalid,
    .form-field input.is-invalid,
    .form-field select.is-invalid,
    .form-field textarea.is-invalid { border-color: #d33; }
    .field-error { display: none; color: #d33; font-size: 12px; line-height: 1.35; }
    .is-invalid + .field-error { display: block; }
    .form-footer {
      display: grid;
      grid-template-columns: minmax(0,1fr) 190px;
      gap: 18px;
      align-items: center;
      margin-top: 18px;
    }
    .form-status { margin: 0; color: #66717d; font-size: 12px; line-height: 1.55; }
    .form-status a { color: #0873bd; font-weight: 700; text-decoration: underline; }
    .form-status.is-error { color: #d33; }
    .form-submit { width: 100%; min-width: 0; border: 0; }

    .reveal {
      opacity: 0;
      transform: translateY(18px);
      transition: opacity .55s ease, transform .55s ease;
    }
    .reveal.is-visible { opacity: 1; transform: translateY(0); }

    @media (max-width: 1100px) {
      .solutions-hero-grid,
      .overview-layout,
      .choose-layout,
      .inquiry-layout { grid-template-columns: 1fr; }
      .industry-card-grid,
      .application-grid,
      .technology-card-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
      .process-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
      .finder-grid { grid-template-columns: 1fr; }
      .choose-section .choose-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
      .overview-media, .technology-media { min-height: 360px; }
      .hero-visual { max-width: 680px; min-height: 380px; }
    }

    @media (max-width: 760px) {
      .solutions-width { width: min(100% - 30px, 1200px); }
      .solutions-section { padding: 54px 0; }
      .overview-section { padding: 46px 0 28px; }
      .solutions-hero { min-height: 590px; }
      .solutions-hero-media img { width: auto; max-width: none; object-position: 72% center; }
      .solutions-hero::before { background: rgba(4,31,67,.84); }
      .solutions-hero-inner { padding: 68px 0 60px; }
      .solutions-hero-grid { gap: 34px; }
      .hero-visual {
        min-height: 280px;
      }
      .solutions-hero h1 { font-size: 39px; }
      .solutions-hero h2 { font-size: 21px; }
      .solutions-hero-copy { font-size: 15px; }
      .solutions-actions, .solutions-button { width: 100%; }
      .solutions-heading { margin-bottom: 30px; }
      .solutions-heading h2, .inquiry-copy h2 { font-size: 29px; }
      .overview-layout { gap: 34px; }
      .application-grid,
      .industry-card-grid,
      .technology-card-grid,
      .finder-grid,
      .technology-list,
      .choose-grid,
      .process-grid,
      .form-grid,
      .form-footer { grid-template-columns: 1fr; }
      .choose-section .choose-grid { grid-template-columns: 1fr; }
      .solution-form { padding: 28px 22px; }
      .inquiry-section { padding: 60px 0; }
    }

    @media (max-width: 480px) {
      .solutions-hero h1 { font-size: 34px; }
      .solutions-heading h2, .choose-panel h2 { font-size: 26px; }
      .choose-panel { padding: 32px 24px; min-height: 0; }
      .application-card, .technology-card, .technology-item, .process-card, .industry-card, .finder-card { min-height: 0; }
      .overview-media, .technology-media { min-height: 280px; }
      .finder-card { grid-template-columns: 50px minmax(0,1fr); padding: 22px; }
      .finder-icon { width: 50px; height: 50px; font-size: 18px; }
    }
